Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Fix] Revert back themes and text sheme #951

Closed
xerta555 opened this issue Nov 13, 2024 · 24 comments · Fixed by #952
Closed

[Fix] Revert back themes and text sheme #951

xerta555 opened this issue Nov 13, 2024 · 24 comments · Fixed by #952
Assignees

Comments

@xerta555
Copy link

Hi
With the last version 24.11.1, the dark theme has some drawbacks compared to the previous version (not 24.11 but the one before):

The dark and light themes have some problems compared with the previous version (not 24.11, but the one before): the file description text box no longer uses the Windows text colour, but a grey colour that I don't find very legible. The same problem applies to the light theme.

Also, the scroll bar looks like the one in Windows 11, even though I'm on Windows 10 and prefer the one in 10 to the one in 11, so it's not consistent.

The best thing would be to add an option in the interface for MediaInfo to use the colours and images defined at system level again, so that everyone is happy.

In my case, having a custom Windows theme: all this causes visibility problems whatever the predefined theme selected.

Thanks in advance.

My setup:
Windows 10 22H2

@cjee21
Copy link
Collaborator

cjee21 commented Nov 13, 2024

Screenshot please. The dark theme was never changed since its implementation and its colours are from Embarcadero's VCL Styles and not manually selected. On the light theme, the text colour was never changed too and should be black while only the background was changed. Scrollbars are not implemented or controlled by MediaInfo's source code as well.

@xerta555
Copy link
Author

Screenshot please. The dark theme was never changed since its implementation and its colours are from Embarcadero's VCL Styles and not manually selected. On the light theme, the text colour was never changed too and should be black while only the background was changed. Scrollbars are not implemented or controlled by MediaInfo's source code as well.

OK, so I guess the problem must lie with the VCL styles in this case?

Here's how it looks on Windows 10 using the ‘Use system setting’ option:
image
Note the scrollbars design (Windows 11), the window borders (Windows 11 style on Windows 10 host), the text color which don't match Windows color anymore and background color which hurts my eyes as well as not being very legible, which may not look like it on the screenshot, but it is in real life.

Using the "Light" option:
image
Note the title bar background and color and scrollbars which are respected here
but not the file infos background color which don't use the Windows default one bcz it just use an 255, 255, 255 rgb img/color

Using the "Dark" option:
image
This option includes all the inconsistencies and defects of the ‘Use system setting’ option, as my Windows 10 is configured in dark mode.

The best thing, I think, would be to use the default settings of the host system, so as not to leave any imperfections that could lead to visibility problems in my case.

@cjee21
Copy link
Collaborator

cjee21 commented Nov 13, 2024

This is how MediaInfo 24.11.1 is supposed to look on both light and dark theme. When set to follow system setting, it is exactly the same as when setting to light or dark manually with the difference that it follows the light or dark app mode setting in the Windows settings app.

Regarding the dark theme, it is 100% VCL style. The colours and scrollbars can not be changed in code. I am not satisfied with the non-native title bar and lack of window shadows compared to the light mode as well. The background of light mode text view was changed to match the easy view background (249 ,249, 249) which is also used by many apps that do not use (255, 255, 255).

Screenshot 2024-11-14 003843 Screenshot 2024-11-14 003922
Screenshot 2024-11-14 003903 Screenshot 2024-11-14 003942

For comparison, shown below is close to how native Windows apps should look like for both modes. This is what I am 100% satisfied with.

Screenshot 2024-11-14 005359 Screenshot 2024-11-14 005447
Screenshot 2024-11-14 005513 Screenshot 2024-11-14 005621

@cjee21
Copy link
Collaborator

cjee21 commented Nov 13, 2024

@JeromeMartinez any idea what is going on in #951 (comment)? Seems some toolbar icons went missing too?

@JeromeMartinez
Copy link
Member

Seems some toolbar icons went missing too?

No idea, they are there on my side.

@xerta555
Copy link
Author

@cjee21 you show me your screenshoot on a Windows 11 host, I was speaking of MediaInfo on Windows 10. I even recognise the basic Windows 11 wallpaper in the background of your screenshots, whether the basic wallpaper in your examples is unchanged on Windows 11.

Regarding the dark theme, it is 100% VCL style. The colours and scrollbars can not be changed in code. I am not satisfied with the non-native title bar and lack of window shadows compared to the light mode as well. The background of light mode text view was changed to match the easy view background (249 ,249, 249) which is also used by many apps that do not use (255, 255, 255).

So you confirm to me that the problem come from the VCL style, so is it possible to <> (i use <<>> symbols here to try to explain it in another way) ?

In addition, there's something I didn't mention in my introduction: the fact that the customised dimensions of the windowed mode application are not retained after MediaInfo has been closed and then reopened. I imagine this is yet another VCL-style bug.

In conclusion, I'm open to testing a version not based on the VCL style on my Windows 10 configuration.

Best regards :)

@JeromeMartinez
Copy link
Member

windowed mode application are not retained after MediaInfo has been closed and then reopened. I imagine this is yet another VCL-style bug.

It is never by default on any SDK as far as I know.
There is a pending PR for that.

@cjee21
Copy link
Collaborator

cjee21 commented Nov 13, 2024

@JeromeMartinez should we just reset the backgrounds of all the text views to VCL default which is clWindow? This way it will follow whatever colour that is defined in Windows as clWindow. This is (255, 255, 255) by default on Windows 11 and is the background colour of File Explorer etc.

@JeromeMartinez
Copy link
Member

should we just reset the backgrounds of all the text views to VCL default which is clWindow? This way it will follow whatever colour that is defined in Windows as clWindow.

I am fine with that.

@JeromeMartinez
Copy link
Member

Maybe checking the actual color and if > 249 we set 249? So it is not too much white when white is the default and we keep other default values.

@xerta555
Copy link
Author

@JeromeMartinez should we just reset the backgrounds of all the text views to VCL default which is clWindow? This way it will follow whatever colour that is defined in Windows as clWindow. This is (255, 255, 255) by default on Windows 11 and is the background colour of File Explorer etc.

And what's possible to do about the corners of the MediaInfo window which a Windows 11 style, that don't match on Windows 10 setup ?

@cjee21
Copy link
Collaborator

cjee21 commented Nov 13, 2024

And what's possible to do about the corners of the MediaInfo window which a Windows 11 style, that don't match on Windows 10 setup ?

For scrollbars, window borders, title bar and colours of the dark mode, it is beyond my capabilities and require someone who can mess with VCL styles. I have no intention of learning more about VCL styles and prefer to learn Qt which has dark mode support by default without all these additional work.

@xerta555
Copy link
Author

And what's possible to do about the corners of the MediaInfo window which a Windows 11 style, that don't match on Windows 10 setup ?

For scrollbars, window borders, title bar and colours of the dark mode, it is beyond my capabilities and require someone who can mess with VCL styles. I have no intention of learning more about VCL styles and prefer to learn Qt which has dark mode support by default without all these additional work.

Would replacing VCL with QT fix all these problems and inconsistencies?

@JeromeMartinez
Copy link
Member

Would replacing VCL with QT fix all these problems and inconsistencies?

We have a Qt version but we are far from ready for replacing the current GUI SDK with the Qt version.

@xerta555
Copy link
Author

Would replacing VCL with QT fix all these problems and inconsistencies?

We have a Qt version but we are far from ready for replacing the current GUI SDK with the Qt version.

OK, I can test the version if you need logs files.
Small question, maybe silly, but as there are no silly questions but only useful questions: what if all the SDKs were removed from MediaInfo to just use on the native Windows Form32 that many other applications use, could that make the development easier ?

@JeromeMartinez
Copy link
Member

what if all the SDKs were removed from MediaInfo to just use on the native Windows Form32 that many other applications use, could that make the development easier ?

Maybe, maybe not, some parts will be easier, some others will be harder. And there is a cost of migration, we are not ready to spend this time (so $) ourselves and our sponsors are not interested in sponsoring such dev (the dark mode and 64-bit versions were implemented by @cjee21 on his free time).

Patch welcome if someone is interested enough in that for spending his own time and/or $.

@cjee21
Copy link
Collaborator

cjee21 commented Nov 13, 2024

@JeromeMartinez still plan to migrate to Qt? Should I working on that? Not sure what to do there though. It is already good enough for my use.

I know the HTML viewer has to be improved and Graph view needs to be added. However I discovered that Qt does not yet have integration with system web engines. The only solution I have is to use Qt's built-in web engine (it's on a branch in my fork, renders HTML perfectly) but the issue is that it will make MediaInfo install size a few hundred MB.

@JeromeMartinez
Copy link
Member

still plan to migrate to Qt?

Not at short term, and even not sure that we will switch if Embarcadero keep developing the VCL. You already see all the impact of changing only small parts of the UI, and the switch to Qt would be even more complicated, I am very reluctant to do that.

The only solution I have is to use Qt's built-in web engine (it's on a branch in my fork, renders HTML perfectly) but the issue is that it will make MediaInfo install size a few hundred MB.

It is a big issue for switching to Qt on Windows.
but it could be used for Linux (even if most Linux users have the WxWindows SDK... We also need to stop trying several SDKs and choose one...), so if you wish you can send patches for Qt too which may be used on Linux (so no extra size as we use the distro one).

@cjee21
Copy link
Collaborator

cjee21 commented Nov 13, 2024

what if all the SDKs were removed from MediaInfo to just use on the native Windows Form32 that many other applications use, could that make the development easier ?

AFAIK, need write lots of code to even get a window if using C++. Also Windows does not have native dark mode support. That is why many parts of Windows is still white in dark mode. There is WinUI3 which can make beautiful WIndows 11 apps with mica material. This is used by Windows' built-in apps. However, there is no graphic form editor/designer for this.

This is from my findings, which may be incorrect. But in short, previously I have tried to find a way to make beautiful Windows apps using Visual Studio only but gave up after reading documentations before starting.

@cjee21
Copy link
Collaborator

cjee21 commented Nov 13, 2024

It is a big issue for switching to Qt on Windows. but it could be used for Linux (even if most Linux users have the WxWindows SDK... We also need to stop trying several SDKs and choose one...), so if you wish you can send patches for Qt too which may be used on Linux (so no extra size as we use the distro one).

I will upstream that branch then so I don't have to maintain it. If it is okay on Linux then maybe the Ubuntu (and other distros not yet using Qt) GUI can be migrated to Qt. The current wxWidgets one isn't rendering HTML properly.

Maybe Qt will integrate with Edge WebView2 by the time MediaInfo decides to move from VCL.

@cjee21
Copy link
Collaborator

cjee21 commented Nov 13, 2024

FYI to those who not yet know, the screenshots in the bottom half of #951 (comment) are screenshots of the Qt version.

@JeromeMartinez
Copy link
Member

build with background color change to clWindows.

@xerta555
Copy link
Author

build with background color change to clWindows.

This version works as i want (like before for the GUI), thanks for this try 👍🏻
Don't hesitate to send another tests builds if necessary.

@JeromeMartinez
Copy link
Member

Closed by #952.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants