diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/backend/wayland.h | 3 | ||||
| -rw-r--r-- | include/rootston/input.h | 2 | ||||
| -rw-r--r-- | include/rootston/view.h | 2 | ||||
| -rw-r--r-- | include/wlr/interfaces/wlr_keyboard.h | 5 | ||||
| -rw-r--r-- | include/wlr/interfaces/wlr_output.h | 3 | ||||
| -rw-r--r-- | include/wlr/types/wlr_keyboard.h | 1 | ||||
| -rw-r--r-- | include/wlr/types/wlr_output.h | 4 | ||||
| -rw-r--r-- | include/wlr/types/wlr_xdg_shell_v6.h | 5 | 
8 files changed, 20 insertions, 5 deletions
| diff --git a/include/backend/wayland.h b/include/backend/wayland.h index 752dab69..508a7f52 100644 --- a/include/backend/wayland.h +++ b/include/backend/wayland.h @@ -67,7 +67,8 @@ struct wlr_wl_pointer {  };  void wlr_wl_registry_poll(struct wlr_wl_backend *backend); -void wlr_wl_output_update_cursor(struct wlr_wl_backend_output *output, uint32_t serial); +void wlr_wl_output_update_cursor(struct wlr_wl_backend_output *output, +		uint32_t serial, int32_t hotspot_x, int32_t hotspot_y);  struct wlr_wl_backend_output *wlr_wl_output_for_surface(  		struct wlr_wl_backend *backend, struct wl_surface *surface); diff --git a/include/rootston/input.h b/include/rootston/input.h index 4b9bd1dd..e20446ea 100644 --- a/include/rootston/input.h +++ b/include/rootston/input.h @@ -81,7 +81,7 @@ struct roots_input {  	struct wlr_seat *wl_seat;  	enum roots_cursor_mode mode; -	struct roots_view *active_view; +	struct roots_view *active_view, *last_active_view;  	int offs_x, offs_y;  	int view_x, view_y, view_width, view_height;  	float view_rotation; diff --git a/include/rootston/view.h b/include/rootston/view.h index 39ff80db..64aad45e 100644 --- a/include/rootston/view.h +++ b/include/rootston/view.h @@ -65,11 +65,13 @@ struct roots_view {  	void (*get_input_bounds)(struct roots_view *view, struct wlr_box *box);  	void (*activate)(struct roots_view *view, bool active);  	void (*resize)(struct roots_view *view, uint32_t width, uint32_t height); +	void (*close)(struct roots_view *view);  };  void view_get_size(struct roots_view *view, struct wlr_box *box);  void view_get_input_bounds(struct roots_view *view, struct wlr_box *box);  void view_activate(struct roots_view *view, bool active);  void view_resize(struct roots_view *view, uint32_t width, uint32_t height); +void view_close(struct roots_view *view);  #endif diff --git a/include/wlr/interfaces/wlr_keyboard.h b/include/wlr/interfaces/wlr_keyboard.h index 78c1f753..570f5721 100644 --- a/include/wlr/interfaces/wlr_keyboard.h +++ b/include/wlr/interfaces/wlr_keyboard.h @@ -11,7 +11,10 @@ struct wlr_keyboard_impl {  void wlr_keyboard_init(struct wlr_keyboard *keyboard, struct wlr_keyboard_impl *impl);  void wlr_keyboard_destroy(struct wlr_keyboard *keyboard); -void wlr_keyboard_update_state(struct wlr_keyboard *keyboard, +void wlr_keyboard_notify_key(struct wlr_keyboard *keyboard,  		struct wlr_event_keyboard_key *event); +void wlr_keyboard_notify_modifiers(struct wlr_keyboard *keyboard, +		uint32_t mods_depressed, uint32_t mods_latched, uint32_t mods_locked, +		uint32_t group);  #endif diff --git a/include/wlr/interfaces/wlr_output.h b/include/wlr/interfaces/wlr_output.h index 7ed19ed9..7d2821e0 100644 --- a/include/wlr/interfaces/wlr_output.h +++ b/include/wlr/interfaces/wlr_output.h @@ -10,7 +10,8 @@ struct wlr_output_impl {  	void (*transform)(struct wlr_output *output,  			enum wl_output_transform transform);  	bool (*set_cursor)(struct wlr_output *output, const uint8_t *buf, -			int32_t stride, uint32_t width, uint32_t height); +			int32_t stride, uint32_t width, uint32_t height, +			int32_t hotspot_x, int32_t hotspot_y);  	bool (*move_cursor)(struct wlr_output *output, int x, int y);  	void (*destroy)(struct wlr_output *output);  	void (*make_current)(struct wlr_output *output); diff --git a/include/wlr/types/wlr_keyboard.h b/include/wlr/types/wlr_keyboard.h index 9ec8ddd4..99a624c2 100644 --- a/include/wlr/types/wlr_keyboard.h +++ b/include/wlr/types/wlr_keyboard.h @@ -65,6 +65,7 @@ struct wlr_event_keyboard_key {  	uint32_t time_sec;  	uint64_t time_usec;  	uint32_t keycode; +	bool update_state;  	enum wlr_key_state state;  }; diff --git a/include/wlr/types/wlr_output.h b/include/wlr/types/wlr_output.h index 3208acac..1fa6ad9e 100644 --- a/include/wlr/types/wlr_output.h +++ b/include/wlr/types/wlr_output.h @@ -45,6 +45,7 @@ struct wlr_output {  		bool is_sw;  		int32_t x, y;  		uint32_t width, height; +		int32_t hotspot_x, hotspot_y;  		struct wlr_renderer *renderer;  		struct wlr_texture *texture;  	} cursor; @@ -58,7 +59,8 @@ bool wlr_output_set_mode(struct wlr_output *output,  void wlr_output_transform(struct wlr_output *output,  		enum wl_output_transform transform);  bool wlr_output_set_cursor(struct wlr_output *output, -		const uint8_t *buf, int32_t stride, uint32_t width, uint32_t height); +		const uint8_t *buf, int32_t stride, uint32_t width, uint32_t height, +		int32_t hotspot_x, int32_t hotspot_y);  bool wlr_output_move_cursor(struct wlr_output *output, int x, int y);  void wlr_output_destroy(struct wlr_output *output);  void wlr_output_effective_resolution(struct wlr_output *output, diff --git a/include/wlr/types/wlr_xdg_shell_v6.h b/include/wlr/types/wlr_xdg_shell_v6.h index 0a633822..00295ec1 100644 --- a/include/wlr/types/wlr_xdg_shell_v6.h +++ b/include/wlr/types/wlr_xdg_shell_v6.h @@ -201,4 +201,9 @@ void wlr_xdg_toplevel_v6_set_fullscreen(struct wlr_xdg_surface_v6 *surface,  void wlr_xdg_toplevel_v6_set_resizing(struct wlr_xdg_surface_v6 *surface,  		bool resizing); +/** + * Request that this toplevel surface closes. + */ +void wlr_xdg_toplevel_v6_send_close(struct wlr_xdg_surface_v6 *surface); +  #endif | 
