config: add window-rule infrastructure
This commit is contained in:
parent
a6257910bb
commit
59f8acdfde
26 changed files with 1829 additions and 38 deletions
|
|
@ -1,6 +1,6 @@
|
|||
use {
|
||||
crate::{
|
||||
_private::{ClientCriterionIpc, PollableId, WireMode},
|
||||
_private::{ClientCriterionIpc, PollableId, WindowCriterionIpc, WireMode},
|
||||
Axis, Direction, PciId, Workspace,
|
||||
client::{Client, ClientMatcher},
|
||||
input::{
|
||||
|
|
@ -15,7 +15,7 @@ use {
|
|||
ColorSpace, Connector, DrmDevice, Format, GfxApi, TearingMode, TransferFunction,
|
||||
Transform, VrrMode, connector_type::ConnectorType,
|
||||
},
|
||||
window::{Window, WindowType},
|
||||
window::{Window, WindowMatcher, WindowType},
|
||||
xwayland::XScalingMode,
|
||||
},
|
||||
serde::{Deserialize, Serialize},
|
||||
|
|
@ -102,6 +102,14 @@ pub enum ServerMessage {
|
|||
matcher: ClientMatcher,
|
||||
client: Client,
|
||||
},
|
||||
WindowMatcherMatched {
|
||||
matcher: WindowMatcher,
|
||||
window: Window,
|
||||
},
|
||||
WindowMatcherUnmatched {
|
||||
matcher: WindowMatcher,
|
||||
window: Window,
|
||||
},
|
||||
}
|
||||
|
||||
#[derive(Serialize, Deserialize, Debug)]
|
||||
|
|
@ -681,6 +689,15 @@ pub enum ClientMessage<'a> {
|
|||
EnableClientMatcherEvents {
|
||||
matcher: ClientMatcher,
|
||||
},
|
||||
CreateWindowMatcher {
|
||||
criterion: WindowCriterionIpc,
|
||||
},
|
||||
DestroyWindowMatcher {
|
||||
matcher: WindowMatcher,
|
||||
},
|
||||
EnableWindowMatcherEvents {
|
||||
matcher: WindowMatcher,
|
||||
},
|
||||
}
|
||||
|
||||
#[derive(Serialize, Deserialize, Debug)]
|
||||
|
|
@ -904,6 +921,9 @@ pub enum Response {
|
|||
CreateClientMatcher {
|
||||
matcher: ClientMatcher,
|
||||
},
|
||||
CreateWindowMatcher {
|
||||
matcher: WindowMatcher,
|
||||
},
|
||||
}
|
||||
|
||||
#[derive(Serialize, Deserialize, Debug)]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue