diff --git a/imgui_macos_main.mm b/imgui_macos_main.mm index 26b3442..cf4f13b 100644 --- a/imgui_macos_main.mm +++ b/imgui_macos_main.mm @@ -67,6 +67,10 @@ void shutdown_imgui() { glfwTerminate(); } +float get_dpi_scale() { + return 1.0f; +} + void run_imgui() { init_imgui(); diff --git a/imgui_main.h b/imgui_main.h index b93c34b..580f28d 100644 --- a/imgui_main.h +++ b/imgui_main.h @@ -9,6 +9,7 @@ extern bool imgui_new_frame(); extern void draw_imgui(float delta_time); extern void render_imgui(); extern void shutdown_imgui(); +extern float get_dpi_scale(); extern void tick_imgui(float delta_time); diff --git a/imgui_windows_main.cpp b/imgui_windows_main.cpp index ae8fef5..09f084c 100644 --- a/imgui_windows_main.cpp +++ b/imgui_windows_main.cpp @@ -27,7 +27,7 @@ LRESULT WINAPI WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam); // Main code int init_imgui() { // Create application window - // ImGui_ImplWin32_EnableDpiAwareness(); + ImGui_ImplWin32_EnableDpiAwareness(); wc = { sizeof(wc), CS_CLASSDC, WndProc, 0L, 0L, GetModuleHandle(nullptr), nullptr, nullptr, nullptr, nullptr, L"Arona", nullptr }; ::RegisterClassExW(&wc); std::string window_title = get_window_title(); @@ -133,6 +133,10 @@ void shutdown_imgui() { ::UnregisterClassW(wc.lpszClassName, wc.hInstance); } +float get_dpi_scale() { + return ImGui_ImplWin32_GetDpiScaleForHwnd(hwnd); +} + void run_imgui() { init_imgui(); while (true) {