25134 Commits (1c18d1120608b08a4161c8087575888b3ab51e14)
 

Author SHA1 Message Date
Vlad Zahorodnii 1b6736e01d plugins/blur: Remove dead code 1 year ago
Vlad Zahorodnii 09fb54dcb6 plugins/blur: Enable strict blurring for all windows
At the moment, the blur effect operates in two modes:

- generic where the blur effect samples from pixels outside the window
- and a more strict version where the blur effect only blurs what's
  behind the window

The latter mode is preferred for panels and its popup. However, it also
makes sense to enable this mode for normal windows too. This simplifies
the blur effect a bit.
1 year ago
Vlad Zahorodnii 47d2126034 plugins/blur: Tidy the header 1 year ago
Vlad Zahorodnii 52031f095d plugins/blur: Move blur window data in a struct
It's going to be useful later to cache the background texture.
1 year ago
l10n daemon script 5d65b43294 GIT_SILENT Sync po/docbooks with svn 1 year ago
l10n daemon script 2f83e41967 GIT_SILENT Sync po/docbooks with svn 1 year ago
Kai Uwe Broulik 8c01959c82 Use PlainText for various Labels
Otherwise if a virtual desktop or window contains something that looks
like an HTML tag, it will try to render it and blow up the layout.
1 year ago
l10n daemon script 8d7e5c726e GIT_SILENT Sync po/docbooks with svn 1 year ago
l10n daemon script 56ff7fd240 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"
1 year ago
l10n daemon script aae482348b GIT_SILENT Sync po/docbooks with svn 1 year ago
l10n daemon script b9307e8dc2 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"
1 year ago
l10n daemon script 13f3805f28 GIT_SILENT Sync po/docbooks with svn 1 year ago
Xaver Hugl f60727c438 utils/udev: drop Ptr alias
It's not very useful and makes it less clear what the type is
1 year ago
Xaver Hugl 74f10d0cdf port most uses of the reset(new ...) pattern to std::make_unique 1 year ago
Xaver Hugl 267dd543f2 scene: port away from manual memory management 1 year ago
Xaver Hugl 1ace5a4cee input: add special handling for tabbox modifiers
modifiersRelevantForTabBox handles modifiers being consumed, which is wrong for the
tabbox; all it needs is to ignore capslock. To ensure that happens, this commit adds
a separate method for modifiers relevant for the tabbox.

BUG: 473099
1 year ago
David Edmundson 169257416e wayland: Send data device selections to data control on bind even if null
Specification for data control states:
"The first selection event is sent upon binding the
wlr_data_control_device object."

This differs to other data devices.

CCBUG: 459389
1 year ago
Kai Uwe Broulik b0897a9aa5 wayland: Don't send preferred scale and transform if not determined yet
Rather not send anything than a potentially wrong default scale value
of 1.0 or transform of Normal.
1 year ago
Vlad Zahorodnii ff636fc909 plugins/qpa: Remove unused epoxy include 1 year ago
Kai Uwe Broulik ed8b581dda XdgTopLevelWindow: Translate window menu coordinate from local
The show_window_menu request is in surface-local coordinates,
which include any client-side window shadows.

Translate the menu coordinates so the window shows up in the
right spot.
1 year ago
l10n daemon script 9ecd378624 GIT_SILENT Sync po/docbooks with svn 1 year ago
l10n daemon script 618bf2a26c 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"
1 year ago
Xaver Hugl 2541e3fbe0 backends/drm: don't assume we never get new subpixel types
CCBUG: 472340
1 year ago
l10n daemon script b198ae6fe1 GIT_SILENT Sync po/docbooks with svn 1 year ago
l10n daemon script 37e490d7cc 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"
1 year ago
Xaver Hugl 5007d337b3 backends/drm: queue cursor updates instead of replacing the original commit
At commit time, the newest commit that's ready will be chosen, ensuring that
cursor updates added just before commit time can't delay the primary plane
update unnecessarily
1 year ago
Xaver Hugl bf17d6388c backends/drm: don't commit buffers that are still being rendered to
This allows updating the commit until the next vblank happens, making the
effect of the dropped frame less visible
1 year ago
Xaver Hugl a64e43e6b1 utils/filedescriptor: add helper to query if the fd is readable 1 year ago
Vlad Zahorodnii 7c24242300 qpa: Remove Window::eglSurface()
Surfaceless contexts are required now, so hardcode the egl surface in
the relevant place to tidy the api of the Window.
1 year ago
Vlad Zahorodnii 1687183d4d qpa: Port OpenGL code path to GraphicsBuffer
This allows us to unify graphics buffer handling for normal wayland
windows and internal windows.
1 year ago
Vlad Zahorodnii 9911b6b54c libkwineffects: Add support for depth/stencil attachments
It's needed so we can allocate fbos suitable for qtquick.
1 year ago
Vlad Zahorodnii 76335880bf core: Expose graphics buffer allocator in RenderBackend
It can be used by other components to allocate buffers on the
compositing render device. For example, QPA.
1 year ago
Vlad Zahorodnii c2dfb55c59 wayland: Implement xdg-shell v6
This change adds support for xdg_wm_base v6, which introduces
xdg_toplevel suspended state.

The suspended state is tied to the visibility of the window item so the
effects could possibily "resume" window content updates.
1 year ago
Nathan Mills 05527271f5 wayland: Fix uninitialized variables. 1 year ago
Nathan Mills 890712f872 drm: Fix undefined behavior when bit shifting. 1 year ago
Antonio Russo 5502ce9a9c placeSmart: Properly track width and height
`Placements::placeSmart` searches for an optimal position for windows, attempting to minimize overlap.  The core of this algorithm tracks the
client's height and width in `ch` and `cw`, which have been adjusted by -1. This simplifies logic determining the bottom and right points of a
window when you are starting at the top and left points.

However, this decision requires adjusting that number by +1 when doing the opposite: determining the top and left points when you start with
the bottom and right points.

placeSmart cycles through window locations, searching for acceptable nooks and crannies to fit a window in, nicely.  It begins by checking
for places to put the top left corner of the window which abut another constraint.  If that fails, it then tries to place the bottom right
abutting a constraining feature.

After finding a suitable bottom (or right) location, the top (or left) location must be determined, requiring the -1 adjustment to be undone.

This patch adds that +1 back in.

# The bug it solves

This error can be seen by opening a bunch of windows that are placed using the "Minimal Overlapping" rule.  The open space on the screen will be tiled from left to right, and then top to bottom in the windows.  Once no more windows can be placed like that, the next window will be placed at the extreme bottom-right corner.  However, it will be one pixel too low and one pixel too far to the right---if you try to move the window, it will "snap" to the correct spot.

This single pixel may seem minor or even irrelevant, but when you use the "Present Windows" desktop effect on a multiple-monitor setup, this one pixel will cause the window to show up on both monitors.
1 year ago
l10n daemon script 499ee68656 GIT_SILENT Sync po/docbooks with svn 1 year ago
l10n daemon script 9750581ba9 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"
1 year ago
Xaver Hugl 7be6aa73f2 plugins/screenshot: do color transformations if necessary
BUG: 471874
1 year ago
l10n daemon script 85237fe7a7 GIT_SILENT Sync po/docbooks with svn 1 year ago
Kai Uwe Broulik 207cb3de6f XdgTopLevelWindow: Update client output in initialize()
It was only updated when the client moved/resized or the outputs
themselves changed.
1 year ago
Kai Uwe Broulik 19b8948b51 kcms/decoration: Rename dragging property to dragActive
ListView/GridView already have a dragging property and Qt 6.6
makes it FINAL to prevent you from overriding it.
1 year ago
Kai Uwe Broulik 8d571b0d1d kcms/decoration: Connect model signals for theme property
The theme property depends on the contents of the model,
so signal a change if the model has items added/removed
or got reset.

BUG: 470778
1 year ago
Kai Uwe Broulik 559d55f64f XdgPopupWindow: Disconnect relayout when role gets destroyed
Otherwise we will still react on a frameGeometryChanged signal
and try to relayout the popup when its transient parent was
already set to null leading to a crash.

BUG: 472532
1 year ago
Xaver Hugl be6be22bae internalwindow: don't crash on pointer leave when m_handle is nullptr
BUG: 472922
1 year ago
Xaver Hugl befb50ebec backends/drm: allow modesets with atomic tests if a modeset is already pending
Otherwise the tests will always fail

BUG: 461657
1 year ago
Xaver Hugl 8feeb9b023 backends/drm: resize shadow texture with the output gbm swapchain 1 year ago
Kai Uwe Broulik 53279fd8d3 InternalWindow: Don't be movable on a dialog with BypassWindowManagerHint
Such a dialog isn't placeable, so it shouldn't be movable.
Fixes being able to move the tabbox around if Alt is the modifier
key for moving windows.
1 year ago
l10n daemon script 7c3032777c GIT_SILENT Sync po/docbooks with svn 1 year ago
Xaver Hugl 2ea707585f input: use modifiersRelevantForGlobalShortcuts for tabbox events
This way, caps lock doesn't get in the way

BUG: 453918
1 year ago