comparison dep/animone/src/win/quartz.cc @ 342:adb79bdde329

dep/animone: fix tons of issues for example, the window ID stuff was just... completely wrong. since we're supporting multiple different window systems, it *has* to be a union rather than just a single integer type. HWND is also not a DWORD, it's a pointer(!), so now it's stored as a std::uintptr_t. (this probably breaks things)
author Paper <paper@paper.us.eu.org>
date Thu, 20 Jun 2024 03:03:05 -0400
parents a7d4e5107531
children
comparison
equal deleted inserted replaced
341:052ec053ee37 342:adb79bdde329
270 if (!CFDictionaryGetValue(window, CFSTR("kCGWindowOwnerName"), proc.comm)) 270 if (!CFDictionaryGetValue(window, CFSTR("kCGWindowOwnerName"), proc.comm))
271 fd::GetProcessName(proc.pid, proc.comm); 271 fd::GetProcessName(proc.pid, proc.comm);
272 272
273 Window win; 273 Window win;
274 win.platform = WindowPlatform::Quartz; 274 win.platform = WindowPlatform::Quartz;
275 CFDictionaryGetValue(window, CFSTR("kCGWindowNumber"), win.id); 275 CFDictionaryGetValue(window, CFSTR("kCGWindowNumber"), win.id.quartz);
276 276
277 GetProcessBundleIdentifier(proc.pid, win.class_name); 277 GetProcessBundleIdentifier(proc.pid, win.class_name);
278 GetWindowTitle(win.id, proc.pid, win.text); 278 GetWindowTitle(win.id, proc.pid, win.text);
279 279
280 if (!window_proc(proc, win)) { 280 if (!window_proc(proc, win)) {