add client.type field
Current options are XDGShell, X11Managed, and X11Unmanaged.
This commit is contained in:
		
							
								
								
									
										6
									
								
								dwl.c
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								dwl.c
									
									
									
									
									
								
							| @@ -49,6 +49,7 @@ | ||||
| enum { CurNormal, CurMove, CurResize }; /* cursor */ | ||||
| enum { NetWMWindowTypeDialog, NetWMWindowTypeSplash, NetWMWindowTypeToolbar, | ||||
| 	NetWMWindowTypeUtility, NetLast }; /* EWMH atoms */ | ||||
| enum { XDGShell = 0, X11Managed, X11Unmanaged }; /* client types */ | ||||
|  | ||||
| typedef union { | ||||
| 	int i; | ||||
| @@ -78,8 +79,9 @@ typedef struct { | ||||
| 	struct wl_listener unmap; | ||||
| 	struct wl_listener destroy; | ||||
| 	struct wlr_box geom;  /* layout-relative, includes border */ | ||||
| 	int isx11; | ||||
| 	Monitor *mon; | ||||
| 	unsigned int type; | ||||
| 	int isx11; | ||||
| 	int bw; | ||||
| 	unsigned int tags; | ||||
| 	int isfloating; | ||||
| @@ -574,12 +576,14 @@ createnotifyx11(struct wl_listener *listener, void *data) | ||||
|  | ||||
| 	/* Listen to the various events it can emit */ | ||||
| 	if (!xwayland_surface->override_redirect) { | ||||
| 		c->type = X11Managed; | ||||
| 		c->map.notify = maprequest; | ||||
| 		c->unmap.notify = unmapnotify; | ||||
| 		/* Only "managed" windows can be activated */ | ||||
| 		c->activate.notify = activatex11; | ||||
| 		wl_signal_add(&xwayland_surface->events.request_activate, &c->activate); | ||||
| 	} else { | ||||
| 		c->type = X11Unmanaged; | ||||
| 		c->map.notify = maprequestindependent; | ||||
| 		c->unmap.notify = unmapnotifyindependent; | ||||
| 	} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user