wayland: implement scaling
This involves many subsystems:
- config:
- allow setting the connector scale
- allow setting the cursor size
- cursors:
- load server cursors for all requested sizes and scales
- wl_surface:
- track the output the surface belongs to
- send wl_surface.enter/leave
- wl_output:
- implement wl_output.scale
- text:
- pre-render texts for all used scales
- renderer:
- properly align scale textures and rectangles
- wp_fractional_scale:
- new interface for fractional scaling
This commit is contained in:
parent
16aec8f87e
commit
e52a60b3b6
41 changed files with 1417 additions and 364 deletions
|
|
@ -274,6 +274,20 @@ pub enum ClientMessage<'a> {
|
|||
device: InputDevice,
|
||||
px: f64,
|
||||
},
|
||||
ConnectorSetScale {
|
||||
connector: Connector,
|
||||
scale: f64,
|
||||
},
|
||||
ConnectorGetScale {
|
||||
connector: Connector,
|
||||
},
|
||||
ConnectorSize {
|
||||
connector: Connector,
|
||||
},
|
||||
SetCursorSize {
|
||||
seat: Seat,
|
||||
size: i32,
|
||||
},
|
||||
}
|
||||
|
||||
#[derive(Encode, Decode, Debug)]
|
||||
|
|
@ -360,6 +374,13 @@ pub enum Response {
|
|||
GetFont {
|
||||
font: String,
|
||||
},
|
||||
ConnectorGetScale {
|
||||
scale: f64,
|
||||
},
|
||||
ConnectorSize {
|
||||
width: i32,
|
||||
height: i32,
|
||||
},
|
||||
}
|
||||
|
||||
#[derive(Encode, Decode, Debug)]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue