Max and min are calculated from two completely different sources.
There's scope for them to not be the expected way round.
We have an assert reported on this line due to a subtle qBound ->
std::clamp porting difference on GCC with debug flags on.
BUG: 454064
This allows the user to choose between automatically determined font size
(the default, and the current behavior), and completely manual font settings.
The UI refactor and layout code changes necessary for this feature also
happily fix a few bugs along the way.
BUG: 413394
BUG: 421548
BUG: 395468
FIXED-IN: 5.26
Test Plan:
Open Krunner and type ?
Scroll though the list of results until one has a configure button
Click that button and check if systemsettings opens and the runner's KCM is opened
Currently we are very inconsistent with how we handle our various X11 dependencies.
Some places check whether specific sub-libraries are found and disable parts of the code accordingly.
Sometimes this is controlled by whether X11 is found at all, sometimes it depends on the sublibrary being present.
Some of this is obviously broken, e.g. in one like we check whether X11 is there and then use it unconditionally a few lines down.
Instead of the current system of optional deps and deps being conditional on other deps I propose that we introduce an explicit build option that controls the X11 support.
If on (the default) then all X11 libs are required.
If off then no X11 libs are searched for. Currently this results in a broken build since some places use X11 stuff unconditionally, but it gives us an easier way to test and fix those cases.
Shared contexts allow us to share textures and vertex buffers between
contexts (windows) this allows us to reduce memory in popups and alike.
To fully make use of this requires some follow up work in
ManagedTextureNode for FrameSVG, but we should sitll get some OOTB.
If shared contexts are not supported this fails gracefully - though we
are relying on shared contexts within kwin for a release without issue.
It also should fix WebGL inside WebViews.
BUG: 448299
These two code paths for vertical and horizontal orientations used two
different functions to clamp values. This commit makes them consistent.
Amends a3943400d5.
The current UI does not communicate to the user at what times these UI
elements will be shown, leading to confusion. People are thinking that
unchecking the Clock checkbox always hides it, but this is not the
case; instead it hides the clock only when the main UI is invisible.
To address this, the wordings of the checkbox labels are changed to
indicate what the opposite states will do as well.
BUG: 429468
FIXED-IN: 5.26
Setting unchanged values may falsely trigger an authentication
prompt in the case that the changed value doesn't need authentication
to change, but the unchanged ones do, leading to an authentication prompt
to show up.
Adding a little bit of original vs new comparison lets us only send over
DBus what got changed.
BUG: 437286
CMake's FindX11 package reports that X11 was found even if not all libraries
are present. It also doesn't support proper components. This causes issues on
distros that split X11 headers into a myriad of small packages, for instance
Debian: some, but not all, components might be found.
Explicitly check that every X11 component used by Plasma was found by FindX11.