[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#68766: 29.2; Windows dark/light mode changes does not reflect on Ema
From: |
Rahul M. Juliato |
Subject: |
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 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
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