mirror of
https://github.com/LGUG2Z/komorebi.git
synced 2026-05-17 09:17:02 +02:00
chore(deps): bump windows-rs to 0.30
This commit is contained in:
+1
-2
@@ -40,9 +40,8 @@ miow = "0.4"
|
||||
winreg = "0.10"
|
||||
|
||||
[dependencies.windows]
|
||||
version = "0.28"
|
||||
version = "0.30"
|
||||
features = [
|
||||
"std",
|
||||
"Win32_Foundation",
|
||||
"Win32_Graphics_Dwm",
|
||||
"Win32_Graphics_Gdi",
|
||||
|
||||
@@ -18,20 +18,20 @@ use windows::Win32::UI::WindowsAndMessaging::SWP_SHOWWINDOW;
|
||||
bitflags! {
|
||||
#[derive(Default)]
|
||||
pub struct SetWindowPosition: u32 {
|
||||
const ASYNC_WINDOW_POS = SWP_ASYNCWINDOWPOS.0;
|
||||
const DEFER_ERASE = SWP_DEFERERASE.0;
|
||||
const DRAW_FRAME = SWP_DRAWFRAME.0;
|
||||
const FRAME_CHANGED = SWP_FRAMECHANGED.0;
|
||||
const HIDE_WINDOW = SWP_HIDEWINDOW.0;
|
||||
const NO_ACTIVATE = SWP_NOACTIVATE.0;
|
||||
const NO_COPY_BITS = SWP_NOCOPYBITS.0;
|
||||
const NO_MOVE = SWP_NOMOVE.0;
|
||||
const NO_OWNER_Z_ORDER = SWP_NOOWNERZORDER.0;
|
||||
const NO_REDRAW = SWP_NOREDRAW.0;
|
||||
const NO_REPOSITION = SWP_NOREPOSITION.0;
|
||||
const NO_SEND_CHANGING = SWP_NOSENDCHANGING.0;
|
||||
const NO_SIZE = SWP_NOSIZE.0;
|
||||
const NO_Z_ORDER = SWP_NOZORDER.0;
|
||||
const SHOW_WINDOW = SWP_SHOWWINDOW.0;
|
||||
const ASYNC_WINDOW_POS = SWP_ASYNCWINDOWPOS;
|
||||
const DEFER_ERASE = SWP_DEFERERASE;
|
||||
const DRAW_FRAME = SWP_DRAWFRAME;
|
||||
const FRAME_CHANGED = SWP_FRAMECHANGED;
|
||||
const HIDE_WINDOW = SWP_HIDEWINDOW;
|
||||
const NO_ACTIVATE = SWP_NOACTIVATE;
|
||||
const NO_COPY_BITS = SWP_NOCOPYBITS;
|
||||
const NO_MOVE = SWP_NOMOVE;
|
||||
const NO_OWNER_Z_ORDER = SWP_NOOWNERZORDER;
|
||||
const NO_REDRAW = SWP_NOREDRAW;
|
||||
const NO_REPOSITION = SWP_NOREPOSITION;
|
||||
const NO_SEND_CHANGING = SWP_NOSENDCHANGING;
|
||||
const NO_SIZE = SWP_NOSIZE;
|
||||
const NO_Z_ORDER = SWP_NOZORDER;
|
||||
const SHOW_WINDOW = SWP_SHOWWINDOW;
|
||||
}
|
||||
}
|
||||
|
||||
+54
-54
@@ -58,33 +58,33 @@ use windows::Win32::UI::WindowsAndMessaging::WS_VSCROLL;
|
||||
bitflags! {
|
||||
#[derive(Default)]
|
||||
pub struct WindowStyle: u32 {
|
||||
const BORDER = WS_BORDER.0;
|
||||
const CAPTION = WS_CAPTION.0;
|
||||
const CHILD = WS_CHILD.0;
|
||||
const CHILDWINDOW = WS_CHILDWINDOW.0;
|
||||
const CLIPCHILDREN = WS_CLIPCHILDREN.0;
|
||||
const CLIPSIBLINGS = WS_CLIPSIBLINGS.0;
|
||||
const DISABLED = WS_DISABLED.0;
|
||||
const DLGFRAME = WS_DLGFRAME.0;
|
||||
const GROUP = WS_GROUP.0;
|
||||
const HSCROLL = WS_HSCROLL.0;
|
||||
const ICONIC = WS_ICONIC.0;
|
||||
const MAXIMIZE = WS_MAXIMIZE.0;
|
||||
const MAXIMIZEBOX = WS_MAXIMIZEBOX.0;
|
||||
const MINIMIZE = WS_MINIMIZE.0;
|
||||
const MINIMIZEBOX = WS_MINIMIZEBOX.0;
|
||||
const OVERLAPPED = WS_OVERLAPPED.0;
|
||||
const OVERLAPPEDWINDOW = WS_OVERLAPPEDWINDOW.0;
|
||||
const POPUP = WS_POPUP.0;
|
||||
const POPUPWINDOW = WS_POPUPWINDOW.0;
|
||||
const SIZEBOX = WS_SIZEBOX.0;
|
||||
const SYSMENU = WS_SYSMENU.0;
|
||||
const TABSTOP = WS_TABSTOP.0;
|
||||
const THICKFRAME = WS_THICKFRAME.0;
|
||||
const TILED = WS_TILED.0;
|
||||
const TILEDWINDOW = WS_TILEDWINDOW.0;
|
||||
const VISIBLE = WS_VISIBLE.0;
|
||||
const VSCROLL = WS_VSCROLL.0;
|
||||
const BORDER = WS_BORDER;
|
||||
const CAPTION = WS_CAPTION;
|
||||
const CHILD = WS_CHILD;
|
||||
const CHILDWINDOW = WS_CHILDWINDOW;
|
||||
const CLIPCHILDREN = WS_CLIPCHILDREN;
|
||||
const CLIPSIBLINGS = WS_CLIPSIBLINGS;
|
||||
const DISABLED = WS_DISABLED;
|
||||
const DLGFRAME = WS_DLGFRAME;
|
||||
const GROUP = WS_GROUP;
|
||||
const HSCROLL = WS_HSCROLL;
|
||||
const ICONIC = WS_ICONIC;
|
||||
const MAXIMIZE = WS_MAXIMIZE;
|
||||
const MAXIMIZEBOX = WS_MAXIMIZEBOX;
|
||||
const MINIMIZE = WS_MINIMIZE;
|
||||
const MINIMIZEBOX = WS_MINIMIZEBOX;
|
||||
const OVERLAPPED = WS_OVERLAPPED;
|
||||
const OVERLAPPEDWINDOW = WS_OVERLAPPEDWINDOW;
|
||||
const POPUP = WS_POPUP;
|
||||
const POPUPWINDOW = WS_POPUPWINDOW;
|
||||
const SIZEBOX = WS_SIZEBOX;
|
||||
const SYSMENU = WS_SYSMENU;
|
||||
const TABSTOP = WS_TABSTOP;
|
||||
const THICKFRAME = WS_THICKFRAME;
|
||||
const TILED = WS_TILED;
|
||||
const TILEDWINDOW = WS_TILEDWINDOW;
|
||||
const VISIBLE = WS_VISIBLE;
|
||||
const VSCROLL = WS_VSCROLL;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -92,32 +92,32 @@ bitflags! {
|
||||
bitflags! {
|
||||
#[derive(Default)]
|
||||
pub struct ExtendedWindowStyle: u32 {
|
||||
const ACCEPTFILES = WS_EX_ACCEPTFILES.0;
|
||||
const APPWINDOW = WS_EX_APPWINDOW.0;
|
||||
const CLIENTEDGE = WS_EX_CLIENTEDGE.0;
|
||||
const COMPOSITED = WS_EX_COMPOSITED.0;
|
||||
const CONTEXTHELP = WS_EX_CONTEXTHELP.0;
|
||||
const CONTROLPARENT = WS_EX_CONTROLPARENT.0;
|
||||
const DLGMODALFRAME = WS_EX_DLGMODALFRAME.0;
|
||||
const LAYERED = WS_EX_LAYERED.0;
|
||||
const LAYOUTRTL = WS_EX_LAYOUTRTL.0;
|
||||
const LEFT = WS_EX_LEFT.0;
|
||||
const LEFTSCROLLBAR = WS_EX_LEFTSCROLLBAR.0;
|
||||
const LTRREADING = WS_EX_LTRREADING.0;
|
||||
const MDICHILD = WS_EX_MDICHILD.0;
|
||||
const NOACTIVATE = WS_EX_NOACTIVATE.0;
|
||||
const NOINHERITLAYOUT = WS_EX_NOINHERITLAYOUT.0;
|
||||
const NOPARENTNOTIFY = WS_EX_NOPARENTNOTIFY.0;
|
||||
const NOREDIRECTIONBITMAP = WS_EX_NOREDIRECTIONBITMAP.0;
|
||||
const OVERLAPPEDWINDOW = WS_EX_OVERLAPPEDWINDOW.0;
|
||||
const PALETTEWINDOW = WS_EX_PALETTEWINDOW.0;
|
||||
const RIGHT = WS_EX_RIGHT.0;
|
||||
const RIGHTSCROLLBAR = WS_EX_RIGHTSCROLLBAR.0;
|
||||
const RTLREADING = WS_EX_RTLREADING.0;
|
||||
const STATICEDGE = WS_EX_STATICEDGE.0;
|
||||
const TOOLWINDOW = WS_EX_TOOLWINDOW.0;
|
||||
const TOPMOST = WS_EX_TOPMOST.0;
|
||||
const TRANSPARENT = WS_EX_TRANSPARENT.0;
|
||||
const WINDOWEDGE = WS_EX_WINDOWEDGE.0;
|
||||
const ACCEPTFILES = WS_EX_ACCEPTFILES;
|
||||
const APPWINDOW = WS_EX_APPWINDOW;
|
||||
const CLIENTEDGE = WS_EX_CLIENTEDGE;
|
||||
const COMPOSITED = WS_EX_COMPOSITED;
|
||||
const CONTEXTHELP = WS_EX_CONTEXTHELP;
|
||||
const CONTROLPARENT = WS_EX_CONTROLPARENT;
|
||||
const DLGMODALFRAME = WS_EX_DLGMODALFRAME;
|
||||
const LAYERED = WS_EX_LAYERED;
|
||||
const LAYOUTRTL = WS_EX_LAYOUTRTL;
|
||||
const LEFT = WS_EX_LEFT;
|
||||
const LEFTSCROLLBAR = WS_EX_LEFTSCROLLBAR;
|
||||
const LTRREADING = WS_EX_LTRREADING;
|
||||
const MDICHILD = WS_EX_MDICHILD;
|
||||
const NOACTIVATE = WS_EX_NOACTIVATE;
|
||||
const NOINHERITLAYOUT = WS_EX_NOINHERITLAYOUT;
|
||||
const NOPARENTNOTIFY = WS_EX_NOPARENTNOTIFY;
|
||||
const NOREDIRECTIONBITMAP = WS_EX_NOREDIRECTIONBITMAP;
|
||||
const OVERLAPPEDWINDOW = WS_EX_OVERLAPPEDWINDOW;
|
||||
const PALETTEWINDOW = WS_EX_PALETTEWINDOW;
|
||||
const RIGHT = WS_EX_RIGHT;
|
||||
const RIGHTSCROLLBAR = WS_EX_RIGHTSCROLLBAR;
|
||||
const RTLREADING = WS_EX_RTLREADING;
|
||||
const STATICEDGE = WS_EX_STATICEDGE;
|
||||
const TOOLWINDOW = WS_EX_TOOLWINDOW;
|
||||
const TOPMOST = WS_EX_TOPMOST;
|
||||
const TRANSPARENT = WS_EX_TRANSPARENT;
|
||||
const WINDOWEDGE = WS_EX_WINDOWEDGE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,6 @@ use std::ffi::c_void;
|
||||
use color_eyre::eyre::anyhow;
|
||||
use color_eyre::eyre::Error;
|
||||
use color_eyre::Result;
|
||||
use windows::core::Handle;
|
||||
use windows::core::Result as WindowsCrateResult;
|
||||
use windows::Win32::Foundation::BOOL;
|
||||
use windows::Win32::Foundation::HANDLE;
|
||||
@@ -38,7 +37,6 @@ use windows::Win32::System::Threading::GetCurrentThreadId;
|
||||
use windows::Win32::System::Threading::OpenProcess;
|
||||
use windows::Win32::System::Threading::QueryFullProcessImageNameW;
|
||||
use windows::Win32::System::Threading::PROCESS_ACCESS_RIGHTS;
|
||||
use windows::Win32::System::Threading::PROCESS_NAME_FORMAT;
|
||||
use windows::Win32::System::Threading::PROCESS_QUERY_INFORMATION;
|
||||
use windows::Win32::UI::Input::KeyboardAndMouse::SetFocus;
|
||||
use windows::Win32::UI::WindowsAndMessaging::AllowSetForegroundWindow;
|
||||
@@ -68,7 +66,6 @@ use windows::Win32::UI::WindowsAndMessaging::GWL_STYLE;
|
||||
use windows::Win32::UI::WindowsAndMessaging::GW_HWNDNEXT;
|
||||
use windows::Win32::UI::WindowsAndMessaging::HWND_NOTOPMOST;
|
||||
use windows::Win32::UI::WindowsAndMessaging::HWND_TOPMOST;
|
||||
use windows::Win32::UI::WindowsAndMessaging::SET_WINDOW_POS_FLAGS;
|
||||
use windows::Win32::UI::WindowsAndMessaging::SHOW_WINDOW_CMD;
|
||||
use windows::Win32::UI::WindowsAndMessaging::SPIF_SENDCHANGE;
|
||||
use windows::Win32::UI::WindowsAndMessaging::SPI_GETACTIVEWINDOWTRACKING;
|
||||
@@ -167,7 +164,7 @@ impl WindowsApi {
|
||||
EnumDisplayMonitors(
|
||||
HDC(0),
|
||||
std::ptr::null_mut(),
|
||||
Option::from(callback),
|
||||
callback,
|
||||
LPARAM(callback_data_address),
|
||||
)
|
||||
}
|
||||
@@ -179,7 +176,7 @@ impl WindowsApi {
|
||||
let mut monitors: Vec<isize> = vec![];
|
||||
let monitors_ref: &mut Vec<isize> = monitors.as_mut();
|
||||
Self::enum_display_monitors(
|
||||
windows_callbacks::valid_display_monitors,
|
||||
Option::Some(windows_callbacks::valid_display_monitors),
|
||||
monitors_ref as *mut Vec<isize> as isize,
|
||||
)?;
|
||||
|
||||
@@ -188,13 +185,13 @@ impl WindowsApi {
|
||||
|
||||
pub fn load_monitor_information(monitors: &mut Ring<Monitor>) -> Result<()> {
|
||||
Self::enum_display_monitors(
|
||||
windows_callbacks::enum_display_monitor,
|
||||
Option::Some(windows_callbacks::enum_display_monitor),
|
||||
monitors as *mut Ring<Monitor> as isize,
|
||||
)
|
||||
}
|
||||
|
||||
pub fn enum_windows(callback: WNDENUMPROC, callback_data_address: isize) -> Result<()> {
|
||||
unsafe { EnumWindows(Option::from(callback), LPARAM(callback_data_address)) }
|
||||
unsafe { EnumWindows(callback, LPARAM(callback_data_address)) }
|
||||
.ok()
|
||||
.process()
|
||||
}
|
||||
@@ -205,7 +202,7 @@ impl WindowsApi {
|
||||
if let Some(workspace) = monitor.workspaces_mut().front_mut() {
|
||||
// EnumWindows will enumerate through windows on all monitors
|
||||
Self::enum_windows(
|
||||
windows_callbacks::enum_window,
|
||||
Option::Some(windows_callbacks::enum_window),
|
||||
workspace.containers_mut() as *mut VecDeque<Container> as isize,
|
||||
)?;
|
||||
|
||||
@@ -268,7 +265,7 @@ impl WindowsApi {
|
||||
layout.top,
|
||||
layout.right,
|
||||
layout.bottom,
|
||||
SET_WINDOW_POS_FLAGS(flags),
|
||||
flags,
|
||||
)
|
||||
}
|
||||
.ok()
|
||||
@@ -469,16 +466,9 @@ impl WindowsApi {
|
||||
let mut path: Vec<u16> = vec![0; len as usize];
|
||||
let text_ptr = path.as_mut_ptr();
|
||||
|
||||
unsafe {
|
||||
QueryFullProcessImageNameW(
|
||||
handle,
|
||||
PROCESS_NAME_FORMAT(0),
|
||||
PWSTR(text_ptr),
|
||||
&mut len as *mut u32,
|
||||
)
|
||||
}
|
||||
.ok()
|
||||
.process()?;
|
||||
unsafe { QueryFullProcessImageNameW(handle, 0, PWSTR(text_ptr), &mut len as *mut u32) }
|
||||
.ok()
|
||||
.process()?;
|
||||
|
||||
Ok(String::from_utf16(&path[..len as usize])?)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user