From f5daf2a76ac9a4f3292c6d8fa040a222c52d466d Mon Sep 17 00:00:00 2001 From: Stu Black Date: Tue, 9 Sep 2025 22:16:31 -0400 Subject: [PATCH] Expose WAppIcon methods used by WApplication. --- wmakerlib/src/app_icon.rs | 25 +++++++++++++++++++++++++ wmakerlib/src/lib.rs | 1 + 2 files changed, 26 insertions(+) create mode 100644 wmakerlib/src/app_icon.rs diff --git a/wmakerlib/src/app_icon.rs b/wmakerlib/src/app_icon.rs new file mode 100644 index 00000000..57a7ff9c --- /dev/null +++ b/wmakerlib/src/app_icon.rs @@ -0,0 +1,25 @@ +use std::ffi::c_void; + +pub type AppIcon = c_void; + +pub mod ffi { + use super::AppIcon; + use std::ffi::c_int; + + unsafe extern "C" { + pub fn wAppIconIsDocked(app_icon: *mut AppIcon) -> c_int; + + pub fn wAppIconIsRelaunching(app_icon: *mut AppIcon) -> c_int; + + pub fn wAppIconGetIcon(app_icon: *mut AppIcon) -> *mut crate::icon::Icon; + + pub fn wAppIconPaint(app_icon: *mut AppIcon); + + pub fn create_appicon_for_application( + app: *mut crate::application::Application, + wwin: *mut crate::window::Window, + ); + + pub fn removeAppIconFor(app: *mut crate::application::Application); + } +} diff --git a/wmakerlib/src/lib.rs b/wmakerlib/src/lib.rs index 602ae256..fc1a516d 100644 --- a/wmakerlib/src/lib.rs +++ b/wmakerlib/src/lib.rs @@ -1,4 +1,5 @@ pub mod application; +pub mod app_icon; pub mod icon; pub mod screen; pub mod window;