mirror of
https://codeberg.org/dwl/dwl.git
synced 2026-06-21 22:52:42 +00:00
Compare commits
3 Commits
v0.8
..
74fdafbaef
| Author | SHA1 | Date | |
|---|---|---|---|
| 74fdafbaef | |||
| ca4123072d | |||
| a8915224e8 |
@@ -1,13 +1,5 @@
|
||||
# dwl - dwm for Wayland
|
||||
|
||||
2025-08-16:
|
||||
dwl IS CURRENTLY UN-MAINTAINED.
|
||||
AT THE PRESENT TIME, I (@fauxmight) DO NOT HAVE
|
||||
THE TIME OR CAPACITY TO KEEP UP WITH [wlroots] CHANGES.
|
||||
IF YOU ARE INTERESTED IN TAKING ON LEAD DEVELOPER RESPONSIBILITIES,
|
||||
SEE ISSUE [#1166](https://codeberg.org/dwl/dwl/issues/1166).
|
||||
---
|
||||
|
||||
Join us on our IRC channel: [#dwl on Libera Chat]
|
||||
Or on the community-maintained [Discord server].
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
static const int sloppyfocus = 1; /* focus follows mouse */
|
||||
static const int bypass_surface_visibility = 0; /* 1 means idle inhibitors will disable idle tracking even if it's surface isn't visible */
|
||||
static const unsigned int borderpx = 1; /* border pixel of windows */
|
||||
static const unsigned int snap = 32; /* snap pixel */
|
||||
static const float rootcolor[] = COLOR(0x222222ff);
|
||||
static const float bordercolor[] = COLOR(0x444444ff);
|
||||
static const float focuscolor[] = COLOR(0x005577ff);
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
#include <wlr/types/wlr_data_device.h>
|
||||
#include <wlr/types/wlr_drm.h>
|
||||
#include <wlr/types/wlr_export_dmabuf_v1.h>
|
||||
#include <wlr/types/wlr_ext_data_control_v1.h>
|
||||
#include <wlr/types/wlr_fractional_scale_v1.h>
|
||||
#include <wlr/types/wlr_gamma_control_v1.h>
|
||||
#include <wlr/types/wlr_idle_inhibit_v1.h>
|
||||
@@ -1862,6 +1863,7 @@ void
|
||||
motionnotify(uint32_t time, struct wlr_input_device *device, double dx, double dy,
|
||||
double dx_unaccel, double dy_unaccel)
|
||||
{
|
||||
int nx, ny;
|
||||
double sx = 0, sy = 0, sx_confined, sy_confined;
|
||||
Client *c = NULL, *w = NULL;
|
||||
LayerSurface *l = NULL;
|
||||
@@ -1919,7 +1921,17 @@ motionnotify(uint32_t time, struct wlr_input_device *device, double dx, double d
|
||||
/* If we are currently grabbing the mouse, handle and return */
|
||||
if (cursor_mode == CurMove) {
|
||||
/* Move the grabbed client to the new position. */
|
||||
resize(grabc, (struct wlr_box){.x = (int)round(cursor->x) - grabcx, .y = (int)round(cursor->y) - grabcy,
|
||||
nx = (int)round(cursor->x) - grabcx;
|
||||
ny = (int)round(cursor->y) - grabcy;
|
||||
if (abs(selmon->w.x - nx) < (int)snap)
|
||||
nx = selmon->w.x;
|
||||
else if (abs((selmon->w.x + selmon->w.width) - (nx + grabc->geom.width)) < (int)snap)
|
||||
nx = selmon->w.x + selmon->w.width - grabc->geom.width;
|
||||
if (abs(selmon->w.y - ny) < (int)snap)
|
||||
ny = selmon->w.y;
|
||||
else if (abs((selmon->w.y + selmon->w.height) - (ny + grabc->geom.height)) < (int)snap)
|
||||
ny = selmon->w.y + selmon->w.height - grabc->geom.height;
|
||||
resize(grabc, (struct wlr_box){.x = nx, .y = ny,
|
||||
.width = grabc->geom.width, .height = grabc->geom.height}, 1);
|
||||
return;
|
||||
} else if (cursor_mode == CurResize) {
|
||||
@@ -2518,6 +2530,7 @@ setup(void)
|
||||
wlr_export_dmabuf_manager_v1_create(dpy);
|
||||
wlr_screencopy_manager_v1_create(dpy);
|
||||
wlr_data_control_manager_v1_create(dpy);
|
||||
wlr_ext_data_control_manager_v1_create(dpy, 1);
|
||||
wlr_primary_selection_v1_device_manager_create(dpy);
|
||||
wlr_viewporter_create(dpy);
|
||||
wlr_single_pixel_buffer_manager_v1_create(dpy);
|
||||
|
||||
Reference in New Issue
Block a user