1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-12 14:30:42 -08:00
emacs/java/org/gnu/emacs
Po Lu 7550791287 Support `toolkit-theme-set-functions' on Android and execute hooks safely
* java/org/gnu/emacs/EmacsNative.java (setEmacsParams): New arg
UIMODE.
(sendConfigurationChanged): New args DETAIL and UI_MODE.

* java/org/gnu/emacs/EmacsNoninteractive.java (main1): Provide
an undefined UI mode.

* java/org/gnu/emacs/EmacsService.java (EmacsService): New field
uiMode.
(onCreate): Initialize this field at start-up and provide the
same to setEmacsParams.
(onConfigurationChanged): If the UI mode has been altered,
generate a configuration changed event to match.

* src/android.c (android_ui_mode): New variable.
(setEmacsParams): New argument UI_MODE.  Initialize the same
from this variable.

* src/androidgui.h (enum android_configuration_changed): New
enum.
(struct android_configuration_changed_event): New field
`DETAIL'.  Convert fields providing specifics into a union of
display density information and a UI mode integer.

* src/androidterm.c (handle_one_android_event): Handle both
manners of configuration change events.
(android_term_init): Initialize Vtoolkit_theme from UI mode
provided at start-up.

* src/frame.c (syms_of_frame): Always define Vtoolkit_theme.
Define Qtoolkit_theme_set_functions.

* src/gtkutil.c (xg_update_dark_mode_for_all_displays):

* src/w32term.c (w32_read_socket): Generate special toolkit
theme events, rather than executing hooks directly within the
read_socket callback.

* src/keyboard.c (kbd_buffer_get_event)
<TOOLKIT_THEME_CHANGED_EVENT>: Run Qtoolkit_theme_set_functions
and set Vtoolkit_theme from event->ie.arg.

* src/termhooks.h (enum event_kind): New event
TOOLKIT_THEME_CHANGED_EVENT.
2025-11-24 10:16:49 +08:00
..
EmacsActivity.java Port to Android API 36 2025-06-11 10:34:49 +08:00
EmacsApplication.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsClipboard.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsContextMenu.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsCursor.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsDesktopNotification.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsDialog.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsDialogButtonLayout.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsDirectoryEntry.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsDocumentsProvider.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsDrawable.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsDrawLine.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsDrawPoint.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsDrawRectangle.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsFillPolygon.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsFillRectangle.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsFontDriver.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsGC.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsHandleObject.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsHolder.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsInputConnection.java ; * java/org/gnu/emacs/EmacsInputConnection.java: Fix commentary typo. 2025-03-20 10:23:49 +08:00
EmacsLauncherPreferencesActivity.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsMultitaskActivity.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsNative.java Support `toolkit-theme-set-functions' on Android and execute hooks safely 2025-11-24 10:16:49 +08:00
EmacsNoninteractive.java Support `toolkit-theme-set-functions' on Android and execute hooks safely 2025-11-24 10:16:49 +08:00
EmacsOpenActivity.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsPixmap.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsPreferencesActivity.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsSafThread.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsSdk7FontDriver.java Respond to display configuration updates on Android 2025-04-10 15:25:38 +08:00
EmacsSdk8Clipboard.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsSdk11Clipboard.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsSdk23FontDriver.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsService.java Support `toolkit-theme-set-functions' on Android and execute hooks safely 2025-11-24 10:16:49 +08:00
EmacsSurfaceView.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsThread.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsTileObject.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EmacsView.java Circumvent another styling issue in Android 15 QPR1 2025-03-04 09:47:30 +08:00
EmacsWindow.java Port to Android API 36 2025-06-11 10:34:49 +08:00
EmacsWindowManager.java Update copyright year to 2025 2025-01-02 18:39:42 +01:00