Cleanup part 3: Strip old stuff, unnecessary library

This commit is contained in:
Your Name
2023-02-20 18:39:08 -05:00
parent 3bb1ca9b1c
commit f7fde32897
5 changed files with 8 additions and 24 deletions

7
Cargo.lock generated
View File

@@ -6,7 +6,6 @@ version = 3
name = "auto_mute_tool" name = "auto_mute_tool"
version = "0.1.0" version = "0.1.0"
dependencies = [ dependencies = [
"widestring",
"windows", "windows",
] ]
@@ -45,12 +44,6 @@ version = "1.0.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc" checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc"
[[package]]
name = "widestring"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8"
[[package]] [[package]]
name = "windows" name = "windows"
version = "0.44.0" version = "0.44.0"

View File

@@ -5,9 +5,6 @@ edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
widestring = "1.0.2"
[dependencies.windows] [dependencies.windows]
version = "0.44.0" version = "0.44.0"
features = [ features = [

View File

@@ -12,13 +12,11 @@ use std::{
io::{BufRead, BufReader}, io::{BufRead, BufReader},
path::Path, path::Path,
ptr::null_mut, ptr::null_mut,
sync::{ sync::{Arc, Mutex},
Arc, Mutex,
},
}; };
use sm_session_notifier::SMSessionNotifier; use sm_session_notifier::SMSessionNotifier;
use window_change::{win_event_hook_loop, WIN_CHANGE_CHANNEL_TX}; use window_change::{win_event_hook_loop, WIN_CHANGE_CALLBACK};
use windows::{ use windows::{
core::Interface, core::Interface,
Win32::{ Win32::{
@@ -133,9 +131,9 @@ fn main() {
.boot_devices() .boot_devices()
.expect("failed to get initial audio devices and sessions"); .expect("failed to get initial audio devices and sessions");
*WIN_CHANGE_CHANNEL_TX.lock().unwrap() = Some( *WIN_CHANGE_CALLBACK.lock().unwrap() = Some(Box::new(move |s| {
Box::new(move |s| muter.lock().unwrap().notify_window_changed(&s)) muter.lock().unwrap().notify_window_changed(&s)
); }));
win_event_hook_loop(); win_event_hook_loop();
} }

View File

@@ -6,7 +6,6 @@ use std::{
use crate::{ use crate::{
device_notification_client::DeviceNotificationClient, session_notification::SessionNotification, device_notification_client::DeviceNotificationClient, session_notification::SessionNotification,
}; };
use widestring::U16CStr;
use windows::{ use windows::{
core::{Interface, PCWSTR}, core::{Interface, PCWSTR},
Win32::{ Win32::{
@@ -105,11 +104,8 @@ impl SMSessionNotifier {
(self.notification_function)(session); (self.notification_function)(session);
} }
let prop_store = device.OpenPropertyStore(STGM_READ)?; let prop_store = device.OpenPropertyStore(STGM_READ)?;
// this definition isn't in windows-rs yet apparently :(
let prop_var = prop_store.GetValue(&PKEY_Device_FriendlyName)?; let prop_var = prop_store.GetValue(&PKEY_Device_FriendlyName)?;
let str = U16CStr::from_ptr_str(prop_var.Anonymous.Anonymous.Anonymous.pwszVal.0) println!("Device Added: {} Existing Sessions: {}", prop_var.Anonymous.Anonymous.Anonymous.pwszVal.to_string()?, session_count);
.to_string_lossy();
println!("Device Added: {} Existing Sessions: {}", str, session_count);
self.session_managers.push(sm); self.session_managers.push(sm);
Ok(()) Ok(())
} }

View File

@@ -14,7 +14,7 @@ use windows::Win32::{
use crate::pid_to_exe::pid_to_exe_path; use crate::pid_to_exe::pid_to_exe_path;
pub static WIN_CHANGE_CHANNEL_TX: Mutex<Option<Box<dyn Fn(&str)+Send>>> = Mutex::new(None); pub static WIN_CHANGE_CALLBACK: Mutex<Option<Box<dyn Fn(&str)+Send>>> = Mutex::new(None);
unsafe extern "system" fn win_event_proc( unsafe extern "system" fn win_event_proc(
_hook: HWINEVENTHOOK, _hook: HWINEVENTHOOK,
@@ -33,7 +33,7 @@ unsafe extern "system" fn win_event_proc(
GetWindowThreadProcessId(hwnd, Some(&mut pid)); GetWindowThreadProcessId(hwnd, Some(&mut pid));
pid_to_exe_path(pid) pid_to_exe_path(pid)
.map(|path| .map(|path|
WIN_CHANGE_CHANNEL_TX WIN_CHANGE_CALLBACK
.lock() .lock()
.unwrap() .unwrap()
.as_ref() .as_ref()