<feed xmlns='http://www.w3.org/2005/Atom'>
<title>chemacs.git/java/org/gnu/emacs/EmacsView.java, branch devmain</title>
<subtitle>emacs
</subtitle>
<id>http://cgit.adnoto.dev/chemacs.git/atom?h=devmain</id>
<link rel='self' href='http://cgit.adnoto.dev/chemacs.git/atom?h=devmain'/>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/'/>
<updated>2026-01-01T12:54:34Z</updated>
<entry>
<title>; Add 2026 to copyright years.</title>
<updated>2026-01-01T12:54:34Z</updated>
<author>
<name>Sean Whitton</name>
<email>spwhitton@spwhitton.name</email>
</author>
<published>2026-01-01T12:54:34Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=c31f6adc31d48076c63ad82b83b2970e1b0d7b9b'/>
<id>urn:sha1:c31f6adc31d48076c63ad82b83b2970e1b0d7b9b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Circumvent another styling issue in Android 15 QPR1</title>
<updated>2025-03-04T01:47:30Z</updated>
<author>
<name>Po Lu</name>
<email>luangruo@yahoo.com</email>
</author>
<published>2025-03-04T01:36:19Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=d6aea7cc948f13615237a91d347b0383a3089a8a'/>
<id>urn:sha1:d6aea7cc948f13615237a91d347b0383a3089a8a</id>
<content type='text'>
* java/org/gnu/emacs/EmacsView.java (popupMenu): On Android 15
and later, reload the default theme before displaying popup
menus.
</content>
</entry>
<entry>
<title>Fix styling issues on Android 15 QPR1</title>
<updated>2025-03-03T13:59:41Z</updated>
<author>
<name>Po Lu</name>
<email>luangruo@yahoo.com</email>
</author>
<published>2025-03-03T13:57:05Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=96d26b493618f59bbdd4de86be65e784735541c8'/>
<id>urn:sha1:96d26b493618f59bbdd4de86be65e784735541c8</id>
<content type='text'>
* java/org/gnu/emacs/EmacsView.java (EmacsView): Guarantee that
frame views are created with the correct theme.

* java/res/values-v20/style.xml (EmacsStyle):

* java/res/values-v29/style.xml (EmacsStyle): Disable a swiping
gesture enabled on certain Android systems.

* java/res/values-v35/style.xml: Rename from `styles'.xml.
</content>
</entry>
<entry>
<title>Fix remaining Android bugs reported over the past months</title>
<updated>2025-02-19T12:40:12Z</updated>
<author>
<name>Po Lu</name>
<email>luangruo@yahoo.com</email>
</author>
<published>2025-02-19T12:40:12Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=ded77feffface0c167edacf0d807273f3d4878db'/>
<id>urn:sha1:ded77feffface0c167edacf0d807273f3d4878db</id>
<content type='text'>
* java/org/gnu/emacs/EmacsActivity.java (attachWindow):
Guarantee that child windows promoted to toplevels receive
layout parameters that direct them to receive their parents'
dimensions.  Otherwise, the size of the window as a child is
retained on Huawei HarmonyOS 4.2 and possibly other Android
distributions.

* java/org/gnu/emacs/EmacsService.java (updateCursorAnchorInfo):
Run anchor updates on the UI thread, as
`InputMethodManager#updateCursorAnchorInfo' is liable to call
`View#requestLayout'.

* java/org/gnu/emacs/EmacsView.java (onMeasure): Always call
`measureChildren', or child frames' onLayout handlers might not
be invoked after they request a layout cycle and are duly
processed in `onLayout'.
(swapBuffers): Delete erroneous commentary.

* java/org/gnu/emacs/EmacsWindow.java (viewLayout): If
overrideRedirect, don't inadvertently clear rect.left and
rect.top by recording the window's WM window-relative position.
Fix typos.
(reparentTo): Invalidate focus after transferring frame.
(translateCoordinates): Account for override-redirect windows.
Mostly important for mouse-drag-and-drop-region.
</content>
</entry>
<entry>
<title>Update copyright year to 2025</title>
<updated>2025-01-02T17:39:42Z</updated>
<author>
<name>Stefan Kangas</name>
<email>stefankangas@gmail.com</email>
</author>
<published>2025-01-02T17:32:51Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=7fa975adbce3f2ce4ba40ea52110b992a52262b6'/>
<id>urn:sha1:7fa975adbce3f2ce4ba40ea52110b992a52262b6</id>
<content type='text'>
Run "TZ=UTC0 admin/update-copyright".
</content>
</entry>
<entry>
<title>Fix omission of updates to child frames on Android</title>
<updated>2024-06-24T04:04:05Z</updated>
<author>
<name>Po Lu</name>
<email>luangruo@yahoo.com</email>
</author>
<published>2024-06-24T04:04:05Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=73a58329a6946f5abc62fee2647efba56cce236b'/>
<id>urn:sha1:73a58329a6946f5abc62fee2647efba56cce236b</id>
<content type='text'>
* java/org/gnu/emacs/EmacsView.java (onAttachedFromWindow):
Force a layout cycle rather than report exposure immediately.
(prepareForLayout): Delete function.

* java/org/gnu/emacs/EmacsWindow.java (mapWindow): Remove
redundant calls to prepareForLayout.

* src/androidterm.c (handle_one_android_event): Do not swap
buffers when exposure is registered by a frame only partially
updated.
</content>
</entry>
<entry>
<title>Avoid races between the tooltip and compositor on X and Android</title>
<updated>2024-06-19T02:57:07Z</updated>
<author>
<name>Po Lu</name>
<email>luangruo@yahoo.com</email>
</author>
<published>2024-06-19T02:57:07Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=5fceb53856583384e7adeab52494d1afc6eae666'/>
<id>urn:sha1:5fceb53856583384e7adeab52494d1afc6eae666</id>
<content type='text'>
* java/org/gnu/emacs/EmacsView.java (onLayout): Don't send
exposure events when the window is still to be attached.

* src/androidfns.c (Fx_show_tip):

* src/xfns.c (Fx_show_tip): Block async input around initial
frame update.
</content>
</entry>
<entry>
<title>Reinforce bitmap reconfiguration on Android</title>
<updated>2024-06-17T09:45:48Z</updated>
<author>
<name>Po Lu</name>
<email>luangruo@yahoo.com</email>
</author>
<published>2024-06-17T09:43:24Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=82f0014273193d27c71a1fcb9be778c85cfa5e65'/>
<id>urn:sha1:82f0014273193d27c71a1fcb9be778c85cfa5e65</id>
<content type='text'>
* java/org/gnu/emacs/EmacsView.java (EmacsView) &lt;unswapped&gt;: New
field in which to record whether the back buffer has received
contents beyond those present at the last buffer swap.
&lt;dimensionsLock&gt;: Delete field.
(onAttachedToWindow, onLayout, handleDirtyBitmap)
(prepareForLayout): Rather, synchronize window dimensions with
the view.
(getCanvas, getBitmap): Do not reconfigure the back buffer
bitmap if such outstanding data exists.
(postSwapBuffers): New function.
(swapBuffers): If such outstanding data exists and the back
bufferis pending reconfiguration, recreate the back buffer and
report exposure.

* src/androidterm.c (handle_one_android_event): Fix indentation.
</content>
</entry>
<entry>
<title>Simplify bitmap reallocation on Android</title>
<updated>2024-06-16T03:35:44Z</updated>
<author>
<name>Po Lu</name>
<email>luangruo@yahoo.com</email>
</author>
<published>2024-06-16T03:35:44Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=8d60b6bab8b95e4f3b350a8b093e8f60e3f83f69'/>
<id>urn:sha1:8d60b6bab8b95e4f3b350a8b093e8f60e3f83f69</id>
<content type='text'>
* java/org/gnu/emacs/EmacsView.java: Update outdated commentary.
(handleDirtyBitmap): Don't copy contents of the previous bitmap
to the new.
(onLayout): Unconditionally expose upon layout changes.
</content>
</entry>
<entry>
<title>Eliminate some redundant synchronization on Android</title>
<updated>2024-06-11T06:40:55Z</updated>
<author>
<name>Po Lu</name>
<email>luangruo@yahoo.com</email>
</author>
<published>2024-06-11T06:39:40Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/chemacs.git/commit/?id=677f082b0feda295e6a710b5dac6040f57cfad8b'/>
<id>urn:sha1:677f082b0feda295e6a710b5dac6040f57cfad8b</id>
<content type='text'>
* java/org/gnu/emacs/EmacsService.java (resetIC): Return on all
versions of Android if the connection need not be reset.

* java/org/gnu/emacs/EmacsView.java (getICMode, setICMode):
Remove needless synchronization.
</content>
</entry>
</feed>
