action: teach MoveTo more sophisticated x/y usage

...including:

1. Negative values (changing the frame of reference to the opposite edge)
2. Percentage of output
3. "center" window within output

Ref:
- https://openbox.org/help/Actions#MoveResizeTo

Fixes: #3611
This commit is contained in:
Johan Malm 2026-06-08 20:11:34 +01:00
parent 579e532908
commit fb7263f70f
2 changed files with 69 additions and 4 deletions

View file

@ -77,6 +77,18 @@ Actions are used in menus and keyboard/mouse bindings.
*<action name="MoveTo" x="" y="" />*
Move to position (x, y).
*x* and *y* take the following types of value:
- A positive number like *10*. This will position the window at the
specified distance (in pixels) from the top/left edge of the output
(monitor).
- A negative number like *-5* which will similarly position the window
but relative to the bottom/right edge.
- The string *center* which will center the window relative to the
output in that dimension
- A percentage like *33%* which is interpreted as a relative value of
the output dimensions and will position the window by that amount
from the top/left edge.
*<action name="ResizeTo" width="" height="" />*
Resize window.