mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
lavd/gdigrab: mouse dpi awareness
correct mouse location on hidpi screens. fixes ticket #5008 Signed-off-by: Matt Oliver <protogonoi@gmail.com>
This commit is contained in:
parent
70d685a77f
commit
00c73c475e
@ -446,6 +446,8 @@ static void paint_mouse_pointer(AVFormatContext *s1, struct gdigrab *gdigrab)
|
||||
POINT pos;
|
||||
RECT clip_rect = gdigrab->clip_rect;
|
||||
HWND hwnd = gdigrab->hwnd;
|
||||
int vertres = GetDeviceCaps(gdigrab->source_hdc, VERTRES);
|
||||
int desktopvertres = GetDeviceCaps(gdigrab->source_hdc, DESKTOPVERTRES);
|
||||
info.hbmMask = NULL;
|
||||
info.hbmColor = NULL;
|
||||
|
||||
@ -479,6 +481,10 @@ static void paint_mouse_pointer(AVFormatContext *s1, struct gdigrab *gdigrab)
|
||||
}
|
||||
}
|
||||
|
||||
//that would keep the correct location of mouse with hidpi screens
|
||||
pos.x = pos.x * desktopvertres / vertres;
|
||||
pos.y = pos.y * desktopvertres / vertres;
|
||||
|
||||
av_log(s1, AV_LOG_DEBUG, "Cursor pos (%li,%li) -> (%li,%li)\n",
|
||||
ci.ptScreenPos.x, ci.ptScreenPos.y, pos.x, pos.y);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user