Commit graph

27032 commits

Author SHA1 Message Date
l10n daemon script
268d066f4f SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2024-06-21 01:18:41 +00:00
Vlad Zahorodnii
9276d28b3d plugins/shakecursor: Ignore animation speed
From the user perspective, shaking cursor is not perceived as an
animation, so let's ignore the global animation speed factor.

BUG: 488813
2024-06-20 22:28:49 +03:00
l10n daemon script
2db79aaca8 GIT_SILENT Sync po/docbooks with svn 2024-06-20 01:32:04 +00:00
David Redondo
1a916293dc plugins/eis: Make input capture activation ids unsigned
The portal API is specified with unsigned ids. Let's make them
unsigned all the way through.
2024-06-19 11:49:31 +00:00
Xaver Hugl
92f1fabe5b wayland_server: create a new screen locker connection when the greeter gets restarted
Otherwise, Wayland objects and protocol errors can cause the new instance to not start
2024-06-19 11:09:10 +00:00
Xaver Hugl
b107295c03 windowheap: don't animate the position of windows that get hidden
The target position is zero, so they just move into the top left corner,
which looks weird. With this commit, they just fade away without moving
2024-06-19 10:17:53 +00:00
Vlad Zahorodnii
e316694675 backends/x11: Move the contents of common/ to standalone/
It's used only there.
2024-06-19 08:56:12 +00:00
Vlad Zahorodnii
8a5bae0f86 backends/x11: Port away from XRenderPicture 2024-06-19 08:56:12 +00:00
Vlad Zahorodnii
ad31fd6b18 plugins/nightlight: Fix dbus property types
currentTemperature, targetTemperature, and mode properties have "u" type.
But there is a mismatch between the property types declared in the
Q_PROPERTY macro and the org.freedesktop.DBus.Properties.PropertiesChanged
signal.

This change makes the property types consistent and match the types
declared in the xml file.
2024-06-19 05:29:11 +00:00
l10n daemon script
18e9adf5b7 GIT_SILENT Sync po/docbooks with svn 2024-06-19 01:28:15 +00:00
Vlad Zahorodnii
1dee66a36c plugins/nightlight: De-duplicate dbus code 2024-06-18 18:14:07 +00:00
David Redondo
1b1af29de9 Sync xwayland eavesdropping default in kwin.kcfg
Amends a136a159f9 which changed the value in the kcfg file that the kcm reads, KWin uses options.kcfg
4f322e24d3 changed the in code default but this will be later overriden when loading the options.
2024-06-18 07:39:22 +00:00
l10n daemon script
940215b624 GIT_SILENT Sync po/docbooks with svn 2024-06-18 01:33:57 +00:00
Aleix Pol Gonzalez
559b0cccf5 shm: support textures of 3 bytes-per-color
Adds support for BGR888 and RGB888.
Some clients use it and we just fail to render them, making devs
thinking that kwin is broken.

Signed-off-by: Victoria Fischer <victoria.fischer@mbition.io>
2024-06-17 22:24:16 +00:00
Vlad Zahorodnii
7fca508619 Remove code that updates the focus chain in Window::setSkipTaskbar()
skipsTaskbar() doesn't influence whether the window wants input.
2024-06-17 20:04:11 +00:00
Vlad Zahorodnii
0fc6c6800e Get rid of extra string allocations in src/inputmethod.cpp 2024-06-17 19:01:12 +00:00
Xaver Hugl
c761571a43 workspace: don't use an empty list as "don't update"
It's confusing and caused the xwayland scale to not be updated in all situations
where it should be updated
2024-06-17 20:49:52 +02:00
Xaver Hugl
e16069ae77 autotests: add Xwayland scale changes to the output changes test
CCBUG: 487409
2024-06-17 20:41:58 +02:00
Xaver Hugl
4f5fce8b7a workspace: also update xwayland scale when not changing the output order 2024-06-17 20:41:58 +02:00
Alessandro Astone
170b138026 wayland: Allow configuring locale1 mode from kwinrc
KWin already supports following org.freedesktop.locale1 for the
keyboard keymap, but only by passing a command-line option. This is
typically used in SDDM when running the greeter in kwin_wayland.

We want to use locale1 mode in livesys environments too, so that
environment-agnostic installers can configure the keyboard and also
immediatly apply the same configuration to the running desktop.
When KWin is started through `startplasma` we cannot easily supply
an extra command-line option, so we need to make this configurable
from the external environment, in the form of a KConfig.

The command-line option will keep precedence over the KConfig.
2024-06-17 17:52:29 +00:00
Xaver Hugl
7e2d650c8f plugins/nightlight: remove unnecessary commitGammaRamps 2024-06-17 16:17:24 +00:00
Vlad Zahorodnii
af16c9b243 wayland: Make org_kde_kwin_shadow use GraphicsBufferRef
It makes the graphics buffer referencing less error prone.
2024-06-17 11:48:06 +00:00
Vlad Zahorodnii
1a7c94b692 wayland: Fix buffer ref'ing in org_kde_kwin_shadow.commit
In case the current state and the pending state have the same buffer for
a particular side or a corner, that buffer can be prematurely released
because the buffer in the current state is unreferenced first.

The ref/unref order should be vice versa to ensure that the GraphicsBuffer
is not released prematurely.
2024-06-17 11:48:06 +00:00
Marius P
ba599a2aa0 Prefer en_US, "centre" -> "center" 2024-06-17 05:29:59 +00:00
Vlad Zahorodnii
64bbbde249 cmake: Group together code that tests compiler features and platform features 2024-06-17 05:09:13 +00:00
Vlad Zahorodnii
f89a1f9766 cmake: Remove invalid comments 2024-06-17 05:09:13 +00:00
Vlad Zahorodnii
a1443cb43e cmake: Move find_package() around to keep them all close 2024-06-17 05:09:13 +00:00
Vlad Zahorodnii
2d4bbe917c cmake: Group option()s 2024-06-17 05:09:13 +00:00
l10n daemon script
8c067c77f4 GIT_SILENT Sync po/docbooks with svn 2024-06-17 01:31:03 +00:00
Nate Graham
68b7448847 plugins/showpaint: set default shortcut
This effects is off by default, which means to instruct someone how to
use it for debugging purposes, you need to both tell them to enable it,
and then also teach them how to assign a shortcut for it.

Since it's off by default, there's no harm in setting a shortcut, which
simplifies the enablement instructions. I've chosen Meta+Ctrl+Alt+P,
which uses so many modifiers that it won't conflict with anything.
2024-06-16 11:01:40 -06:00
Xaver Hugl
178d49093c backends/drm: don't do direct scanout when HDR brightness isn't 1
Otherwise the brightness multiplier doesn't get applied
2024-06-16 17:11:43 +02:00
l10n daemon script
979ac5bd50 GIT_SILENT Sync po/docbooks with svn 2024-06-16 01:27:32 +00:00
Vlad Zahorodnii
29a5541ccf wayland: Reset dnd state when the target surface is about to be destroyed
Use the SurfaceInterface::aboutToBeDestroyed() for the consistency sake
with other code that performs cleanup when the wl_surface is destroyed.
2024-06-15 15:11:53 +00:00
Vlad Zahorodnii
e1192a6934 plugins/nightlight: Drop NightLightManager::self()
It's unused.
2024-06-15 12:06:06 +03:00
Vlad Zahorodnii
d00d00c7fc plugins/nightlight: Tidy header include directives 2024-06-15 12:03:39 +03:00
Vlad Zahorodnii
6b4ef4170c plugins/nightlight: Shuffle some code
Keep things that are related spatially close, in this case, the
initialization of the timer that will start the next transition.
2024-06-15 11:37:26 +03:00
Vlad Zahorodnii
d595b8f8aa plugins/nightlight: Rename FALLBACK_SLOW_UPDATE_TIME 2024-06-15 07:58:15 +00:00
Vlad Zahorodnii
55dc891190 plugins/nightlight: Store transition duration in milliseconds
This allows us to make the code that computes transition timings more
cleaner, and other time constants are in milliseconds, so it makes sense
to make m_transitionDuration store milliseconds too.
2024-06-15 07:58:15 +00:00
l10n daemon script
5c6e51d75e GIT_SILENT Sync po/docbooks with svn 2024-06-15 01:28:00 +00:00
l10n daemon script
927fb42abc SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2024-06-15 01:19:16 +00:00
Vlad Zahorodnii
3461d5bc3a plugins/nightlight: Unobfuscate code that reads geocoordinates
The current code is unreadable:

- it creates a lambda that captures two local variables for latitude and longitude
- then it copies values from the config to those local variables
- calls the lambda
- and finally copies the data from the local variables to the NightLightManager fields

That code can be simplified by simply calling checkLocation() directly
and using an if statement.
2024-06-15 01:29:59 +03:00
Vlad Zahorodnii
e5528e9317 plugins/nightlight: Rename variables and functions to adhere to the KDE coding conventions
The variables and functions should be fully spelled out, with temporary
variables being an exception.
2024-06-14 18:24:06 +03:00
Vlad Zahorodnii
786b3ffbae plugins/nightlight: Guard against invalid timings in the config
Morning and evening timings should be ordered correctly. When computing
the daylight duration, that ternary operator should not be needed and it
hides other bugs.
2024-06-14 18:00:53 +03:00
Vlad Zahorodnii
07f266e7c7 plugins/nightlight: Remove premature optimization in updateTransitionTimings()
There are a couple of reasons why it's worth removing it:

- it's error prone. If one forgets to pass correct "force" flag, night
  light will break
- it contributes some complexity
- updateTransitionTimings() is not called in any hot path and the code
  that calculates the position of the Sun is not resource intensive
2024-06-14 14:26:35 +00:00
Vlad Zahorodnii
5fe9e9c756 plugins/screencast: Check compositing type
Screencasting only works with OpenGL compositing at the moment.
2024-06-14 12:50:46 +00:00
Vlad Zahorodnii
8256f8e14c Reorder some function calls in X11Window::updateServerGeometry()
The main motivation is to improve code aesthetics. The relative
order in which various window properties are configured shouldn't
matter.
2024-06-14 12:37:56 +00:00
Vlad Zahorodnii
5d03d58dc1 Drop X11Window::resizeDecoration()
We can call updateInputWindow() directly.
2024-06-14 12:37:56 +00:00
Vlad Zahorodnii
a7c4175099 Don't call triggerDecorationRepaint() when resizing an X11Window
Wayland windows have no such code path and they have been good so far.
If the borders change, KDecoration will trigger a repaint.
2024-06-14 12:37:56 +00:00
Vlad Zahorodnii
fef2bfb93f plugins/nightlight: Make Night Light more robust to QTimer firing slightly earlier
Currently, resetSlowUpdateTimers() will start a timer that will pass
m_next.first as the current time to resetSlowUpdateTimers(). This kind
of works, but there are more code paths where updateTransitionTimings()
can be called.

This change hardens updateTransitionTimings() against the current time
being very close to the start of the next transition by introducing a
time fudge factor.

If we are currently 1 second away from the start of the next transition,
then it is assumed that that transition has been reached, and we need
to calculate the timings of a transition after that.
2024-06-14 12:06:34 +00:00
Vlad Zahorodnii
ad98069618 Make Window::closeWindow() noop if the window is already closed
The surface handle can be dropped by that time. Also, there is no point
to ask the client to close the window again if it's already closed.
2024-06-14 11:16:41 +00:00