record & restore target window on runs

This commit is contained in:
Ryan Fleury
2025-09-15 14:10:30 -07:00
parent c7bb49092f
commit 2a8ca37cb3
7 changed files with 79 additions and 2 deletions
+17
View File
@@ -327,6 +327,23 @@ os_dpi_from_window(OS_Handle handle)
return 96.f;
}
////////////////////////////////
//~ rjf: @os_hooks External Windows (Implemented Per-OS)
internal OS_Handle
os_focused_external_window(void)
{
OS_Handle result = {0};
// TODO(rjf)
return result;
}
internal void
os_focus_external_window(OS_Handle handle)
{
// TODO(rjf)
}
////////////////////////////////
//~ rjf: @os_hooks Monitors (Implemented Per-OS)
+6
View File
@@ -163,6 +163,12 @@ internal Rng2F32 os_rect_from_window(OS_Handle window);
internal Rng2F32 os_client_rect_from_window(OS_Handle window);
internal F32 os_dpi_from_window(OS_Handle window);
////////////////////////////////
//~ rjf: @os_hooks External Windows (Implemented Per-OS)
internal OS_Handle os_focused_external_window(void);
internal void os_focus_external_window(OS_Handle handle);
////////////////////////////////
//~ rjf: @os_hooks Monitors (Implemented Per-OS)
+17
View File
@@ -149,6 +149,23 @@ os_dpi_from_window(OS_Handle window)
return 96.f;
}
////////////////////////////////
//~ rjf: @os_hooks External Windows (Implemented Per-OS)
internal OS_Handle
os_focused_external_window(void)
{
OS_Handle result = {0};
// TODO(rjf)
return result;
}
internal void
os_focus_external_window(OS_Handle handle)
{
// TODO(rjf)
}
////////////////////////////////
//~ rjf: @os_hooks Monitors (Implemented Per-OS)
+19
View File
@@ -1367,6 +1367,25 @@ os_dpi_from_window(OS_Handle handle)
return result;
}
////////////////////////////////
//~ rjf: @os_hooks External Windows (Implemented Per-OS)
internal OS_Handle
os_focused_external_window(void)
{
HWND hwnd = GetForegroundWindow();
OS_Handle result = {(U64)hwnd};
return result;
}
internal void
os_focus_external_window(OS_Handle handle)
{
HWND hwnd = (HWND)handle.u64[0];
SetForegroundWindow(hwnd);
SetFocus(hwnd);
}
////////////////////////////////
//~ rjf: @os_hooks Monitors (Implemented Per-OS)