summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTeng-Hui Zhu <ztenghui@google.com>2012-09-26 16:34:44 -0700
committerTeng-Hui Zhu <ztenghui@google.com>2012-09-27 12:19:00 -0700
commit028ecd4e3bbd68c3b5b2fb91d3e7a666bc151765 (patch)
tree3114413c4f24ce33a5ec5d7d6c560f5cac235722
parent8f6dc9eab9feca563b08400a7ebd74fb5d0e3075 (diff)
downloadandroid_packages_apps_Gallery2-028ecd4e3bbd68c3b5b2fb91d3e7a666bc151765.tar.gz
android_packages_apps_Gallery2-028ecd4e3bbd68c3b5b2fb91d3e7a666bc151765.tar.bz2
android_packages_apps_Gallery2-028ecd4e3bbd68c3b5b2fb91d3e7a666bc151765.zip
Trimming: clean up the UI for trimming.
Get rid of the home button and use the done button only in the action bar. Switch back to use system actionbar / activity. Rename the ShortenExample. bug:7093240 Change-Id: I61684e9723af12cecc212bbd911c23aab0258463
-rw-r--r--res/layout/trim_menu.xml30
-rw-r--r--res/menu/trim.xml21
-rw-r--r--src/com/android/gallery3d/app/TrimVideo.java61
-rw-r--r--src/com/android/gallery3d/app/TrimVideoUtils.java (renamed from src/com/android/gallery3d/app/ShortenExample.java)4
4 files changed, 57 insertions, 59 deletions
diff --git a/res/layout/trim_menu.xml b/res/layout/trim_menu.xml
new file mode 100644
index 000000000..d2af918aa
--- /dev/null
+++ b/res/layout/trim_menu.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2012 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_centerVertical="true">
+ <TextView
+ android:id="@+id/start_trim"
+ android:layout_marginLeft="8dp"
+ android:layout_width="wrap_content"
+ android:layout_height="match_parent"
+ android:text="@string/done"
+ android:gravity="left|center_vertical"
+ android:drawableLeft="@drawable/ic_menu_save_holo_light"
+ android:drawablePadding="8dp" />
+</FrameLayout>
diff --git a/res/menu/trim.xml b/res/menu/trim.xml
deleted file mode 100644
index 57de58924..000000000
--- a/res/menu/trim.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2012 Google Inc.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<menu xmlns:android="http://schemas.android.com/apk/res/android">
- <item android:id="@+id/action_trim_video"
- android:title="@string/done"
- android:enabled="true"
- android:showAsAction="ifRoom" />
-</menu>
diff --git a/src/com/android/gallery3d/app/TrimVideo.java b/src/com/android/gallery3d/app/TrimVideo.java
index 1018ef691..23e56ba25 100644
--- a/src/com/android/gallery3d/app/TrimVideo.java
+++ b/src/com/android/gallery3d/app/TrimVideo.java
@@ -16,6 +16,8 @@
package com.android.gallery3d.app;
+import android.app.ActionBar;
+import android.app.Activity;
import android.app.ProgressDialog;
import android.content.ContentResolver;
import android.content.ContentValues;
@@ -29,17 +31,14 @@ import android.os.Environment;
import android.os.Handler;
import android.provider.MediaStore.Video;
import android.provider.MediaStore.Video.VideoColumns;
+import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
+import android.view.Window;
+import android.widget.TextView;
import android.widget.Toast;
import android.widget.VideoView;
-import com.actionbarsherlock.app.ActionBar;
-import com.actionbarsherlock.app.SherlockActivity;
-import com.actionbarsherlock.view.Menu;
-import com.actionbarsherlock.view.MenuInflater;
-import com.actionbarsherlock.view.MenuItem;
-import com.actionbarsherlock.view.Window;
import com.android.gallery3d.R;
import com.android.gallery3d.util.BucketNames;
@@ -48,7 +47,7 @@ import java.io.IOException;
import java.sql.Date;
import java.text.SimpleDateFormat;
-public class TrimVideo extends SherlockActivity implements
+public class TrimVideo extends Activity implements
MediaPlayer.OnErrorListener,
MediaPlayer.OnCompletionListener,
ControllerOverlay.Listener {
@@ -87,10 +86,23 @@ public class TrimVideo extends SherlockActivity implements
requestWindowFeature(Window.FEATURE_ACTION_BAR);
requestWindowFeature(Window.FEATURE_ACTION_BAR_OVERLAY);
- ActionBar actionBar = getSupportActionBar();
- int displayOptions = ActionBar.DISPLAY_HOME_AS_UP
- | ActionBar.DISPLAY_SHOW_TITLE;
+ ActionBar actionBar = getActionBar();
+ int displayOptions = ActionBar.DISPLAY_SHOW_HOME;
+ actionBar.setDisplayOptions(0, displayOptions);
+ displayOptions = ActionBar.DISPLAY_SHOW_CUSTOM;
actionBar.setDisplayOptions(displayOptions, displayOptions);
+ actionBar.setCustomView(R.layout.trim_menu);
+
+ TextView mSaveVideoTextView = (TextView) findViewById(R.id.start_trim);
+ mSaveVideoTextView.setOnTouchListener(new View.OnTouchListener() {
+ @Override
+ public boolean onTouch(View v, MotionEvent event) {
+ if (event.getAction() == MotionEvent.ACTION_UP) {
+ trimVideo();
+ }
+ return true;
+ }
+ });
Intent intent = getIntent();
mUri = intent.getData();
@@ -212,14 +224,6 @@ public class TrimVideo extends SherlockActivity implements
mController.showPaused();
}
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- super.onCreateOptionsMenu(menu);
- MenuInflater inflater = getSupportMenuInflater();
- inflater.inflate(R.menu.trim, menu);
- return true;
- };
-
// Copy from SaveCopyTask.java in terms of how to handle the destination
// path and filename : querySource() and getSaveDirectory().
private interface ContentResolverQueryCallback {
@@ -246,9 +250,9 @@ public class TrimVideo extends SherlockActivity implements
private File getSaveDirectory() {
final File[] dir = new File[1];
querySource(new String[] {
- VideoColumns.DATA }, new ContentResolverQueryCallback() {
+ VideoColumns.DATA }, new ContentResolverQueryCallback() {
- @Override
+ @Override
public void onCursorResult(Cursor cursor) {
dir[0] = new File(cursor.getString(0)).getParentFile();
}
@@ -256,19 +260,6 @@ public class TrimVideo extends SherlockActivity implements
return dir[0];
}
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- int id = item.getItemId();
- if (id == android.R.id.home) {
- finish();
- return true;
- } else if (id == R.id.action_trim_video) {
- trimVideo();
- return true;
- }
- return false;
- }
-
private void trimVideo() {
// Use the default save directory if the source directory cannot be
// saved.
@@ -292,7 +283,7 @@ public class TrimVideo extends SherlockActivity implements
@Override
public void run() {
try {
- ShortenExample.main(null, mSrcFile, mDstFile, mTrimStartTime, mTrimEndTime);
+ TrimVideoUtils.startTrim(mSrcFile, mDstFile, mTrimStartTime, mTrimEndTime);
} catch (IOException e) {
e.printStackTrace();
}
@@ -354,7 +345,6 @@ public class TrimVideo extends SherlockActivity implements
// Copy some info from the source file.
querySource(projection, new ContentResolverQueryCallback() {
-
@Override
public void onCursorResult(Cursor cursor) {
values.put(Video.Media.DATE_TAKEN, cursor.getLong(0));
@@ -405,7 +395,6 @@ public class TrimVideo extends SherlockActivity implements
public void onShown() {
}
-
@Override
public void onHidden() {
}
diff --git a/src/com/android/gallery3d/app/ShortenExample.java b/src/com/android/gallery3d/app/TrimVideoUtils.java
index 0ac78d935..ae9b1e9ce 100644
--- a/src/com/android/gallery3d/app/ShortenExample.java
+++ b/src/com/android/gallery3d/app/TrimVideoUtils.java
@@ -39,9 +39,9 @@ import java.util.List;
/**
* Shortens/Crops a track
*/
-public class ShortenExample {
+public class TrimVideoUtils {
- public static void main(String[] args, File src, File dst, int startMs, int endMs) throws IOException {
+ public static void startTrim(File src, File dst, int startMs, int endMs) throws IOException {
RandomAccessFile randomAccessFile = new RandomAccessFile(src, "r");
Movie movie = MovieCreator.build(randomAccessFile.getChannel());