Bug 201450 - [Win] Support Per-Monitor (V2) DPI Awareness
Summary: [Win] Support Per-Monitor (V2) DPI Awareness
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit Misc. (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Fujii Hironori
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2019-09-03 23:35 PDT by Fujii Hironori
Modified: 2019-09-05 18:51 PDT (History)
7 users (show)

See Also:


Attachments
WIP patch (2.38 KB, patch)
2019-09-03 23:36 PDT, Fujii Hironori
no flags Details | Formatted Diff | Diff
WIP patch (2.65 KB, patch)
2019-09-04 03:05 PDT, Fujii Hironori
no flags Details | Formatted Diff | Diff
Patch (4.29 KB, patch)
2019-09-04 19:38 PDT, Fujii Hironori
no flags Details | Formatted Diff | Diff
Archive of layout-test-results from ews212 for win-future (13.88 MB, application/zip)
2019-09-04 21:25 PDT, EWS Watchlist
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Fujii Hironori 2019-09-03 23:35:53 PDT
[Win] Support Per-Monitor (V2) DPI Awareness

https://docs.microsoft.com/en-us/windows/win32/hidpi/high-dpi-desktop-application-development-on-windows
Comment 1 Fujii Hironori 2019-09-03 23:36:07 PDT
Created attachment 377961 [details]
WIP patch
Comment 2 Fujii Hironori 2019-09-04 03:05:21 PDT
Created attachment 377968 [details]
WIP patch
Comment 3 Brent Fulgham 2019-09-04 09:21:20 PDT
Comment on attachment 377968 [details]
WIP patch

View in context: https://bugs.webkit.org/attachment.cgi?id=377968&action=review

> Tools/MiniBrowser/win/WinMain.cpp:73
> +        ::SetProcessDPIAware();

It seems like we would need this change in the WebProcess, too.
Comment 4 Fujii Hironori 2019-09-04 18:56:06 PDT
Comment on attachment 377968 [details]
WIP patch

View in context: https://bugs.webkit.org/attachment.cgi?id=377968&action=review

>> Tools/MiniBrowser/win/WinMain.cpp:73
>> +        ::SetProcessDPIAware();
> 
> It seems like we would need this change in the WebProcess, too.

Web process doesn't use HWND at all at the moment (at least in WinCairo).
I will do it in Bug 201361 or Bug 186364.
Comment 5 Fujii Hironori 2019-09-04 19:33:11 PDT
I need to replace following APIs, but it's not simple task because Web process doesn't know WebView's HWND at the moment.
GetSystemMetrics → GetSystemMetricsForDpi
SystemParametersInfo → SystemParametersInfoForDpi

I'll do that task in the follow-up patch.
Comment 6 Fujii Hironori 2019-09-04 19:38:49 PDT
Created attachment 378040 [details]
Patch
Comment 7 EWS Watchlist 2019-09-04 21:25:28 PDT
Comment on attachment 378040 [details]
Patch

Attachment 378040 [details] did not pass win-ews (win):
Output: https://webkit-queues.webkit.org/results/12998620

New failing tests:
fast/block/float/float-with-anonymous-previous-sibling.html
Comment 8 EWS Watchlist 2019-09-04 21:25:30 PDT
Created attachment 378042 [details]
Archive of layout-test-results from ews212 for win-future

The attached test failures were seen while running run-webkit-tests on the win-ews.
Bot: ews212  Port: win-future  Platform: CYGWIN_NT-10.0-17763-3.0.5-338.x86_64-x86_64-64bit
Comment 9 Fujii Hironori 2019-09-04 21:59:30 PDT
(In reply to Build Bot from comment #7)
> New failing tests:
> fast/block/float/float-with-anonymous-previous-sibling.html

This test is flaky on AppleWin.

Bug 194305 Comment 3
Bug 196717 Comment 8
Bug 198680 Comment 21
Comment 10 Fujii Hironori 2019-09-04 22:27:41 PDT
Filed: Bug 201491 – [AppleWin] fast/block/float/float-with-anonymous-previous-sibling.html is failing as flaky ImageOnlyFailure
Comment 11 Fujii Hironori 2019-09-05 18:50:16 PDT
Comment on attachment 378040 [details]
Patch

Clearing flags on attachment: 378040

Committed r249559: <https://trac.webkit.org/changeset/249559>
Comment 12 Fujii Hironori 2019-09-05 18:50:19 PDT
All reviewed patches have been landed.  Closing bug.
Comment 13 Radar WebKit Bug Importer 2019-09-05 18:51:27 PDT
<rdar://problem/55095795>