]> git.mdlowis.com Git - proto/labwc.git/commitdiff
ssd: set squared corners for tiled views conditionally
authorJens Peters <jp7677@gmail.com>
Sat, 22 Jun 2024 21:40:19 +0000 (23:40 +0200)
committerJohan Malm <johanmalm@users.noreply.github.com>
Thu, 27 Jun 2024 21:29:11 +0000 (22:29 +0100)
Respect the snapping settings for notify-client.

include/view.h
src/ssd/ssd-titlebar.c
src/view.c

index b21d7ca2c9c3bfeba41e23cb9cf76a05e9360648..b4f90e6a4d48c5cc108d26aab1dbeee8c43a3f52 100644 (file)
@@ -495,6 +495,7 @@ void view_toggle_always_on_bottom(struct view *view);
 void view_toggle_visible_on_all_workspaces(struct view *view);
 
 bool view_is_tiled(struct view *view);
+bool view_is_tiled_and_notify_tiled(struct view *view);
 bool view_is_floating(struct view *view);
 void view_move_to_workspace(struct view *view, struct workspace *workspace);
 enum ssd_mode view_get_ssd_mode(struct view *view);
index 87d0f2e92e0e2aa29af02a3ad66a88d60d018994..32d6131a5c84ced352aa50831b76c42c04622a3a 100644 (file)
@@ -123,7 +123,7 @@ ssd_titlebar_create(struct ssd *ssd)
                set_maximize_alt_icon(ssd, true);
                ssd->state.was_maximized = true;
        }
-       if (view_is_tiled(view) && !maximized) {
+       if (view_is_tiled_and_notify_tiled(view) && !maximized) {
                set_squared_corners(ssd, true);
                ssd->state.was_tiled_not_maximized = true;
        }
@@ -193,7 +193,9 @@ ssd_titlebar_update(struct ssd *ssd)
        struct theme *theme = view->server->theme;
 
        bool maximized = view->maximized == VIEW_AXIS_BOTH;
-       bool tiled_not_maximized = view_is_tiled(ssd->view) && !maximized;
+       bool tiled_not_maximized = view_is_tiled_and_notify_tiled(ssd->view)
+               && !maximized;
+
        if (ssd->state.was_maximized != maximized
                        || ssd->state.was_tiled_not_maximized != tiled_not_maximized) {
                set_squared_corners(ssd, maximized || tiled_not_maximized);
index f83c9a6630adb4d237a8a78dfab4ce017ae6a85e..5c98a935e7ff1eb5a0e2e2284c3b9dafbfb90568 100644 (file)
@@ -1171,6 +1171,23 @@ view_is_tiled(struct view *view)
                || view->tiled_region_evacuate);
 }
 
+bool
+view_is_tiled_and_notify_tiled(struct view *view)
+{
+       switch (rc.snap_tiling_events_mode) {
+       case LAB_TILING_EVENTS_NEVER:
+               return false;
+       case LAB_TILING_EVENTS_REGION:
+               return view->tiled_region || view->tiled_region_evacuate;
+       case LAB_TILING_EVENTS_EDGE:
+               return view->tiled;
+       case LAB_TILING_EVENTS_ALWAYS:
+               return view_is_tiled(view);
+       }
+
+       return false;
+}
+
 bool
 view_is_floating(struct view *view)
 {