mirror of
				https://github.com/swaywm/sway.git
				synced 2025-11-03 09:01:43 -05:00 
			
		
		
		
	Add xdg-shell stable support
This commit is contained in:
		
							parent
							
								
									0c96d757d0
								
							
						
					
					
						commit
						88d9d43b36
					
				
					 8 changed files with 331 additions and 1 deletions
				
			
		| 
						 | 
				
			
			@ -12,6 +12,7 @@ struct sway_container;
 | 
			
		|||
enum sway_view_type {
 | 
			
		||||
	SWAY_VIEW_WL_SHELL,
 | 
			
		||||
	SWAY_VIEW_XDG_SHELL_V6,
 | 
			
		||||
	SWAY_VIEW_XDG_SHELL,
 | 
			
		||||
	SWAY_VIEW_XWAYLAND,
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -54,6 +55,7 @@ struct sway_view {
 | 
			
		|||
 | 
			
		||||
	union {
 | 
			
		||||
		struct wlr_xdg_surface_v6 *wlr_xdg_surface_v6;
 | 
			
		||||
		struct wlr_xdg_surface *wlr_xdg_surface;
 | 
			
		||||
		struct wlr_xwayland_surface *wlr_xwayland_surface;
 | 
			
		||||
		struct wlr_wl_shell_surface *wlr_wl_shell_surface;
 | 
			
		||||
	};
 | 
			
		||||
| 
						 | 
				
			
			@ -82,6 +84,22 @@ struct sway_xdg_shell_v6_view {
 | 
			
		|||
	int pending_width, pending_height;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
struct sway_xdg_shell_view {
 | 
			
		||||
	struct sway_view view;
 | 
			
		||||
 | 
			
		||||
	struct wl_listener commit;
 | 
			
		||||
	struct wl_listener request_move;
 | 
			
		||||
	struct wl_listener request_resize;
 | 
			
		||||
	struct wl_listener request_maximize;
 | 
			
		||||
	struct wl_listener request_fullscreen;
 | 
			
		||||
	struct wl_listener new_popup;
 | 
			
		||||
	struct wl_listener map;
 | 
			
		||||
	struct wl_listener unmap;
 | 
			
		||||
	struct wl_listener destroy;
 | 
			
		||||
 | 
			
		||||
	int pending_width, pending_height;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
struct sway_xwayland_view {
 | 
			
		||||
	struct sway_view view;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -156,6 +174,15 @@ struct sway_xdg_popup_v6 {
 | 
			
		|||
	struct wl_listener destroy;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
struct sway_xdg_popup {
 | 
			
		||||
	struct sway_view_child child;
 | 
			
		||||
 | 
			
		||||
	struct wlr_xdg_surface *wlr_xdg_surface;
 | 
			
		||||
 | 
			
		||||
	struct wl_listener new_popup;
 | 
			
		||||
	struct wl_listener destroy;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const char *view_get_title(struct sway_view *view);
 | 
			
		||||
 | 
			
		||||
const char *view_get_app_id(struct sway_view *view);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue