Changeset 253974 in webkit


Ignore:
Timestamp:
Jan 2, 2020 1:04:54 AM (4 years ago)
Author:
Carlos Garcia Campos
Message:

[GTK] Make ondemand hardware acceleration policy never leave AC mode
https://bugs.webkit.org/show_bug.cgi?id=205558

Reviewed by Sergio Villar Senin.

We still enter AC mode on demand but we never leave it for the same drawing area. This avoids scrolling
performance problems with some websites that start small accelerated animation while scrolling (like WebKit
bugzilla review tool), due to constant enter/leave AC mode.

  • UIProcess/API/glib/WebKitSettings.cpp:

(webkit_settings_class_init): Update API documentation.

  • WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp:

(WebKit::DrawingAreaCoordinatedGraphics::enterAcceleratedCompositingMode): Force AC mode the first time we enter it.

Location:
trunk/Source/WebKit
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r253968 r253974  
     12020-01-02  Carlos Garcia Campos  <cgarcia@igalia.com>
     2
     3        [GTK] Make ondemand hardware acceleration policy never leave AC mode
     4        https://bugs.webkit.org/show_bug.cgi?id=205558
     5
     6        Reviewed by Sergio Villar Senin.
     7
     8        We still enter AC mode on demand but we never leave it for the same drawing area. This avoids scrolling
     9        performance problems with some websites that start small accelerated animation while scrolling (like WebKit
     10        bugzilla review tool), due to constant enter/leave AC mode.
     11
     12        * UIProcess/API/glib/WebKitSettings.cpp:
     13        (webkit_settings_class_init): Update API documentation.
     14        * WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp:
     15        (WebKit::DrawingAreaCoordinatedGraphics::enterAcceleratedCompositingMode): Force AC mode the first time we enter it.
     16
    1172019-12-22  Jeff Miller  <jeffm@apple.com>
    218
  • trunk/Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp

    r251220 r253974  
    14421442     * The #WebKitHardwareAccelerationPolicy to decide how to enable and disable
    14431443     * hardware acceleration. The default value %WEBKIT_HARDWARE_ACCELERATION_POLICY_ON_DEMAND
    1444      * enables the hardware acceleration when the web contents request it, disabling it again
    1445      * when no longer needed. It's possible to enforce hardware acceleration to be always enabled
     1444     * enables the hardware acceleration when the web contents request it.
     1445     * It's possible to enforce hardware acceleration to be always enabled
    14461446     * by using %WEBKIT_HARDWARE_ACCELERATION_POLICY_ALWAYS. And it's also possible to disable it
    14471447     * completely using %WEBKIT_HARDWARE_ACCELERATION_POLICY_NEVER. Note that disabling hardware
  • trunk/Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp

    r253744 r253974  
    558558void DrawingAreaCoordinatedGraphics::enterAcceleratedCompositingMode(GraphicsLayer* graphicsLayer)
    559559{
     560#if PLATFORM(GTK)
     561    if (!m_alwaysUseCompositing) {
     562        m_webPage.corePage()->settings().setForceCompositingMode(true);
     563        m_alwaysUseCompositing = true;
     564    }
     565#endif
    560566    m_discardPreviousLayerTreeHostTimer.stop();
    561567
Note: See TracChangeset for help on using the changeset viewer.