Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 653194a4 authored by Brett Chabot's avatar Brett Chabot
Browse files

resolve merge conflicts of 802cc7de to sc-v2-dev-plus-aosp

Test: Treehugger
Bug: 205221910

Merged-In: Ib69577745c26595ed3964a4341086138dd5d34b0
Change-Id: I5e138254f943cfe7528ae44cf4bac18362f58c0a
parents 1bba9291 802cc7de
Loading
Loading
Loading
Loading
+19 −0
Original line number Diff line number Diff line
@@ -90,6 +90,8 @@ bool Properties::enableWebViewOverlays = true;

StretchEffectBehavior Properties::stretchEffectBehavior = StretchEffectBehavior::ShaderHWUI;

DrawingEnabled Properties::drawingEnabled = DrawingEnabled::NotInitialized;

bool Properties::load() {
    bool prevDebugLayersUpdates = debugLayersUpdates;
    bool prevDebugOverdraw = debugOverdraw;
@@ -143,6 +145,9 @@ bool Properties::load() {

    enableWebViewOverlays = base::GetBoolProperty(PROPERTY_WEBVIEW_OVERLAYS_ENABLED, true);

    // call isDrawingEnabled to force loading of the property
    isDrawingEnabled();

    return (prevDebugLayersUpdates != debugLayersUpdates) || (prevDebugOverdraw != debugOverdraw);
}

@@ -212,5 +217,19 @@ void Properties::overrideRenderPipelineType(RenderPipelineType type, bool inUnit
    sRenderPipelineType = type;
}

void Properties::setDrawingEnabled(bool newDrawingEnabled) {
    drawingEnabled = newDrawingEnabled ? DrawingEnabled::On : DrawingEnabled::Off;
    enableRTAnimations = newDrawingEnabled;
}

bool Properties::isDrawingEnabled() {
    if (drawingEnabled == DrawingEnabled::NotInitialized) {
        bool drawingEnabledProp = base::GetBoolProperty(PROPERTY_DRAWING_ENABLED, true);
        drawingEnabled = drawingEnabledProp ? DrawingEnabled::On : DrawingEnabled::Off;
        enableRTAnimations = drawingEnabledProp;
    }
    return drawingEnabled == DrawingEnabled::On;
}

}  // namespace uirenderer
}  // namespace android
+13 −0
Original line number Diff line number Diff line
@@ -187,6 +187,12 @@ enum DebugLevel {
 */
#define PROPERTY_WEBVIEW_OVERLAYS_ENABLED "debug.hwui.webview_overlays_enabled"

/**
 * Property for globally GL drawing state. Can be overridden per process with
 * setDrawingEnabled.
 */
#define PROPERTY_DRAWING_ENABLED "debug.hwui.drawing_enabled"

///////////////////////////////////////////////////////////////////////////////
// Misc
///////////////////////////////////////////////////////////////////////////////
@@ -208,6 +214,8 @@ enum class StretchEffectBehavior {
    UniformScale  // Uniform scale stretch everywhere
};

enum class DrawingEnabled { NotInitialized, On, Off };

/**
 * Renderthread-only singleton which manages several static rendering properties. Most of these
 * are driven by system properties which are queried once at initialization, and again if init()
@@ -302,6 +310,11 @@ public:
        stretchEffectBehavior = behavior;
    }

    // Represents if drawing is enabled. Should only be Off in headless testing environments
    static DrawingEnabled drawingEnabled;
    static bool isDrawingEnabled();
    static void setDrawingEnabled(bool enable);

private:
    static StretchEffectBehavior stretchEffectBehavior;
    static ProfileType sProfileType;