Commit graph

22934 commits

Author SHA1 Message Date
Vlad Zahorodnii
b64f95b703 Integrate kwaylandserver
This makes KWin switch to in-tree copy of KWaylandServer codebase.

KWaylandServer namespace has been left as is. It will be addressed later
by renaming classes in order to fit in the KWin namespace.
2022-04-22 12:27:33 +03:00
Ben Cooksley
28ed0ced17 Merge kwayland-server into kwin.
Ref T15459
2022-04-22 21:20:08 +12:00
l10n daemon script
ef7d51f09e 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"
2022-04-22 01:47:15 +00:00
l10n daemon script
24e2883f24 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"
2022-04-21 01:43:47 +00:00
Xaver Hugl
de73dfae35 backends/drm: rename transformation variables to be more intuitive 2022-04-20 15:57:51 +02:00
Xaver Hugl
d2d0049213 backends/drm: fix some problems with rotation
source and buffer rotation / sizes were used wrongly in a few places
2022-04-20 15:46:05 +02:00
Xaver Hugl
c3954eab8f Port gamma ramp code to generic color transformations
Instead of creating a gammaramp object with a fixed size, make the color
device create a color transformation object that can be used to construct
arbitrary LUTs. This is needed in order to support tiled displays well
and is useful for further color management work.
2022-04-20 12:29:26 +02:00
Xaver Hugl
f6eee463ba Make lcms2 a hard dependency
When we do more color management stuff we'll need it in more places,
making it a hard requirement reduces the amount of needed ifdefs and
should make adding color management features a little simpler.
2022-04-20 12:21:38 +02:00
Marco Martin
871f8d0b91 Correctly map NaturalX/Y to scene coordinates
being naturalx something that needs to map to the actual geometry of the window which is in absolute coordinates but mapped to a view which geometry correspond to the one of one particular screen (plus the layout the thumbnail lives in has its own geometry in the scene)
2022-04-20 08:11:18 +00:00
Xaver Hugl
7aad5df7d9 backends/drm: fix rebase mistake 2022-04-19 20:00:45 +02:00
Vlad Zahorodnii
411679ea16 Implement wl_surface_offset()
See https://gitlab.freedesktop.org/wayland/wayland/-/merge_requests/123
2022-04-19 12:31:55 +00:00
Vlad Zahorodnii
219cb54d35 Add missing Display class forward declaration 2022-04-19 13:19:20 +03:00
Vlad Zahorodnii
227ab071be Run .clang-format 2022-04-19 13:14:26 +03:00
Xaver Hugl
cc6b549112 backends/drm: drop QPainterLayer class
It's unused
2022-04-18 17:35:28 +02:00
Xaver Hugl
c43eb6ec42 backends/drm: extract dmabuf feedback into its own class
This should reduce code duplication with overlay planes
2022-04-18 17:34:04 +02:00
Xaver Hugl
5df65e4be5 backends/drm: refactor egl/gbm render surface into its own class
This allows sharing most code with overlay plane layers
2022-04-18 17:34:04 +02:00
Xaver Hugl
c30339cc82 backends/drm: move texture creation for gbm buffers into GbmBuffer 2022-04-18 17:34:04 +02:00
Vlad Zahorodnii
3d038b715f Remove duplicate AbstractClient properties
Some Toplevel properties were redefined in the AbstractClient class to
allow property mutability.

Now, since both classes were merged, those properties can be defined
only once.
2022-04-18 12:33:53 +00:00
Vlad Zahorodnii
2540e80277 Make AbstractClient::layoutDecorationRects() virtual
This fixes closed windows losing decorations.
2022-04-18 12:08:46 +00:00
Vlad Zahorodnii
328f51ce10 Remove some AbstractClient plumbing casts in input.cpp 2022-04-18 11:47:56 +03:00
Vlad Zahorodnii
507bad4843 Remove AbstractClient plumbing casts in WaylandServer 2022-04-18 11:47:56 +03:00
Vlad Zahorodnii
817656cb0b Remove AbstractClient plumbing casts in AbstractClient 2022-04-18 11:47:56 +03:00
Vlad Zahorodnii
a429739f98 Remove AbstractClient plumbing casts in DbusInterface 2022-04-18 11:47:56 +03:00
Vlad Zahorodnii
348e20e20f Remove AbstractClient plumbing casts in Workspace 2022-04-18 11:47:56 +03:00
Vlad Zahorodnii
31d1d13de5 Remove AbstractClient plumbing casts in TouchInputRedirection 2022-04-18 11:47:56 +03:00
Vlad Zahorodnii
6cf490c9cc Remove AbstractClient plumbing casts in PointerInputRedirection 2022-04-18 11:47:56 +03:00
Vlad Zahorodnii
f7d913af91 Remove AbstractClient plumbing casts in TabBox 2022-04-18 11:47:56 +03:00
Vlad Zahorodnii
506863f97e Remove AbstractClient plumbing casts in src/layers.cpp 2022-04-18 11:47:56 +03:00
Vlad Zahorodnii
e5561b194a Remove AbstractClient plumbing casts in WindowItem 2022-04-18 11:47:54 +03:00
Vlad Zahorodnii
76a3a31f42 Remove AbstractClient plumbing casts in EffectsHandlerImpl 2022-04-18 11:10:29 +03:00
Vlad Zahorodnii
9157b1303e Remove AbstractClient plumbing casts in PopupInputFilter 2022-04-18 11:04:18 +03:00
Vlad Zahorodnii
94bbe14f4c Remove AbstractClient plumbing casts in Placement 2022-04-18 11:01:51 +03:00
Vlad Zahorodnii
85be7c2b48 Remove AbstractClient plumbing casts in ScreencastManager 2022-04-18 10:59:45 +03:00
Vlad Zahorodnii
e5fe1ebd20 Remove AbstractClient plumbing casts in Shadow 2022-04-18 10:58:53 +03:00
Vlad Zahorodnii
3c69b08e49 Fix up some AbstractClient dynamic_cast<>()s
Originally, they were to check whether the given window is managed.
2022-04-18 10:42:53 +03:00
Nils Fenner
aaa429ee0a Merge Toplevel into AbstractClient
References issue #81
2022-04-18 07:42:11 +00:00
l10n daemon script
5acf8aa792 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"
2022-04-18 01:40:14 +00:00
Ismael Asensio
d320756206 kcm/rules: Add Exclusive and SelectAll types to options model
A "Select All" option has the value of all the rest of the options
combined. Used for the Window Types property.

An Exclusive option cannot be check as the same time as any other
options, but uses its own value. Used for "All Activities" and
"All Virtual Desktops" properties.

Co-Authored-By: Fushan Wen <qydwhotmail@gmail.com>
2022-04-17 12:28:56 +02:00
Ismael Asensio
bb7bc3359a kcm/rules: Refactor OptionsModel
Provide `allOptionsMask`, `bitMask`and `useFlags` as properties
and roles from OptionsModel in C++ side, to simplify the QML part
and improve the treatment of flag-based properties in `OptionsComboBox`.
2022-04-17 12:28:56 +02:00
l10n daemon script
e21972fa71 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"
2022-04-17 01:48:39 +00:00
Xaver Hugl
3d556bba83 backends/drm: drop DrmGpu test mode
It's unused
2022-04-16 21:23:57 +00:00
Xaver Hugl
8cb8d2f627 backends/drm: drop DrmPipeline format helpers 2022-04-16 21:23:57 +00:00
Ismael Asensio
75d71a1c1a AbstractClient: Re-check screen rules on screen enabled
BUG: 409979
FIXED-IN: 5.25
2022-04-16 16:02:12 +00:00
Weng Xuetian
14ae6e3100 Fix race in wp_drm_lease_v1.
Basically this is a well known issue in wayland for globals. If bind
comes after destroyed, it will raise a invalid global error. The common
practice is to delay the destroy of global. Similar technique is also
applied to wl_output.

CCBUG: 452435
2022-04-16 00:01:12 -07:00
l10n daemon script
a518a4d53b 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"
2022-04-16 01:46:47 +00:00
Vlad Zahorodnii
e6f08665fe Drop Output::updateTransform()
If the backend needs to apply custom logic when changing the transform,
it should override Platform::applyOutputChanges(); otherwise just update
the Output's internal transform state.
2022-04-15 19:22:41 +03:00
Vlad Zahorodnii
8e7a8c5a11 Rename AbstractOutput to Output
AbstractOutput is not so Abstract and it's common to avoid the word
"Abstract" in class names as it doesn't contribute any new information.
It also significantly reduces the line width in some places.
2022-04-15 17:49:49 +03:00
Vlad Zahorodnii
09782bcf11 autotests: Use more fully qualified KWayland::Client types
This is needed to make "Output" identifier less ambiguous.
2022-04-15 17:49:49 +03:00
Vlad Zahorodnii
b376865f52 Rename WaylandOutputConfig to OutputConfiguration 2022-04-15 14:49:02 +00:00
Vlad Zahorodnii
d43dac8f8d Merge AbstractWaylandOutput with AbstractOutput 2022-04-15 14:49:02 +00:00