mirror of
				https://codeberg.org/dwl/dwl.git
				synced 2025-10-30 19:44:17 +00:00 
			
		
		
		
	
							parent
							
								
									4170a90fbc
								
							
						
					
					
						commit
						3727f4a7b3
					
				
							
								
								
									
										13
									
								
								dwl.c
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								dwl.c
									
									
									
									
									
								
							| @ -96,6 +96,7 @@ typedef struct { | |||||||
| 	struct wl_listener map; | 	struct wl_listener map; | ||||||
| 	struct wl_listener unmap; | 	struct wl_listener unmap; | ||||||
| 	struct wl_listener destroy; | 	struct wl_listener destroy; | ||||||
|  | 	struct wl_listener set_title; | ||||||
| 	struct wl_listener fullscreen; | 	struct wl_listener fullscreen; | ||||||
| 	struct wlr_box geom;  /* layout-relative, includes border */ | 	struct wlr_box geom;  /* layout-relative, includes border */ | ||||||
| 	Monitor *mon; | 	Monitor *mon; | ||||||
| @ -288,6 +289,7 @@ static void unmaplayersurface(LayerSurface *layersurface); | |||||||
| static void unmaplayersurfacenotify(struct wl_listener *listener, void *data); | static void unmaplayersurfacenotify(struct wl_listener *listener, void *data); | ||||||
| static void unmapnotify(struct wl_listener *listener, void *data); | static void unmapnotify(struct wl_listener *listener, void *data); | ||||||
| static void updatemons(struct wl_listener *listener, void *data); | static void updatemons(struct wl_listener *listener, void *data); | ||||||
|  | static void updatetitle(struct wl_listener *listener, void *data); | ||||||
| static void view(const Arg *arg); | static void view(const Arg *arg); | ||||||
| static void virtualkeyboard(struct wl_listener *listener, void *data); | static void virtualkeyboard(struct wl_listener *listener, void *data); | ||||||
| static Client *xytoclient(double x, double y); | static Client *xytoclient(double x, double y); | ||||||
| @ -891,6 +893,7 @@ createnotify(struct wl_listener *listener, void *data) | |||||||
| 	LISTEN(&xdg_surface->events.map, &c->map, mapnotify); | 	LISTEN(&xdg_surface->events.map, &c->map, mapnotify); | ||||||
| 	LISTEN(&xdg_surface->events.unmap, &c->unmap, unmapnotify); | 	LISTEN(&xdg_surface->events.unmap, &c->unmap, unmapnotify); | ||||||
| 	LISTEN(&xdg_surface->events.destroy, &c->destroy, destroynotify); | 	LISTEN(&xdg_surface->events.destroy, &c->destroy, destroynotify); | ||||||
|  | 	LISTEN(&xdg_surface->toplevel->events.set_title, &c->set_title, updatetitle); | ||||||
| 	LISTEN(&xdg_surface->toplevel->events.request_fullscreen, &c->fullscreen, | 	LISTEN(&xdg_surface->toplevel->events.request_fullscreen, &c->fullscreen, | ||||||
| 			fullscreennotify); | 			fullscreennotify); | ||||||
| 	c->isfullscreen = 0; | 	c->isfullscreen = 0; | ||||||
| @ -994,6 +997,7 @@ destroynotify(struct wl_listener *listener, void *data) | |||||||
| 	wl_list_remove(&c->map.link); | 	wl_list_remove(&c->map.link); | ||||||
| 	wl_list_remove(&c->unmap.link); | 	wl_list_remove(&c->unmap.link); | ||||||
| 	wl_list_remove(&c->destroy.link); | 	wl_list_remove(&c->destroy.link); | ||||||
|  | 	wl_list_remove(&c->set_title.link); | ||||||
| 	wl_list_remove(&c->fullscreen.link); | 	wl_list_remove(&c->fullscreen.link); | ||||||
| #ifdef XWAYLAND | #ifdef XWAYLAND | ||||||
| 	if (c->type == X11Managed) | 	if (c->type == X11Managed) | ||||||
| @ -2291,6 +2295,14 @@ updatemons(struct wl_listener *listener, void *data) | |||||||
| 	wlr_output_manager_v1_set_configuration(output_mgr, config); | 	wlr_output_manager_v1_set_configuration(output_mgr, config); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | void | ||||||
|  | updatetitle(struct wl_listener *listener, void *data) | ||||||
|  | { | ||||||
|  | 	Client *c = wl_container_of(listener, c, set_title); | ||||||
|  | 	if (c == focustop(c->mon)) | ||||||
|  | 		printstatus(); | ||||||
|  | } | ||||||
|  | 
 | ||||||
| void | void | ||||||
| view(const Arg *arg) | view(const Arg *arg) | ||||||
| { | { | ||||||
| @ -2427,6 +2439,7 @@ createnotifyx11(struct wl_listener *listener, void *data) | |||||||
| 			activatex11); | 			activatex11); | ||||||
| 	LISTEN(&xwayland_surface->events.request_configure, &c->configure, | 	LISTEN(&xwayland_surface->events.request_configure, &c->configure, | ||||||
| 			configurex11); | 			configurex11); | ||||||
|  | 	LISTEN(&xwayland_surface->events.set_title, &c->set_title, updatetitle); | ||||||
| 	LISTEN(&xwayland_surface->events.destroy, &c->destroy, destroynotify); | 	LISTEN(&xwayland_surface->events.destroy, &c->destroy, destroynotify); | ||||||
| 	LISTEN(&xwayland_surface->events.request_fullscreen, &c->fullscreen, | 	LISTEN(&xwayland_surface->events.request_fullscreen, &c->fullscreen, | ||||||
| 			fullscreennotify); | 			fullscreennotify); | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Devin J. Pohly
						Devin J. Pohly