SUMMARY Theme doesn't change in KDevelop. KDevelop doesn't obey qt5ct. STEPS TO REPRODUCE 1. Install qt5ct on Archlinux. 2. Add QT_QPA_PLATFORMTHEME=qt5ct to ~/.profile 3. Change the theme in qt5ct to something else. 4. Reboot. 5. Open up another qt-based application and check if the theme has changed. 6. Open up KDevelop and check if the theme has changed. OBSERVED RESULT The theme doesn't change. KDevelop doesn't support the QT_QPA_PLATFORMTHEME=qt5ct option. Which the other applications on the system does. EXPECTED RESULT Dark theme, in contrast from the default white "KDevelop theme". SOFTWARE/OS VERSIONS KDevelop: 5.6.2 Windows: macOS: Linux/KDE Plasma: 5.12.15/- (available in About System) KDE Plasma Version: KDE Frameworks Version: 5.83.0 Qt Version: 5.15.2 ADDITIONAL INFORMATION
Hi, can you please ensure you have Settings -> Color Scheme set to "Default"? Since many people want their IDE in different colors than the rest of their desktop, we support separately setting our color scheme. Maybe that conflicts with your system-wide choice.
Dear Bug Submitter, This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging If you have already provided the requested information, please mark the bug as REPORTED so that the KDE team knows that the bug is ready to be confirmed. Thank you for helping us make KDE software even better for everyone!
This bug has been in NEEDSINFO status with no change for at least 30 days. The bug is now closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging Thank you for helping us make KDE software even better for everyone!
I also have this problem (kdevelop not using qt5ct theme). Unlike the first reporter, I intend to answer requests for more information. Arch Linux, rolling release up-to-date as of today (2022-01-08), kernel version 5.15.13-arch1-1, X.org server version 1.21.1.3, Openbox (window manager) version 3.6.1, kdevelop version 5.7.211201 (21.12.1), qt5ct version 1.5. I have attached the output of `pactree --linear --unique --optional <package>` for both kdevelop and qt5ct, in case the problem is a missing or outdated dependency. OBSERVED BEHAVIOR: I installed qt5ct, configured the "darker" color scheme for the "Fusion" style (the default style), and exported the environment variable QT_QPA_PLATFORMTHEME=qt5ct. Under this configuration, kdevelop uses a black-on-white (light) theme (see the attached screenshot). Picard (a Qt5 music tagger) correctly uses the dark theme. I believe kdevelop Settings -> Color Scheme -> Default is selected, or at least clicking it does nothing. (There are no other items in that submenu, but there's no checked checkbox or other indication that the Default item is selected.) I ran kdevelop under strace (traces attached). The main thread (6498) loads `/usr/lib/qt/plugins/platformthemes/libqt5ct.so` and reads `/home/jbosboom/.config/qt5ct/qt5ct.conf` and `/usr/share/qt5ct/colors/darker.conf`. I then built and installed qt5-styleplugins from the Arch Linux AUR and configured qt5ct to use the "gtk2" style, again with the "darker" color scheme. In this configuration, kdevelop uses a mix of colors resulting in both light text on a light background and dark text on a dark background (see the attached screenshot). Picard looks mostly okay in this configuration (just a couple of dark-on-dark menu items). DESIRED BEHAVIOR: kdevelop successfully uses the "darker" color scheme for the "Fusion" theme under qt5ct.
Created attachment 145246 [details] kdevelop with the qt5ct Fusion theme, "darker" color scheme (kdevelop doesn't use it)
Created attachment 145247 [details] kdevelop with the qt5ct gtk2 theme, "darker" color scheme (kdevelop sort-of uses it)
Created attachment 145248 [details] strace of kdevelop showing that libqt5ct.so is loaded and qt5ct config is read
Created attachment 145249 [details] installed package versions of kdevelop and its dependencies
Created attachment 145250 [details] installed package versions of qt5ct and its dependencies
I have found a workaround: - launch KDevelop - open the qt5ct configuration tool (`/usr/bin/qt5ct`) - go to the Troubleshooting tab (all the way on the right) - check the "Force raster surface" box (note this is a tri-state box, make sure it's checked) - click OK or Apply - wait a few seconds As long as KDevelop remains open, almost all of the interface is correctly themed. The only exception I see are the editor tooltips that show semantic information when hovering a variable/function/etc., which are still black-on-white (light). If I close KDevelop and re-launch it, it uses the default light theme again, and I have to re-run `qt5ct` and click OK (no actual changes necessary). The "Force raster surface" checkbox is a global setting, not tied to any particular application, but it doesn't seem to have any negative effects on Picard (the only other Qt application I use regularly). The tooltip for the "Force raster surface" checkbox is "Make top-level widgets use pure raster surfaces, and do not support non-native GL-based child widgets." KDevelop doesn't appear to be making special use of vector graphics or OpenGL, so I'm not sure what this means, but maybe it's useful information for you.
A related change !720 was merged today. It will be released in KDevelop version 6.2.250400. Now KDevelop's appearance is governed by KDE system settings, as is the appearance of many other KDE applications since KDE frameworks version 6.3 or later. See also https://invent.kde.org/kdevelop/kdevelop/-/merge_requests/720#note_1126834 . Please retest and reopen or create a new bug if something is still broken.