Remove some calls to putComponent.

This gets some of the low hanging fruit out of the way for
deprecation of the SystemUI.mComponents member.

Bug: 138786270
Test: atest SystemUITests
Change-Id: I9388d671a39e8a20973c39489398064c434c31ec
diff --git a/packages/SystemUI/src/com/android/systemui/volume/VolumeUI.java b/packages/SystemUI/src/com/android/systemui/volume/VolumeUI.java
index d4a88b0..b7431397 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/VolumeUI.java
+++ b/packages/SystemUI/src/com/android/systemui/volume/VolumeUI.java
@@ -23,12 +23,15 @@
 
 import com.android.systemui.R;
 import com.android.systemui.SystemUI;
-import com.android.systemui.SystemUIFactory;
 import com.android.systemui.qs.tiles.DndTile;
 
 import java.io.FileDescriptor;
 import java.io.PrintWriter;
 
+import javax.inject.Inject;
+import javax.inject.Singleton;
+
+@Singleton
 public class VolumeUI extends SystemUI {
     private static final String TAG = "VolumeUI";
     private static boolean LOGD = Log.isLoggable(TAG, Log.DEBUG);
@@ -38,8 +41,10 @@
     private boolean mEnabled;
     private VolumeDialogComponent mVolumeComponent;
 
-    public VolumeUI(Context context) {
+    @Inject
+    public VolumeUI(Context context, VolumeDialogComponent volumeDialogComponent) {
         super(context);
+        mVolumeComponent = volumeDialogComponent;
     }
 
     @Override
@@ -50,8 +55,6 @@
         mEnabled = enableVolumeUi || enableSafetyWarning;
         if (!mEnabled) return;
 
-        mVolumeComponent = SystemUIFactory.getInstance()
-                .createVolumeDialogComponent(this, mContext);
         mVolumeComponent.setEnableDialogs(enableVolumeUi, enableSafetyWarning);
         putComponent(VolumeComponent.class, getVolumeComponent());
         setDefaultVolumeController();