summaryrefslogtreecommitdiffstats
path: root/src/com
diff options
context:
space:
mode:
Diffstat (limited to 'src/com')
-rw-r--r--src/com/android/gallery3d/app/AlbumPage.java3
-rw-r--r--src/com/android/gallery3d/app/CommonControllerOverlay.java9
-rw-r--r--src/com/android/gallery3d/app/GestureControllerOverlay.java4
-rw-r--r--src/com/android/gallery3d/app/MovieControllerOverlay.java2
-rw-r--r--src/com/android/gallery3d/app/MovieControllerOverlayNew.java2
-rw-r--r--src/com/android/gallery3d/app/PhotoPage.java17
-rw-r--r--src/com/android/gallery3d/app/TrimTimeBar.java17
-rw-r--r--src/com/android/gallery3d/app/TrimVideo.java4
-rw-r--r--src/com/android/gallery3d/filtershow/imageshow/ImageStraighten.java7
-rw-r--r--src/com/android/gallery3d/filtershow/ui/ExportDialog.java66
-rw-r--r--src/com/android/gallery3d/ui/MenuExecutor.java15
-rw-r--r--src/com/android/gallery3d/ui/PopupList.java2
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")));