diff --git a/src/com/android/dialer/compat/FilteredNumberCompat.java b/src/com/android/dialer/compat/FilteredNumberCompat.java
index 2325047..08bf6c8 100644
--- a/src/com/android/dialer/compat/FilteredNumberCompat.java
+++ b/src/com/android/dialer/compat/FilteredNumberCompat.java
@@ -14,7 +14,7 @@
  * limitations under the License
  */
 
-    package com.android.dialer.compat;
+package com.android.dialer.compat;
 
 import com.google.common.base.Preconditions;
 
@@ -43,6 +43,7 @@
 import com.android.dialer.filterednumber.BlockedNumbersMigrator;
 import com.android.dialer.filterednumber.BlockedNumbersSettingsActivity;
 import com.android.dialer.filterednumber.MigrateBlockedNumbersDialogFragment;
+import com.android.dialerbind.ObjectFactory;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -58,10 +59,6 @@
 
     protected static final String HAS_MIGRATED_TO_NEW_BLOCKING_KEY = "migratedToNewBlocking";
 
-    // Flag to enable feature.
-    // TODO(maxwelb) remove when ready to enable new filtering.
-    private static final boolean isNewFilteringEnabled = false;
-
     private static Boolean isEnabledForTest;
 
     /**
@@ -122,7 +119,8 @@
         if (isEnabledForTest != null) {
             return CompatUtils.isNCompatible() && isEnabledForTest;
         }
-        return CompatUtils.isNCompatible() && isNewFilteringEnabled;
+        return CompatUtils.isNCompatible() && ObjectFactory
+                .isNewBlockingEnabled(DialerApplication.getContext());
     }
 
     /**
diff --git a/src/com/android/dialerbind/ObjectFactory.java b/src/com/android/dialerbind/ObjectFactory.java
index 9f75e39..875a893 100644
--- a/src/com/android/dialerbind/ObjectFactory.java
+++ b/src/com/android/dialerbind/ObjectFactory.java
@@ -52,6 +52,11 @@
         return false;
     }
 
+    public static boolean isNewBlockingEnabled(Context context) {
+        // TODO(maxwelb) - Set to true when ready to enable feature
+        return false;
+    }
+
     @Nullable
     public static ExtendedBlockingButtonRenderer newExtendedBlockingButtonRenderer(
             Context context, ExtendedBlockingButtonRenderer.Listener listener) {
