import android.widget.MediaController;\r
import android.widget.TextView;\r
import android.widget.Toast;\r
+import android.widget.VideoView;\r
\r
import com.actionbarsherlock.app.SherlockFragment;\r
import com.owncloud.android.AccountUtils;\r
import com.owncloud.android.ui.activity.FileDetailActivity;\r
import com.owncloud.android.ui.activity.FileDisplayActivity;\r
import com.owncloud.android.ui.activity.TransferServiceGetter;\r
+import com.owncloud.android.ui.activity.VideoActivity;\r
import com.owncloud.android.ui.dialog.EditNameDialog;\r
import com.owncloud.android.ui.dialog.EditNameDialog.EditNameDialogListener;\r
import com.owncloud.android.utils.OwnCloudVersion;\r
private Handler mHandler;\r
private RemoteOperation mLastRemoteOperation;\r
private DialogFragment mCurrentDialog;\r
+ \r
private MediaServiceBinder mMediaServiceBinder = null;\r
private MediaController mMediaController = null;\r
private MediaServiceConnection mMediaServiceConnection = null;\r
\r
@Override\r
public boolean onTouch(View v, MotionEvent event) {\r
- if (v == mPreview && event.getAction() == MotionEvent.ACTION_DOWN && mFile != null && mFile.isDown() && mFile.isAudio()) {\r
- if (!mMediaServiceBinder.isPlaying(mFile)) {\r
- Log.d(TAG, "starting playback of " + mFile.getStoragePath());\r
- mMediaServiceBinder.start(mAccount, mFile);\r
- // this is a patch; need to synchronize this with the onPrepared() coming from MediaPlayer in the MediaService\r
- mMediaController.postDelayed(new Runnable() {\r
- @Override\r
- public void run() {\r
- mMediaController.show(0);\r
- }\r
- } , 300);\r
- } else {\r
- mMediaController.show(0);\r
+ if (v == mPreview && event.getAction() == MotionEvent.ACTION_DOWN && mFile != null && mFile.isDown()) {\r
+ if (mFile.isAudio()) {\r
+ if (!mMediaServiceBinder.isPlaying(mFile)) {\r
+ Log.d(TAG, "starting playback of " + mFile.getStoragePath());\r
+ mMediaServiceBinder.start(mAccount, mFile);\r
+ // this is a patch; need to synchronize this with the onPrepared() coming from MediaPlayer in the MediaService\r
+ mMediaController.postDelayed(new Runnable() {\r
+ @Override\r
+ public void run() {\r
+ mMediaController.show(0);\r
+ }\r
+ } , 300);\r
+ } else {\r
+ mMediaController.show(0);\r
+ }\r
+ \r
+ } else if (mFile.isVideo()) {\r
+ startVideoActivity();\r
}\r
}\r
return false;\r
}\r
\r
\r
+ private void startVideoActivity() {\r
+ Intent i = new Intent(getActivity(), VideoActivity.class);\r
+ i.putExtra(VideoActivity.EXTRA_PATH, mFile.getStoragePath());\r
+ startActivity(i);\r
+ \r
+ // TODO THROW AN ACTIVTIY JUST FOR PREVIEW VIDEO\r
+ /*\r
+ if (mMediaController == null) {\r
+ mMediaController = new MediaController(getActivity());\r
+ mMediaController.setAnchorView(mVideoPreview);\r
+ //mMediaController.setEnabled(true);\r
+ }\r
+ //mMediaController.setMediaPlayer(mMediaServiceBinder);\r
+ if (!mVideoPreviewIsLoaded) {\r
+ mVideoPreviewIsLoaded = true;\r
+ mMediaController.setMediaPlayer(mVideoPreview);\r
+ mVideoPreview.setMediaController(mMediaController);\r
+ mVideoPreview.setVideoPath(mFile.getStoragePath());\r
+ mVideoPreview.start();\r
+ //mMediaController.show(0);\r
+ } else {\r
+ mMediaController.show(0);\r
+ }*/\r
+ }\r
+\r
+\r
private void bindMediaService() {\r
Log.d(TAG, "Binding to MediaService...");\r
if (mMediaServiceConnection == null) {\r