cosmic-session-lock-layer-v1 protocol

This commit is contained in:
Ian Douglas Scott 2026-09-08 14:10:18 -07:00 • committed by Jeremy Soller
parent 9ef36c9604
commit 87e1787fbb
6 changed files with 134 additions and 95 deletions

188
Cargo.lock generated
View file

@ -170,7 +170,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0f2a1bb052857d5dd49572219344a7332b31b76405648eabac5bc68978251bcd"
dependencies = [
"android-properties",
"bitflags 2.11.0",
"bitflags 2.13.2",
"cc",
"jni 0.22.4",
"libc",
@ -712,9 +712,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "bitflags"
version = "2.11.0"
version = "2.13.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af"
checksum = "3ded4057c258ba199e2d26386d3af3780957ecaee6c4ef4041c6b4b8b97c0b06"
[[package]]
name = "bitstream-io"
@ -856,7 +856,7 @@ version = "0.12.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fba7adb4dd5aa98e5553510223000e7148f621165ec5f9acd7113f6ca4995298"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"log",
"polling",
"rustix 0.38.44",
@ -870,7 +870,7 @@ version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b99da2f8558ca23c71f4fd15dc57c906239752dd27ff3c00a1d56b685b7cbfec"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"log",
"polling",
"rustix 0.38.44",
@ -884,7 +884,7 @@ version = "0.14.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4dbf9978365bac10f54d1d4b04f7ce4427e51f71d61f2fe15e3fed5166474df7"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"polling",
"rustix 1.1.4",
"slab",
@ -1275,7 +1275,7 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3d44a101f213f6c4cdc1853d4b78aef6db6bdfa3468798cc1d9912f4735013eb"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"core-foundation 0.10.1",
"libc",
]
@ -1301,9 +1301,9 @@ dependencies = [
[[package]]
name = "cosmic-client-toolkit"
version = "0.2.0"
source = "git+https://github.com/pop-os/cosmic-protocols?rev=32283d7#32283d76a8d0342da74c4cc022a533c52dcf378f"
source = "git+https://github.com/pop-os/cosmic-protocols?rev=c0cff4d#c0cff4db14c37ed954983158e4055aa94c7741d9"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"cosmic-protocols",
"libc",
"smithay-client-toolkit 0.20.0",
@ -1314,9 +1314,9 @@ dependencies = [
[[package]]
name = "cosmic-protocols"
version = "0.2.0"
source = "git+https://github.com/pop-os/cosmic-protocols?rev=32283d7#32283d76a8d0342da74c4cc022a533c52dcf378f"
source = "git+https://github.com/pop-os/cosmic-protocols?rev=c0cff4d#c0cff4db14c37ed954983158e4055aa94c7741d9"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"wayland-backend",
"wayland-client",
"wayland-protocols 0.32.12",
@ -1331,7 +1331,7 @@ version = "0.19.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "be17b688510d934ce13f48a2beba700e11583e281e0fda99c22bb256a14eda73"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"fontdb",
"harfrust",
"linebender_resource_handle",
@ -1575,7 +1575,7 @@ dependencies = [
"libc",
"option-ext",
"redox_users 0.5.2",
"windows-sys 0.61.2",
"windows-sys 0.59.0",
]
[[package]]
@ -1601,7 +1601,7 @@ version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e0e367e4e7da84520dedcac1901e4da967309406d1e51017ae1abfb97adbd38"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"block2 0.6.2",
"libc",
"objc2 0.6.4",
@ -1632,7 +1632,7 @@ name = "dnd"
version = "0.1.0"
source = "git+https://github.com/pop-os/window_clipboard.git?tag=sctk-0.20#f68595ee0e62fbd6589f4709b5aaa5c3c7ea5f6c"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"mime 0.1.0",
"raw-window-handle",
"smithay-client-toolkit 0.20.0",
@ -1673,7 +1673,7 @@ version = "0.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a0f8a69e60d75ae7dab4ef26a59ca99f2a89d4c142089b537775ae0c198bdcde"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"bytemuck",
"drm-ffi",
"drm-fourcc",
@ -1803,7 +1803,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
dependencies = [
"libc",
"windows-sys 0.61.2",
"windows-sys 0.52.0",
]
[[package]]
@ -2335,7 +2335,7 @@ version = "0.20.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ffc4b6e352d4716d84d7dde562dd9aee2a7d48beb872dd9ece7f2d1515b2d683"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"futures-channel",
"futures-core",
"futures-executor",
@ -2437,7 +2437,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b89c83349105e3732062a895becfc71a8f921bb71ecbbdd8ff99263e3b53a0ca"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"gpu-descriptor-types",
"hashbrown 0.15.5",
]
@ -2448,7 +2448,7 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fdf242682df893b86f33a73828fb09ca4b2d3bb6cc95249707fc684d27484b91"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
]
[[package]]
@ -2674,7 +2674,7 @@ version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9da2e5ae821f6e96664977bf974d6d6a2d6682f9ccee23e62ec1d134246845f9"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"bytemuck",
"core_maths",
"read-fonts",
@ -3015,7 +3015,7 @@ name = "iced_core"
version = "0.14.0"
dependencies = [
"approx",
"bitflags 2.11.0",
"bitflags 2.13.2",
"build_helpers",
"bytes",
"cosmic-client-toolkit",
@ -3076,7 +3076,7 @@ dependencies = [
name = "iced_graphics"
version = "0.14.0"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"bytemuck",
"cosmic-text",
"half",
@ -3190,7 +3190,7 @@ name = "iced_wgpu"
version = "0.14.0"
dependencies = [
"as-raw-xcb-connection",
"bitflags 2.11.0",
"bitflags 2.13.2",
"build_helpers",
"bytemuck",
"cosmic-client-toolkit",
@ -3484,7 +3484,7 @@ checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46"
dependencies = [
"hermit-abi",
"libc",
"windows-sys 0.61.2",
"windows-sys 0.52.0",
]
[[package]]
@ -3542,7 +3542,7 @@ dependencies = [
"portable-atomic",
"portable-atomic-util",
"serde_core",
"windows-sys 0.61.2",
"windows-sys 0.52.0",
]
[[package]]
@ -3682,7 +3682,7 @@ version = "0.8.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0fbe853b403ae61a04233030ae8a79d94975281ed9770a1f9e246732b534b28d"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"serde",
]
@ -3803,7 +3803,7 @@ version = "0.1.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e02f3bb43d335493c96bf3fd3a321600bf6bd07ed34bc64118e9293bdffea46c"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"libc",
"plain",
"redox_syscall 0.7.4",
@ -4055,7 +4055,7 @@ version = "0.33.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c7047791b5bc903b8cd963014b355f71dc9864a9a0b727057676c1dcae5cbc15"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"block",
"core-graphics-types 0.2.0",
"foreign-types 0.5.0",
@ -4205,7 +4205,7 @@ checksum = "618f667225063219ddfc61251087db8a9aec3c3f0950c916b614e403486f1135"
dependencies = [
"arrayvec",
"bit-set",
"bitflags 2.11.0",
"bitflags 2.13.2",
"cfg-if",
"cfg_aliases",
"codespan-reporting",
@ -4246,7 +4246,7 @@ version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"jni-sys 0.3.1",
"log",
"ndk-sys",
@ -4306,7 +4306,7 @@ version = "0.50.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5"
dependencies = [
"windows-sys 0.61.2",
"windows-sys 0.59.0",
]
[[package]]
@ -4439,7 +4439,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e4e89ad9e3d7d297152b17d39ed92cd50ca8063a89a9fa569046d41568891eff"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"block2 0.5.1",
"libc",
"objc2 0.5.2",
@ -4455,7 +4455,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d49e936b501e5c5bf01fda3a9452ff86dc3ea98ad5f283e1455153142d97518c"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"block2 0.6.2",
"libc",
"objc2 0.6.4",
@ -4476,7 +4476,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "73ad74d880bb43877038da939b7427bba67e9dd42004a18b809ba7d87cee241c"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"objc2 0.6.4",
"objc2-foundation 0.3.2",
]
@ -4487,7 +4487,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "617fbf49e071c178c0b24c080767db52958f716d9eabdf0890523aeae54773ef"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"block2 0.5.1",
"objc2 0.5.2",
"objc2-foundation 0.2.2",
@ -4499,7 +4499,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0b402a653efbb5e82ce4df10683b6b28027616a2715e90009947d50b8dd298fa"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"objc2 0.6.4",
"objc2-foundation 0.3.2",
]
@ -4510,7 +4510,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"block2 0.6.2",
"dispatch2",
"objc2 0.6.4",
@ -4522,7 +4522,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e022c9d066895efa1345f8e33e584b9f958da2fd4cd116792e15e07e4720a807"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"dispatch2",
"libc",
"objc2 0.6.4",
@ -4558,7 +4558,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0cde0dfb48d25d2b4862161a4d5fcc0e3c24367869ad306b0c9ec0073bfed92d"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"objc2 0.6.4",
"objc2-core-foundation",
"objc2-core-graphics",
@ -4570,7 +4570,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d425caf1df73233f29fd8a5c3e5edbc30d2d4307870f802d18f00d83dc5141a6"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"objc2 0.6.4",
"objc2-core-foundation",
"objc2-core-graphics",
@ -4589,7 +4589,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"block2 0.5.1",
"libc",
"objc2 0.5.2",
@ -4601,7 +4601,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e3e0adef53c21f888deb4fa59fc59f7eb17404926ee8a6f59f5df0fd7f9f3272"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"block2 0.6.2",
"libc",
"objc2 0.6.4",
@ -4614,7 +4614,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "180788110936d59bab6bd83b6060ffdfffb3b922ba1396b312ae795e1de9d81d"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"objc2 0.6.4",
"objc2-core-foundation",
]
@ -4625,7 +4625,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dd0cba1276f6023976a406a14ffa85e1fdd19df6b0f737b063b95f6c8c7aadd6"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"block2 0.5.1",
"objc2 0.5.2",
"objc2-foundation 0.2.2",
@ -4637,7 +4637,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"block2 0.5.1",
"objc2 0.5.2",
"objc2-foundation 0.2.2",
@ -4650,7 +4650,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "96c1358452b371bf9f104e21ec536d37a650eb10f7ee379fff67d2e08d537f1f"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"objc2 0.6.4",
"objc2-foundation 0.3.2",
]
@ -4661,7 +4661,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d87d638e33c06f577498cbcc50491496a3ed4246998a7fbba7ccb98b1e7eab22"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"objc2 0.6.4",
"objc2-core-foundation",
"objc2-foundation 0.3.2",
@ -4705,7 +4705,7 @@ version = "0.10.76"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "951c002c75e16ea2c65b8c7e4d3d51d5530d8dfa7d060b4776828c88cfb18ecf"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"cfg-if",
"foreign-types 0.3.2",
"libc",
@ -5074,7 +5074,7 @@ version = "0.18.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "60769b8b31b2a9f263dae2776c37b1b28ae246943cf719eb6946a1db05128a61"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"crc32fast",
"fdeflate",
"flate2",
@ -5231,7 +5231,7 @@ version = "0.12.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f86ba2052aebccc42cbbb3ed234b8b13ce76f75c3551a303cb2bcffcff12bb14"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"getopts",
"memchr",
"pulldown-cmark-escape",
@ -5499,7 +5499,7 @@ version = "0.5.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
]
[[package]]
@ -5508,7 +5508,7 @@ version = "0.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f450ad9c3b1da563fb6948a8e0fb0fb9269711c9c73d9ea1de5058c79c8d643a"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
]
[[package]]
@ -5708,7 +5708,7 @@ version = "0.38.44"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"errno",
"libc",
"linux-raw-sys 0.4.15",
@ -5721,11 +5721,11 @@ version = "1.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"errno",
"libc",
"linux-raw-sys 0.12.1",
"windows-sys 0.61.2",
"windows-sys 0.52.0",
]
[[package]]
@ -5798,7 +5798,7 @@ version = "0.20.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fd3c7c96f8a08ee34eff8857b11b49b07d71d1c3f4e88f8a88d4c9e9f90b1702"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"bytemuck",
"core_maths",
"log",
@ -5971,7 +5971,7 @@ version = "3.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b7f4bc775c73d9a02cde8bf7b2ec4c9d12743edf609006c7facc23998404cd1d"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"core-foundation 0.10.1",
"core-foundation-sys",
"libc",
@ -6233,7 +6233,7 @@ name = "smithay-client-toolkit"
version = "0.18.0"
source = "git+https://github.com/smithay/client-toolkit?rev=828b1eb#828b1eb469ad022eb3ac30be02bd5645b879922f"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"bytemuck",
"calloop 0.12.4",
"calloop-wayland-source 0.2.0",
@ -6261,7 +6261,7 @@ version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0512da38f5e2b31201a93524adb8d3136276fa4fe4aafab4e1f727a82b534cc0"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"bytemuck",
"calloop 0.14.4",
"calloop-wayland-source 0.4.1",
@ -6340,7 +6340,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3a766e1110788c36f4fa1c2b71b387a7815aa65f88ce0229841826633d93723e"
dependencies = [
"libc",
"windows-sys 0.61.2",
"windows-sys 0.60.2",
]
[[package]]
@ -6394,7 +6394,7 @@ version = "0.3.0+sdk-1.3.268.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
]
[[package]]
@ -6583,7 +6583,7 @@ version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a13f3d0daba03132c0aa9767f98351b3488edc2c100cda2d2ec2b04f3d8d3c8b"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"core-foundation 0.9.4",
"system-configuration-sys",
]
@ -6634,7 +6634,7 @@ dependencies = [
"getrandom 0.4.2",
"once_cell",
"rustix 1.1.4",
"windows-sys 0.61.2",
"windows-sys 0.52.0",
]
[[package]]
@ -7030,7 +7030,7 @@ version = "0.6.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"bytes",
"futures-util",
"http 1.4.0",
@ -7173,7 +7173,7 @@ checksum = "f2f6fb2847f6742cd76af783a2a2c49e9375d0a111c7bef6f71cd9e738c72d6e"
dependencies = [
"memoffset",
"tempfile",
"windows-sys 0.61.2",
"windows-sys 0.60.2",
]
[[package]]
@ -7562,7 +7562,7 @@ version = "0.244.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"hashbrown 0.15.5",
"indexmap",
"semver",
@ -7602,7 +7602,7 @@ version = "0.31.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "645c7c96bb74690c3189b5c9cb4ca1627062bb23693a4fad9d8c3de958260144"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"rustix 1.1.4",
"wayland-backend",
"wayland-scanner",
@ -7614,7 +7614,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"cursor-icon",
"wayland-backend",
]
@ -7636,7 +7636,7 @@ version = "0.31.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8f81f365b8b4a97f422ac0e8737c438024b5951734506b0e1d775c73030561f4"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"wayland-backend",
"wayland-client",
"wayland-scanner",
@ -7648,7 +7648,7 @@ version = "0.32.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "563a85523cade2429938e790815fd7319062103b9f4a2dc806e9b53b95982d8f"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"wayland-backend",
"wayland-client",
"wayland-scanner",
@ -7661,7 +7661,7 @@ version = "20250721.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "40a1f863128dcaaec790d7b4b396cc9b9a7a079e878e18c47e6c2d2c5a8dcbb1"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"wayland-backend",
"wayland-client",
"wayland-protocols 0.32.12",
@ -7674,7 +7674,7 @@ version = "0.3.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6e9567599ef23e09b8dad6e429e5738d4509dfc46b3b21f32841a304d16b29c8"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"wayland-backend",
"wayland-client",
"wayland-protocols 0.32.12",
@ -7687,7 +7687,7 @@ version = "0.3.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2b6d8cf1eb2c1c31ed1f5643c88a6e53538129d4af80030c8cabd1f9fa884d91"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"wayland-backend",
"wayland-client",
"wayland-protocols 0.32.12",
@ -7700,7 +7700,7 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ad1f61b76b6c2d8742e10f9ba5c3737f6530b4c243132c2a2ccc8aa96fe25cd6"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"wayland-backend",
"wayland-client",
"wayland-protocols 0.31.2",
@ -7713,7 +7713,7 @@ version = "0.3.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eb04e52f7836d7c7976c78ca0250d61e33873c34156a2a1fc9474828ec268234"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"wayland-backend",
"wayland-client",
"wayland-protocols 0.32.12",
@ -7738,7 +7738,7 @@ version = "0.31.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cc1846eb04c49182e04f4a099e2a830a2b745610bbc1d61246e206f29c7000a0"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"downcast-rs",
"rustix 1.1.4",
"wayland-backend",
@ -7834,7 +7834,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f9cb534d5ffd109c7d1135f34cdae29e60eab94855a625dcfe1705f8bc7ad79f"
dependencies = [
"arrayvec",
"bitflags 2.11.0",
"bitflags 2.13.2",
"bytemuck",
"cfg-if",
"cfg_aliases",
@ -7866,7 +7866,7 @@ dependencies = [
"arrayvec",
"bit-set",
"bit-vec",
"bitflags 2.11.0",
"bitflags 2.13.2",
"bytemuck",
"cfg_aliases",
"document-features",
@ -7936,7 +7936,7 @@ dependencies = [
"arrayvec",
"ash",
"bit-set",
"bitflags 2.11.0",
"bitflags 2.13.2",
"block",
"bytemuck",
"cfg-if",
@ -7980,7 +7980,7 @@ version = "28.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e18308757e594ed2cd27dddbb16a139c42a683819d32a2e0b1b0167552f5840c"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"bytemuck",
"js-sys",
"log",
@ -8009,7 +8009,7 @@ version = "0.1.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22"
dependencies = [
"windows-sys 0.61.2",
"windows-sys 0.52.0",
]
[[package]]
@ -8532,7 +8532,7 @@ name = "winit"
version = "0.31.0-beta.2"
source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"cfg_aliases",
"cursor-icon",
"dpi",
@ -8559,7 +8559,7 @@ version = "0.31.0-beta.2"
source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366"
dependencies = [
"android-activity",
"bitflags 2.11.0",
"bitflags 2.13.2",
"dpi",
"ndk",
"raw-window-handle",
@ -8573,7 +8573,7 @@ name = "winit-appkit"
version = "0.31.0-beta.2"
source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"block2 0.6.2",
"dispatch2",
"dpi",
@ -8610,7 +8610,7 @@ name = "winit-core"
version = "0.31.0-beta.2"
source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"cursor-icon",
"dpi",
"keyboard-types",
@ -8624,7 +8624,7 @@ name = "winit-orbital"
version = "0.31.0-beta.2"
source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"dpi",
"libredox",
"orbclient",
@ -8640,7 +8640,7 @@ name = "winit-uikit"
version = "0.31.0-beta.2"
source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"block2 0.6.2",
"dispatch2",
"dpi",
@ -8661,7 +8661,7 @@ version = "0.31.0-beta.2"
source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366"
dependencies = [
"ahash",
"bitflags 2.11.0",
"bitflags 2.13.2",
"calloop 0.14.4",
"cursor-icon",
"dpi",
@ -8687,7 +8687,7 @@ version = "0.31.0-beta.2"
source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366"
dependencies = [
"atomic-waker",
"bitflags 2.11.0",
"bitflags 2.13.2",
"concurrent-queue",
"cursor-icon",
"dpi",
@ -8708,7 +8708,7 @@ name = "winit-win32"
version = "0.31.0-beta.2"
source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"cursor-icon",
"dpi",
"raw-window-handle",
@ -8724,7 +8724,7 @@ name = "winit-x11"
version = "0.31.0-beta.2"
source = "git+https://github.com/pop-os/winit.git?tag=cosmic-0.14#261cda54017f98a12dc55569c864430fe6770366"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"bytemuck",
"calloop 0.14.4",
"cursor-icon",
@ -8818,7 +8818,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2"
dependencies = [
"anyhow",
"bitflags 2.11.0",
"bitflags 2.13.2",
"indexmap",
"log",
"serde",
@ -8921,7 +8921,7 @@ version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5"
dependencies = [
"bitflags 2.11.0",
"bitflags 2.13.2",
"dlib",
"log",
"once_cell",

View file

@ -278,7 +278,7 @@ tiny-skia = { version = "0.11", default-features = false, features = [
"std",
"simd",
] }
cctk = { git = "https://github.com/pop-os/cosmic-protocols", package = "cosmic-client-toolkit", rev = "32283d7" }
cctk = { git = "https://github.com/pop-os/cosmic-protocols", package = "cosmic-client-toolkit", rev = "c0cff4d" }
softbuffer = { git = "https://github.com/pop-os/softbuffer", tag = "cosmic-4.0" }
syntect = "5.2"
tokio = "1.0"

View file

@ -157,6 +157,11 @@ pub enum Action {
/// padding of the surface geometry
padding: IcedMargin,
},
ShowOnLock {
/// id of the layer surface
id: Id,
value: bool,
}
}
impl fmt::Debug for Action {
@ -215,6 +220,11 @@ impl fmt::Debug for Action {
"Action::LayerSurfaceAction::Padding {{ id: {:#?}, padding: {:?} }}",
id, padding
),
Action::ShowOnLock { id, value } => write!(
f,
"Action::LayerSurfaceAction::ShowOnLock {{ id: {:#?}, value: {:?} }}",
id, value
),
}
}
}

View file

@ -138,3 +138,14 @@ pub fn set_input_zone<Message>(
)),
))
}
pub fn set_show_on_lock<Message>(
id: SurfaceId,
value: bool,
) -> Task<Message> {
task::effect(Action::PlatformSpecific(
platform_specific::Action::Wayland(wayland::Action::LayerSurface(
wayland::layer_surface::Action::ShowOnLock { id, value },
)),
))
}

View file

@ -392,6 +392,7 @@ impl SctkEventLoop {
).ok(),
text_input_manager: TextInputManager::try_new(&registry_state, &qh),
ext_background_effect_manager: ext_background_effect::ExtBackgroundEffectManager::new(&globals, &qh).ok(),
cosmic_session_lock_layer_manager: registry_state.bind_one(&qh, 1..=1, ()).ok(),
registry_state,
queue_handle: qh,

View file

@ -44,6 +44,7 @@ use cctk::{
cosmic_protocols::{
corner_radius::v1::client::cosmic_corner_radius_manager_v1::CosmicCornerRadiusManagerV1,
overlap_notify::v1::client::zcosmic_overlap_notification_v1::ZcosmicOverlapNotificationV1,
session_lock_layer::v1::client::cosmic_session_lock_layer_manager_v1::CosmicSessionLockLayerManagerV1,
},
sctk::{
activation::{ActivationState, RequestData},
@ -477,6 +478,7 @@ pub struct SctkState {
pub(crate) toplevel_manager: Option<ToplevelManagerState>,
pub(crate) subsurface_state: Option<SubsurfaceState>,
pub(crate) ext_background_effect_manager: Option<ext_background_effect::ExtBackgroundEffectManager>,
pub(crate) cosmic_session_lock_layer_manager: Option<CosmicSessionLockLayerManagerV1>,
pub(crate) activation_token_ctr: u32,
pub(crate) token_senders: HashMap<u32, oneshot::Sender<Option<String>>>,
@ -1266,6 +1268,20 @@ impl SctkState {
}
}
},
platform_specific::wayland::layer_surface::Action::ShowOnLock { id, value } => {
if let Some(layer_surface) = self.layer_surfaces.iter_mut().find(|l| l.id == id) {
if let SurfaceKind::Wlr(wlr) = layer_surface.surface.kind() {
if let Some(manager) = &self.cosmic_session_lock_layer_manager {
if value {
manager.set_show_on_lock(wlr);
} else {
manager.unset_show_on_lock(wlr);
}
_ = self.to_commit.insert(id, layer_surface.surface.wl_surface().clone());
}
}
}
}
},
Action::Popup(action) => {
match action {
@ -2165,3 +2181,4 @@ pub(crate) fn send_event(
delegate_noop!(SctkState: ignore WlSubsurface);
delegate_noop!(SctkState: ignore WlRegion);
delegate_noop!(SctkState: CosmicSessionLockLayerManagerV1);