diff options
| author | Linux Build Service Account <lnxbuild@localhost> | 2016-07-11 02:22:05 -0700 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2016-07-11 02:22:05 -0700 |
| commit | b7f0f7f067f5979e7e7e52aa9836ed3dbcca475c (patch) | |
| tree | 450016f19b349df303fb1a7a6fdec03423b6a8c1 /src/com | |
| parent | 94386cd469d1cb6248efb9777d709353683dc93f (diff) | |
| parent | ad5509e1fcd462a95d6ded18cd2260bb2ea7f370 (diff) | |
| download | android_packages_apps_Gallery2-b7f0f7f067f5979e7e7e52aa9836ed3dbcca475c.tar.gz android_packages_apps_Gallery2-b7f0f7f067f5979e7e7e52aa9836ed3dbcca475c.tar.bz2 android_packages_apps_Gallery2-b7f0f7f067f5979e7e7e52aa9836ed3dbcca475c.zip | |
Merge "Gallery: Modify some layout according to UX."
Diffstat (limited to 'src/com')
12 files changed, 91 insertions, 57 deletions
diff --git a/src/com/android/gallery3d/app/AlbumPage.java b/src/com/android/gallery3d/app/AlbumPage.java index 05cc1f8a1..0ff76e751 100644 --- a/src/com/android/gallery3d/app/AlbumPage.java +++ b/src/com/android/gallery3d/app/AlbumPage.java @@ -529,9 +529,6 @@ public class AlbumPage extends ActivityState implements GalleryActionBar.Cluster super.onPause(); mIsActive = false; - if (mSelectionManager.inSelectionMode()) { - mSelectionManager.leaveSelectionMode(); - } mAlbumView.setSlotFilter(null); mActionModeHandler.pause(); mAlbumDataAdapter.pause(); diff --git a/src/com/android/gallery3d/app/CommonControllerOverlay.java b/src/com/android/gallery3d/app/CommonControllerOverlay.java index 1c8287414..f4fbeb868 100644 --- a/src/com/android/gallery3d/app/CommonControllerOverlay.java +++ b/src/com/android/gallery3d/app/CommonControllerOverlay.java @@ -18,7 +18,9 @@ package com.android.gallery3d.app; import android.content.Context; import android.content.res.Resources; +import android.content.res.TypedArray; import android.graphics.Rect; +import android.graphics.drawable.Drawable; import android.view.Gravity; import android.view.KeyEvent; import android.view.MotionEvent; @@ -108,6 +110,13 @@ public abstract class CommonControllerOverlay extends FrameLayout implements mPlayPauseReplayView.setFocusable(true); mPlayPauseReplayView.setClickable(true); mPlayPauseReplayView.setOnClickListener(this); + TypedArray array = context.getTheme().obtainStyledAttributes(new int[] { + android.R.attr.actionBarItemBackground + }); + Drawable drawable = array.getDrawable(array.getIndex(0)); + if (drawable != null) { + mPlayPauseReplayView.setBackground(drawable); + } addView(mPlayPauseReplayView, wrapContent); mErrorView = createOverlayTextView(context); diff --git a/src/com/android/gallery3d/app/GestureControllerOverlay.java b/src/com/android/gallery3d/app/GestureControllerOverlay.java index 38b7f0d65..c7f497d16 100644 --- a/src/com/android/gallery3d/app/GestureControllerOverlay.java +++ b/src/com/android/gallery3d/app/GestureControllerOverlay.java @@ -49,9 +49,8 @@ public class GestureControllerOverlay extends FrameLayout implements ControllerOverlay, GestureController.GestureControlListener { private GestureController mGestureController; - private static final int MAX_VIDEO_STEP_TIME = 2 * 60 * 1000; + private static final int MAX_VIDEO_STEP_TIME = 60 * 1000; private static final int MAX_BRIGHTNESS = 100; - private static final int INDICATOR_FADE_OUT_TIME = 200; // millisecond private float mStartBrightness = -1.0f; private double mStartVolumePercent = -1.0f; @@ -130,6 +129,7 @@ public class GestureControllerOverlay extends FrameLayout implements mCurrentIndicator.setPadding(paddingH, paddingV, paddingH, paddingV); mCurrentIndicator.setGravity(Gravity.CENTER_HORIZONTAL | Gravity.BOTTOM); mCurrentIndicator.setTextSize(TypedValue.COMPLEX_UNIT_PX, mIndicatorTextSize); + mCurrentIndicator.setTextColor(Color.WHITE); mCurrentIndicator.setMinWidth(mIndicatorWidth); addView(mCurrentIndicator, layoutParams); mCurrentIndicator.setVisibility(INVISIBLE); diff --git a/src/com/android/gallery3d/app/MovieControllerOverlay.java b/src/com/android/gallery3d/app/MovieControllerOverlay.java index 80a7fc6aa..c1e36487d 100644 --- a/src/com/android/gallery3d/app/MovieControllerOverlay.java +++ b/src/com/android/gallery3d/app/MovieControllerOverlay.java @@ -664,7 +664,7 @@ public class MovieControllerOverlay extends CommonControllerOverlay implements LayoutParams wrapContent = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); // add screenView - mScreenView = new ImageView(context); + mScreenView = new ImageView(context, null, android.R.attr.actionButtonStyle); // default next screen mode mScreenView.setImageResource(R.drawable.ic_media_fullscreen); mScreenView.setScaleType(ScaleType.CENTER); diff --git a/src/com/android/gallery3d/app/MovieControllerOverlayNew.java b/src/com/android/gallery3d/app/MovieControllerOverlayNew.java index 824f8a469..6b32c142a 100644 --- a/src/com/android/gallery3d/app/MovieControllerOverlayNew.java +++ b/src/com/android/gallery3d/app/MovieControllerOverlayNew.java @@ -164,7 +164,7 @@ public class MovieControllerOverlayNew extends MovieControllerOverlay { LayoutParams wrapContent = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); mVideoSnapshotButton = new ImageView(context); - mVideoSnapshotButton.setImageResource(R.drawable.ic_video_snapshot_padding); + mVideoSnapshotButton.setImageResource(R.drawable.ic_video_snapshot_selector); mVideoSnapshotButton.setScaleType(ImageView.ScaleType.CENTER); mVideoSnapshotButton.setFocusable(true); mVideoSnapshotButton.setClickable(true); diff --git a/src/com/android/gallery3d/app/PhotoPage.java b/src/com/android/gallery3d/app/PhotoPage.java index cdbe3e7e4..df3229f95 100644 --- a/src/com/android/gallery3d/app/PhotoPage.java +++ b/src/com/android/gallery3d/app/PhotoPage.java @@ -23,6 +23,7 @@ import android.content.ActivityNotFoundException; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; +import android.content.pm.ResolveInfo; import android.content.res.Configuration; import android.graphics.Rect; import android.net.Uri; @@ -75,6 +76,7 @@ import com.android.gallery3d.ui.SynchronizedHandler; import com.android.gallery3d.util.GalleryUtils; import com.android.gallery3d.util.UsageStatistics; +import java.util.List; import java.util.Locale; //import android.drm.DrmHelper; @@ -775,9 +777,18 @@ public abstract class PhotoPage extends ActivityState implements } intent.putExtra(FilterShowActivity.LAUNCH_FULLSCREEN, mActivity.isFullscreen()); - ((Activity) mActivity).startActivityForResult(Intent.createChooser(intent, null), - REQUEST_EDIT); - overrideTransitionToEditor(); + + List<ResolveInfo> resolveInfoList = mActivity.getPackageManager() + .queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY); + if (resolveInfoList != null && resolveInfoList.size() > 0) { + if (resolveInfoList.size() == 1) { + // only one app can resolve intent, don't use createChooser. + mActivity.startActivityForResult(intent, REQUEST_EDIT); + } else { + mActivity.startActivityForResult(Intent.createChooser(intent, null), REQUEST_EDIT); + } + overrideTransitionToEditor(); + } } private void launchSimpleEditor() { diff --git a/src/com/android/gallery3d/app/TrimTimeBar.java b/src/com/android/gallery3d/app/TrimTimeBar.java index 06e8741bb..6fea3d690 100644 --- a/src/com/android/gallery3d/app/TrimTimeBar.java +++ b/src/com/android/gallery3d/app/TrimTimeBar.java @@ -83,11 +83,11 @@ public class TrimTimeBar extends TimeBar { } private int trimStartScrubberTipOffset() { - return mTrimStartScrubber.getWidth() * 3 / 4; + return mTrimStartScrubber.getWidth(); } private int trimEndScrubberTipOffset() { - return mTrimEndScrubber.getWidth() / 4; + return 0; } // Based on all the time info (current, total, trimStart, trimEnd), we @@ -153,9 +153,10 @@ public class TrimTimeBar extends TimeBar { } private boolean inScrubber(float x, float y, int startX, int startY, Bitmap scrubber) { - int scrubberRight = startX + scrubber.getWidth(); - int scrubberBottom = startY + scrubber.getHeight(); - return startX < x && x < scrubberRight && startY < y && y < scrubberBottom; + int scrubberRight = startX + scrubber.getWidth() * 2; + int scrubberBottom = startY + scrubber.getHeight() * 2; + return startX - mScrubberPadding < x && x < scrubberRight + mScrubberPadding + && startY - mScrubberPadding < y && y < scrubberBottom + mScrubberPadding; } private int clampScrubber(int scrubberLeft, int offset, int lowerBound, int upperBound) { @@ -182,12 +183,12 @@ public class TrimTimeBar extends TimeBar { } margin = mLayoutExt.getProgressMargin(margin); int progressY = (h + mScrubberPadding) / 2; - mTrimStartScrubberTop = progressY; - mTrimEndScrubberTop = progressY; mScrubberTop = progressY - mScrubber.getHeight() / 2 + 1; mProgressBar.set( mTimeBarMargin + margin, progressY, w - mTimeBarMargin - margin, progressY + 6); + mTrimStartScrubberTop = progressY + mProgressBar.height(); + mTrimEndScrubberTop = progressY + mProgressBar.height(); } update(); } @@ -341,6 +342,6 @@ public class TrimTimeBar extends TimeBar { break; } } - return false; + return true; } } diff --git a/src/com/android/gallery3d/app/TrimVideo.java b/src/com/android/gallery3d/app/TrimVideo.java index d2d6cd336..ec85de234 100644 --- a/src/com/android/gallery3d/app/TrimVideo.java +++ b/src/com/android/gallery3d/app/TrimVideo.java @@ -122,7 +122,7 @@ public class TrimVideo extends Activity implements trimVideo(); } }); - mSaveVideoTextView.setEnabled(false); + mSaveVideoTextView.setVisibility(View.GONE); Intent intent = getIntent(); mUri = intent.getData(); @@ -232,7 +232,7 @@ public class TrimVideo extends Activity implements } mController.setTimes(mVideoPosition, duration, mTrimStartTime, mTrimEndTime); // Enable save if there's modifications - mSaveVideoTextView.setEnabled(isModified()); + mSaveVideoTextView.setVisibility(isModified() ? View.VISIBLE : View.GONE); return mVideoPosition; } diff --git a/src/com/android/gallery3d/filtershow/imageshow/ImageStraighten.java b/src/com/android/gallery3d/filtershow/imageshow/ImageStraighten.java index cec45f15f..d83c0ad75 100644 --- a/src/com/android/gallery3d/filtershow/imageshow/ImageStraighten.java +++ b/src/com/android/gallery3d/filtershow/imageshow/ImageStraighten.java @@ -29,6 +29,7 @@ import android.graphics.RectF; import android.util.AttributeSet; import android.view.MotionEvent; +import org.codeaurora.gallery.R; import com.android.gallery3d.filtershow.crop.CropDrawingUtils; import com.android.gallery3d.filtershow.editors.EditorStraighten; import com.android.gallery3d.filtershow.filters.FilterCropRepresentation; @@ -257,9 +258,11 @@ public class ImageStraighten extends ImageShow { int viewWidth = canvas.getWidth(); int viewHeight = canvas.getHeight(); + int panelHeight = getContext().getResources().getDimensionPixelOffset( + R.dimen.category_actionbar_panel_height); // Get matrix for drawing bitmap Matrix m = GeometryMathUtils.getFullGeometryToScreenMatrix(mDrawHolder, imageWidth, - imageHeight, viewWidth, viewHeight); + imageHeight, viewWidth, viewHeight - panelHeight); mPaint.reset(); mPaint.setAntiAlias(true); mPaint.setFilterBitmap(true); @@ -270,7 +273,7 @@ public class ImageStraighten extends ImageShow { mPaint.setStrokeWidth(2); mPaint.setStyle(Paint.Style.FILL_AND_STROKE); updateCurrentCrop(m, mDrawHolder, mDrawRect, imageWidth, - imageHeight, viewWidth, viewHeight); + imageHeight, viewWidth, viewHeight - panelHeight); if (mFirstDrawSinceUp) { mPriorCropAtUp.set(mCrop); mLocalRep.setStraighten(mAngle); diff --git a/src/com/android/gallery3d/filtershow/ui/ExportDialog.java b/src/com/android/gallery3d/filtershow/ui/ExportDialog.java index d9e695cfb..6ec3cfed5 100644 --- a/src/com/android/gallery3d/filtershow/ui/ExportDialog.java +++ b/src/com/android/gallery3d/filtershow/ui/ExportDialog.java @@ -16,6 +16,9 @@ package com.android.gallery3d.filtershow.ui; +import android.app.AlertDialog; +import android.app.Dialog; +import android.content.DialogInterface; import android.content.Intent; import android.graphics.Bitmap; import android.graphics.Rect; @@ -27,7 +30,6 @@ import android.text.Editable; import android.text.TextWatcher; import android.view.LayoutInflater; import android.view.View; -import android.view.ViewGroup; import android.widget.EditText; import android.widget.SeekBar; import android.widget.TextView; @@ -42,8 +44,7 @@ import com.android.gallery3d.filtershow.tools.SaveImage; import java.io.ByteArrayOutputStream; import java.io.File; -public class ExportDialog extends DialogFragment implements View.OnClickListener, - SeekBar.OnSeekBarChangeListener { +public class ExportDialog extends DialogFragment implements SeekBar.OnSeekBarChangeListener { SeekBar mSeekBar; TextView mSeekVal; EditText mWidthText; @@ -90,11 +91,37 @@ public class ExportDialog extends DialogFragment implements View.OnClickListener } @Override - public View onCreateView(LayoutInflater inflater, ViewGroup container, - Bundle savedInstanceState) { + public Dialog onCreateDialog(Bundle savedInstanceState) { mHandler = new Handler(getActivity().getMainLooper()); + AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); + View view = initCustomLayout(); + builder.setView(view); + builder.setTitle(R.string.export_flattened); + builder.setPositiveButton(R.string.done, + new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int id) { + FilterShowActivity activity = (FilterShowActivity) getActivity(); + Uri sourceUri = MasterImage.getImage().getUri(); + File dest = SaveImage.getNewFile(activity, activity.getSelectedImageUri()); + float scaleFactor = mExportWidth / (float) mOriginalBounds.width(); + Intent processIntent = ProcessingService.getSaveIntent(activity, + MasterImage.getImage().getPreset(), dest, + activity.getSelectedImageUri(), sourceUri, true, + mSeekBar.getProgress(), scaleFactor, false, -1); + activity.startService(processIntent); + } + }); + builder.setNegativeButton(R.string.cancel, null); - View view = inflater.inflate(R.layout.filtershow_export_dialog, container); + updateCompressionFactor(); + updateSize(); + return builder.create(); + } + + private View initCustomLayout() { + LayoutInflater inflater = getActivity().getLayoutInflater(); + View view = inflater.inflate(R.layout.filtershow_export_dialog, null); mSeekBar = (SeekBar) view.findViewById(R.id.qualitySeekBar); mSeekVal = (TextView) view.findViewById(R.id.qualityTextView); mSliderLabel = getString(R.string.quality) + ": "; @@ -124,13 +151,6 @@ public class ExportDialog extends DialogFragment implements View.OnClickListener mExportHeight = mOriginalBounds.height(); mWidthText.addTextChangedListener(new Watcher(mWidthText)); mHeightText.addTextChangedListener(new Watcher(mHeightText)); - - view.findViewById(R.id.cancel).setOnClickListener(this); - view.findViewById(R.id.done).setOnClickListener(this); - getDialog().setTitle(R.string.export_flattened); - - updateCompressionFactor(); - updateSize(); return view; } @@ -156,26 +176,6 @@ public class ExportDialog extends DialogFragment implements View.OnClickListener mHandler.postDelayed(mUpdateRunnable, mUpdateDelay); } - @Override - public void onClick(View v) { - switch (v.getId()) { - case R.id.cancel: - dismiss(); - break; - case R.id.done: - FilterShowActivity activity = (FilterShowActivity) getActivity(); - Uri sourceUri = MasterImage.getImage().getUri(); - File dest = SaveImage.getNewFile(activity, activity.getSelectedImageUri()); - float scaleFactor = mExportWidth / (float) mOriginalBounds.width(); - Intent processIntent = ProcessingService.getSaveIntent(activity, MasterImage - .getImage().getPreset(), dest, activity.getSelectedImageUri(), sourceUri, - true, mSeekBar.getProgress(), scaleFactor, false, -1); - activity.startService(processIntent); - dismiss(); - break; - } - } - public void updateCompressionFactor() { Bitmap bitmap = MasterImage.getImage().getFilteredImage(); if (bitmap == null) { diff --git a/src/com/android/gallery3d/ui/MenuExecutor.java b/src/com/android/gallery3d/ui/MenuExecutor.java index c28fd097b..c57e848e3 100644 --- a/src/com/android/gallery3d/ui/MenuExecutor.java +++ b/src/com/android/gallery3d/ui/MenuExecutor.java @@ -25,6 +25,8 @@ import android.content.DialogInterface.OnCancelListener; import android.content.DialogInterface.OnClickListener; import android.content.Intent; //import android.drm.DrmHelper; +import android.content.pm.PackageManager; +import android.content.pm.ResolveInfo; import android.net.Uri; import android.os.Handler; import android.os.Message; @@ -46,6 +48,7 @@ import com.android.gallery3d.util.ThreadPool.Job; import com.android.gallery3d.util.ThreadPool.JobContext; import java.util.ArrayList; +import java.util.List; public class MenuExecutor { private static final String TAG = "MenuExecutor"; @@ -254,7 +257,17 @@ public class MenuExecutor { Intent intent = getIntentBySingleSelectedPath(Intent.ACTION_EDIT); if (intent != null) { intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); - ((Activity) mActivity).startActivity(Intent.createChooser(intent, null)); + + List<ResolveInfo> resolveInfoList = mActivity.getPackageManager() + .queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY); + if (resolveInfoList != null && resolveInfoList.size() > 0) { + if (resolveInfoList.size() == 1) { + // only one app can resolve intent, don't use createChooser. + mActivity.startActivity(intent); + } else { + mActivity.startActivity(Intent.createChooser(intent, null)); + } + } } return; } diff --git a/src/com/android/gallery3d/ui/PopupList.java b/src/com/android/gallery3d/ui/PopupList.java index efbddd3ea..a9aa2570f 100644 --- a/src/com/android/gallery3d/ui/PopupList.java +++ b/src/com/android/gallery3d/ui/PopupList.java @@ -154,7 +154,7 @@ public class PopupList { } private PopupWindow createPopupWindow() { - PopupWindow popup = new PopupWindow(mContext); + PopupWindow popup = new PopupWindow(mContext, null, android.R.attr.popupMenuStyle); popup.setOnDismissListener(mOnDismissListener); popup.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#ffffff"))); |
