From: masensio Date: Fri, 13 Mar 2015 11:31:11 +0000 (+0100) Subject: Fix crash when navigate to upload a file X-Git-Tag: oc-android-1.7.1_signed^2~19^2~1 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/d55c21ccfbfccf545ceee5eb038171dc86054e40?ds=inline Fix crash when navigate to upload a file --- diff --git a/src/com/owncloud/android/ui/adapter/LocalFileListAdapter.java b/src/com/owncloud/android/ui/adapter/LocalFileListAdapter.java index 823abc5c..287c5b9e 100644 --- a/src/com/owncloud/android/ui/adapter/LocalFileListAdapter.java +++ b/src/com/owncloud/android/ui/adapter/LocalFileListAdapter.java @@ -40,8 +40,6 @@ import com.owncloud.android.datamodel.ThumbnailsCacheManager; import com.owncloud.android.utils.BitmapUtils; import com.owncloud.android.utils.DisplayUtils; -import third_parties.in.srain.cube.GridViewWithHeaderAndFooter; - /** * This Adapter populates a ListView with all files and directories contained * in a local directory diff --git a/src/com/owncloud/android/ui/fragment/ExtendedListFragment.java b/src/com/owncloud/android/ui/fragment/ExtendedListFragment.java index c266ce08..f2cd969a 100644 --- a/src/com/owncloud/android/ui/fragment/ExtendedListFragment.java +++ b/src/com/owncloud/android/ui/fragment/ExtendedListFragment.java @@ -22,8 +22,6 @@ package com.owncloud.android.ui.fragment; import java.util.ArrayList; -import android.annotation.TargetApi; -import android.content.Context; import android.os.Build; import android.os.Bundle; import android.support.v4.widget.SwipeRefreshLayout; @@ -223,7 +221,8 @@ implements OnItemClickListener, OnEnforceableRefreshListener { */ protected int getReferencePosition() { if (mCurrentListView != null) { - return (mCurrentListView.getFirstVisiblePosition() + mCurrentListView.getLastVisiblePosition()) / 2; + return (mCurrentListView.getFirstVisiblePosition() + + mCurrentListView.getLastVisiblePosition()) / 2; } else { return 0; } @@ -241,7 +240,8 @@ implements OnItemClickListener, OnEnforceableRefreshListener { final int firstPosition = mFirstPositions.remove(mFirstPositions.size() -1); int top = mTops.remove(mTops.size() - 1); - Log_OC.v(TAG, "Setting selection to position: " + firstPosition + "; top: " + top + "; index: " + index); + Log_OC.v(TAG, "Setting selection to position: " + firstPosition + "; top: " + + top + "; index: " + index); if (mCurrentListView == mListView) { if (mHeightCell*index <= mListView.getHeight()) { @@ -338,8 +338,8 @@ implements OnItemClickListener, OnEnforceableRefreshListener { private void onCreateSwipeToRefresh(SwipeRefreshLayout refreshLayout) { // Colors in animations: background - refreshLayout.setColorScheme(R.color.background_color, R.color.background_color, R.color.background_color, - R.color.background_color); + refreshLayout.setColorScheme(R.color.background_color, R.color.background_color, + R.color.background_color, R.color.background_color); refreshLayout.setOnRefreshListener(this); } @@ -359,6 +359,8 @@ implements OnItemClickListener, OnEnforceableRefreshListener { if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { mListView.setChoiceMode(choiceMode); mGridView.setChoiceMode(choiceMode); + } else { + ((ListView)mListView).setChoiceMode(choiceMode); } } diff --git a/src/com/owncloud/android/ui/fragment/LocalFileListFragment.java b/src/com/owncloud/android/ui/fragment/LocalFileListFragment.java index b3e40d8d..8a268b75 100644 --- a/src/com/owncloud/android/ui/fragment/LocalFileListFragment.java +++ b/src/com/owncloud/android/ui/fragment/LocalFileListFragment.java @@ -64,7 +64,8 @@ public class LocalFileListFragment extends ExtendedListFragment { try { mContainerActivity = (ContainerActivity) activity; } catch (ClassCastException e) { - throw new ClassCastException(activity.toString() + " must implement " + LocalFileListFragment.ContainerActivity.class.getSimpleName()); + throw new ClassCastException(activity.toString() + " must implement " + + LocalFileListFragment.ContainerActivity.class.getSimpleName()); } } @@ -99,7 +100,8 @@ public class LocalFileListFragment extends ExtendedListFragment { } /** - * Checks the file clicked over. Browses inside if it is a directory. Notifies the container activity in any case. + * Checks the file clicked over. Browses inside if it is a directory. + * Notifies the container activity in any case. */ @Override public void onItemClick(AdapterView l, View v, int position, long id) { @@ -117,7 +119,7 @@ public class LocalFileListFragment extends ExtendedListFragment { } else { /// Click on a file ImageView checkBoxV = (ImageView) v.findViewById(R.id.custom_checkbox); if (checkBoxV != null) { - if (getListView().isItemChecked(position)) { + if (((ListView)getListView()).isItemChecked(position)) { checkBoxV.setImageResource(android.R.drawable.checkbox_on_background); } else { checkBoxV.setImageResource(android.R.drawable.checkbox_off_background); @@ -182,7 +184,8 @@ public class LocalFileListFragment extends ExtendedListFragment { if(mDirectory != null){ directory = mDirectory; } else { - directory = Environment.getExternalStorageDirectory(); // TODO be careful with the state of the storage; could not be available + directory = Environment.getExternalStorageDirectory(); + // TODO be careful with the state of the storage; could not be available if (directory == null) return; // no files to show } } @@ -194,7 +197,8 @@ public class LocalFileListFragment extends ExtendedListFragment { directory = directory.getParentFile(); } - mCurrentListView.clearChoices(); // by now, only files in the same directory will be kept as selected + // by now, only files in the same directory will be kept as selected + ((ListView)mCurrentListView).clearChoices(); mAdapter.swapDirectory(directory); if (mDirectory == null || !mDirectory.equals(directory)) { mCurrentListView.setSelection(0); @@ -210,11 +214,12 @@ public class LocalFileListFragment extends ExtendedListFragment { */ public String[] getCheckedFilePaths() { ArrayList result = new ArrayList(); - SparseBooleanArray positions = mCurrentListView.getCheckedItemPositions(); + SparseBooleanArray positions = ((ListView)mCurrentListView).getCheckedItemPositions(); if (positions.size() > 0) { for (int i = 0; i < positions.size(); i++) { if (positions.get(positions.keyAt(i)) == true) { - result.add(((File) mCurrentListView.getItemAtPosition(positions.keyAt(i))).getAbsolutePath()); + result.add(((File) mCurrentListView.getItemAtPosition( + positions.keyAt(i))).getAbsolutePath()); } } @@ -237,7 +242,8 @@ public class LocalFileListFragment extends ExtendedListFragment { public void onDirectoryClick(File directory); /** - * Callback method invoked when a file (non directory) is clicked by the user on the files list + * Callback method invoked when a file (non directory) + * is clicked by the user on the files list * * @param file */ @@ -245,7 +251,8 @@ public class LocalFileListFragment extends ExtendedListFragment { /** - * Callback method invoked when the parent activity is fully created to get the directory to list firstly. + * Callback method invoked when the parent activity + * is fully created to get the directory to list firstly. * * @return Directory to list firstly. Can be NULL. */