Skip to content

Commit 61b7cbd

Browse files
Merge pull request #723 from nextcloud/more-search-fixes
Various search fixes
2 parents 20bb144 + d3ec3b3 commit 61b7cbd

File tree

4 files changed

+34
-18
lines changed

4 files changed

+34
-18
lines changed

AndroidManifest.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@
2020
-->
2121
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
2222
package="com.owncloud.android"
23-
android:versionCode="10040203"
24-
android:versionName="1.4.2 RC3">
23+
android:versionCode="10040204"
24+
android:versionName="1.4.2 RC4">
2525

2626
<uses-sdk
2727
android:minSdkVersion="14"

src/com/owncloud/android/ui/activity/FolderPickerActivity.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ protected void onResume() {
235235
Log_OC.e(TAG, "onResume() start");
236236

237237
// refresh list of files
238-
refreshListOfFilesFragment();
238+
refreshListOfFilesFragment(false);
239239

240240
// Listen for sync messages
241241
IntentFilter syncIntentFilter = new IntentFilter(FileSyncAdapter.EVENT_FULL_SYNC_START);
@@ -309,10 +309,10 @@ protected OCFile getCurrentFolder() {
309309
return null;
310310
}
311311

312-
protected void refreshListOfFilesFragment() {
312+
public void refreshListOfFilesFragment(boolean fromSearch) {
313313
OCFileListFragment fileListFragment = getListOfFilesFragment();
314314
if (fileListFragment != null) {
315-
fileListFragment.listDirectory(false, false);
315+
fileListFragment.listDirectory(false, fromSearch);
316316
}
317317
}
318318

@@ -405,7 +405,7 @@ private void onCreateFolderOperationFinish(
405405
) {
406406

407407
if (result.isSuccess()) {
408-
refreshListOfFilesFragment();
408+
refreshListOfFilesFragment(false);
409409
} else {
410410
try {
411411
Toast msg = Toast.makeText(FolderPickerActivity.this,

src/com/owncloud/android/ui/fragment/ExtendedListFragment.java

Lines changed: 24 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,9 @@
5555
import com.owncloud.android.lib.common.utils.Log_OC;
5656
import com.owncloud.android.ui.ExtendedListView;
5757
import com.owncloud.android.ui.activity.FileDisplayActivity;
58+
import com.owncloud.android.ui.activity.FolderPickerActivity;
5859
import com.owncloud.android.ui.activity.OnEnforceableRefreshListener;
60+
import com.owncloud.android.ui.activity.UploadFilesActivity;
5961
import com.owncloud.android.ui.adapter.FileListListAdapter;
6062
import com.owncloud.android.ui.adapter.LocalFileListAdapter;
6163

@@ -171,12 +173,19 @@ public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
171173
final Handler handler = new Handler();
172174

173175
DisplayMetrics displaymetrics = new DisplayMetrics();
174-
getActivity().getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
175-
int width = displaymetrics.widthPixels;
176-
if (getResources().getConfiguration().orientation == ORIENTATION_LANDSCAPE) {
177-
searchView.setMaxWidth((int)(width * 0.4));
178-
} else {
179-
searchView.setMaxWidth((int)(width * 0.7));
176+
Activity activity;
177+
if ((activity = getActivity()) != null) {
178+
activity.getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
179+
int width = displaymetrics.widthPixels;
180+
if (getResources().getConfiguration().orientation == ORIENTATION_LANDSCAPE) {
181+
searchView.setMaxWidth((int) (width * 0.4));
182+
} else {
183+
if (activity instanceof FolderPickerActivity) {
184+
searchView.setMaxWidth((int) (width * 0.8));
185+
} else {
186+
searchView.setMaxWidth((int) (width * 0.7));
187+
}
188+
}
180189
}
181190

182191
searchView.setOnQueryTextFocusChangeListener(new View.OnFocusChangeListener() {
@@ -189,7 +198,9 @@ public void onFocusChange(View v, final boolean hasFocus) {
189198
handler.postDelayed(new Runnable() {
190199
@Override
191200
public void run() {
192-
setFabEnabled(!hasFocus);
201+
if (getActivity() != null && !(getActivity() instanceof FolderPickerActivity)) {
202+
setFabEnabled(!hasFocus);
203+
}
193204
}
194205
}, 100);
195206
}
@@ -273,9 +284,11 @@ public void run() {
273284
if ((activity = getActivity()) != null) {
274285
if (activity instanceof FileDisplayActivity) {
275286
((FileDisplayActivity) activity).refreshListOfFilesFragment(true);
276-
} else {
287+
} else if (activity instanceof UploadFilesActivity){
277288
LocalFileListAdapter localFileListAdapter = (LocalFileListAdapter) mAdapter;
278289
localFileListAdapter.filter(query);
290+
} else if (activity instanceof FolderPickerActivity) {
291+
((FolderPickerActivity)activity).refreshListOfFilesFragment(true);
279292
}
280293

281294
}
@@ -469,8 +482,9 @@ public void onRefresh() {
469482
if (searchView != null) {
470483
searchView.onActionViewCollapsed();
471484

472-
if (getActivity() != null) {
473-
FileDisplayActivity fileDisplayActivity = (FileDisplayActivity) getActivity();
485+
Activity activity;
486+
if ((activity = getActivity()) != null && activity instanceof FileDisplayActivity) {
487+
FileDisplayActivity fileDisplayActivity = (FileDisplayActivity) activity;
474488
fileDisplayActivity.setDrawerIndicatorEnabled(fileDisplayActivity.isDrawerIndicatorAvailable());
475489
}
476490
}

src/com/owncloud/android/ui/fragment/OCFileListFragment.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
*/
2323
package com.owncloud.android.ui.fragment;
2424

25+
import android.app.Activity;
2526
import android.content.Context;
2627
import android.content.Intent;
2728
import android.content.SharedPreferences;
@@ -795,8 +796,9 @@ public void listDirectory(OCFile directory, boolean onlyOnDevice, boolean fromSe
795796
public void run() {
796797
searchView.setQuery("", false);
797798
searchView.onActionViewCollapsed();
798-
if (getActivity() != null) {
799-
FileDisplayActivity fileDisplayActivity = (FileDisplayActivity) getActivity();
799+
Activity activity;
800+
if ((activity = getActivity()) != null && activity instanceof FileDisplayActivity) {
801+
FileDisplayActivity fileDisplayActivity = (FileDisplayActivity) activity;
800802
if (getCurrentFile() != null) {
801803
fileDisplayActivity.setDrawerIndicatorEnabled(fileDisplayActivity.isRoot(getCurrentFile()));
802804
}

0 commit comments

Comments
 (0)