1
0
Fork 0
forked from wry/wry

config: add client-rule infrastructure

This commit is contained in:
Julian Orth 2025-05-04 18:02:17 +02:00
parent 17e715cde4
commit fd2163d658
32 changed files with 1804 additions and 27 deletions

View file

@ -1,8 +1,8 @@
use {
crate::{
_private::{PollableId, WireMode},
_private::{ClientCriterionIpc, PollableId, WireMode},
Axis, Direction, PciId, Workspace,
client::Client,
client::{Client, ClientMatcher},
input::{
FocusFollowsMouseMode, InputDevice, Seat, SwitchEvent, acceleration::AccelProfile,
capability::Capability,
@ -94,6 +94,14 @@ pub enum ServerMessage {
input_device: InputDevice,
event: SwitchEvent,
},
ClientMatcherMatched {
matcher: ClientMatcher,
client: Client,
},
ClientMatcherUnmatched {
matcher: ClientMatcher,
client: Client,
},
}
#[derive(Serialize, Deserialize, Debug)]
@ -664,6 +672,15 @@ pub enum ClientMessage<'a> {
window: Window,
pinned: bool,
},
CreateClientMatcher {
criterion: ClientCriterionIpc,
},
DestroyClientMatcher {
matcher: ClientMatcher,
},
EnableClientMatcherEvents {
matcher: ClientMatcher,
},
}
#[derive(Serialize, Deserialize, Debug)]
@ -884,6 +901,9 @@ pub enum Response {
GetWindowIsVisible {
visible: bool,
},
CreateClientMatcher {
matcher: ClientMatcher,
},
}
#[derive(Serialize, Deserialize, Debug)]