<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emacs/java/org, branch scratch/interpreted-function</title>
<subtitle>Emacs is the extensible, customizable, self-documenting real-time display editor. 
</subtitle>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/'/>
<entry>
<title>Correctly verify availability of Android content URIs</title>
<updated>2024-04-18T02:38:22+00:00</updated>
<author>
<name>Po Lu</name>
</author>
<published>2024-04-18T02:37:31+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=c19b988c2967f13597b7a3ceafb7c3cd40d83458'/>
<id>c19b988c2967f13597b7a3ceafb7c3cd40d83458</id>
<content type='text'>
* java/org/gnu/emacs/EmacsService.java (checkContentUri): Call
checkUriPermission with IPC-effective PID and UID rather than
checkCallingUriPermission, which never considers permissions of
Emacs itself, and delete the now-redundant workaround.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* java/org/gnu/emacs/EmacsService.java (checkContentUri): Call
checkUriPermission with IPC-effective PID and UID rather than
checkCallingUriPermission, which never considers permissions of
Emacs itself, and delete the now-redundant workaround.
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove leftover tasks from previous Emacs sessions on startup</title>
<updated>2024-04-14T02:36:50+00:00</updated>
<author>
<name>Po Lu</name>
</author>
<published>2024-04-14T02:36:50+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=2823eae0b7cb3bd3f2472fde9e13016a8d406a9a'/>
<id>2823eae0b7cb3bd3f2472fde9e13016a8d406a9a</id>
<content type='text'>
* java/org/gnu/emacs/EmacsService.java (onCreate): Call
removeOldTasks.

* java/org/gnu/emacs/EmacsWindowManager.java (removeOldTasks):
New function.

* java/proguard.conf: Optimize optimizer configuration.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* java/org/gnu/emacs/EmacsService.java (onCreate): Call
removeOldTasks.

* java/org/gnu/emacs/EmacsWindowManager.java (removeOldTasks):
New function.

* java/proguard.conf: Optimize optimizer configuration.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix task-switching failures on Android 2.3</title>
<updated>2024-04-13T03:28:48+00:00</updated>
<author>
<name>Po Lu</name>
</author>
<published>2024-04-13T03:28:23+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=4fc37710788cdab9ebf4264636999ba999a59547'/>
<id>4fc37710788cdab9ebf4264636999ba999a59547</id>
<content type='text'>
* java/org/gnu/emacs/EmacsWindowManager.java (registerWindow):
Don't specify F_A_MULTIPLE_TASK on Android 4.4 and earlier.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* java/org/gnu/emacs/EmacsWindowManager.java (registerWindow):
Don't specify F_A_MULTIPLE_TASK on Android 4.4 and earlier.
</pre>
</div>
</content>
</entry>
<entry>
<title>Optimize R8 configuration</title>
<updated>2024-04-11T02:15:25+00:00</updated>
<author>
<name>Po Lu</name>
</author>
<published>2024-04-11T02:15:25+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=b9acfd7c2b9d1fa5c49e7bd9f78a040f7485b29b'/>
<id>b9acfd7c2b9d1fa5c49e7bd9f78a040f7485b29b</id>
<content type='text'>
* java/org/gnu/emacs/EmacsWindowManager.java (WindowConsumer):
Mark as package-local.

* java/proguard.conf: List only symbols that must be preserved,
enabling R8 to optimize the remainder.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* java/org/gnu/emacs/EmacsWindowManager.java (WindowConsumer):
Mark as package-local.

* java/proguard.conf: List only symbols that must be preserved,
enabling R8 to optimize the remainder.
</pre>
</div>
</content>
</entry>
<entry>
<title>Adjust priority of Emacs background service notification</title>
<updated>2024-04-11T01:16:57+00:00</updated>
<author>
<name>Po Lu</name>
</author>
<published>2024-04-11T01:11:44+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=7720c614afcf2b657c1edd1901cdc688e372a53c'/>
<id>7720c614afcf2b657c1edd1901cdc688e372a53c</id>
<content type='text'>
* java/org/gnu/emacs/EmacsService.java (onStartCommand): Reword
lightly and set importance to IMPORTANCE_LOW.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* java/org/gnu/emacs/EmacsService.java (onStartCommand): Reword
lightly and set importance to IMPORTANCE_LOW.
</pre>
</div>
</content>
</entry>
<entry>
<title>Resolve disagreements in accounting of tooltip positions on Android</title>
<updated>2024-04-07T06:51:29+00:00</updated>
<author>
<name>Po Lu</name>
</author>
<published>2024-04-07T06:39:42+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=8ee1dc8f1f9aa47260f8151c9eea30fb1ccf878a'/>
<id>8ee1dc8f1f9aa47260f8151c9eea30fb1ccf878a</id>
<content type='text'>
* java/org/gnu/emacs/EmacsService.java (getLocationInWindow):
New function.

* java/org/gnu/emacs/EmacsWindow.java (translateCoordinates):
Derive "root window" position from the origin point of the
containing activity's window rather than that of the screen,
the two of which differ when "freeform mode" is enabled.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* java/org/gnu/emacs/EmacsService.java (getLocationInWindow):
New function.

* java/org/gnu/emacs/EmacsWindow.java (translateCoordinates):
Derive "root window" position from the origin point of the
containing activity's window rather than that of the screen,
the two of which differ when "freeform mode" is enabled.
</pre>
</div>
</content>
</entry>
<entry>
<title>Port new Android window management strategy to Android 5.0</title>
<updated>2024-04-07T04:15:39+00:00</updated>
<author>
<name>Po Lu</name>
</author>
<published>2024-04-07T04:15:39+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=ae296d762bc7366879e74f9dca90bc7edd89e860'/>
<id>ae296d762bc7366879e74f9dca90bc7edd89e860</id>
<content type='text'>
* doc/emacs/android.texi (Android Windowing): Revise to match.

* java/org/gnu/emacs/EmacsWindowManager.java (registerWindow)
(removeWindowConsumer, pruneWindows): Decrease minimum API for
monitoring of tasks to Android 5.0.
(getTaskToken): Ignore misleading documentation and access
baseIntent by way of RecentTaskInfo.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* doc/emacs/android.texi (Android Windowing): Revise to match.

* java/org/gnu/emacs/EmacsWindowManager.java (registerWindow)
(removeWindowConsumer, pruneWindows): Decrease minimum API for
monitoring of tasks to Android 5.0.
(getTaskToken): Ignore misleading documentation and access
baseIntent by way of RecentTaskInfo.
</pre>
</div>
</content>
</entry>
<entry>
<title>Correct typos in and omissions from earlier Android port changes</title>
<updated>2024-04-06T03:17:49+00:00</updated>
<author>
<name>Po Lu</name>
</author>
<published>2024-04-06T03:17:49+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=617bd85cd0bd1d0a73d405d623ee3dd41c7e8a37'/>
<id>617bd85cd0bd1d0a73d405d623ee3dd41c7e8a37</id>
<content type='text'>
* java/AndroidManifest.xml.in: Remove duplicate permissions.

* java/org/gnu/emacs/EmacsWindowManager.java
(removeWindowConsumer): Disregard isFinishing for non-initial
activities.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* java/AndroidManifest.xml.in: Remove duplicate permissions.

* java/org/gnu/emacs/EmacsWindowManager.java
(removeWindowConsumer): Disregard isFinishing for non-initial
activities.
</pre>
</div>
</content>
</entry>
<entry>
<title>Enable relinquishing access to Android content directories</title>
<updated>2024-04-05T07:04:09+00:00</updated>
<author>
<name>Po Lu</name>
</author>
<published>2024-04-05T07:04:09+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=aad63f935f8737598835612b53bc3b53c124661f'/>
<id>aad63f935f8737598835612b53bc3b53c124661f</id>
<content type='text'>
* doc/emacs/android.texi (Android Document Providers): Document
new command.

* java/org/gnu/emacs/EmacsService.java (relinquishUriRights):
New function.

* src/Makefile.in (SOME_MACHINE_OBJECTS): Add androidvfs.c.

* src/android.c (android_init_emacs_service): Link to new
function.

* src/android.h (struct android_emacs_service)
&lt;relinquish_uri_rights&gt;: New field.

* src/androidfns.c:

* src/androidvfs.c (android_saf_tree_name)
(android_saf_tree_opendir): Minor adjustments to commentary.
(Fandroid_relinquish_directory_access): New function.
(syms_of_androidvfs): Define new subr.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* doc/emacs/android.texi (Android Document Providers): Document
new command.

* java/org/gnu/emacs/EmacsService.java (relinquishUriRights):
New function.

* src/Makefile.in (SOME_MACHINE_OBJECTS): Add androidvfs.c.

* src/android.c (android_init_emacs_service): Link to new
function.

* src/android.h (struct android_emacs_service)
&lt;relinquish_uri_rights&gt;: New field.

* src/androidfns.c:

* src/androidvfs.c (android_saf_tree_name)
(android_saf_tree_opendir): Minor adjustments to commentary.
(Fandroid_relinquish_directory_access): New function.
(syms_of_androidvfs): Define new subr.
</pre>
</div>
</content>
</entry>
<entry>
<title>Avoid destroying windows after they are unmapped</title>
<updated>2024-04-04T01:53:07+00:00</updated>
<author>
<name>Po Lu</name>
</author>
<published>2024-04-04T01:53:07+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=42c0603c7aab191c9cc15a7eca1253060ff5b71a'/>
<id>42c0603c7aab191c9cc15a7eca1253060ff5b71a</id>
<content type='text'>
* java/org/gnu/emacs/EmacsActivity.java (destroy): Detach from
current window before calling finish.

* java/org/gnu/emacs/EmacsWindow.java (reparentTo): Don't clear
attachment state here...

* java/org/gnu/emacs/EmacsWindowManager.java (detachWindow):
...but do so here instead.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* java/org/gnu/emacs/EmacsActivity.java (destroy): Detach from
current window before calling finish.

* java/org/gnu/emacs/EmacsWindow.java (reparentTo): Don't clear
attachment state here...

* java/org/gnu/emacs/EmacsWindowManager.java (detachWindow):
...but do so here instead.
</pre>
</div>
</content>
</entry>
</feed>
