diff --git a/packages/SystemUI/src/com/android/systemui/assist/ui/DefaultUiController.java b/packages/SystemUI/src/com/android/systemui/assist/ui/DefaultUiController.java
index 7ad6dfd..b1be811 100644
--- a/packages/SystemUI/src/com/android/systemui/assist/ui/DefaultUiController.java
+++ b/packages/SystemUI/src/com/android/systemui/assist/ui/DefaultUiController.java
@@ -35,6 +35,8 @@
 import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
 import com.android.systemui.Dependency;
 import com.android.systemui.R;
+import com.android.systemui.ScreenDecorations;
+import com.android.systemui.SysUiServiceProvider;
 import com.android.systemui.assist.AssistManager;
 
 /**
@@ -92,12 +94,12 @@
         if (progress == 1) {
             animateInvocationCompletion(type, 0);
         } else if (progress == 0) {
-            mInvocationInProgress = false;
             hide();
         } else {
             if (!mInvocationInProgress) {
                 attach();
                 mInvocationInProgress = true;
+                updateAssistHandleVisibility();
             }
             setProgressInternal(type, progress);
         }
@@ -129,6 +131,7 @@
         }
         mInvocationLightsView.hide();
         mInvocationInProgress = false;
+        updateAssistHandleVisibility();
     }
 
     /**
@@ -139,6 +142,12 @@
         mInvocationLightsView.setColors(color1, color2, color3, color4);
     }
 
+    private void updateAssistHandleVisibility() {
+        ScreenDecorations decorations = SysUiServiceProvider.getComponent(mRoot.getContext(),
+                ScreenDecorations.class);
+        decorations.setAssistHintBlocked(mInvocationInProgress);
+    }
+
     private void attach() {
         if (!mAttached) {
             mWindowManager.addView(mRoot, mLayoutParams);
