diff --git a/libs/hwui/Properties.cpp b/libs/hwui/Properties.cpp
index 18fab8e..c804418 100644
--- a/libs/hwui/Properties.cpp
+++ b/libs/hwui/Properties.cpp
@@ -88,8 +88,7 @@
 
 StretchEffectBehavior Properties::stretchEffectBehavior = StretchEffectBehavior::ShaderHWUI;
 
-bool Properties::drawingEnabled = true;
-OverrideDrawingEnabled Properties::overrideDrawingEnabled = OverrideDrawingEnabled::Default;
+DrawingEnabled Properties::drawingEnabled = DrawingEnabled::NotInitialized;
 
 bool Properties::load() {
     bool prevDebugLayersUpdates = debugLayersUpdates;
@@ -144,10 +143,8 @@
 
     enableWebViewOverlays = base::GetBoolProperty(PROPERTY_WEBVIEW_OVERLAYS_ENABLED, false);
 
-    drawingEnabled = base::GetBoolProperty(PROPERTY_DRAWING_ENABLED, true);
-    if (!drawingEnabled) {
-        enableRTAnimations = false;
-    }
+    // call isDrawingEnabled to force loading of the property
+    isDrawingEnabled();
 
     return (prevDebugLayersUpdates != debugLayersUpdates) || (prevDebugOverdraw != debugOverdraw);
 }
@@ -219,16 +216,17 @@
 }
 
 void Properties::setDrawingEnabled(bool newDrawingEnabled) {
-    overrideDrawingEnabled =
-            newDrawingEnabled ? OverrideDrawingEnabled::On : OverrideDrawingEnabled::Off;
+    drawingEnabled = newDrawingEnabled ? DrawingEnabled::On : DrawingEnabled::Off;
     enableRTAnimations = newDrawingEnabled;
 }
 
 bool Properties::isDrawingEnabled() {
-    if (overrideDrawingEnabled == OverrideDrawingEnabled::Default) {
-        return drawingEnabled;
+    if (drawingEnabled == DrawingEnabled::NotInitialized) {
+        bool drawingEnabledProp = base::GetBoolProperty(PROPERTY_DRAWING_ENABLED, true);
+        drawingEnabled = drawingEnabledProp ? DrawingEnabled::On : DrawingEnabled::Off;
+        enableRTAnimations = drawingEnabledProp;
     }
-    return overrideDrawingEnabled == OverrideDrawingEnabled::On;
+    return drawingEnabled == DrawingEnabled::On;
 }
 
 }  // namespace uirenderer
