From 53bb8af8221bfe2ca786b7dfcb2821a63d1aa021 Mon Sep 17 00:00:00 2001 From: Nova Date: Wed, 4 Jan 2023 08:57:00 -0500 Subject: [PATCH 1/5] protocols: add gtk-shell1 --- .../protocols/gtk-shell.xml | 107 ++++++++++++++++++ wayland-protocols-misc/src/lib.rs | 12 ++ 2 files changed, 119 insertions(+) create mode 100644 wayland-protocols-misc/protocols/gtk-shell.xml diff --git a/wayland-protocols-misc/protocols/gtk-shell.xml b/wayland-protocols-misc/protocols/gtk-shell.xml new file mode 100644 index 00000000000..a8d51c65d39 --- /dev/null +++ b/wayland-protocols-misc/protocols/gtk-shell.xml @@ -0,0 +1,107 @@ + + + + + gtk_shell is a protocol extension providing additional features for + clients implementing it. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/wayland-protocols-misc/src/lib.rs b/wayland-protocols-misc/src/lib.rs index 08ad836de28..6a6695a195d 100644 --- a/wayland-protocols-misc/src/lib.rs +++ b/wayland-protocols-misc/src/lib.rs @@ -65,6 +65,18 @@ pub mod gtk_primary_selection { wayland_protocol!("./protocols/gtk-primary-selection.xml", []); } +pub mod gtk_shell { + //! GTK shell protocol. + //! + //! This protocol is a GTK-specific shell extending XDG shell. Most features + //! are identical to XDG shell but many compositors like Wayfire still + //! implement it and clients appear to use it anyway. Additional features + //! include edge constraints, DBus paths to specific elements like the menu + //! bar, and title bar gestures like double click. + + wayland_protocol!("./protocols/gtk-shell.xml", []); +} + pub mod zwp_input_method_v2 { //! Input method v2 unstable //! From 03a2dea3df1943192516dc5ca4e2741e7c31e8e1 Mon Sep 17 00:00:00 2001 From: Nova Date: Wed, 4 Jan 2023 08:59:01 -0500 Subject: [PATCH 2/5] mention modals --- wayland-protocols-misc/src/lib.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/wayland-protocols-misc/src/lib.rs b/wayland-protocols-misc/src/lib.rs index 6a6695a195d..1166c58fa34 100644 --- a/wayland-protocols-misc/src/lib.rs +++ b/wayland-protocols-misc/src/lib.rs @@ -72,7 +72,8 @@ pub mod gtk_shell { //! are identical to XDG shell but many compositors like Wayfire still //! implement it and clients appear to use it anyway. Additional features //! include edge constraints, DBus paths to specific elements like the menu - //! bar, and title bar gestures like double click. + //! bar, title bar gestures like double click, and modals, windows that stick + //! to their parent surface (used for many GTK about dialogs). wayland_protocol!("./protocols/gtk-shell.xml", []); } From fc0843b38b467e663ac69c0141ec93b8bb975d7c Mon Sep 17 00:00:00 2001 From: Nova Date: Wed, 4 Jan 2023 09:16:25 -0500 Subject: [PATCH 3/5] add toplevel tag to gtk shell protocol --- wayland-protocols-misc/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wayland-protocols-misc/src/lib.rs b/wayland-protocols-misc/src/lib.rs index 1166c58fa34..411b170c52f 100644 --- a/wayland-protocols-misc/src/lib.rs +++ b/wayland-protocols-misc/src/lib.rs @@ -75,7 +75,7 @@ pub mod gtk_shell { //! bar, title bar gestures like double click, and modals, windows that stick //! to their parent surface (used for many GTK about dialogs). - wayland_protocol!("./protocols/gtk-shell.xml", []); + wayland_protocol!("./protocols/gtk-shell.xml", [wayland_protocols::xdg::shell::toplevel]); } pub mod zwp_input_method_v2 { From ed6b6c863d6c6c6ac5e987a310802dddae080e5a Mon Sep 17 00:00:00 2001 From: Nova Date: Wed, 4 Jan 2023 09:21:02 -0500 Subject: [PATCH 4/5] add xml tag --- wayland-protocols-misc/protocols/gtk-shell.xml | 3 ++- wayland-protocols-misc/src/lib.rs | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/wayland-protocols-misc/protocols/gtk-shell.xml b/wayland-protocols-misc/protocols/gtk-shell.xml index a8d51c65d39..29292229fac 100644 --- a/wayland-protocols-misc/protocols/gtk-shell.xml +++ b/wayland-protocols-misc/protocols/gtk-shell.xml @@ -1,4 +1,5 @@ - + + diff --git a/wayland-protocols-misc/src/lib.rs b/wayland-protocols-misc/src/lib.rs index 411b170c52f..1166c58fa34 100644 --- a/wayland-protocols-misc/src/lib.rs +++ b/wayland-protocols-misc/src/lib.rs @@ -75,7 +75,7 @@ pub mod gtk_shell { //! bar, title bar gestures like double click, and modals, windows that stick //! to their parent surface (used for many GTK about dialogs). - wayland_protocol!("./protocols/gtk-shell.xml", [wayland_protocols::xdg::shell::toplevel]); + wayland_protocol!("./protocols/gtk-shell.xml", []); } pub mod zwp_input_method_v2 { From 17cf781eb6eee9f048b0402cf978de392939f181 Mon Sep 17 00:00:00 2001 From: Nova Date: Thu, 5 Jan 2023 07:47:13 -0500 Subject: [PATCH 5/5] changelog --- wayland-protocols-misc/CHANGELOG.md | 7 +++++++ wayland-protocols-misc/Cargo.toml | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/wayland-protocols-misc/CHANGELOG.md b/wayland-protocols-misc/CHANGELOG.md index ecf28d1a561..56d0d646ab9 100644 --- a/wayland-protocols-misc/CHANGELOG.md +++ b/wayland-protocols-misc/CHANGELOG.md @@ -2,6 +2,13 @@ ## Unreleased +## 0.2.0 -- 04/01/2023 + +#### Additions + +- Introduce protocol `gtk-shell1`. + + ## 0.1.0 -- 27/12/2022 ## 0.1.0-beta.5 diff --git a/wayland-protocols-misc/Cargo.toml b/wayland-protocols-misc/Cargo.toml index c16b229f65d..aa4f895b711 100644 --- a/wayland-protocols-misc/Cargo.toml +++ b/wayland-protocols-misc/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wayland-protocols-misc" -version = "0.1.0" +version = "0.2.0" documentation = "https://docs.rs/wayland-protocols-misc/" repository = "https://github.com/smithay/wayland-rs" authors = ["Elinor Berger "]