From: masensio Date: Wed, 2 Sep 2015 11:21:17 +0000 (+0200) Subject: Merge remote-tracking branch 'origin/master' into text_file_preview_pr_707_with_develop X-Git-Tag: oc-android-1.8~17^2~5 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/a0707428ff3f82f28261afc1cdc3061b534f47e2?ds=inline;hp=--cc Merge remote-tracking branch 'origin/master' into text_file_preview_pr_707_with_develop Conflicts: res/layout/file_preview.xml src/com/owncloud/android/ui/activity/FileDisplayActivity.java --- a0707428ff3f82f28261afc1cdc3061b534f47e2 diff --cc res/layout/file_preview.xml index 3b20d646,2068224d..f7a697a0 --- a/res/layout/file_preview.xml +++ b/res/layout/file_preview.xml @@@ -24,37 -25,41 +25,41 @@@ android:layout_height="match_parent" android:background="@color/background_color" android:gravity="center" - tools:context=".ui.fragment.FilePreviewFragment" > + tools:context=".ui.fragment.FilePreviewFragment"> - - - - - - - - - + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_alignParentTop="true" + android:layout_above="@+id/media_controller" + > + + + + + + + + diff --cc src/com/owncloud/android/datamodel/OCFile.java index f9882fa4,2aa5dbc0..4baf1ea5 --- a/src/com/owncloud/android/datamodel/OCFile.java +++ b/src/com/owncloud/android/datamodel/OCFile.java @@@ -545,28 -540,16 +545,35 @@@ public class OCFile implements Parcelab */ public boolean isImage() { return ((mMimeType != null && mMimeType.startsWith("image/")) || - FileStorageUtils.getMimeTypeFromName(mRemotePath).startsWith("image/")); + getMimeTypeFromName().startsWith("image/")); + } + + /** + * @return 'True' if the file is simple text (e.g. not application-dependent, like .doc or .docx) + */ + public boolean isText() { + return ((mMimeType != null && mMimeType.startsWith("text/")) || + getMimeTypeFromName().startsWith("text/")); + } + + public String getMimeTypeFromName() { + String extension = ""; + int pos = mRemotePath.lastIndexOf('.'); + if (pos >= 0) { + extension = mRemotePath.substring(pos + 1); + } + String result = MimeTypeMap.getSingleton(). + getMimeTypeFromExtension(extension.toLowerCase()); + return (result != null) ? result : ""; } + /** + * @return 'True' if the file is hidden + */ + public boolean isHidden() { + return getFileName().startsWith("."); + } + public String getPermissions() { return mPermissions; } diff --cc src/com/owncloud/android/ui/activity/FileDisplayActivity.java index d6251420,9c1d0661..ede00340 --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@@ -104,10 -106,7 +107,6 @@@ import com.owncloud.android.utils.UriUt import java.io.File; - import java.io.IOException; - - -- /** * Displays, what files the user has available in his ownCloud. */ @@@ -200,10 -204,13 +205,13 @@@ public class FileDisplayActivity extend // according to the official // documentation - setSupportProgressBarIndeterminateVisibility(mSyncInProgress - /*|| mRefreshSharesInProgress*/); + // enable ActionBar app icon to behave as action to toggle nav drawer + //getSupportActionBar().setDisplayHomeAsUpEnabled(true); + getSupportActionBar().setHomeButtonEnabled(true); + + mProgressBar.setIndeterminate(mSyncInProgress); // always AFTER setContentView(...) ; to work around bug in its implementation - + setBackgroundText(); Log_OC.v(TAG, "onCreate() end"); @@@ -938,13 -953,15 +957,15 @@@ } removeStickyBroadcast(intent); Log_OC.d(TAG, "Setting progress visibility to " + mSyncInProgress); - setSupportProgressBarIndeterminateVisibility(mSyncInProgress - /*|| mRefreshSharesInProgress*/); + mProgressBar.setIndeterminate(mSyncInProgress); + //mProgressBar.setVisibility((mSyncInProgress) ? View.VISIBLE : View.INVISIBLE); + //setSupportProgressBarIndeterminateVisibility(mSyncInProgress + /*|| mRefreshSharesInProgress*/ //); setBackgroundText(); - + } - + if (synchResult != null) { if (synchResult.getCode().equals( RemoteOperationResult.ResultCode.SSL_RECOVERABLE_PEER_UNVERIFIED)) { @@@ -1029,18 -1046,14 +1050,19 @@@ } else { cleanSecondFragment(); } - - // Force the preview if the file is an image - if (uploadWasFine && PreviewImageFragment.canBePreviewed(getFile())) { - startImagePreview(getFile()); - } // TODO what about other kind of previews? + + // Force the preview if the file is an image or text file + if (uploadWasFine) { + OCFile ocFile = getFile(); + if (PreviewImageFragment.canBePreviewed(ocFile)) + startImagePreview(getFile()); + else if (PreviewTextFragment.canBePreviewed(ocFile)) + startTextPreview(ocFile); + // TODO what about other kind of previews? + } } + mProgressBar.setIndeterminate(false); } finally { if (intent != null) { removeStickyBroadcast(intent); @@@ -1558,8 -1562,7 +1579,8 @@@ getApplicationContext() ); synchFolderOp.execute(getAccount(), MainApp.getAppContext(), this, null, null); + - setSupportProgressBarIndeterminateVisibility(true); + mProgressBar.setIndeterminate(true); setBackgroundText(); } diff --cc src/com/owncloud/android/ui/fragment/OCFileListFragment.java index 8f89cd88,5ec5c52c..e0004b17 --- a/src/com/owncloud/android/ui/fragment/OCFileListFragment.java +++ b/src/com/owncloud/android/ui/fragment/OCFileListFragment.java @@@ -52,8 -55,8 +55,9 @@@ import com.owncloud.android.ui.dialog.R import com.owncloud.android.ui.dialog.RenameFileDialogFragment; import com.owncloud.android.ui.preview.PreviewImageFragment; import com.owncloud.android.ui.preview.PreviewMediaFragment; + import com.owncloud.android.utils.DialogMenuItem; import com.owncloud.android.utils.FileStorageUtils; +import com.owncloud.android.ui.preview.PreviewTextFragment; /** * A Fragment that lists all files and folders in a given path.