mirror of
https://github.com/labwc/labwc.git
synced 2026-03-29 07:58:10 -04:00
interactive: un-maximize only axes that are being resized
When resizing in only one axis (horizontal/vertical), there's no reason
to un-maximize the other axis.
Supporting logic was landed in the previous commit and in ebd39dfe0d
(which fixed the client-initiated resize case), so all that remains is
to make a small change in interactive_begin().
This commit is contained in:
parent
6d2140c4b7
commit
f9f4219ed4
1 changed files with 10 additions and 3 deletions
|
|
@ -119,10 +119,17 @@ interactive_begin(struct view *view, enum input_mode mode, enum lab_edge edges)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If tiled or maximized in only one direction, reset
|
* If tiled or maximized in only one direction, reset
|
||||||
* maximized/tiled state but keep the same geometry as
|
* tiled state and un-maximize the relevant axes, but
|
||||||
* the starting point for the resize.
|
* keep the same geometry as the starting point.
|
||||||
*/
|
*/
|
||||||
view_set_maximized(view, VIEW_AXIS_NONE);
|
enum view_axis maximized = view->maximized;
|
||||||
|
if (edges & LAB_EDGES_LEFT_RIGHT) {
|
||||||
|
maximized &= ~VIEW_AXIS_HORIZONTAL;
|
||||||
|
}
|
||||||
|
if (edges & LAB_EDGES_TOP_BOTTOM) {
|
||||||
|
maximized &= ~VIEW_AXIS_VERTICAL;
|
||||||
|
}
|
||||||
|
view_set_maximized(view, maximized);
|
||||||
view_set_untiled(view);
|
view_set_untiled(view);
|
||||||
cursor_shape = cursor_get_from_edge(edges);
|
cursor_shape = cursor_get_from_edge(edges);
|
||||||
break;
|
break;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue