GNU bug report logs - #68766
29.2; Windows dark/light mode changes does not reflect on Emacs Title bar/Scrollbar

Previous Next

Package: emacs;

Reported by: "Rahul M. Juliato" <rahuljuliato <at> gmail.com>

Date: Sun, 28 Jan 2024 02:10:02 UTC

Severity: normal

Found in version 29.2

Full log


Message #32 received at 68766 <at> debbugs.gnu.org (full text, mbox):

From: "Rahul M. Juliato" <rahuljuliato <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 68766 <at> debbugs.gnu.org
Subject: Re: bug#68766: 29.2; Windows dark/light mode changes does not
 reflect on Emacs Title bar/Scrollbar
Date: Tue, 30 Jan 2024 16:57:26 -0300
Hello there again!


Regarding the side discussion Stefan and Eli were commenting on (and if I am
polluting this thread, please tell me where we can take this conversation).


I'd be more than happy if `auto-dark-mode` or some version
of it gets added to Emacs or some other more "official" package archive than
MELPA. I am also happy to help on any other matter I can contribute.


Just to be clear of what the package does:

- User sets a variable with "dark-mode" theme name;

- The same for "light-mode"

- Starts the minor mode either manually or on boot (auto-dark-mode)

- Emacs changes between these themes whenever system changes its dark/light
  mode internal state

- Also works with Doom Emacs and Spacemacs


Systems supported by the detection mechanism:

- macos: using `emacs-plus` (faster detection method) or any other emacs build
         falling back to osascript (a little slower detection method)

- gnu/linux: trough dbus with Gnome or gnome modules installed booting another
             WM, such as Sway or i3

- android: using `Termux`

- windows: through powershell or winreg


I am currently working on:

- nil themes: if the user wants to keep the original Emacs appearance,
              and/or set both themes to nil, and use only the detection
              mechanism with auto-dark post detection hooks to do
              something else. (Done, committed it today).

- macos:      emacs-mac build trough a faster detection method since someone
              pointed me there's a similar function to execute applescript
              than i've used for `emacs-plus` build.

- docs:       I plan to work shortly on a walk-trough install guide, some
              development tips and a FAQ


If you'd like to keep auto-dark as is today, I think we could add another
detection mechanism option such as *emacs-internal-auto-dark*, that may be fed
by some internally calculated status into a global elisp variable in which we
could use some event/or polling function to keep track of it during the
execution of the minor-mode.
    

The tricky part here would be assuring that all graphical toolkits in
all OSes can feed the OS system status to Emacs. On either Linux and macOS it
seems to be "automatically done"; Windows, as the bug originally described might
be harder.


Also the source code can be found here: https://github.com/LionyxML/auto-dark-emacs


Thank you for the opportunity to share it with you and discuss this matter.


Rahul M. Juliato




This bug report was last modified 1 year and 173 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.