Disable voicemail archive by default.

+Archive-specific actions are not drawn unless the runtime flag is
enabled
+Disable archive button and menu item

BUG=27375884

Change-Id: Ide7d0a162468279f614e09e01de99d782854a3e1
diff --git a/src/com/android/dialer/DialtactsActivity.java b/src/com/android/dialer/DialtactsActivity.java
index e775b0a..58a0474 100644
--- a/src/com/android/dialer/DialtactsActivity.java
+++ b/src/com/android/dialer/DialtactsActivity.java
@@ -908,6 +908,9 @@
     protected OptionsPopupMenu buildOptionsMenu(View invoker) {
         final OptionsPopupMenu popupMenu = new OptionsPopupMenu(this, invoker);
         popupMenu.inflate(R.menu.dialtacts_options);
+        if (ObjectFactory.isVoicemailArchiveEnabled(this)) {
+            popupMenu.getMenu().findItem(R.id.menu_archive).setVisible(true);
+        }
         popupMenu.setOnMenuItemClickListener(this);
         return popupMenu;
     }
diff --git a/src/com/android/dialer/voicemail/VoicemailPlaybackLayout.java b/src/com/android/dialer/voicemail/VoicemailPlaybackLayout.java
index 436fc79..0cbe7f2 100644
--- a/src/com/android/dialer/voicemail/VoicemailPlaybackLayout.java
+++ b/src/com/android/dialer/voicemail/VoicemailPlaybackLayout.java
@@ -32,6 +32,7 @@
 import android.widget.LinearLayout;
 import android.widget.SeekBar;
 import android.widget.SeekBar.OnSeekBarChangeListener;
+import android.widget.Space;
 import android.widget.TextView;
 import android.widget.Toast;
 
@@ -44,6 +45,7 @@
 import com.android.dialer.database.VoicemailArchiveContract.VoicemailArchive;
 import com.android.dialer.util.AsyncTaskExecutor;
 import com.android.dialer.util.AsyncTaskExecutors;
+import com.android.dialerbind.ObjectFactory;
 import com.google.common.annotations.VisibleForTesting;
 
 import java.util.ArrayList;
@@ -273,6 +275,7 @@
     private ImageButton mPlaybackSpeakerphone;
     private ImageButton mDeleteButton;
     private ImageButton mArchiveButton;
+    private Space mArchiveSpace;
     private TextView mStateText;
     private TextView mPositionText;
     private TextView mTotalDurationText;
@@ -297,8 +300,10 @@
     public void setPresenter(VoicemailPlaybackPresenter presenter, Uri voicemailUri) {
         mPresenter = presenter;
         mVoicemailUri = voicemailUri;
-        updateArchiveUI(mVoicemailUri);
-        updateArchiveButton(mVoicemailUri);
+        if (ObjectFactory.isVoicemailArchiveEnabled(mContext)) {
+            updateArchiveUI(mVoicemailUri);
+            updateArchiveButton(mVoicemailUri);
+        }
     }
 
     @Override
@@ -310,6 +315,7 @@
         mPlaybackSpeakerphone = (ImageButton) findViewById(R.id.playback_speakerphone);
         mDeleteButton = (ImageButton) findViewById(R.id.delete_voicemail);
         mArchiveButton =(ImageButton) findViewById(R.id.archive_voicemail);
+        mArchiveSpace = (Space) findViewById(R.id.space_before_archive_voicemail);
         mStateText = (TextView) findViewById(R.id.playback_state_text);
         mPositionText = (TextView) findViewById(R.id.playback_position_text);
         mTotalDurationText = (TextView) findViewById(R.id.total_duration_text);
@@ -511,6 +517,7 @@
     }
 
     public void hideArchiveButton() {
+        mArchiveSpace.setVisibility(View.GONE);
         mArchiveButton.setVisibility(View.GONE);
         mArchiveButton.setClickable(false);
         mArchiveButton.setEnabled(false);
@@ -582,6 +589,7 @@
                 if (archived) {
                     hideArchiveButton();
                 } else {
+                    mArchiveSpace.setVisibility(View.VISIBLE);
                     mArchiveButton.setVisibility(View.VISIBLE);
                     mArchiveButton.setClickable(true);
                     mArchiveButton.setEnabled(true);
diff --git a/src/com/android/dialerbind/ObjectFactory.java b/src/com/android/dialerbind/ObjectFactory.java
index 4568c1b..935c9f7 100644
--- a/src/com/android/dialerbind/ObjectFactory.java
+++ b/src/com/android/dialerbind/ObjectFactory.java
@@ -44,6 +44,10 @@
         return "com.android.dialer.database.filterednumberprovider";
     }
 
+    public static boolean isVoicemailArchiveEnabled(Context context) {
+        return false;
+    }
+
     @Nullable
     public static ExtendedBlockingButtonRenderer newExtendedBlockingButtonRenderer(
             Context context, ExtendedBlockingButtonRenderer.Listener listener) {