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

Strange behavior when hovering over checkboxes in the settings (workaround: move main application over to fusion style) #13603

Open
54m4d opened this issue Oct 22, 2020 · 57 comments
Labels
Confirmed bug An issue confirmed by project team to be considered as a bug GUI GUI-related issues/changes has workaround Qt bugs Bug resides in Qt library Waiting info Waiting for participants to supply more info/fulfill template requirements Waiting upstream Waiting for changes in dependent libraries

Comments

@54m4d
Copy link

54m4d commented Oct 22, 2020

Please provide the following information

qBittorrent version and Operating System

v4.3.0 (64-bit) Windows 10 Pro 2004 (Build 19041.264)

10.0.19041

If on linux, libtorrent-rasterbar and Qt version

Not on linux.

What is the problem

Strange animation and kind of blurry and bold checkboxes when hovering over them. (see attachments below)

Strange behavior

As it can be seen on the screenshot below, blurry and bold checkboxes when hovering over them with the mouse pointer.

Blurry and bold checkboxes

What is the expected behavior

The expected behavior is to not see that kind of strange animation around the checkboxes.

Steps to reproduce

Not sure if i'm the only one?

Extra info(if any)

My display is 2560x1440p and the scaling is at 125%
When switching to 100% the issue does not occur.
Did the high DPI scaling override and it did not help.
No issues at all on qBittorrent v4.2.5

══════════════════════════════════════════════════════════════════════════════════

EDIT: 03.05.2021

The scaling issue has improved a lot since last time although i haven't done anything, as you can see in the demo below, the visual artifact in the checkboxes has improved significantly even though there are 1-2 checkboxes that still artifact (mostly when scrolling up and down)

Capture 03_05_2021_06_47_06

I have also zoomed in on the checkboxes to give you an idea on how the artifacted ones look like:

Capture 03_05_2021_07_27_20

@jaywyeee
Copy link

I have this issue as well. Anything that has a hover or focus state displays distorted behavior. I'm suspecting the cause to be the Qt upgrade.

@xavier2k6
Copy link
Member

xavier2k6 commented Oct 22, 2020

@fosam @jaywyeee Can you edit your qt.conf file with this:

[Platforms]
WindowsArguments = fontengine=freetype

EDIT: I believe this to be Qt fractional scale problem.

@FranciscoPombal FranciscoPombal added GUI GUI-related issues/changes Qt bugs Bug resides in Qt library labels Oct 22, 2020
@54m4d
Copy link
Author

54m4d commented Oct 22, 2020

@fosam @jaywyeee Can you edit your qt.conf file with this:

[Platforms]
WindowsArguments = fontengine=freetype

EDIT: I believe this to be Qt fractional scale problem.

@xavier2k6 Thanks for the effort

But sorry to say that it made the font a bit worse than before while the above issue still persists.

With fontengine=freetype

fontengine=freetype

Without fontengine=freetype the text/font is sharper and therefore more clear as you can see below:

normal

@54m4d
Copy link
Author

54m4d commented Oct 23, 2020

No fix in v4.3.0.1

@jaywyeee
Copy link

@fosam @jaywyeee Can you edit your qt.conf file with this:

[Platforms]
WindowsArguments = fontengine=freetype

EDIT: I believe this to be Qt fractional scale problem.

Same result as @fosam.

@xavier2k6
Copy link
Member

Can you guys try the below test build, it is 4.3.0 with a "crash fix" (This essentially became the official 4.3.0.1)

(Trying to see if compilation with MSVC 2017 Vs MSVC 2019 plays any role here with regards to HiDpi/scaling)

Windows test build of 4.3.0(Release) with arvidn/libtorrent#5228 & listed libraries:

qBittorrent Release | 4.3.0 commit: b925cff (Oct 18, 2020)
libtorrent-rasterbar | 1.2.10.0 commit: c2f001a (Oct 19, 2020)
Qt                   | 5.15.1
OpenSSL              | 1.1.1h
zlib                 | 1.2.11
Boost                | 1.74

Download Link

@54m4d
Copy link
Author

54m4d commented Oct 28, 2020

@xavier2k6 Thanks for the effort but unfortunately...👇😭

Screenshot 2020-10-28 203023

@xavier2k6
Copy link
Member

xavier2k6 commented Oct 28, 2020

thanks @fosam for the feedback, did you experience this with 4.2,5? - that used Qt 5.13.2

We won't know for sure if Qt5.15.2 will fix this, if it is a Qt issue until around the 3rd+ of November when it is scheduled to be released & a test build can be created.

@54m4d
Copy link
Author

54m4d commented Oct 30, 2020

@xavier2k6 No issues at all on qBittorrent v4.2.5
Would be great if somebody could test Qt 5.15.2 it is only a few days away

@xavier2k6
Copy link
Member

@xavier2k6 No issues at all on qBittorrent v4.2.5
Would be great if somebody could test Qt 5.15.2 it is only a few days away

I will provide a test build as soon as I have access to the released Qt5.15.2 source.

@54m4d
Copy link
Author

54m4d commented Oct 30, 2020

@xavier2k6 Thanks!

@54m4d
Copy link
Author

54m4d commented Nov 25, 2020

Still the same issue with v4.3.1

@FranciscoPombal FranciscoPombal added the Confirmed bug An issue confirmed by project team to be considered as a bug label Dec 10, 2020
@FranciscoPombal
Copy link
Member

FranciscoPombal commented Dec 10, 2020

I can reproduce this with 4.3.1 + Windows 10 20H2, 1080p screen, no DPI-related environment variable overrides, with 150% scaling or higher.

Doesn't matter if DPI setting is changed before qBittorrent is started or while it is running.

Workarounds mentioned in #13749 (comment) have no effect on this one.

@54m4d
Copy link
Author

54m4d commented Dec 11, 2020

I can reproduce this with 4.3.1 + Windows 10 20H2, 1080p screen, no DPI-related environment variable overrides, changing with 150% scaling or higher.

Doesn't matter if DPI setting is changed before qBittorrent is started or while it is running.

Workarounds mentioned in #13749 (comment) have no effect on this one.

@FranciscoPombal

I've tried all the workarounds, non-work, but note that i have no issues @100% scaling as i mentioned above. 1440p screen.
Were you able to reproduce the issue @100% scaling too?

@FranciscoPombal
Copy link
Member

@fosam

@FranciscoPombal

I've tried all the workarounds, non-work, but note that i have no issues @100% scaling as i mentioned above. 1440p screen.
Were you able to reproduce the issue @100% scaling too?

As my comment says:

  • the linked workarounds don't solve this problem
  • In my case (1080p monitor) I can only reproduce on 150% scaling or higher (though it is possible that the problem also exists at 125% but the artifacting is too small to notice). No issues at 100%.

@54m4d
Copy link
Author

54m4d commented Dec 11, 2020

As my comment says:

  • the linked workarounds don't solve this problem
  • In my case (1080p monitor) I can only reproduce on 150% scaling or higher (though it is possible that the problem also exists at 125% but the artifacting is too small to notice). No issues at 100%.

@FranciscoPombal

Yes. for me the issue starts @125% and the more you go up, the worse it gets, keep also in mind that the settings menu i'm showing above in the issue is not the only affected item, the pop-up windows for example also don't look natural, like the pop-up window when you check for updates. it looks distorted.

My question though is why qBittorrent v4.2.5 does not have this issue at all, what's the difference?

Let's hope it gets fixed in future developments :)

@FranciscoPombal
Copy link
Member

@fosam

Yes. for me the issue starts @125% and the more you go up, the worse it gets, keep also in mind that the settings menu i'm showing above in the issue is not the only affected item, the pop-up windows for example also don't look natural, like the pop-up window when you check for updates. it looks distorted.

👍

My question though is why qBittorrent v4.2.5 does not have this issue at all, what's the difference?

Newer Qt version. Qt support for high DPI scaling has always been a mess. It is now better than ever, but little quirks like this remain. While this a straight regression in your use case, for other users, there were even worse issues that got fixed. It's sort of a case of "whack a bug here, another one (smaller, at least) appears somewhere else".

Let's hope it will be better in future development :)

These kinds of issues should all go away once Qt supports the Per Monitor V2 mechanism/protocol/whatever in Windows. This is expected for Qt6, but there is a chance that it might be backported to one of the remaining Qt5.x releases. Not much we can do until then. Just enjoy the other features. Recent versions, >= 4.3.0 offer massive improvements in performance and connectivity over 4.2.x versions.

@54m4d
Copy link
Author

54m4d commented Dec 11, 2020

Thanks!

@xavier2k6
Copy link
Member

xavier2k6 commented Dec 11, 2020

@FranciscoPombal @fosam I've been able to reproduce this issue on 150% scaling/1080p monitor too & I believe below is a fix/workaround Can you try? (tested with 4.3.1 portable profile/defaults....so no qt.conf manipulation)

Select qBittorrent.exe->right click->Properties->Compatibility->Change high DPI settings

High DPI scaling override
Override high DPI scaling behaviour->Enable
Scaling performed by:->System

@54m4d
Copy link
Author

54m4d commented Dec 11, 2020

@FranciscoPombal @fosam I've been able to reproduce this issue on 150% scaling/1080p monitor too & I believe below is a fix/workaround Can you try? (tested with 4.3.1 portable profile/defaults....so no qt.conf manipulation)

Select qBittorrent.exe->right click->Properties->Compatibility->Change high DPI settings

High DPI scaling override
Override high DPI scaling behaviour->Enable
Scaling performed by:->System

@xavier2k6

That is the first thing that comes to mind, and of course doesn't work, it makes the font look the worst, same as when we tried the free font workaround, check the comparison above..

Sorry to disappoint :(

@xavier2k6
Copy link
Member

xavier2k6 commented Dec 11, 2020

@fosam Have you Let Windows try to fix apps so they're not blurry enabled as well under Advanced scaling settings?

@54m4d
Copy link
Author

54m4d commented Dec 11, 2020

@fosam Have you Let Windows try to fix apps so they're not blurry enabled as well under Advanced scaling settings?

Yes of course, i tried all those workarounds before opening this issue here, and unfortunately non of them worked.

I think i need better eyes to be able to use 100% scaling 😁

@xavier2k6
Copy link
Member

xavier2k6 commented Dec 12, 2020

@fosam are you running in portable mode by any chance?

Can you post a screenshot of qBittorrent.exe via Task Manager->Details with column DPI Awareness active for each Windows argument 0,1,2

@54m4d
Copy link
Author

54m4d commented Dec 13, 2020

@fosam are you running in portable mode by any chance?

Can you post a screenshot of qBittorrent.exe via Task Manager->Details with column DPI Awareness active for each Windows argument 0,1,2

@xavier2k6 I'm running in regular mode.

Screenshot of qBittorrent.exe in task manager or what? there's too little details in there..

dpiawareness=1
dpiawareness=1

@ArcticGems
Copy link

4.3.5 is the 6th release in a row now with this issue still ongoing. What's the deal?

Still only use Qt 5.11. In QBit 4.4.x version they will start to use Qt 5.15 (I think?),
check out what it says about DPI in Qt 5.14 changelog =
https://wiki.qt.io/New_Features_in_Qt_5.14

@54m4d
Copy link
Author

54m4d commented May 3, 2021

@harvestry-of-ghosts What version of Windows 10 do yo have now?

@xavier2k6
Copy link
Member

Still only use Qt 5.11. In QBit 4.4.x version they will start to use Qt 5.15 (I think?)

Qt 5.15.2 is currently being used in Releases.
Qt 5.11 - is more of a minimum required to build etc.

@54m4d
Copy link
Author

54m4d commented May 21, 2021

After the improvement after some Windows 10 updates, it seems like the problem is not related to Qt...but i cannot confirm.

@xavier2k6
Copy link
Member

@harvestry-of-ghosts @fosam
Please try build associated with your OS from below:
https://github.com/qbittorrent/qBittorrent/actions/runs/875530646#artifacts

I would like some feedback in relation to running it as you normally would & then when you run qbittorrent -style fusion from a command prompt/where you have that qbittorrent build installed.

@54m4d
Copy link
Author

54m4d commented May 27, 2021

@xavier2k6

Thanks for providing the test build!

It is still the same as my last testing (03.05.2021). for the fusion style, it has always worked fine, in the past too.

Here is the feedback from the test build:

normal

normally would

-style fusion

-style fusion

about

Capture 27_05_2021_03_27_59

@harvestry-of-ghosts
Copy link

harvestry-of-ghosts commented Jun 4, 2021

After the improvement after some Windows 10 updates, it seems like the problem is not related to Qt...but i cannot confirm.

No improvement here whatsoever.

@harvestry-of-ghosts @fosam
Please try build associated with your OS from below:
https://github.com/qbittorrent/qBittorrent/actions/runs/875530646#artifacts

I would like some feedback in relation to running it as you normally would & then when you run qbittorrent -style fusion from a command prompt/where you have that qbittorrent build installed.

Running normally has the same problem with all boxes as the latest official release. Running with the command and your build has other problems that the official does not have when running with the command. The check boxes work properly, but other things are introduced in your build as can be seen in the following images. On the second image, the line disappears and glitches when I adjust the size.

1

2

@xavier2k6
Copy link
Member

@harvestry-of-ghosts
What is screen resolution?
What scaling are you using?

@harvestry-of-ghosts
Copy link

@xavier2k6

1920x1080
150%
Windows 10 x64 Version 20H2 (OS Build 19042.1023)

@harvestry-of-ghosts
Copy link

2 more releases. Still not fixed in 4.3.6 or 4.4.0 beta. What is going on? It's been like a year since this problem has been going on.

@xavier2k6
Copy link
Member

@harvestry-of-ghosts It more than likely won't/can't be fixed fully until we migrate/support QT 6.x Series........

As you've seen - we can fix part of it but it breaks something else......as per your previous screenshots which is similar to another user report which has been fixed by QT in version 6

@harvestry-of-ghosts
Copy link

@xavier2k6 Is there a reason that a previous version of QT that does not cause this issue cannot be used, until 6 is used?

@xavier2k6
Copy link
Member

@xavier2k6 Is there a reason that a previous version of QT that does not cause this issue cannot be used, until 6 is used?

Again, unfortunately - newer Qt version fixes known issues & reverting to older version would re-introduce those & probably break other things as well.

(Damned if we do & damned if we don't!)

Since Qt moved the 5.15.x Series to Commercial LTS (PAY FOR PATCHES/SUPPORT!) after Qt 5.15.2 they basically screwed over open-source projects.

Fixes have been introduced in the 5.15.x Series (but we can't use them) which will be included in Qt 6.x

For now - we only have workarounds/temp fix....

@ghost
Copy link

ghost commented Jun 6, 2022

Is this still reproducible with Qt 5.15.4 / 6.3.0? If not then I'd prefer to close this.

@yujinlin0224
Copy link

yujinlin0224 commented Jun 6, 2022

I am not sure it is the same problem.
Test in qBittorrent v4.4.3 (Qt 6.3.0), 3840*2160 screen with 150% scale, Windows 10 21H2
bandicam 2022-06-06 17-01-55-587
.

@54m4d
Copy link
Author

54m4d commented Jun 6, 2022

Yes, looks like same the issue here #13603 (comment)

@xavier2k6
Copy link
Member

Is this still reproducible with Qt 5.15.4 / 6.3.0? If not then I'd prefer to close this.

The hovering issue would be resolved if we moved main application over to fusion style (Qt have even recommended previously to use it by default - would have to check where, again)........however that would bring other immediate/apparent caveats.

@Poopooracoocoo
Copy link

Just for a TL;DR, Where does the issue lie? Is it with Windows or Qt?

@luzpaz
Copy link
Contributor

luzpaz commented Aug 25, 2023

Can anyone reproduce this on latest stable or beta ?

@yujinlin0224
Copy link

I can.
Windows 11 10.0.22621.2134 64bit, 3840x2160 150% scale
qBittorrent 4.5.4 64bit, Qt 6.4.3, Libtorrent 2.0.9.0

bandicam.2023-08-25.21-12-26-586.mp4

@xavier2k6
Copy link
Member

@luzpaz my #13603 (comment) still applies for now....(WIP)

@luzpaz luzpaz added the Waiting upstream Waiting for changes in dependent libraries label Aug 28, 2023
@luzpaz luzpaz changed the title Strange behavior when hovering over checkboxes in the settings Strange behavior when hovering over checkboxes in the settings (workaround: move main application over to fusion style) Aug 25, 2024
@xavier2k6
Copy link
Member

qBittorrent v5 has officially been released, for the users affected in this ticket - please test & feedback/close.

@xavier2k6 xavier2k6 added the Waiting info Waiting for participants to supply more info/fulfill template requirements label Sep 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Confirmed bug An issue confirmed by project team to be considered as a bug GUI GUI-related issues/changes has workaround Qt bugs Bug resides in Qt library Waiting info Waiting for participants to supply more info/fulfill template requirements Waiting upstream Waiting for changes in dependent libraries
Projects
None yet
Development

No branches or pull requests

9 participants