fix(mini): preserve taskbar and restore login
This commit is contained in:
@@ -7,20 +7,19 @@ fn dock_window(window: Window, side: String) -> Result<(), String> {
|
||||
.map_err(|error| error.to_string())?
|
||||
.ok_or_else(|| "无法识别当前屏幕".to_string())?;
|
||||
let window_size = window.outer_size().map_err(|error| error.to_string())?;
|
||||
let monitor_position = monitor.position();
|
||||
let monitor_size = monitor.size();
|
||||
let dock_size = PhysicalSize::new(window_size.width, monitor_size.height);
|
||||
let work_area = monitor.work_area();
|
||||
let dock_size = PhysicalSize::new(window_size.width, work_area.size.height);
|
||||
let x = if side == "left" {
|
||||
monitor_position.x
|
||||
work_area.position.x
|
||||
} else {
|
||||
monitor_position.x + monitor_size.width as i32 - dock_size.width as i32
|
||||
work_area.position.x + work_area.size.width as i32 - dock_size.width as i32
|
||||
};
|
||||
|
||||
window
|
||||
.set_size(dock_size)
|
||||
.map_err(|error| error.to_string())?;
|
||||
window
|
||||
.set_position(PhysicalPosition::new(x, monitor_position.y))
|
||||
.set_position(PhysicalPosition::new(x, work_area.position.y))
|
||||
.map_err(|error| error.to_string())?;
|
||||
window
|
||||
.set_always_on_top(true)
|
||||
|
||||
Reference in New Issue
Block a user