]> git.mdlowis.com Git - proto/labwc.git/log
proto/labwc.git
19 months agoCI: add wlroots 0.17 packages for Arch and FreeBSD
Consolatis [Sun, 14 Jul 2024 19:09:44 +0000 (21:09 +0200)]
CI: add wlroots 0.17 packages for Arch and FreeBSD

19 months agodocs: fix typo in labwc-config.5.scd
Birger Schacht [Sat, 13 Jul 2024 12:14:22 +0000 (14:14 +0200)]
docs: fix typo in labwc-config.5.scd

19 months agobuild: bump version to 0.7.3
Johan Malm [Fri, 12 Jul 2024 16:23:47 +0000 (17:23 +0100)]
build: bump version to 0.7.3

19 months agoNEWS.md: update for 0.7.3
Johan Malm [Mon, 8 Jul 2024 19:09:00 +0000 (20:09 +0100)]
NEWS.md: update for 0.7.3

19 months agoTranslation updates from weblate
Weblate [Wed, 3 Jul 2024 08:01:16 +0000 (10:01 +0200)]
Translation updates from weblate

Co-authored-by: Heimen Stoffels <vistausss@fastmail.com>
Co-authored-by: Weblate <noreply@weblate.org>
Co-authored-by: tark1998 <tark1998@gmail.com>
Translate-URL: https://translate.lxqt-project.org/projects/labwc/labwc/
Translate-URL: https://translate.lxqt-project.org/projects/labwc/labwc/ko/
Translate-URL: https://translate.lxqt-project.org/projects/labwc/labwc/nl/
Translation: Labwc/labwc

20 months agomenu: fix small memory leaks
John Lindgren [Mon, 8 Jul 2024 15:09:20 +0000 (11:09 -0400)]
menu: fix small memory leaks

20 months agomenu: try other paths (and fix memory leak) if fopen() fails
John Lindgren [Mon, 8 Jul 2024 15:04:57 +0000 (11:04 -0400)]
menu: try other paths (and fix memory leak) if fopen() fails

20 months agotheme: fix memory leak of button icons
John Lindgren [Mon, 8 Jul 2024 14:56:20 +0000 (10:56 -0400)]
theme: fix memory leak of button icons

20 months agosession-lock: clear focused surface on lock
tokyo4j [Tue, 2 Jul 2024 15:16:30 +0000 (00:16 +0900)]
session-lock: clear focused surface on lock

Before this commit, keyboard events were sent to the focused surface
before the session-lock client maps its surfaces.

20 months agosession-lock: restore focused view on unlock
tokyo4j [Tue, 2 Jul 2024 13:33:47 +0000 (22:33 +0900)]
session-lock: restore focused view on unlock

Before this commit, the topmost view is focused on unlock. This commit
changes it to remember the focused view on lock then restore it on
unlock.

20 months agosession-lock: never allow multiple session-locks
tokyo4j [Tue, 2 Jul 2024 13:04:02 +0000 (22:04 +0900)]
session-lock: never allow multiple session-locks

I forgot to set session_lock_manager->lock, so it was always NULL.
This barely worked, but allowed multiple session-locks and conflicted
with comments in session-lock.h.

20 months agosession-lock: refactor
tokyo4j [Tue, 2 Jul 2024 13:03:45 +0000 (22:03 +0900)]
session-lock: refactor

No changes in logic.

20 months agosession-lock: remove cruft
tokyo4j [Tue, 2 Jul 2024 13:01:30 +0000 (22:01 +0900)]
session-lock: remove cruft

The color to fill screen with is always black and we don't need reset
its color on every session-lock destruction.

20 months agoxwayland: allow persistence
Andrew J. Hesford [Wed, 3 Jul 2024 17:43:04 +0000 (13:43 -0400)]
xwayland: allow persistence

Closes: #1958.
20 months agoRemove subprojects/seatd.wrap as no longer needed
Johan Malm [Tue, 2 Jul 2024 19:51:51 +0000 (20:51 +0100)]
Remove subprojects/seatd.wrap as no longer needed

20 months agossd/ssd-shadow.c: fix memory leak
Consolatis [Tue, 2 Jul 2024 18:49:53 +0000 (20:49 +0200)]
ssd/ssd-shadow.c: fix memory leak

Before this patch, we were leaking memory [0] because the
shadow implementation did not free the ssd_parts on destruction.

There was also no check if shadows were actually enabled via
rc.xml or not so this also impacted people who were not using
shadows but were not setting the shadow size via their theme to 0.

[0] 44 bytes per ssd_part * 8 parts * 2 states == 704 bytes per
view closed. Note that Reconfigure also re-creates the SSD, thus
we were also leaking 704 bytes * nr_views per Reconfigure.

20 months agoxdg: support xdg-shell v3 with popup repositioning
John Lindgren [Thu, 27 Jun 2024 23:17:38 +0000 (19:17 -0400)]
xdg: support xdg-shell v3 with popup repositioning

See https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3514
which added support on the wlroots side.

We now re-run popup positioning (for both xdg-shell and layer-shell
popups) when the "reposition" event is received. This allows popups that
change size (such as qmpanel's applications menu) to be positioned
correctly.

xdg-shell v3 also gives the compositor some additional "hints" for popup
positioning (reactive, parent_size, and parent_configure_serial) which
are available but we don't make use of currently.

20 months agomagnifier: fix flickering on simultaneous gamma changes
Consolatis [Mon, 17 Jun 2024 14:36:07 +0000 (16:36 +0200)]
magnifier: fix flickering on simultaneous gamma changes

Gamma changes take another code path and thus did not
render the magnifier. This patch consalidates both
code paths and therefore also renders the magnifier on
gamma changes.

Fixes: #1905
20 months agomenu: support menu.overlap.x with pipemenus
Johan Malm [Fri, 28 Jun 2024 17:27:43 +0000 (18:27 +0100)]
menu: support menu.overlap.x with pipemenus

No inteded functional change intended with refactoring of
get_submenu_position().

Fixes #1870

20 months agoview: don't try to restore to very small width/height on unmaximize
tokyo4j [Wed, 19 Jun 2024 02:48:39 +0000 (11:48 +0900)]
view: don't try to restore to very small width/height on unmaximize

Thonny (Python IDE made with Tk) may set the window geometry to 1x1 and
maximizes the window before mapping. This set `view->natural_geometry`
to 1x1, so labwc tried to restore the window geometry to it on
unmaximize, causing validation errors in `ssd_update_geometry()` as its
width and height are smaller than `LAB_MIN_VIEW_{WIDTH,HEIGHT}`.

This commit fixes it by not allowing geometries smaller than
`LAB_MIN_VIEW_{WIDTH,HEIGHT}` in `view->natural_geometry`.

20 months agossd: set squared corners for tiled views conditionally
Jens Peters [Sat, 22 Jun 2024 21:40:19 +0000 (23:40 +0200)]
ssd: set squared corners for tiled views conditionally

Respect the snapping settings for notify-client.

20 months agossd: extend border over squared corners
Jens Peters [Sat, 22 Jun 2024 21:27:37 +0000 (23:27 +0200)]
ssd: extend border over squared corners

20 months agossd: show squared corners when the view is tiled
Jens Peters [Sat, 22 Jun 2024 13:12:12 +0000 (15:12 +0200)]
ssd: show squared corners when the view is tiled

20 months agoaction: remember initial direction of PreviousView
droc12345 [Wed, 26 Jun 2024 21:03:56 +0000 (16:03 -0500)]
action: remember initial direction of PreviousView

...when cycling windows. Also make the toggling of direction when shift
is pressed relative to the initial direction. For example if W-j is
bound to PreviousWindow, subsequent key presses will continue to
cycle backwards unless shift if pressed.

Add documentation for using shift/arrow keys in Next/Previous

20 months agoRemove fuzzy for capitalized translations
stefonarch [Tue, 25 Jun 2024 11:01:45 +0000 (13:01 +0200)]
Remove fuzzy for capitalized translations

20 months agodnd: show dnd icon above layer-shell surfaces
tokyo4j [Tue, 25 Jun 2024 12:20:12 +0000 (21:20 +0900)]
dnd: show dnd icon above layer-shell surfaces

20 months agoTranslation updates from weblate
Weblate [Mon, 24 Jun 2024 19:19:25 +0000 (21:19 +0200)]
Translation updates from weblate

Co-authored-by: Abdullah Albaroty <albaroty@gmail.com>
Co-authored-by: Jan Rolski <wbcwknvstb@proton.me>
Co-authored-by: Priit Jõerüüt <lxqtwlate@joeruut.com>
Co-authored-by: Standreas <standreas@riseup.net>
Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.lxqt-project.org/projects/labwc/labwc/
Translate-URL: https://translate.lxqt-project.org/projects/labwc/labwc/ar/
Translate-URL: https://translate.lxqt-project.org/projects/labwc/labwc/de/
Translate-URL: https://translate.lxqt-project.org/projects/labwc/labwc/et/
Translate-URL: https://translate.lxqt-project.org/projects/labwc/labwc/it/
Translate-URL: https://translate.lxqt-project.org/projects/labwc/labwc/pl/
Translation: Labwc/labwc

20 months agoTranslation updates from weblate
Weblate [Sun, 23 Jun 2024 12:19:01 +0000 (14:19 +0200)]
Translation updates from weblate

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.lxqt-project.org/projects/labwc/labwc/
Translation: Labwc/labwc

20 months agoUpdated labwc.pot file
stefonarch [Sun, 23 Jun 2024 10:56:59 +0000 (12:56 +0200)]
Updated labwc.pot file

20 months agosrc/main.c: initialize locale after reading environments file
tokyo4j [Sat, 22 Jun 2024 21:51:22 +0000 (06:51 +0900)]
src/main.c: initialize locale after reading environments file

This makes the locale for client-menu items and workspace names follow
the env var `LANG` defined in `~/.config/environments`.

20 months agopo/meson.build: minor formatting
tokyo4j [Sat, 22 Jun 2024 21:46:16 +0000 (06:46 +0900)]
po/meson.build: minor formatting

20 months agoinput: test if tablet device is a libinput device
Jens Peters [Sun, 16 Jun 2024 07:10:46 +0000 (09:10 +0200)]
input: test if tablet device is a libinput device

Otherwise we might end with a failed assertion if the
tablet or pad isn't a libinput device.

Fixes https://github.com/labwc/labwc/issues/1916

20 months agoaction: add ToggleTabletMouseEmulation
Jens Peters [Sun, 16 Jun 2024 06:47:48 +0000 (08:47 +0200)]
action: add ToggleTabletMouseEmulation

Useful for switching between application-defined and
mapped tablet  pad buttons. Also for quickly troubleshooting
tablet behavior.

20 months agomenu: capitalize Roll Up/Down
Johan Malm [Fri, 14 Jun 2024 21:17:03 +0000 (22:17 +0100)]
menu: capitalize Roll Up/Down

...because it seems like better English and is more consistent with other
menu entries.

Same for 'Move Left' and 'Move Right'

20 months agoTypo
Simon Long [Fri, 14 Jun 2024 09:24:49 +0000 (10:24 +0100)]
Typo

20 months agoUse existing reset_keybind function
Simon Long [Fri, 14 Jun 2024 09:23:04 +0000 (10:23 +0100)]
Use existing reset_keybind function

20 months agoMove extern to h file
Simon Long [Thu, 13 Jun 2024 10:04:30 +0000 (11:04 +0100)]
Move extern to h file

20 months agoFix release keybindings being triggered after mouse bindings
Simon Long [Thu, 13 Jun 2024 09:57:34 +0000 (10:57 +0100)]
Fix release keybindings being triggered after mouse bindings

20 months agoImplement <resize><drawContents>
tokyo4j [Wed, 29 May 2024 02:06:39 +0000 (11:06 +0900)]
Implement <resize><drawContents>

<resize><drawContents>[yes|no] configures whether to let the clients
redraw its window content content while resizing.

When <resize><drawContents> is set to no, a multi-rect is shown to
indicate the geometry of the resized window.

20 months agosrc/theme.c: add zero_array() macro
tokyo4j [Mon, 20 May 2024 06:19:37 +0000 (15:19 +0900)]
src/theme.c: add zero_array() macro

20 months agomenu: ignore <item> without parent <menu>
Johan Malm [Thu, 13 Jun 2024 20:00:44 +0000 (21:00 +0100)]
menu: ignore <item> without parent <menu>

...to avoid assert() in item_create() because current_menu is NULL.

Reproduce crash with...

    <?xml version="1.0" encoding="utf-8"?>
    <openbox_menu>
      <item label="foo"/>
    </openbox_menu>

20 months agodocs: clarify tablet button mapping
Jens Peters [Mon, 10 Jun 2024 17:45:45 +0000 (19:45 +0200)]
docs: clarify tablet button mapping

20 months agoinput: support tablet-v2 pad notifications
Jens Peters [Tue, 4 Jun 2024 18:21:12 +0000 (20:21 +0200)]
input: support tablet-v2 pad notifications

20 months agoinput: track tablets and tablet-pads at seat
Jens Peters [Tue, 4 Jun 2024 18:14:30 +0000 (20:14 +0200)]
input: track tablets and tablet-pads at seat

20 months agoinput: run mousebind action only on button pressed
Jens Peters [Tue, 11 Jun 2024 04:41:24 +0000 (06:41 +0200)]
input: run mousebind action only on button pressed

20 months agoTranslation updates from weblate
Weblate [Fri, 7 Jun 2024 05:11:14 +0000 (07:11 +0200)]
Translation updates from weblate

Co-authored-by: The Silitonix <silitonix@gmail.com>
20 months agokeyboard: handle onRelease keybind after long press
Johan Malm [Mon, 10 Jun 2024 21:34:53 +0000 (22:34 +0100)]
keyboard: handle onRelease keybind after long press

...that is longer than the specified repeatDelay interval.

20 months agoxwayland: reset cursor image on cursor theme reload
Consolatis [Sun, 9 Jun 2024 22:01:54 +0000 (00:01 +0200)]
xwayland: reset cursor image on cursor theme reload

As wlr_xwayland caches the pixel data when not yet started
up due to the delayed lazy startup approach, we do have to
re-set the xwayland cursor image when reloading the cursor
theme. Otherwise the first X11 client connected will cause
the xwayland server to use the cached (and destroyed) pixel
data.

To reproduce:
- Compile with b_sanitize=address,undefined
- Start labwc (nothing in autostart that could create
  a X11 connection, e.g. no GTK or X11 application)
- Reconfigure
- Start some X11 client

20 months agoNEWS.md: interim update
Johan Malm [Sun, 9 Jun 2024 20:56:27 +0000 (21:56 +0100)]
NEWS.md: interim update

20 months agosrc/button/button-svg: reduce debug log spam
Consolatis [Sun, 9 Jun 2024 22:05:43 +0000 (00:05 +0200)]
src/button/button-svg: reduce debug log spam

20 months agoAdd onRelease option to <keybind>
Simon Long [Fri, 26 Apr 2024 10:05:12 +0000 (11:05 +0100)]
Add onRelease option to <keybind>

...to make keybind actions fire on the release event rather then when the
key is first pressed. This is useful for binding actions to modifier keys
only. The most likely use-case for this is the binding of a Super key to a
menu, for example:

    <keybind key="Super_L" onRelease="yes">
      <action name="Execute" command="rofi -show drun"/>
    </keybind>

If another keybind is issued between the press and release, the on-release
keybind is cancelled.

Co-authored-by: @johanmalm
20 months agoinput: always notify all tablet axis
Jens Peters [Thu, 6 Jun 2024 15:41:05 +0000 (17:41 +0200)]
input: always notify all tablet axis

Notify all axis based on the capabilities of the
tablet tool. At least GTK applications expect
this for e.g. smooth pressure or distance events.

20 months agoinput: extract function
Jens Peters [Tue, 4 Jun 2024 18:11:32 +0000 (20:11 +0200)]
input: extract function

21 months agoview: prevent child views from opening right/bottom of usable area
tokyo4j [Wed, 5 Jun 2024 02:09:10 +0000 (11:09 +0900)]
view: prevent child views from opening right/bottom of usable area

21 months agoIME: fix flicker when popup surface is initially mapped
tokyo4j [Mon, 3 Jun 2024 08:54:49 +0000 (17:54 +0900)]
IME: fix flicker when popup surface is initially mapped

Before this commit, a popup surface was placed at (0,0) on its creation.
So if the popup surface is already mapped on its creation, the popup was
shown at (0,0) then quickly moved to the input-rect on surface commits
or input-rect updates.

21 months agoIME: destroy popup node when popup is destroyed
tokyo4j [Mon, 3 Jun 2024 08:50:13 +0000 (17:50 +0900)]
IME: destroy popup node when popup is destroyed

Before this commit, scene-nodes for IME popup were destroyed when
the bound wl_surface is destroyed. However, this caused a bug that
multiple popup nodes are shown when input_popup_surface_v2 is recreated
with the same wl_surface.

21 months agodocs: add example shutdown file
Narrat [Sat, 1 Jun 2024 21:24:27 +0000 (23:24 +0200)]
docs: add example shutdown file

Closes #1809

21 months agocursor: rate-limit resize events respecting monitor's refresh rate
tokyo4j [Fri, 31 May 2024 06:10:39 +0000 (15:10 +0900)]
cursor: rate-limit resize events respecting monitor's refresh rate

This fixes the lag when resizing windows of some apps on XWayland
(e.g. Chromium and Steam).

21 months agoinput: prevent cursor notifications from pointer and tablet tool
Jens Peters [Tue, 28 May 2024 18:50:05 +0000 (20:50 +0200)]
input: prevent cursor notifications from pointer and tablet tool

... at the same time. Omit cursor notifications from
a pointer when a tablet tool (stylus/pen) is in
proximity. We expect to get cursor notifications
from the tablet tool instead.

21 months agosession-lock: allow client to update cursor shape
tokyo4j [Wed, 29 May 2024 15:53:52 +0000 (00:53 +0900)]
session-lock: allow client to update cursor shape

21 months agosession-lock: fix flashing screen when the session is locked
tokyo4j [Wed, 29 May 2024 15:29:59 +0000 (00:29 +0900)]
session-lock: fix flashing screen when the session is locked

The protocol says screen should be filled with opaque color when the
session is locked, but it allows some delay to wait for the session-lock
client to offer surfaces.

With this commit, filling the sceen with opaque color is delayed by 100ms.

21 months agosession-lock: refactor
tokyo4j [Wed, 29 May 2024 15:13:34 +0000 (00:13 +0900)]
session-lock: refactor

- Replaced `session_lock` with `session_lock_manager` which is
  persistent throughout the session.
- Replaced `session_lock->abandoned` with `session_lock_manager->locked`.
  Old `session_lock->abandoned` is equal to
  `!session_lock_manager->lock && session_lock_manager->locked`.
- Eliminated the use of global variables in `session-lock.c`.
- Changed some function names.

21 months agowayland: add support for security-context-v1
Yuri Nesterov [Thu, 16 May 2024 09:52:47 +0000 (12:52 +0300)]
wayland: add support for security-context-v1

21 months agoinput: send tablet proximity-in only above a valid surface
Jens Peters [Tue, 28 May 2024 18:35:26 +0000 (20:35 +0200)]
input: send tablet proximity-in only above a valid surface

A resize with a tablet tool might end above a
non-tablet capable surface, discard the
proximity-in in that case.

21 months agoinput: postpone tablet notifications when tip or button is pressed
Jens Peters [Sat, 25 May 2024 06:58:53 +0000 (08:58 +0200)]
input: postpone tablet notifications when tip or button is pressed

We should not switch to tablet notifications when an
out-of-surface-move had been started on a non-tablet
capabale surface.

Also postpone proximity-in when moving to a new surface
with the tip down.

21 months agoinput: close xdg-popups on tablet tip or button press
Jens Peters [Fri, 24 May 2024 14:18:24 +0000 (16:18 +0200)]
input: close xdg-popups on tablet tip or button press

21 months agoinput: prevent interference between pointer and tablet tool motion
Jens Peters [Mon, 20 May 2024 21:17:33 +0000 (23:17 +0200)]
input: prevent interference between pointer and tablet tool motion

Move the pointer "out of the way" on proximity-in
to prevent interference with tablet motion.

21 months agodocs: add mouse emulation section
Jens Peters [Wed, 24 Apr 2024 18:36:51 +0000 (20:36 +0200)]
docs: add mouse emulation section

Also clarify tablet button mapping restrictions.

21 months agoconfig: add option for forcing mouse emulation
Jens Peters [Mon, 22 Apr 2024 15:21:55 +0000 (17:21 +0200)]
config: add option for forcing mouse emulation

Default is off. Also allow switching with reconfigure.

21 months agoinput: support button mapping for tablet capable surfaces
Jens Peters [Sun, 21 Apr 2024 19:05:12 +0000 (21:05 +0200)]
input: support button mapping for tablet capable surfaces

Apply the original mapping to mouse buttons and
map those back to stylus buttons.

21 months agoinput: add tablet-v2 notifications for axis and buttons
Jens Peters [Sat, 20 Apr 2024 09:50:33 +0000 (11:50 +0200)]
input: add tablet-v2 notifications for axis and buttons

Similar like touch, this is guarded by checking if
a surface accepts the tablet protocol. Also reuse
common cursor logic.

Intialize tablet tools on proximity.
Notify idle manager about activity on events.

21 months agoinput: handle tablet tool cursor requests
Jens Peters [Sat, 20 Apr 2024 09:46:10 +0000 (11:46 +0200)]
input: handle tablet tool cursor requests

Similar to cursor requests for pointers.

21 months agoinput: add tablet tool setup
Jens Peters [Sat, 20 Apr 2024 09:40:23 +0000 (11:40 +0200)]
input: add tablet tool setup

21 months agoserver: create tablet-v2-manager
Jens Peters [Thu, 11 Apr 2024 21:48:00 +0000 (23:48 +0200)]
server: create tablet-v2-manager

21 months agoprotocols: add tablet-unstable-v2
Jens Peters [Thu, 11 Apr 2024 21:47:35 +0000 (23:47 +0200)]
protocols: add tablet-unstable-v2

21 months agoinput: expose general cursor motion and button functions
Jens Peters [Sat, 20 Apr 2024 09:33:04 +0000 (11:33 +0200)]
input: expose general cursor motion and button functions

Separate the general logic from the pointer notifications
to allow reuse of those function for other (e.g. tablet)
input sources.

21 months agoAdd action UnMaximize
Johan Malm [Sun, 19 May 2024 17:10:44 +0000 (18:10 +0100)]
Add action UnMaximize

Suggested-by: @Vladimir-csp
Fixes: #1825
21 months agosrc/tearing.c: remove listeners on destroy
Consolatis [Mon, 27 May 2024 14:27:35 +0000 (16:27 +0200)]
src/tearing.c: remove listeners on destroy

21 months agoForEach: initialize view query window_type correctly
Consolatis [Mon, 27 May 2024 17:55:16 +0000 (19:55 +0200)]
ForEach: initialize view query window_type correctly

Before this patch, the window type would be checked even if
not actually requested to do so.

Fixes: #1852
21 months agodecorations: fix handling of SSD/non-SSD windows
Tobias Bengfort [Thu, 23 May 2024 04:53:13 +0000 (06:53 +0200)]
decorations: fix handling of SSD/non-SSD windows

Fixup 41a3b6884630eb3299aa66c2152f1b639242999e

Fixes #1841

21 months agoREADME.md: simplify video link table
Johan Malm [Fri, 24 May 2024 20:11:14 +0000 (21:11 +0100)]
README.md: simplify video link table

21 months agoREADME.md: add link to release video
Johan Malm [Fri, 24 May 2024 19:50:26 +0000 (20:50 +0100)]
README.md: add link to release video

21 months agosrc/config/rcxml.c: ensure parent action is available
Consolatis [Wed, 22 May 2024 01:36:33 +0000 (03:36 +0200)]
src/config/rcxml.c: ensure parent action is available

Before this patch, having a branch or query with an invalid or
missing parent action would trigger an assert when trying to
access the parent. This patch ensures that we bail out instead.

Reported-by: fuyukai via IRC (thanks)
21 months agoReplace `_` with `-` in source file names
tokyo4j [Wed, 22 May 2024 00:56:16 +0000 (09:56 +0900)]
Replace `_` with `-` in source file names

21 months agomagnifier: fix high CPU usage even with magnifier disabled
tokyo4j [Mon, 20 May 2024 11:36:30 +0000 (20:36 +0900)]
magnifier: fix high CPU usage even with magnifier disabled

Fixes the high CPU usage issue reported by @droc12345.

Changing `last_mag != is_magnify_on()` to `last_mag == is_magnify_on()`
works fine, but this check isn't needed in the first place because
magnifier state changes call `wlr_output_schedule_frame()`, which sets
`wlr_output->needs_frame`.

Also added a FIXME comment regarding the performance issue when the
magnifier is enabled.

21 months agodoc: fix inconsistent wording
tokyo4j [Tue, 21 May 2024 11:37:38 +0000 (20:37 +0900)]
doc: fix inconsistent wording

Fixup for 34290ef6

21 months agoIME: support multiple IME popups
tokyo4j [Thu, 16 May 2024 05:57:31 +0000 (14:57 +0900)]
IME: support multiple IME popups

We didn't support multiple IME popups since input-method-v2 protocol
has no way to position them individually, but we should support it to
provide IME developers with more programming flexibility.

21 months agoUpdate consumed_by_frame_context for LAB_SSD_ALL
Simon Long [Thu, 2 May 2024 10:00:23 +0000 (11:00 +0100)]
Update consumed_by_frame_context for LAB_SSD_ALL

21 months agoDocumentation
Simon Long [Wed, 1 May 2024 10:30:55 +0000 (11:30 +0100)]
Documentation

21 months agoAdd All context for mouse events
Simon Long [Wed, 1 May 2024 06:28:17 +0000 (07:28 +0100)]
Add All context for mouse events

21 months agoTranslation updates from weblate
Weblate [Thu, 16 May 2024 04:30:31 +0000 (06:30 +0200)]
Translation updates from weblate

Co-authored-by: tark1998 <tark1998@gmail.com>
21 months agoinput: ignore not supported tablet tools
Jens Peters [Tue, 7 May 2024 17:35:44 +0000 (19:35 +0200)]
input: ignore not supported tablet tools

We currently only support cursor emulation
for absolute motion, thus ignore tools/pens
that use relative motion.

Add a log statement on proximity-in to give
some feedback.

21 months agoinput: remove tablet/pad signal listeners on destroy
Jens Peters [Thu, 11 Apr 2024 21:47:10 +0000 (23:47 +0200)]
input: remove tablet/pad signal listeners on destroy

We should remove those when destroying a tablet
or a tablet pad.

Also rename 'tablet' to 'pad' in 'tablet_pad' for better
readability and consistency.

21 months agoseat: announce pointer capability for tablet tool
Jens Peters [Fri, 26 Apr 2024 15:27:36 +0000 (17:27 +0200)]
seat: announce pointer capability for tablet tool

We use pointer focus for the tablet tool, so we
should also use this capability. There is no
dedicated tablet tool capability.

21 months agodecorations: add SetDecorations action
Tobias Bengfort [Sat, 20 Apr 2024 04:29:51 +0000 (06:29 +0200)]
decorations: add SetDecorations action

21 months agodecorations: make has_ssd public
Tobias Bengfort [Fri, 19 Apr 2024 11:35:16 +0000 (13:35 +0200)]
decorations: make has_ssd public

21 months agodecorations: refactor view_set_decorations
Tobias Bengfort [Thu, 18 Apr 2024 07:46:36 +0000 (09:46 +0200)]
decorations: refactor view_set_decorations

21 months agoDeprecate MoveToCursor
Johan Malm [Sun, 19 May 2024 15:50:53 +0000 (16:50 +0100)]
Deprecate MoveToCursor

Use <action name="AutoPlace" policy="cursor"/> instead.

Related-to: #1785
Suggested-by: @tokyo4j
21 months agosrc/main: delay startup of applications until event loop is ready
Consolatis [Sat, 4 May 2024 20:17:24 +0000 (22:17 +0200)]
src/main: delay startup of applications until event loop is ready

This mostly allows for using scripts that trigger a labwc SIGHUP
to work as expected. Before this patch, there was a race between
the event loop starting up and the autostart scripts executing.

One example of such a use-case is dynamically setting the keyboard
layout or cursor theme via environment variable based on feedback
from a dbus service like discussed in #1588.

21 months agoaction: allow configurable policy in AutoPlace action
Andrew J. Hesford [Tue, 7 May 2024 13:46:05 +0000 (09:46 -0400)]
action: allow configurable policy in AutoPlace action

Closes: #1784.