diff options
| author | Po Lu <luangruo@yahoo.com> | 2024-04-03 20:29:10 +0800 |
|---|---|---|
| committer | Po Lu <luangruo@yahoo.com> | 2024-04-03 20:31:22 +0800 |
| commit | 7df66b4762ff51e394b8db03dfffe888bdba0a67 (patch) | |
| tree | c576b857afa236b95964cb28988b4aa2c3cabcc6 /java/org/gnu/emacs/EmacsService.java | |
| parent | fa9791fe6af2bbedf1f5bb3e7dd8879a0191ebf1 (diff) | |
Better align Emacs window management with Android task lifecycles
* java/org/gnu/emacs/EmacsActivity.java (onCreate): Permit
overriding by child classes.
(onDestroy): Minor stylistic adjustments.
(getAttachmentToken): New function.
* java/org/gnu/emacs/EmacsMultitaskActivity.java (onCreate)
(getAttachmentToken): New functions.
* java/org/gnu/emacs/EmacsWindow.java (EmacsWindow):
<attachmentToken, preserve, previouslyAttached>: New variables.
(onActivityDetached): Remove redundant isFinishing argument.
(reparentTo): Reset the foregoing fields before registering with
the window manager.
* java/org/gnu/emacs/EmacsWindowManager.java
(EmacsWindowManager): Rename from EmacsWindowAttachmentManager.
(WindowConsumer): New function getAttachmentToken.
(isWindowEligible): New function.
(registerWindowConsumer, registerWindow, removeWindowConsumer)
(detachWindow): Implement a new window management strategy on
API 29 and subsequent releases where both varieties of toplevel
window are permanently, except when reparented, bound to the
activities to which they attach, and Emacs establishes at
strategic junctures whether those activities remain present.
(getTaskToken, pruneWindows): New functions.
Diffstat (limited to 'java/org/gnu/emacs/EmacsService.java')
| -rw-r--r-- | java/org/gnu/emacs/EmacsService.java | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/java/org/gnu/emacs/EmacsService.java b/java/org/gnu/emacs/EmacsService.java index 446cd26a3dd..171b427b05b 100644 --- a/java/org/gnu/emacs/EmacsService.java +++ b/java/org/gnu/emacs/EmacsService.java @@ -494,7 +494,7 @@ public final class EmacsService extends Service if (window == null) /* Just return all the windows without a parent. */ - windowList = EmacsWindowAttachmentManager.MANAGER.copyWindows (); + windowList = EmacsWindowManager.MANAGER.copyWindows (); else windowList = window.children; |
