Browse Source

Windows: Use ScopedThreadDPIAwarenessSetter in keyboard hooks to set correct thread DPI awareness

v6.1.6
ed 4 years ago
parent
commit
d5175b6e23
1 changed files with 11 additions and 3 deletions
  1. +11
    -3
      modules/juce_gui_basics/native/juce_win32_Windowing.cpp

+ 11
- 3
modules/juce_gui_basics/native/juce_win32_Windowing.cpp View File

@@ -1963,10 +1963,18 @@ public:
static bool offerKeyMessageToJUCEWindow (MSG& m)
{
if (m.message == WM_KEYDOWN || m.message == WM_KEYUP)
{
if (Component::getCurrentlyFocusedComponent() != nullptr)
if (auto* h = getOwnerOfWindow (m.hwnd))
return m.message == WM_KEYDOWN ? h->doKeyDown (m.wParam)
: h->doKeyUp (m.wParam);
{
if (auto* peer = getOwnerOfWindow (m.hwnd))
{
ScopedThreadDPIAwarenessSetter threadDpiAwarenessSetter { m.hwnd };
return m.message == WM_KEYDOWN ? peer->doKeyDown (m.wParam)
: peer->doKeyUp (m.wParam);
}
}
}
return false;
}


Loading…
Cancel
Save