winmerge icon indicating copy to clipboard operation
winmerge copied to clipboard

Feature: Dark mode

Open ShamblerBishop opened this issue 4 years ago • 20 comments

Working with WinMerge on a 32" 4K monitor, alt-tabbing between dark-mode Visual Studio, and a full screen WinMerge - is pretty jarring/searing on my eyes - be nice to have a dark mode, like VS!

ShamblerBishop avatar Aug 09 '20 02:08 ShamblerBishop

Ah, duplicate.

ShamblerBishop avatar Aug 09 '20 02:08 ShamblerBishop

@ShamblerBishop I don't think this should be a duplicate of Dark theme since Dark mode is NOT Dark theme.

As implemented in latest Windows 10, Dark mode refers to adjusting the whole application look an feel to be presented in dark colors including main window, menus, icons instead of just theming the content area.

@sdottaka Perhaps this should be re-opened/re-considered?

ikappas avatar Sep 26 '20 09:09 ikappas

Any news about it?

Neustradamus avatar Jul 15 '21 00:07 Neustradamus

So far I haven't done anything about dark mode.

I expected to improve Dark Mode support for Win32 applications on Windows 11, but I haven't seen any improvement.

Currently, I'm not very enthusiastic because dark mode can only be achieved using an undocumented API. Pull Requests are welcome.

sdottaka avatar Jul 15 '21 12:07 sdottaka

+1 This is desperately needed. The "dark" theme (which is hideous btw) is not the same thing as dark MODE.

But for the PRICE, I cannot complain! 😊 Though I am about to switch to Beyond Compare which is rolling out Dark Mode in the upcoming v5 release. 🌑

PwrSrg avatar Jan 26 '22 15:01 PwrSrg

+1 Please we need that! It will be amazing

andresbnd avatar Mar 23 '23 04:03 andresbnd

Considering WinMerge is free software, perhaps it would be worth the author offering up a crowdfunding option to try and fund the development of this.

rigiddesign avatar Apr 03 '23 15:04 rigiddesign

Hi, I guess the undocumented API calls are these? https://github.com/ysc3839/win32-darkmode/tree/master I tested this on my PC and it didn't work, and my Windows 10 is in theory "updated" Since the program uses MFC that doesn't support dark mode at all I guess supporting it is out of the question, isn't it?

bamtang-dev avatar Oct 09 '23 20:10 bamtang-dev

I just went down this rabbithole.

Free alternatives with an actual dark UI:

Meld (meldmerge.org)

P4Merge (perforce.com)

Actually, the perforce website gives off strong Oracle vibes, so I'm not too sure about the 'free' part.

flappysquirrel avatar Oct 11 '23 16:10 flappysquirrel

I like WinMerge, but the lack of dark mode makes it unusable for me: when WIndows OS is in dark mode, using WinMerge makes white flashes in your eyes each time you open its window, which is killing the eyes. WinMerge definitely needs a dark mode. Almost all applications, now end 2023, have a light/dark mode automatically switching with Windows OS light/dark mode.

oeloo avatar Oct 16 '23 06:10 oeloo

This is a much needed feature!

Tamarindo94 avatar Jan 20 '24 16:01 Tamarindo94

hello there, fellow dark-mode users, I've been through the rabbit hole too

teub avatar Feb 10 '24 08:02 teub

I just went down this rabbithole.

Free alternatives with an actual dark UI:

Meld (meldmerge.org)

Meld does not look good on win 11 with Dark Mode.

image

kursad-k avatar Mar 12 '24 17:03 kursad-k

for some code inspiration, notepad++ implemented dark mode, maybe this helps

luckyluc74 avatar Mar 20 '24 20:03 luckyluc74

for some code inspiration, notepad++ implemented dark mode, maybe this helps

interesting, but do they use MFC? I quickly checked their source code and I can't find if they are using MFC that is the main blocker.

bamtang-dev avatar Mar 20 '24 20:03 bamtang-dev

Microsoft Foundation Class (MFC) Library

https://learn.microsoft.com/en-us/cpp/mfc/reference/creating-a-forms-based-mfc-application?view=msvc-170 https://learn.microsoft.com/en-us/cpp/mfc/reference/creating-an-mfc-application?view=msvc-170 https://learn.microsoft.com/en-us/cpp/mfc/mfc-desktop-applications?view=msvc-170

https://learn.microsoft.com/en-us/cpp/mfc/mfc-library-versions?view=msvc-170

Static library files named (N)(U)AFX#(D).LIB. Shared library files named MFC#(U)(D).DLL.

Found an example:

https://learn.microsoft.com/en-us/cpp/windows/redistributing-the-mfc-library?view=msvc-170

mfc140.dll

.../WinMerge/WinMergeU.exe https://www.virustotal.com/gui/file/975a092a2249ecb74e641fde94e51b01c304886a44c9114c35fd956131c47592/summary

Based on the VT report, it is probably a Win32 App, before MFC? Based on those several *32.dll files implementing parts of the complete API.

Reduce Win32API type usage in code

https://github.com/WinMerge/winmerge/blob/master/Src/Merge.vcxproj Link sections, DelayLoadDLLs entries have comdlg32.dll. That may be the main one.

Unrelated: https://malwaretips.com/blogs/vcomp140-dll-what-it-is-how-to-fix-errors/

Pysis868 avatar Mar 21 '24 18:03 Pysis868

+1 I also wanted to ask for dark mode that includes the whole UI! I would much prefer a dark mode that goes with the default darkmode native to windows 10, which is mostly black, instead of the colors currently offered in the limited dark themes. For example, Notepad3 added that as an option called 'Windows Dark Mode' and it works really well and is much calmer to the eyes!

AutumnGamer avatar Mar 29 '24 19:03 AutumnGamer