NotepadNext icon indicating copy to clipboard operation
NotepadNext copied to clipboard

Support Dark Mode

Open wayne-zhang opened this issue 1 year ago • 7 comments

Most of 'modern' applications supports application controlled/configured dark mode, such as Notepad++, Eclipse, Intellij IDEA. Notepad Next should support dark mode too.

Qt dark mode support for Windows has some issues but there are third party Qt dark mode support such as QDarkStyleSheet: https://github.com/ColinDuquesnoy/QDarkStyleSheet. I have done some investigation on QDarkStyleSheet, it seems possible to implement dark mode based on QDarkStyleSheet. I have tested it on Linux and the result is positive (I have trouble to install Qt on Windows and can't build Notepad Next on/for Windows, proxy issue).

I can contribute on the dark mode implementation

wayne-zhang avatar Jun 28 '23 03:06 wayne-zhang

I can contribute on the dark mode implementation

Go ahead and open a pr.

I guess it's fine to implement features for only some platforms. After all, not everyone has devices for all platforms.

And I can test the build on windows.

xref: #288

inkydragon avatar Jun 28 '23 13:06 inkydragon

Dark mode is definitely desired but has been low on my list of priorities, especially since it is a relatively independent feature.

I think for now just the UI elements is worth focusing on. Having a dark theme for the language styles is a whole separate discussion because I think there are improvements to be made that would make implementing a dark style/theme much easier.

dail8859 avatar Jun 28 '23 14:06 dail8859

Hi @dail8859, I have almost completed it, testing and change the language theme now. I don't know text colors (both background for foreground) before, it took me several days to find it finally. I have tried a lots to fix the issue why text color doesn't take effect by set default background/foreground (STYLE_DEFAULT).

I used different language folders (languages/dark) for the dark mode language themes, it's flexible to make it doesn't impact light/default theme. It can migrate to the your new language theme framework when it's ready.

Also, a question, how to build on MacOS? I hasn't found the document yet. I can build and test MacOS as I am working on MacOS ARM64 (with Linux VM). I have a Windows ARM VM too but haven't tested if Visual Studio works on Windows ARM yet.

wayne-zhang avatar Jul 01 '23 12:07 wayne-zhang

how to build on MacOS?

https://github.com/dail8859/NotepadNext/blob/84b0308212374b05f2a0f27c51628a1b8b74af68/.github/workflows/build.yml#L78-L102

inkydragon avatar Jul 01 '23 14:07 inkydragon

I have implemented dark mode, both UI, editors and languages (Lua configuration).

Dark mode change requires application restart to take effect at the moment, will try to do enhancement without application bounce in the future.

Tested on Linux ARM64 and MacOS ARM64, haven't tested it on Windows.

I have created a PR, please review and test it on Windows.

wayne-zhang avatar Jul 05 '23 15:07 wayne-zhang

I have created a PR, please review and test it on Windows.

What is the number of the PR?

guilhermegps avatar Jul 03 '24 18:07 guilhermegps

I have created a PR, please review and test it on Windows.

What is the number of the PR?

It's this one, I believe, https://github.com/dail8859/NotepadNext/pull/411

tsuliwaensis avatar Jul 05 '24 02:07 tsuliwaensis