19902 Commits (f6005a28cd613def28a9e4a8cfab95966b5b7868)
 

Author SHA1 Message Date
l10n daemon script cf9c60a0c0 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"
3 years ago
Xaver Hugl 2e473a21fb platforms/drm: small logging improvements 3 years ago
l10n daemon script d2aac8cb05 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"
3 years ago
Aleix Pol 53dcd205c6 inputmethod: Add a test that simulates client switching 3 years ago
David Redondo 3b9ffdfbf6 Revert "Do not pass input to windows that are not painted"
This reverts commit 09f786a209.
3 years ago
David Redondo 09f786a209 Do not pass input to windows that are not painted
Passing input to windows that we do not paint is confusing as what happens
is different from what is visible on the screen.
3 years ago
l10n daemon script 141f627413 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"
3 years ago
l10n daemon script ac438d6bb3 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"
3 years ago
Aleix Pol 475993db70 kscreen effect: Work per screen
Makes it possible to apply the dpms settings per screen instead of
applying it to all of them, which is wrong at many levels.
Will be even more important with other effects like rotation.
3 years ago
Alex Richardson ed57ac39e2 Convert the KPackage plugin metadata to .json 3 years ago
Nate Graham 9f00c29c67 [kcmkwin/kwinrules] Port OverlaySheet headers to use title: property
This was added to Kirigami in
https://invent.kde.org/frameworks/kirigami/-/merge_requests/314
and simplifies and standardizes the creation of simple text-based
headers in OverlaySheet. This commit ports the KWin Rules KCM to
use it.
3 years ago
David Edmundson beedf2be71 Fix minor typo 3 years ago
David Edmundson 0c6a8e7b88 Avoid setting crash count to 0 when restarted
If kwin is explicitly restarted (kwin_wayland --replace) we reset the
crash count so that you can run it more than 10 times without exiting to
the logout screen.

Resetting to 0 causes a issue as that triggers ksplash to be shown
again.

BUG: 434489
3 years ago
David Edmundson ec9c2c3e68 Port kwin_wayland_wrapper to Qt/C++
We inintially created the wrapper to be light so avoided the QtCore
dependency and did it all in C.

In hindsight changing requirements means we want to add several more
features in here. The first step is to port to a more readable language
and toolkit.
3 years ago
l10n daemon script 5317ca9da0 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"
3 years ago
Vlad Zahorodnii ca301d1914 Drop Scene::ImageFilterType
It's unused, GL_LINEAR filter is used by default now.
3 years ago
Vlad Zahorodnii cb219da766 Remove screenGeometryChanged() in OpenGLBackend and QPainterBackend
The screenGeometryChanged() function is very X11-specific. On Wayland,
it's effectively unused.
3 years ago
Vlad Zahorodnii 4ecb00889c scene: Move overlay window resizing to backends
The concept of an overlay window is not universal, it's X11 specific.
3 years ago
Vlad Zahorodnii e171555f2d Remove stray friend class 3 years ago
David Redondo d84198f3b8 Set component display name for touchpad and keyboard shortcuts
Otherwise they appear as "KWin" in the settings when we want them
to be "Touchpad" and "Keyboard Layout Switcher".
BUG:440259
FIXED-IN:5.23
3 years ago
Vlad Zahorodnii d4c7486fe1 Remove Q_UNUSED
damage is used.
3 years ago
Vlad Zahorodnii 3ab2ea40c4 Remove mask arg in Scene::paintScreen()
Render backends don't pass anything to the scene.
3 years ago
Vlad Zahorodnii d2b6d7ee59 platforms/wayland: Add support for buffer age in qpainter backend 3 years ago
Vlad Zahorodnii 1cbf232b98 platforms/wayland: Report correct damage to host compositor
damageHistory.first() is the previous damage region, we need to report
the current instead.
3 years ago
Vlad Zahorodnii e087b2ce2f platforms/drm: Add buffer age support in qpainter backend
Currently, the entire screen will be repainted when using the qpainter
render backend. With this change, kwin will repaint only the dirty parts
on the screen.
3 years ago
Vlad Zahorodnii 603db353a3 scenes/qpainter: Avoid setting brush in paintBackground()
Calling QPainter::setBrush() without saving the current state, produces
mysterious black rectangles around clip region rects.
3 years ago
Vlad Zahorodnii 501298b0e0 Introduce DamageJournal helper 3 years ago
Vlad Zahorodnii 2fe102768a Remove QPainterBackend::needsFullRepaint()
A better alternative is to return the damage region in the beginFrame()
function. This way, the render backend can force full screen repaints or
indicate what parts of the buffer needs to be repainted (for buffer age)
3 years ago
Vlad Zahorodnii 4abbb6f0d6 Make OpenGLBackend and QPainterBackend QObjects
Almost all their subclasses are QObjects. This simplifies the class
hierarchy by making OpenGLBackend and QPainterBackend qobjects.
3 years ago
Vlad Zahorodnii d543c0dff6 Remove unused mask param in QPainterBackend::endFrame()
It is unused and it is not a good idea to pass Scene's mask to the
render backend as it results in higher coupling between Platform and
Scene.
3 years ago
Nicolas Fella a317a3f6bc Remove unused include 3 years ago
Vlad Zahorodnii 85654236d7 Fix build 3 years ago
Vlad Zahorodnii 964c487d4f wayland: Switch to ClientBuffer
The main motivation behind the split is to simplify client buffer code
and allow adding new features easier, for example referencing the shm
pool when a shm buffer is destroyed, or monitoring for readable linux
dmabuf file descriptors, etc.

Also, a referenced ClientBuffer cannot be destroyed, unlike the old
BufferInterface.
3 years ago
Andrey Butirsky 95e954da30 [tabbox] prevent dangling popups when switching on Wayland
If some popups of active window present, there was glitches on switching
such as stale popups or the popup happened below window.
Dismissing all the popups solves the problem.

BUG: 431046
3 years ago
Andrey Butirsky b45f5c3a66 fix No globalshortcuts with popup grab
BUG: 431046
3 years ago
Nicolas Fella 25b85607d0 Port from KPluginLoader::pluginsById to KPluginMetaData::pluginById
The latter gives us only a single plugin which makes the code a bit more concise
3 years ago
Aleix Pol 05f3939cf1 inputmethod: Use the command as the availability metric 3 years ago
Aleix Pol 278da74eab inputmethod: Add a property to tell whether an input method is running 3 years ago
Vlad Zahorodnii f431b6ad96 wayland: Cache last surface-to-buffer matrix
If window quads need to be generated after the wl_surface is destroyed,
the SurfaceItemWayland::mapToBuffer() function will return wrong values.

In order to fix that, we need to store the last surface-to-buffer matrix
in SurfaceItem.
3 years ago
l10n daemon script 068c1d4970 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"
3 years ago
Nicolas Fella 2faff3b1d0 [kcms/kwinoption] Remove obsolete desktop files and factory registrations
These appear to be remnants from a time where the current tabs were individual KCMs.

Remove some unneeded stuff and convert the only relevant registration to the normal K_PLUGIN_FACTORY macro
3 years ago
Nicolas Fella cff33e7e40 [GenericScriptedConfig] Remove unused parameter
The passed value is always the same and never used
3 years ago
Nicolas Fella 55c6de1790 [kcms/effects] Remove unneeded X-KDE-PluginKeyword 3 years ago
Nicolas Fella 2f9adf4715 [effectsmodel] Simplify generic config plugin loading
We know exactly which plugin we want to load

No need to go through findPlugins()
3 years ago
Aleix Pol 26fd5d3667 inputmethod: Remove workaround 3 years ago
Aleix Pol 422522d15b inputmethod: Also expose the visibility on dbus
Since we adapted inputmethod to support methods like ibus, the input
method can be active but not have a visible panel.
This includes an extra property that will indicate us if the panel is
visible at any time. This will allow us to properly render the virtual
keyboard hide button in Plasma Mobile (or wherever we need it).
3 years ago
Aleix Pol abf22570c7 inputmethod: Reduce consecutive activation+deactivation+activation sequences
So far calling setActive(true) would issue a deactivation then another
activation. This sometimes makes maliit crash and we can achieve the
same result just by just issuing a reset.
3 years ago
Aleix Pol 9b5b02c957 kwin tests: Add heplers to access the input panel client and its surface
It's useful when dealing with unit tests for input methods
3 years ago
Aleix Pol 638174ae09 inputmethod: Make sure the menu is only created when we create the SNI
It always does the same anyway, this way we make sure we don't leak
3 years ago
Aleix Pol 0169bca6e0 inputmethod sni: return early for readability 3 years ago