24222 Commits (49977d38f2bcef70676ea97ecae9580b66c7fe5b)
 

Author SHA1 Message Date
Vlad Zahorodnii 49977d38f2 build: Remove redundant find_package() for Wayland::Client
find_package(Wayland) already takes of the client lib, it's needed by
the wayland backend, so BUILD_TESTING specific find_package() can be
merged with it.
2 years ago
Vlad Zahorodnii 5184a630bb build: Search for wayland client libs only when building tests 2 years ago
Vlad Zahorodnii 31b21618b3 scripts/desktopchangeosd: Minor cleanup
Workspace.desktops is a property so the binding will be updated
automatically when the desktops change. There's also no a signal with
name "numberDesktopsChanged"
2 years ago
Vlad Zahorodnii 77a1aea281 effects/desktopgrid: Fix TapHandler.onTapped handler
The button is provided alongside the event point now.
2 years ago
Vlad Zahorodnii 3aa16bd1ca libkwineffects: Drop QtQuick dummy window hack
The dummy window hack was needed to ensure hidpi rendering on Wayland.
We introduced QQuickRenderTarget::setDevicePixelRatio() in Qt 6.3, so
the hack can be removed now.
2 years ago
Vlad Zahorodnii b93e01a724 Drop old kconf update scripts 2 years ago
Vlad Zahorodnii 5b6b2a2219 kcms: Fix plugin id loading in desktop effects kcm
kwin installs metadata files for builtin effects so the kcm can find
them. With the recent KPluginMetaData changes, the Id field has been
removed, so the kcm will use "metadata" (the basename of metadata.json)
as the plugin id.

In order to fix plugin id resolution, let's install metadata with the
file name same as the plugin id.
2 years ago
Vlad Zahorodnii 5dd247d179 plugins: Adapt plugins to KPluginMetaData changes
Binary plugins should not have "Id" field. Instead the library file name
acts as the plugin id.

While on this, static plugin code path can be dropped because
KPluginMetaData handles both static and normal plugins.
2 years ago
Vlad Zahorodnii 06d195980b autotests: Drop night color test
It doesn't test anything useful. It's hard to make it test useful things
too due to needing to change the system time. Linking with it also
breaks the encapsulation and it won't work when using MODULE library.
2 years ago
Vlad Zahorodnii 8cb91dcc59 tabbox: Bump severity of QQmlComponent error log messages
If there's an error, it's better to use qCWarning so it's easier to spot
where things go wrong.
2 years ago
Vlad Zahorodnii be936d0567 kcms/rules: Port away from Kirigami.OverlaySheet.sheetOpen 2 years ago
Harald Sitter 3c4686ca12 tabletmodemanager: properly export properties
in order to read from the properties directly (as opposed to via
org.freedesktop.DBus.Properties.Get) we need to export slots despite the
class having none (presumably the READ functions count as slots for the
purposes of qdbus?)

this makes direct calls to the interface work correctly
`qdbus org.kde.KWin /org/kde/KWin
org.kde.KWin.TabletModeManager.tabletMode`
2 years ago
Fushan Wen 7775fbd2db Replace forum.kde.org with discuss.kde.org
The old forum is deprecated.
2 years ago
Hannah Kiekens 0543949df7 Enable GLSL for Mali (Lima) / PinePhone devices
Commit 88cf8355 changed the behaviour of Mali (Lima) / PinePhone devices by disabling GLSL
88cf8355 got backported in 5.27.1 and broke PinePhone devices (White rectangle on topright quarter of a black screen)

This patch restores the behaviour of 5.27.0
2 years ago
Vlad Zahorodnii 70e7622c69 effects: Fix clicking windows in window view effect
The DragHandler immediately activates and takes over the TapHandler,
thus blocking selecting windows by tapping them.
2 years ago
Vlad Zahorodnii 1ea2338917 effects: Prevent OffscreenQuickView crashing on teardown
QQuickRenderControl::sceneChanged can emitted when shutting down, which
will cause a crash.
2 years ago
Vlad Zahorodnii 9aeb33f0a4 effects: QtGraphicalEffects -> Qt5Compat.GraphicalEffects 2 years ago
Vlad Zahorodnii 6f622d3348 effects: Adapt to kcoreaddons_add_plugin plugin id changes 2 years ago
Vlad Zahorodnii 10df3b0eb0 Remove Qt 5 specific code 2 years ago
Vlad Zahorodnii d9f5d432be Port to KF6 2 years ago
Vlad Zahorodnii 6e705f6034 Simplify Window::setDesktop()
workspace()->updateOnAllDesktopsOfTransients() is not needed because we
call setDesktops() for transients immediately after it.
2 years ago
Vlad Zahorodnii 18870f67cc x11: Fix client area lookup with pending move resize
If there's a pending move resize, Window::output() won't be updated
until geometry updated are unlocked. We need to use moveResizeOutput()
instead.
2 years ago
l10n daemon script 074a4fd286 GIT_SILENT Sync po/docbooks with svn 2 years ago
l10n daemon script 1bfe7c2659 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"
2 years ago
Vlad Zahorodnii 2dc7364a23 effects: Drop WindowHeap.windowClicked signal
Put a TapHandler in WindowHeapDelegate instead.
2 years ago
Vlad Zahorodnii 43cac75034 wayland: Fix xdg-toplevel and xdg-popup window initialization
Buggy clients can commit the wl_surface several times in a row. On the
other hand, XdgToplevelInterface and XdgPopupInterface consider a
surface to be initialized if it has been configured. If the second
wl_surface commit comes before the configure event is sent, kwin will
initialize a toplevel or popup twice, which can trigger asserts.

BUG: 466530
2 years ago
Aleix Pol Gonzalez 4cda16ce3a screencasting: Close streams when the output is disabled
It's technically possible to keep it somewhat going right now and just
not send frames but it doesn't make much intuitive sense.
2 years ago
Vlad Zahorodnii fff462aed6 scene: Track stack position in WindowItem
If the WindowItem tracks the stack position, it will automagically
schedule repaints when a window is raised or lowered.
2 years ago
Vlad Zahorodnii 8fc634684c wayland: Setup compositing for internal window when it's mapped
Aurorae decoration plugin creates an unmapped internal window, it's not
rendered and so it's not added to the Workspace.

Internal window setups compositing in its constructor too. It means that
the WindowItem will have a link to the scene, but since the Compositor
has no any idea about the internal window yet, that scene can become a
dangling pointer, and kwin can crash when the window item is destroyed.

BUG: 466313
2 years ago
Vlad Zahorodnii 298d63bc71 Remove no longer relevant case in Workspace::replaceInStack()
Unmanaged windows are always in the stack now, so the else branch is not
needed, and in fact, it can produce undesired side effects if unmapped
window is closed.
2 years ago
l10n daemon script 6745cb87ec GIT_SILENT Sync po/docbooks with svn 2 years ago
Vlad Zahorodnii 53b0dc3a5d Unify Window::killWindow() for unmanaged windows 2 years ago
l10n daemon script 944bff100e GIT_SILENT Sync po/docbooks with svn 2 years ago
Vlad Zahorodnii 351cf8b585 Drop Window::setDesktop()
It's unused.
2 years ago
Vlad Zahorodnii cd4d04c683 Move X11 specific code in Window::setDesktops() to X11Window 2 years ago
Vlad Zahorodnii 3809a2712b tabbox: Remove unused arg in DesktopChainManager::addDesktop() 2 years ago
Vlad Zahorodnii d79a4a1daa Make VirtualDesktopManager::currentChanged pass VirtualDesktop
It fixes the remaining usage of int desktop ids in Workspace, ignoring
Workspace::setInitialDesktop().
2 years ago
Vlad Zahorodnii 9ea839eb03 libkwineffects: Add missing QQuickRenderControl::{beginFrame,endFrame} calls
As QQuickRenderControl docs state, beginFrame() and endFrame() must
enclose sync() and render() calls.
2 years ago
Vlad Zahorodnii aff8ed4c12 Remove window argument in interactive move resize signals
Remove the window argument to clean up the api. If the window is needed,
capture it using a lambda or use sender().
2 years ago
Vlad Zahorodnii ad330924e2 Rename Window::desktopChanged()
We have Window::desktops(), so rename the signal to match it.
2 years ago
Vlad Zahorodnii 65c7abd8fb kcms/xwayland: Remove unused include
It fails to build with KF6.
2 years ago
Vlad Zahorodnii 10a25b2d75 aurorae: Ensure that the plugin so file name matches plugin id
KPluginMetaData::findPluginById() in KF6 uses the file name to find plugins.
2 years ago
Vlad Zahorodnii 282e2dfbde Ensure that the current virtual desktop cannot be null
VirtualDesktopManager::currentChanged() can be emitted with
previousDesktop being null/0. It can happen only on startup. After that,
it's always valid. In order to make the code that uses the
currentChanged signal less trickier, ensure that the current virtual
desktop is initialized when the virtual desktop config is loaded.
2 years ago
Vlad Zahorodnii 1854224c17 effects/zoom: Fix crash on X11
On X11, the painted screen is meaningless, so the zoom effect doesn't
use it to store offscreen data. It can create problems when iterating
over offscreen data map.

The painted screen can't be used to determine the necessary offscreen
texture size too. X11 requires some special care.

This change adds explicit wayland checks.

BUG: 466376
2 years ago
l10n daemon script a6df113690 GIT_SILENT Sync po/docbooks with svn 2 years ago
l10n daemon script 4df8d73fc4 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"
2 years ago
Alexander Lohnau 34008b9dbd Use KPluginMetaData::fileName instead of KPluginMetaData::metaDataFileName
In KF6, the latter does not exist anymore and without desktoptojson compat code in KPackage, the values are the same anyway
2 years ago
David Redondo 693ea96599 Fix edid serial parsing
Descriptor blocks are 18 bytes, the serial number one has space
for 13 bytes of serial number.
BUG:466136
FIXED-IN:5.27.2
2 years ago
Vlad Zahorodnii 03e098204f Port Workspace::sendWindowToDesktop to VirtualDesktop 2 years ago
l10n daemon script 705885b203 GIT_SILENT Sync po/docbooks with svn 2 years ago