| Differences between
and this patch
- a/Source/WebCore/ChangeLog +19 lines
Lines 1-3 a/Source/WebCore/ChangeLog_sec1
1
2017-02-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2
3
        [GTK] Non-accelerated drawing is broken with HiDPI
4
        https://bugs.webkit.org/show_bug.cgi?id=168128
5
6
        Reviewed by NOBODY (OOPS!).
7
8
        When device scale factor changes, the page notifies the page overlay controller about it. Then overlay root
9
        layers are created to be notified about the device scale factor. That causes us to enter in accelerated
10
        compositing mode, because the graphics layer factory is called. But the render layer compositor doesn't really
11
        enter in accelerated mode, because there aren't page overlays, the accelerated mode is not forced and the website
12
        doesn't require acceleration either. This leaves our drawing area in an inconsistent state, it thinks it's in AC
13
        mode because it has a layer tree host, but without a root layer attached, so nothing is rendered. The page
14
        overlay controller doesn't need to create the layers when device scale factor changes, when an overlay is
15
        installed, layers will be created with the current device scale factor anyway.
16
17
        * page/PageOverlayController.cpp:
18
        (WebCore::PageOverlayController::didChangeDeviceScaleFactor): Return early if not initialized yet.
19
1
2017-02-12  Dan Bernstein  <mitz@apple.com>
20
2017-02-12  Dan Bernstein  <mitz@apple.com>
2
21
3
        Tried to fix USE(APPLE_INTERNAL_SDK) builds after r212211.
22
        Tried to fix USE(APPLE_INTERNAL_SDK) builds after r212211.
- a/Source/WebCore/page/PageOverlayController.cpp -1 / +2 lines
Lines 275-281 void PageOverlayController::didChangeSettings() a/Source/WebCore/page/PageOverlayController.cpp_sec1
275
275
276
void PageOverlayController::didChangeDeviceScaleFactor()
276
void PageOverlayController::didChangeDeviceScaleFactor()
277
{
277
{
278
    createRootLayersIfNeeded();
278
    if (!m_initialized)
279
        return;
279
280
280
    m_documentOverlayRootLayer->noteDeviceOrPageScaleFactorChangedIncludingDescendants();
281
    m_documentOverlayRootLayer->noteDeviceOrPageScaleFactorChangedIncludingDescendants();
281
    m_viewOverlayRootLayer->noteDeviceOrPageScaleFactorChangedIncludingDescendants();
282
    m_viewOverlayRootLayer->noteDeviceOrPageScaleFactorChangedIncludingDescendants();

Return to Bug 168128