summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/PhotoMenu.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/camera/PhotoMenu.java')
-rw-r--r--src/com/android/camera/PhotoMenu.java51
1 files changed, 23 insertions, 28 deletions
diff --git a/src/com/android/camera/PhotoMenu.java b/src/com/android/camera/PhotoMenu.java
index 04346ebff..8a91df2bc 100644
--- a/src/com/android/camera/PhotoMenu.java
+++ b/src/com/android/camera/PhotoMenu.java
@@ -52,6 +52,7 @@ import android.widget.FrameLayout.LayoutParams;
import com.android.camera.CameraPreference.OnPreferenceChangedListener;
import com.android.camera.TsMakeupManager.MakeupLevelListener;
import com.android.camera.app.CameraApp;
+import com.android.camera.ui.CameraRootView;
import com.android.camera.ui.CountdownTimerPopup;
import com.android.camera.ui.ListSubMenu;
import com.android.camera.ui.ListMenu;
@@ -62,8 +63,6 @@ import com.android.camera.ui.RotateTextToast;
import org.codeaurora.snapcam.R;
import android.widget.HorizontalScrollView;
import android.view.ViewGroup;
-import android.view.WindowManager;
-import android.view.Display;
import com.android.camera.util.CameraUtil;
import java.util.Locale;
@@ -995,8 +994,6 @@ public class PhotoMenu extends MenuController
if (!mIsDefaultToPortrait) {
rotation = (rotation + 90) % 360;
}
- WindowManager wm = (WindowManager) mActivity.getSystemService(Context.WINDOW_SERVICE);
- Display display = wm.getDefaultDisplay();
CharSequence[] entries = pref.getEntries();
CharSequence[] entryValues = pref.getEntryValues();
@@ -1025,26 +1022,26 @@ public class PhotoMenu extends MenuController
LayoutInflater inflater = (LayoutInflater) mActivity.getSystemService(
Context.LAYOUT_INFLATER_SERVICE);
- FrameLayout basic = (FrameLayout) inflater.inflate(
- gridRes, null, false);
+ FrameLayout basic = (FrameLayout) inflater.inflate(gridRes, null, false);
mUI.dismissSceneModeMenu();
- LinearLayout previewMenuLayout = new LinearLayout(mActivity);
- mUI.setPreviewMenuLayout(previewMenuLayout);
+ mUI.setPreviewMenuLayout(basic);
ViewGroup.LayoutParams params = null;
+ CameraRootView rootView = mUI.getRootView();
if (portrait) {
params = new ViewGroup.LayoutParams(size, LayoutParams.MATCH_PARENT);
- previewMenuLayout.setLayoutParams(params);
- ((ViewGroup) mUI.getRootView()).addView(previewMenuLayout);
} else {
params = new ViewGroup.LayoutParams(LayoutParams.MATCH_PARENT, size);
- previewMenuLayout.setLayoutParams(params);
- ((ViewGroup) mUI.getRootView()).addView(previewMenuLayout);
- previewMenuLayout.setY(display.getHeight() - size);
+
+ int rootViewBottom = rootView.getClientRectForOrientation(rotation).bottom;
+ basic.setY(rootViewBottom - size);
}
- basic.setLayoutParams(new FrameLayout.LayoutParams(LayoutParams.MATCH_PARENT,
- LayoutParams.MATCH_PARENT));
+ basic.setLayoutParams(params);
+ rootView.addView(basic);
+
LinearLayout layout = (LinearLayout) basic.findViewById(R.id.layout);
+ Rect insets = rootView.getInsetsForOrientation(rotation);
+ layout.setPadding(insets.left, insets.top, insets.right, insets.bottom);
final View[] views = new View[entries.length];
int init = pref.getCurrentIndex();
@@ -1099,7 +1096,6 @@ public class PhotoMenu extends MenuController
layout2.setVisibility(View.GONE);
}
}
- previewMenuLayout.addView(basic);
mPreviewMenu = basic;
}
@@ -1146,8 +1142,6 @@ public class PhotoMenu extends MenuController
if (!mIsDefaultToPortrait) {
rotation = (rotation + 90) % 360;
}
- WindowManager wm = (WindowManager) mActivity.getSystemService(Context.WINDOW_SERVICE);
- Display display = wm.getDefaultDisplay();
CharSequence[] entries = pref.getEntries();
Resources r = mActivity.getResources();
@@ -1178,22 +1172,24 @@ public class PhotoMenu extends MenuController
gridRes, null, false);
mUI.dismissSceneModeMenu();
- LinearLayout previewMenuLayout = new LinearLayout(mActivity);
- mUI.setPreviewMenuLayout(previewMenuLayout);
+ mUI.setPreviewMenuLayout(basic);
ViewGroup.LayoutParams params = null;
+ CameraRootView rootView = mUI.getRootView();
if (portrait) {
params = new ViewGroup.LayoutParams(size, LayoutParams.MATCH_PARENT);
- previewMenuLayout.setLayoutParams(params);
- ((ViewGroup) mUI.getRootView()).addView(previewMenuLayout);
} else {
params = new ViewGroup.LayoutParams(LayoutParams.MATCH_PARENT, size);
- previewMenuLayout.setLayoutParams(params);
- ((ViewGroup) mUI.getRootView()).addView(previewMenuLayout);
- previewMenuLayout.setY(display.getHeight() - size);
+
+ int rootViewBottom = rootView.getClientRectForOrientation(rotation).bottom;
+ basic.setY(rootViewBottom - size);
}
- basic.setLayoutParams(new FrameLayout.LayoutParams(LayoutParams.MATCH_PARENT,
- LayoutParams.MATCH_PARENT));
+ basic.setLayoutParams(params);
+ rootView.addView(basic);
+
LinearLayout layout = (LinearLayout) basic.findViewById(R.id.layout);
+ Rect insets = rootView.getInsetsForOrientation(rotation);
+ layout.setPadding(insets.left, insets.top, insets.right, insets.bottom);
+
final View[] views = new View[entries.length];
int init = pref.getCurrentIndex();
for (int i = 0; i < entries.length; i++) {
@@ -1230,7 +1226,6 @@ public class PhotoMenu extends MenuController
label.setText(entries[i]);
layout.addView(layout2);
}
- previewMenuLayout.addView(basic);
mPreviewMenu = basic;
}