Move the FAB in the dialpad down 4dp, in Dialer.
Bug: 15328499
Change-Id: I71b227f3233ada7e3f1fd65bc9cce7c919b35cbb
diff --git a/src/com/android/dialer/DialtactsActivity.java b/src/com/android/dialer/DialtactsActivity.java
index 82b7838..e8268c9 100644
--- a/src/com/android/dialer/DialtactsActivity.java
+++ b/src/com/android/dialer/DialtactsActivity.java
@@ -26,6 +26,7 @@
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
+import android.content.res.Resources;
import android.content.res.TypedArray;
import android.net.Uri;
import android.os.Bundle;
@@ -168,7 +169,6 @@
private View mFloatingActionButtonContainer;
private ImageButton mFloatingActionButton;
- private int mActionBarHeight;
private boolean mInDialpadSearch;
private boolean mInRegularSearch;
private boolean mClearSearchOnPause;
@@ -215,6 +215,10 @@
private DragDropController mDragDropController;
private ActionBarController mActionBarController;
+ private int mActionBarHeight;
+ private int mFloatingActionButtonMarginBottom;
+ private int mFloatingActionButtonDialpadMarginBottom;
+
private class OptionsPopupMenu extends PopupMenu {
public OptionsPopupMenu(Context context, View anchor) {
super(context, anchor);
@@ -324,6 +328,13 @@
super.onCreate(savedInstanceState);
mFirstLaunch = true;
+ final Resources resources = getResources();
+ mActionBarHeight = resources.getDimensionPixelSize(R.dimen.action_bar_height);
+ mFloatingActionButtonMarginBottom =
+ resources.getDimensionPixelOffset(R.dimen.floating_action_button_margin_bottom);
+ mFloatingActionButtonDialpadMarginBottom = resources.getDimensionPixelOffset(
+ R.dimen.floating_action_button_dialpad_margin_bottom);
+
setContentView(R.layout.dialtacts_activity);
getWindow().setBackgroundDrawable(null);
@@ -356,8 +367,6 @@
final OptionsPopupMenu optionsMenu = buildOptionsMenu(optionsMenuButton);
optionsMenuButton.setOnTouchListener(optionsMenu.getDragToOpenListener());
- mActionBarHeight = getResources().getDimensionPixelSize(R.dimen.action_bar_height);
-
// Add the favorites fragment, and the dialpad fragment, but only if savedInstanceState
// is null. Otherwise the fragment manager takes care of recreating these fragments.
if (savedInstanceState == null) {
@@ -1103,6 +1112,7 @@
(RelativeLayout.LayoutParams) mFloatingActionButtonContainer.getLayoutParams();
params.removeRule(RelativeLayout.CENTER_HORIZONTAL);
params.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
+ updateFloatingActionButtonMargin(params);
mFloatingActionButtonContainer.setLayoutParams(params);
}
@@ -1111,9 +1121,20 @@
(RelativeLayout.LayoutParams) mFloatingActionButtonContainer.getLayoutParams();
params.removeRule(RelativeLayout.ALIGN_PARENT_RIGHT);
params.addRule(RelativeLayout.CENTER_HORIZONTAL);
+ updateFloatingActionButtonMargin(params);
mFloatingActionButtonContainer.setLayoutParams(params);
}
+ private void updateFloatingActionButtonMargin(RelativeLayout.LayoutParams params) {
+ params.setMarginsRelative(
+ params.getMarginStart(),
+ params.topMargin,
+ params.getMarginEnd(),
+ mIsDialpadShown ?
+ mFloatingActionButtonDialpadMarginBottom :
+ mFloatingActionButtonMarginBottom);
+ }
+
@Override
public boolean isActionBarShowing() {
return mActionBarController.isActionBarShowing();