[wip] Add MoveResizeTo

Loosely based on http://openbox.org/wiki/Help:Actions#MoveResizeTo

Only allows to use percent values for x, y, width and height attributes.
Does not support `monitor` argument.

Example config:
```xml
<!-- Resize via W-Numpad -->
<keybind key="W-KP_1">
    <action name="MoveResizeTo" x="0%" y="50%" height="50%" width="50%" />
</keybind>
<keybind key="W-KP_2">
    <action name="MoveResizeTo" x="0%" y="50%" height="50%" width="100%" />
</keybind>
<keybind key="W-KP_3">
    <action name="MoveResizeTo" x="50%" y="50%" height="50%" width="50%" />
</keybind>
<keybind key="W-KP_4">
    <action name="MoveResizeTo" x="0%" y="0%" height="100%" width="50%" />
</keybind>
<keybind key="W-KP_5">
    <action name="MoveResizeTo" />
</keybind>
<keybind key="W-KP_6">
    <action name="MoveResizeTo" x="50%" y="0%" height="100%" width="50%" />
</keybind>
<keybind key="W-KP_7">
    <action name="MoveResizeTo" x="0%" y="0%" height="50%" width="50%" />
</keybind>
<keybind key="W-KP_8">
    <action name="MoveResizeTo" x="0%" y="0%" height="50%" width="100%" />
</keybind>
<keybind key="W-KP_9">
    <action name="MoveResizeTo" x="50%" y="0%" height="50%" width="50%" />
</keybind>
```

Partly fixes #386
This commit is contained in:
Consolatis 2022-06-11 00:19:31 +02:00
parent a0e22d5e07
commit 7585c7c26a
4 changed files with 76 additions and 0 deletions

View file

@ -435,6 +435,8 @@ void view_adjust_for_layout_change(struct view *view);
void view_discover_output(struct view *view);
void view_move_to_edge(struct view *view, const char *direction);
void view_snap_to_edge(struct view *view, const char *direction);
void view_rel_move_resize_to(struct view *view, struct wlr_box *rel_box);
const char *view_get_string_prop(struct view *view, const char *prop);
void view_update_title(struct view *view);
void view_update_app_id(struct view *view);