Bug 473735

Summary: No MouseEvents are passed to QToolButtons on a custom QSplitterHandle
Product: [Plasma] Breeze Reporter: Joachim Kohlhammer <jk-fb>
Component: QStyleAssignee: Plasma Bugs List <plasma-bugs-null>
Status: CONFIRMED ---    
Severity: normal CC: nate, noahadvs, uhhadd
Priority: NOR    
Version First Reported In: 5.27.7   
Target Milestone: ---   
Platform: Debian unstable   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Joachim Kohlhammer 2023-08-24 22:11:45 UTC
SUMMARY
Golden Cheetah (a Qt based Cycling Power Analysis Software - https://www.goldencheetah.org/ - https://github.com/GoldenCheetah/GoldenCheetah) implements a custom QSplitterHandle with embedded QToolButtons.
When using Breeze, the splitters are movable but the QToolButtons don't receive any mouseevents.


STEPS TO REPRODUCE
1. Download GoldenCheetah AppImage from https://github.com/GoldenCheetah/GoldenCheetah/releases/download/v3.6/GoldenCheetah_v3.6_x64.AppImage
2. First Start only: Create a new athlete and open it
3. First Start only: Decline or accept the collection of data
4. First Start only: Close the info-screen
5. Click the burger-menu (3 lines) in the Activities-Pane


OBSERVED RESULT
When clicking the burger-menu, no menu opens


EXPECTED RESULT
A popup-menu should appear (as it does with all other styles installed on my system)


SOFTWARE/OS VERSIONS
Windows: -
macOS: -
Linux/KDE Plasma: 5.27.7
KDE Frameworks Version: 5.107.0 (not linked against the affected program)
Qt Version: 5.15.10


ADDITIONAL INFORMATION
Platform: X11

I could work around this issue by setting the Attribute Qt::WA_Hover to false in https://github.com/KDE/breeze/blob/0bbb7fc4059e05cf3be788735ca974969bb5981c/kstyle/breezestyle.cpp#L236 but this is probably far from being a correct solution

Additional splitters can be opened using the three icons below the Activities Pane or by opening the compare view (the horizontally split icon next to the search field)

You can purge all data created by GoldenCheetah by deleting ~/.goldencheetah and ~/.config/goldencheetah.org