]> git.mdlowis.com Git - proto/labwc.git/log
proto/labwc.git
2 years agokeybinds: add optional layoutDependent argument
Consolatis [Mon, 11 Sep 2023 13:15:37 +0000 (15:15 +0200)]
keybinds: add optional layoutDependent argument

This allows to define keybinds as layout dependent. E.g. keybinds
only trigger if the configured key exists in the currently active
keyboard layout. The keybind will also only trigger on the physical
key that is mapped to the configured key in the active layout.

By default the new argument is false which means all keybinds by
default are layout agnostic. This optional argument can be used
to restore the earlier default behavior of having keys layout
dependent.

2 years agokeybinds: prefer keycodes over keysyms
Consolatis [Tue, 5 Sep 2023 13:18:41 +0000 (15:18 +0200)]
keybinds: prefer keycodes over keysyms

This allows keyboard layout agnostic keybinds
in a multi layout configuration.

Fixes: #1069
2 years agodocs: clarify keyboard modifiers can be used for mousebinds
Standreas [Sun, 10 Sep 2023 13:26:54 +0000 (15:26 +0200)]
docs: clarify keyboard modifiers can be used for mousebinds

Fixes: #1075
2 years agosrc/cursor: ensure interactive move/resize ends correctly for CSD clients
Consolatis [Mon, 28 Aug 2023 14:43:51 +0000 (16:43 +0200)]
src/cursor: ensure interactive move/resize ends correctly for CSD clients

Before this patch, when moving a CSD client below a layershell surface -
like a panel that was configured with either the "top" or "overlay"
layers - we'd only send a matching release button event to the client but
not actually end the interactive move operation. That caused the drag to
continue even though the user already released the mouse button.

In comparison, SSD clients were not suffering from the same issue because
the initial mouse "down" event was not attached to any client surface and
thus it would not take the first early return because there was no surface
attached to the release event.

This patch fixes the issue by reordering the conditions where we return
early. It also ensures that when we finish the move, we still send the
release event to CSD clients.

Fixes: #1053
Reported-by: @DynamoFox (thanks)
2 years agowindow-rules: add ignoreFocusRequest property
Consolatis [Sun, 3 Sep 2023 12:01:40 +0000 (14:01 +0200)]
window-rules: add ignoreFocusRequest property

This allows to reject focus requests from specific applications.

2 years agokeybinds: allow non-english based keybinds
Consolatis [Tue, 5 Sep 2023 16:25:01 +0000 (18:25 +0200)]
keybinds: allow non-english based keybinds

2 years agoconfig: replace enums with int to handle negative values
tokyo4j [Thu, 7 Sep 2023 14:43:58 +0000 (23:43 +0900)]
config: replace enums with int to handle negative values

This commit also fixes that an invalid value in <accelProfile> is interpreted as "flat"

2 years agoconfig: support <tapAndDrag> and <dragLock>
tokyo4j [Sat, 2 Sep 2023 08:32:48 +0000 (17:32 +0900)]
config: support <tapAndDrag> and <dragLock>

2 years agoCodeStyle: double indent in if statement
tokyo4j [Sat, 2 Sep 2023 08:32:29 +0000 (17:32 +0900)]
CodeStyle: double indent in if statement

2 years agosrc/menu/menu.c: support keyboard driven selection
Consolatis [Wed, 30 Aug 2023 09:20:46 +0000 (11:20 +0200)]
src/menu/menu.c: support keyboard driven selection

Fixes: #1058
Requested-by: @stefonarch
2 years agosrc/menu/menu.c: convert to wl_list_append()
Consolatis [Wed, 30 Aug 2023 00:37:08 +0000 (02:37 +0200)]
src/menu/menu.c: convert to wl_list_append()

2 years agotouch: store initial coordinate adjustments
bi4k8 [Sat, 26 Aug 2023 17:01:42 +0000 (17:01 +0000)]
touch: store initial coordinate adjustments

this avoids touch offsets jumping when a touch point moves off of a surface

2 years agosrc/osd.c: prevent crash with theme setting osd.window-switcher.width: 0
Consolatis [Sun, 27 Aug 2023 19:11:04 +0000 (21:11 +0200)]
src/osd.c: prevent crash with theme setting osd.window-switcher.width: 0

Fixes: #1050
Reported-by: @4ffy (thanks)
2 years agosrc/ssd: ensure unround corners + disabled borders are set on reload
Consolatis [Fri, 25 Aug 2023 13:37:28 +0000 (15:37 +0200)]
src/ssd: ensure unround corners + disabled borders are set on reload

E.g. when using Reconfigure or ToggleDecorations with a maximized view.

2 years agosrc/ssd: fix tiling via keybind when maximized
Consolatis [Fri, 25 Aug 2023 11:22:23 +0000 (13:22 +0200)]
src/ssd: fix tiling via keybind when maximized

The previous PR introduced an issue with tiling based actions
like SnapToEdge and SnapToRegion using outdated SSD margin
values when called via keybind while maximized. That resulted
in wrong offsets for the tiled windows.

This commit restores the functionality by forcing a re-calculation
of the SSD margin when changing the maximized state.

Thanks to @Flrian for reporting the issue via IRC.

2 years agosrc/ssd: un-round corners on maximize
Consolatis [Wed, 23 Aug 2023 02:42:30 +0000 (04:42 +0200)]
src/ssd: un-round corners on maximize

2 years agosrc/ssd: disable border on maximize
Consolatis [Tue, 22 Aug 2023 23:04:40 +0000 (01:04 +0200)]
src/ssd: disable border on maximize

Fixes #1044

2 years agoconfig: s/app_id/identifier/ for window-switcher field
Johan Malm [Sun, 20 Aug 2023 19:24:46 +0000 (20:24 +0100)]
config: s/app_id/identifier/ for window-switcher field

...to be consistent with window rules.

The use of 'app_id' for window-switcher fields is hereby deprecated.

2 years agoMove isfocusable() from desktop.c to view.c
Johan Malm [Sun, 20 Aug 2023 15:43:29 +0000 (16:43 +0100)]
Move isfocusable() from desktop.c to view.c

2 years agoAdd common/array.h with wl_array_len()
Johan Malm [Sun, 20 Aug 2023 10:56:50 +0000 (11:56 +0100)]
Add common/array.h with wl_array_len()

2 years agoview: add for_each_view()
Johan Malm [Fri, 18 Aug 2023 21:18:59 +0000 (22:18 +0100)]
view: add for_each_view()

Helped-by: @Consolatis and @heroin-moose (by a significant amount)
2 years agoosd: refactor to remove get_osd_height()
Johan Malm [Sat, 12 Aug 2023 18:59:46 +0000 (19:59 +0100)]
osd: refactor to remove get_osd_height()

2 years agoosd: simplify to only use one view-array
Johan Malm [Sat, 12 Aug 2023 18:59:05 +0000 (19:59 +0100)]
osd: simplify to only use one view-array

2 years agoview: add view_array_append()
Johan Malm [Thu, 10 Aug 2023 14:46:00 +0000 (15:46 +0100)]
view: add view_array_append()

...to reduce code duplication.

The function populates an array with views which meet any set of critera
from:

  - current-workspace
  - no-always-on-top
  - no-skipWindowSwitcher (window-rule)

Make src/osd.c use this new interface. Note that always-on-top views are
still filtered out from the window-switcher and that desktop_cycle_view()
needs to be re-worked before always-on-top views can be opted in.

2 years agoAdd window resize indicator
Consolatis [Thu, 17 Aug 2023 16:59:29 +0000 (18:59 +0200)]
Add window resize indicator

2 years agosrc/xwayland.c: make size_hints globally accessible
Consolatis [Thu, 17 Aug 2023 17:00:56 +0000 (19:00 +0200)]
src/xwayland.c: make size_hints globally accessible

2 years agocursor: prevent press on layer-subsurface from cancelling popup grab
Johan Malm [Mon, 14 Aug 2023 22:38:55 +0000 (23:38 +0100)]
cursor: prevent press on layer-subsurface from cancelling popup grab

Fixes: #1030
2 years agofind-idents.c: fix typo
Johan Malm [Sat, 12 Aug 2023 19:10:44 +0000 (20:10 +0100)]
find-idents.c: fix typo

...which so far has caused any bugs!

2 years agocheckpatch.pl: check single statement brace
Johan Malm [Thu, 10 Aug 2023 14:48:52 +0000 (15:48 +0100)]
checkpatch.pl: check single statement brace

2 years agoforeign: set parent
Johan Malm [Thu, 3 Aug 2023 20:32:58 +0000 (21:32 +0100)]
foreign: set parent

Tested with wlroots/examples/foreign-toplevel.c

Helped-by: @Consolatis
2 years agobutton: move button-png.c to button/
Johan Malm [Thu, 10 Aug 2023 14:57:20 +0000 (15:57 +0100)]
button: move button-png.c to button/

...so that all button code is in the same place.

2 years agobutton: refactor xbm code
Johan Malm [Thu, 10 Aug 2023 14:50:25 +0000 (15:50 +0100)]
button: refactor xbm code

- Rename src/xbm/ to src/button/
- Combine xbm.c parse.c tokenize.c into button-xbm.c

No functional change

2 years agocursor: cancel popup grab on mouse-press outside client itself
Johan Malm [Wed, 9 Aug 2023 15:58:18 +0000 (16:58 +0100)]
cursor: cancel popup grab on mouse-press outside client itself

...for example on any part of the server side decoration

Supercedes #826 for xdg-shell popups

Helped-by: @Consolatis
2 years agoAdd keepBorder `<theme>` option and enable it by default
Consolatis [Fri, 14 Apr 2023 07:01:13 +0000 (09:01 +0200)]
Add keepBorder `<theme>` option and enable it by default

With the new keepBorder option enabled, the
ToggleDecorations action now has 3 states:

- the first time only disables the titlebar
- the second time disables the whole SSD
- the third time enables the whole SSD again

When the keepBorder action is disabled, the old 2-state
behavior is restored, e.g. the ToggleDecorations action
only toggles between on and off.

Fixes #813

2 years agoSupport png buttons
Johan Malm [Fri, 4 Aug 2023 21:34:07 +0000 (22:34 +0100)]
Support png buttons

In the theme directory add close-{active,inactive}.png instead of
close.xbm - and similarly for iconify, menu and max.

2 years agotheme: simplify loading of xbm buttons
Johan Malm [Fri, 4 Aug 2023 21:30:16 +0000 (22:30 +0100)]
theme: simplify loading of xbm buttons

No functional change.

2 years agosrc/cursor.c: end popup grab on desktop click
Consolatis [Sun, 6 Aug 2023 10:19:58 +0000 (12:19 +0200)]
src/cursor.c: end popup grab on desktop click

Fixes #949

2 years agoRestore SnapToEdge and MoveToEdge default keybinds
Consolatis [Sun, 6 Aug 2023 08:26:04 +0000 (10:26 +0200)]
Restore SnapToEdge and MoveToEdge default keybinds

When adding the fallback keybinds we add them as string but expect them being an int.
This commit fixes that by using the same parsing routines that are used when parsing
user supplied configuration.

Fixes 1ee8715d57ddb6b444e0b089879db6f837400539
actions: use enum for _ToEdge action

2 years agoFix crash when using _ToEdge actions when using the default keybinds
Consolatis [Sun, 6 Aug 2023 07:47:37 +0000 (09:47 +0200)]
Fix crash when using _ToEdge actions when using the default keybinds

This happens because of two separate bugs:
- The action validation failed to verify the data type of the argument
- When adding the fallback keybinds we add them as string but expect them being an int

This commit fixes the first bug.

Fixes 1ee8715d57ddb6b444e0b089879db6f837400539
actions: use enum for _ToEdge actions

2 years agoview: make move_sub_views() use append_children method
Johan Malm [Sat, 5 Aug 2023 18:02:05 +0000 (19:02 +0100)]
view: make move_sub_views() use append_children method

...to share common code with minimize_sub_views()

Also, fix a bug in the move-to-back functions to move the window
hierarchy in the right order.

Helped-by: @Consolatis
2 years agoview: minimize parents/children together
Johan Malm [Wed, 2 Aug 2023 19:57:39 +0000 (20:57 +0100)]
view: minimize parents/children together

Minimize the whole view-hierarchy from top to bottom regardless of which
one in the hierarchy requested the minimize. For example, if an 'About' or
'Open File' dialog is minimized, its toplevel is minimized also, and vice
versa.

For reference:
- This is consistent with in openbox, where child views (dialogs) can be
  minimized, but when doing so the parent is also minimized.
- In mutter these types of dialogs cannot be minimized (via client-menu or
  otherwise).
- In both openbox and mutter, when a toplevel window is minimized any open
  children are also minimized.

2 years agoxwayland: fix client request-unmap bug
Johan Malm [Fri, 4 Aug 2023 21:04:42 +0000 (22:04 +0100)]
xwayland: fix client request-unmap bug

Remove foreign-toplevel handle when a client sends a request-unmap to a
minimized (therefore unmapped) view.

2 years agoxwayland: guard against mapping view without surface
Johan Malm [Fri, 4 Aug 2023 20:58:52 +0000 (21:58 +0100)]
xwayland: guard against mapping view without surface

...which may occur if a user minimizes an xwayland view (typically a
child view such as a dialog) at the same time as the client sends a
request-unmap, which xwayland clients sometimes do without actually
requesting destroy and just leave them dangling.

2 years agoview: move (z-order) ancestors with modal dialogs
Johan Malm [Wed, 19 Jul 2023 16:19:37 +0000 (17:19 +0100)]
view: move (z-order) ancestors with modal dialogs

...so that other window cannot be positioned between modal dialogs and
their parent windows. This is consistent with Gtk3 and Qt5 applications on
mutter and openbox.

2 years agoxdg: show modal dialog above parent window
Johan Malm [Mon, 17 Jul 2023 19:16:21 +0000 (20:16 +0100)]
xdg: show modal dialog above parent window

This behaviour is consistent with that of mutter and openbox.

Fixes: issue #823
2 years agolabwc-theme(5): describe color alpha value
Johan Malm [Fri, 4 Aug 2023 21:37:39 +0000 (22:37 +0100)]
labwc-theme(5): describe color alpha value

...which has been supported for a long time but not been reflected in the
man page.  Colors can be parsed as `#rrggbb aaa` with aaa representing a
decimal alpha value. This could be used to hide a button, for example:

    window.active.button.menu.unpressed.image.color: #000000 0
    window.inactive.button.menu.unpressed.image.color: #000000 0

2 years agoactions: use enum for _ToEdge actions
Consolatis [Wed, 2 Aug 2023 02:30:50 +0000 (04:30 +0200)]
actions: use enum for _ToEdge actions

This also improves the config robustness as invalid edge names will now
prevent the action to be created in the first place and the user gets
notified about the issue.

2 years agoview: move MoveRelative code from action.c and restore natural geometry
Ph42oN [Sun, 23 Jul 2023 09:04:36 +0000 (12:04 +0300)]
view: move MoveRelative code from action.c and restore natural geometry

2 years agokeyboard: fallback on raw keysyms for bindings
Johan Malm [Mon, 17 Jul 2023 19:08:32 +0000 (20:08 +0100)]
keyboard: fallback on raw keysyms for bindings

When looking up keybinds, if the translated keysyms (based on the keymap
for the keyboard) do not match a defined keybind, try raw keysyms (as if
there were no modifier translation).

This allows a user to define for example keybind with "S-1" rather than
"S-exclam". It also supports "W-S-Tab".

Fixes: issues #163 #365 #992
2 years agokeyboard: combine nsyms and *syms in struct
Johan Malm [Mon, 17 Jul 2023 19:05:53 +0000 (20:05 +0100)]
keyboard: combine nsyms and *syms in struct

...in preparation for handling raw keysyms

No functional change intended.

2 years agotheme: limit corner radius to the height of the titlebar
Johan Malm [Sat, 15 Jul 2023 20:53:50 +0000 (21:53 +0100)]
theme: limit corner radius to the height of the titlebar

2 years agotheme: fix rounded-corner bug
Johan Malm [Sat, 15 Jul 2023 20:50:40 +0000 (21:50 +0100)]
theme: fix rounded-corner bug

Make top left/right corner pieces with large border thickness pixel
perfect.

Fixes: issue #988
2 years agoChase wlroots: Stop using wlr_xwayland_surface event data
John Lindgren [Mon, 17 Jul 2023 06:33:40 +0000 (02:33 -0400)]
Chase wlroots: Stop using wlr_xwayland_surface event data

Chases: 27edd024f83892f4af9c5084d47b73f26966aaf1
xwayland: pass NULL as event data

2 years agoChase wlroots: Add missing #include
John Lindgren [Tue, 21 Feb 2023 13:03:17 +0000 (08:03 -0500)]
Chase wlroots: Add missing #include

Chases: 323f0b94db22877487bca073fca497cd033719e8
wlr_scene: Cleanup header includes

2 years agoxwayland: Fix segfault at exit (seen with wlroots master)
John Lindgren [Mon, 17 Jul 2023 07:37:21 +0000 (03:37 -0400)]
xwayland: Fix segfault at exit (seen with wlroots master)

2 years agoAdded missing closing tags
stefonarch [Sun, 16 Jul 2023 08:04:19 +0000 (10:04 +0200)]
Added missing closing tags

2 years agobuild: bump version to 0.6.4
Johan Malm [Fri, 14 Jul 2023 19:43:33 +0000 (20:43 +0100)]
build: bump version to 0.6.4

2 years agoNEWS.md: add notes on 0.6.4
Johan Malm [Mon, 26 Jun 2023 16:09:28 +0000 (17:09 +0100)]
NEWS.md: add notes on 0.6.4

2 years agodnd: fix focus at end of dnd operation
Johan Malm [Mon, 10 Jul 2023 15:56:02 +0000 (16:56 +0100)]
dnd: fix focus at end of dnd operation

By default, leave keyboard-focus with the surface that originally had it
at the end of a dnd operation.  This is consistent with the default
behaviour of openbox and mutter.

If the 'focus/followMouse' option is enabled, then focus on the surface
under the cursor at the end of the dnd operation.

Fixes: issue #976
2 years agoAdd support for ext_idle_notify_v1..
Consolatis [Sat, 8 Jul 2023 16:27:40 +0000 (18:27 +0200)]
Add support for ext_idle_notify_v1..

..and combine both idle variants into a standalone manager

2 years agofind-banned: support reading multiple files from stdin
Johan Malm [Sun, 7 May 2023 21:14:35 +0000 (22:14 +0100)]
find-banned: support reading multiple files from stdin

2 years agofind-banned: print filename with each unwanted token
Johan Malm [Mon, 3 Apr 2023 12:49:35 +0000 (13:49 +0100)]
find-banned: print filename with each unwanted token

2 years agoscripts/helper/find-idents.c: handle single line comment tokens
Consolatis [Thu, 9 Feb 2023 04:33:16 +0000 (05:33 +0100)]
scripts/helper/find-idents.c: handle single line comment tokens

2 years agoAdd scripts/find-banned.sh
Johan Malm [Mon, 30 Jan 2023 21:24:52 +0000 (21:24 +0000)]
Add scripts/find-banned.sh

2 years agoToggleKeybinds per window
Consolatis [Sun, 5 Mar 2023 09:35:56 +0000 (10:35 +0100)]
ToggleKeybinds per window

2 years agoosd: move get_osd_height() closer to where it is called from
Johan Malm [Wed, 5 Jul 2023 18:52:01 +0000 (19:52 +0100)]
osd: move get_osd_height() closer to where it is called from

2 years agoosd: make item-border part of item-height
Johan Malm [Wed, 5 Jul 2023 18:49:56 +0000 (19:49 +0100)]
osd: make item-border part of item-height

2 years agotheme: add option osd.window-switcher.item.active.border.width
Consolatis [Sat, 1 Jul 2023 12:56:13 +0000 (14:56 +0200)]
theme: add option osd.window-switcher.item.active.border.width

...and change default values for the variables below to keep the
window-switcher look the same as it was at the last release.

osd.window-switcher.padding = 4
osd.window-switcher.item.padding.y = 1
osd.window-switcher.item.active.border.width = 2

2 years agotheme: add option osd.window-switcher.padding
Johan Malm [Thu, 29 Jun 2023 20:29:43 +0000 (21:29 +0100)]
theme: add option osd.window-switcher.padding

Fixes: issue #969
2 years agosrc/action.c: relax argument checks when running actions
Consolatis [Mon, 15 May 2023 16:50:13 +0000 (18:50 +0200)]
src/action.c: relax argument checks when running actions

2 years agoconfig: validate keybind, mousebind and menu actions
Consolatis [Sat, 13 May 2023 14:27:46 +0000 (16:27 +0200)]
config: validate keybind, mousebind and menu actions

2 years agosrc/action.c: add action_is_valid()
Consolatis [Sat, 13 May 2023 13:57:37 +0000 (15:57 +0200)]
src/action.c: add action_is_valid()

2 years agosrc/action.c: enforce action arg->key being set
Consolatis [Fri, 12 May 2023 12:33:12 +0000 (14:33 +0200)]
src/action.c: enforce action arg->key being set

2 years agoaction.c: remove duplicate code
Johan Malm [Sun, 2 Jul 2023 20:20:04 +0000 (21:20 +0100)]
action.c: remove duplicate code

2 years agomenu: support CDATA for <command> element
Johan Malm [Sun, 2 Jul 2023 20:17:26 +0000 (21:17 +0100)]
menu: support CDATA for <command> element

...in order to support obmenu-generator output such as this:

  <menu id="root-menu" label="Applications">
    <item label="File Manager"><action name="Execute"><command><![CDATA[xdg-open .]]></command></action></item>
    <item label="Terminal"><action name="Execute"><command><![CDATA[xterm]]></command></action></item>
    <item label="Web Browser"><action name="Execute"><command><![CDATA[xdg-open http://]]></command></action></item>
    <item label="Run command"><action name="Execute"><command><![CDATA[gmrun]]></command></action></item>
  </menu>

References:
- https://github.com/trizen/obmenu-generator
- https://aur.archlinux.org/packages/obmenu-generator
- https://trizenx.blogspot.com/2012/02/obmenu-generator.html

Fixes: issue #972
2 years agocheckpatch.pl: allow xmlFree in CamelCase format
Johan Malm [Mon, 3 Jul 2023 16:04:41 +0000 (17:04 +0100)]
checkpatch.pl: allow xmlFree in CamelCase format

...to avoid 'Avoid CamelCase' warning.

2 years agocheckpatch.pl: remove 'spaces preferred around that...' warning
Johan Malm [Mon, 3 Jul 2023 16:04:15 +0000 (17:04 +0100)]
checkpatch.pl: remove 'spaces preferred around that...' warning

...because it gives a false positive for "xmlChar *foo" saying it should
be "xmlChar * foo".

2 years agomenu: print menu.xml nodenames
Johan Malm [Sun, 2 Jul 2023 12:55:23 +0000 (13:55 +0100)]
menu: print menu.xml nodenames

...when LABWC_DEBUG_MENU_NODENAMES is set

2 years agoaction: disable MoveRelative for fullscreen and unmaximize
Ph42oN [Sun, 2 Jul 2023 20:26:09 +0000 (23:26 +0300)]
action: disable MoveRelative for fullscreen and unmaximize

2 years agoview: resize_relative disable for fullscreen and maximized and set untiled
Ph42oN [Sun, 2 Jul 2023 20:25:24 +0000 (23:25 +0300)]
view: resize_relative disable for fullscreen and maximized and set untiled

2 years agoview: add client_request flag to view->impl->unmap()
John Lindgren [Sat, 1 Jul 2023 16:37:47 +0000 (12:37 -0400)]
view: add client_request flag to view->impl->unmap()

This makes explicit the subtle behavioral difference between
xwayland_view_unmap() and handle_unmap().

With this change, the XDG and XWayland versions of handle_map/unmap()
are now identical, which will make further refactoring possible.

2 years agoosd: use theme->osd_border_width for focused item
Johan Malm [Thu, 29 Jun 2023 16:45:33 +0000 (17:45 +0100)]
osd: use theme->osd_border_width for focused item

2 years agotheme: add window-switcher width/padding
Johan Malm [Mon, 24 Apr 2023 20:31:28 +0000 (21:31 +0100)]
theme: add window-switcher width/padding

...and calculate item-height based on font-height

Add theme options
  - osd.window-switcher.width
  - osd.window-switcher.item.padding.x
  - osd.window-switcher.item.padding.y

Issue #879

2 years agoosd: use theme->osd_border_width consistently
Johan Malm [Mon, 24 Apr 2023 19:48:58 +0000 (20:48 +0100)]
osd: use theme->osd_border_width consistently

2 years agoSome formatting
stefonarch [Mon, 26 Jun 2023 20:33:34 +0000 (22:33 +0200)]
Some formatting

2 years agoaction: add ResizeRelative
Ph42oN [Tue, 27 Jun 2023 18:20:04 +0000 (21:20 +0300)]
action: add ResizeRelative

2 years agoadd MoveRelative to man page and use view->pending
Ph42oN [Tue, 27 Jun 2023 18:17:57 +0000 (21:17 +0300)]
add MoveRelative to man page and use view->pending

2 years agoadd MoveRelative
Julius Yli-Suomu [Mon, 26 Jun 2023 16:04:33 +0000 (19:04 +0300)]
add MoveRelative

2 years agosession.c: unconstify build_path() return value
Johan Malm [Mon, 26 Jun 2023 05:25:40 +0000 (06:25 +0100)]
session.c: unconstify build_path() return value

2 years agocommon/string-helpers.c: add strdup_printf()
Johan Malm [Sun, 25 Jun 2023 08:00:41 +0000 (09:00 +0100)]
common/string-helpers.c: add strdup_printf()

2 years agowindow-rules: support matchOnce attribute
Johan Malm [Wed, 7 Jun 2023 20:44:38 +0000 (21:44 +0100)]
window-rules: support matchOnce attribute

...allowing a rule to be applied to only the first window matching a
particular criteria. For example, the following can be used to apply a
window rule to lxqt-panel but not its configuration window with the same
app_id:

    <windowRules>
      <windowRule identifier="lxqt-panel" matchOnce="true">
        <skipTaskbar>yes</skipTaskbar>
        <action name="MoveTo" x="0" y="0" />
        <action name="ToggleAlwaysOnTop"/>
      </windowRule>
    </windowRules>

2 years agoaction: add MoveTo
Johan Malm [Tue, 6 Jun 2023 19:33:53 +0000 (20:33 +0100)]
action: add MoveTo

2 years agoaction: support arguments of int type
Johan Malm [Sun, 25 Jun 2023 19:20:52 +0000 (20:20 +0100)]
action: support arguments of int type

2 years agoconfig: support <margin top="" bottom="" left="" right="" output="" />
Johan Malm [Tue, 6 Jun 2023 18:52:57 +0000 (19:52 +0100)]
config: support <margin top="" bottom="" left="" right="" output="" />

2 years agoMove border-struct to common/border.h for sharing
Johan Malm [Mon, 5 Jun 2023 20:48:47 +0000 (21:48 +0100)]
Move border-struct to common/border.h for sharing

2 years agoview: add minimize method
Johan Malm [Sun, 25 Jun 2023 10:37:56 +0000 (11:37 +0100)]
view: add minimize method

...and call wlr_xwayland_surface_set_minimized() for xwayland surfaces on
(un)minimize.

Fixes: #958
2 years agoconfig: support <desktops number=""> update documentation
Sachin Bhat [Sun, 25 Jun 2023 09:18:43 +0000 (17:18 +0800)]
config: support <desktops number=""> update documentation

2 years agoconfig: support <desktops number="">
Sachin Bhat [Sun, 25 Jun 2023 00:09:28 +0000 (08:09 +0800)]
config: support <desktops number="">

2 years agoconfig: support <desktops number=>
Sachin Bhat [Sat, 24 Jun 2023 12:36:06 +0000 (20:36 +0800)]
config: support <desktops number=>

2 years agoconfig: support <desktops number=> update documentation
Sachin Bhat [Sat, 24 Jun 2023 11:46:00 +0000 (19:46 +0800)]
config: support <desktops number=> update documentation