gimp but for windows: a wayland compositor
git clone https://github.com/m-col/wimp
Files | Refs | Readme

Commit 2ce713f01ff7ee183cc888677e3534dd5abf8616
Parent: 7fab0e5366b2632932b56ba67ad81a7562666c65
Author: mcol <mcol@posteo.net>
Date: 2021-01-24 00:16:21 +0000
Committer: mcol <mcol@posteo.net>
Committed: 2021-01-24 00:16:21 +0000

Add tiled state when halfimizing windows

src/shell.c Modified

@@ -136,6 +136,7 @@
 
 static void on_request_move(struct wl_listener *listener, void *data) {
     struct view *view = wl_container_of(listener, view, request_move_listener);
+    wlr_xdg_toplevel_set_tiled(view->surface, false);
     process_move_resize(view, CURSOR_MOVE, 0);
 }
 
@@ -143,6 +144,7 @@
 static void on_request_resize(struct wl_listener *listener, void *data) {
     struct wlr_xdg_toplevel_resize_event *event = data;
     struct view *view = wl_container_of(listener, view, request_resize_listener);
+    wlr_xdg_toplevel_set_tiled(view->surface, false);
     process_move_resize(view, CURSOR_RESIZE, event->edges);
 }
 

src/action.c Modified

@@ -287,9 +287,10 @@
     }
 
     double zoom = server->current_desk->zoom;
-    view->x = (x - view->surface->geometry.x) / zoom;
-    view->y = (y - view->surface->geometry.y) / zoom;
+    view->x = x / zoom;
+    view->y = y / zoom;
     wlr_xdg_toplevel_set_size(view->surface, width / zoom, height / zoom);
+    wlr_xdg_toplevel_set_tiled(view->surface, true);
 }