xwayland: use layout coords for configures
This commit is contained in:
parent
11e1c4791f
commit
7249f5c9c3
1 changed files with 9 additions and 4 deletions
|
@ -63,8 +63,10 @@ pub fn deinit(self: *Self) void {
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn needsConfigure(self: Self) bool {
|
pub fn needsConfigure(self: Self) bool {
|
||||||
return self.xwayland_surface.x != self.view.pending.box.x or
|
const output = self.view.output;
|
||||||
self.xwayland_surface.y != self.view.pending.box.y or
|
const output_box = output.root.output_layout.getBox(output.wlr_output).?;
|
||||||
|
return self.xwayland_surface.x != self.view.pending.box.x + output_box.x or
|
||||||
|
self.xwayland_surface.y != self.view.pending.box.y + output_box.y or
|
||||||
self.xwayland_surface.width != self.view.pending.box.width or
|
self.xwayland_surface.width != self.view.pending.box.width or
|
||||||
self.xwayland_surface.height != self.view.pending.box.height;
|
self.xwayland_surface.height != self.view.pending.box.height;
|
||||||
}
|
}
|
||||||
|
@ -72,11 +74,14 @@ pub fn needsConfigure(self: Self) bool {
|
||||||
/// Apply pending state. Note: we don't set View.serial as
|
/// Apply pending state. Note: we don't set View.serial as
|
||||||
/// shouldTrackConfigure() is always false for xwayland views.
|
/// shouldTrackConfigure() is always false for xwayland views.
|
||||||
pub fn configure(self: Self) void {
|
pub fn configure(self: Self) void {
|
||||||
|
const output = self.view.output;
|
||||||
|
const output_box = output.root.output_layout.getBox(output.wlr_output).?;
|
||||||
|
|
||||||
const state = &self.view.pending;
|
const state = &self.view.pending;
|
||||||
self.xwayland_surface.setFullscreen(state.fullscreen);
|
self.xwayland_surface.setFullscreen(state.fullscreen);
|
||||||
self.xwayland_surface.configure(
|
self.xwayland_surface.configure(
|
||||||
@intCast(i16, state.box.x),
|
@intCast(i16, state.box.x + output_box.x),
|
||||||
@intCast(i16, state.box.y),
|
@intCast(i16, state.box.y + output_box.y),
|
||||||
@intCast(u16, state.box.width),
|
@intCast(u16, state.box.width),
|
||||||
@intCast(u16, state.box.height),
|
@intCast(u16, state.box.height),
|
||||||
);
|
);
|
||||||
|
|
Loading…
Reference in a new issue