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

Commit f87ba5e2a6c5dabfc839335181d94294408e2be7
Parent: b350282add2b152c0f358ceca32ddd766864035e
Author: mcol <mcol@posteo.net>
Date: 2020-11-08 23:23:42 +0000
Committer: mcol <mcol@posteo.net>
Committed: 2020-11-08 23:23:42 +0000

Change approach to panning to instead change view coords

src/types.h Modified

@@ -76,7 +76,6 @@
     struct server *server;
     struct wl_list views;
     float background[4];
-    double x, y;
     int index;
 };
 

src/output.c Modified

@@ -28,8 +28,8 @@
 	    break;
 	}
     }
-    x += view->x + sx - server->current_desk->x;
-    y += view->y + sy - server->current_desk->y;
+    x += view->x + sx;
+    y += view->y + sy;
 
     // scale for HiDPI
     struct wlr_box box = {

src/input.c Modified

@@ -126,13 +126,18 @@
 		wlr_seat_pointer_clear_focus(seat);
 	    }
 	    break;
+
 	case CURSOR_PAN:
-	    server->current_desk->x += dx;
-	    server->current_desk->y += dy;
+	    wl_list_for_each(view, &server->current_desk->views, link) {
+		view->x += dx;
+		view->y += dy;
+	    }
 	    break;
+
 	case CURSOR_MOVE:
 	    process_cursor_move(server, time);
 	    break;
+
 	case CURSOR_RESIZE:
 	    process_cursor_resize(server, time);
 	    break;

src/desk.c Modified

@@ -13,7 +13,6 @@
     desk->server = server;
     wl_list_init(&desk->views);
     assign_colour("#5D479D", desk->background);
-    desk->x = desk->y = 0;
     desk->index = num_desks;
     num_desks++;
 }