1
0
Fork 0
mirror of https://github.com/geometer/FBReaderJ.git synced 2025-10-05 19:42:17 +02:00

experiments with library search

This commit is contained in:
Nikolay Pultsin 2010-12-04 21:13:24 +00:00
parent db7050a385
commit 047a45ea12
6 changed files with 85 additions and 33 deletions

View file

@ -60,15 +60,13 @@
</intent-filter>
<meta-data android:name="android.app.searchable" android:resource="@xml/searchable" />
</activity>
<!--
<activity android:name="org.geometerplus.android.fbreader.BookSearchActivity" android:process=":library">
<activity android:name="org.geometerplus.android.fbreader.library.BookSearchActivity" android:process=":library">
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data android:name="android.app.searchable" android:resource="@xml/searchable" />
</activity>
-->
<activity android:name="org.geometerplus.android.fbreader.BookmarkSearchActivity">
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
@ -76,17 +74,12 @@
</intent-filter>
<meta-data android:name="android.app.searchable" android:resource="@xml/searchable" />
</activity>
<!--
<activity android:name="org.geometerplus.android.fbreader.LibraryTabActivity" android:process=":library" android:configChanges="orientation|keyboardHidden">
<meta-data android:name="android.app.default_searchable" android:value="org.geometerplus.android.fbreader.BookSearchActivity" />
</activity>
-->
<service android:name="org.geometerplus.android.fbreader.library.InitializationService" android:process=":library" />
<activity android:name="org.geometerplus.android.fbreader.library.LibraryTopLevelActivity" android:process=":library" android:configChanges="orientation|keyboardHidden">
<meta-data android:name="android.app.default_searchable" android:value="org.geometerplus.android.fbreader.BookSearchActivity" />
<meta-data android:name="android.app.default_searchable" android:value="org.geometerplus.android.fbreader.library.BookSearchActivity" />
</activity>
<activity android:name="org.geometerplus.android.fbreader.library.LibraryTreeActivity" android:process=":library" android:configChanges="orientation|keyboardHidden">
<meta-data android:name="android.app.default_searchable" android:value="org.geometerplus.android.fbreader.BookSearchActivity" />
<meta-data android:name="android.app.default_searchable" android:value="org.geometerplus.android.fbreader.library.BookSearchActivity" />
</activity>
<activity android:name="org.geometerplus.android.fbreader.TOCActivity" android:configChanges="orientation|keyboardHidden" />
<activity android:name="org.geometerplus.android.fbreader.BookmarksActivity" android:configChanges="orientation|keyboardHidden">

View file

@ -60,15 +60,13 @@
</intent-filter>
<meta-data android:name="android.app.searchable" android:resource="@xml/searchable" />
</activity>
<!--
<activity android:name="org.geometerplus.android.fbreader.BookSearchActivity" android:process=":library">
<activity android:name="org.geometerplus.android.fbreader.library.BookSearchActivity" android:process=":library">
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data android:name="android.app.searchable" android:resource="@xml/searchable" />
</activity>
-->
<activity android:name="org.geometerplus.android.fbreader.BookmarkSearchActivity">
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
@ -76,17 +74,12 @@
</intent-filter>
<meta-data android:name="android.app.searchable" android:resource="@xml/searchable" />
</activity>
<!--
<activity android:name="org.geometerplus.android.fbreader.LibraryTabActivity" android:process=":library" android:configChanges="orientation|keyboardHidden">
<meta-data android:name="android.app.default_searchable" android:value="org.geometerplus.android.fbreader.BookSearchActivity" />
</activity>
-->
<service android:name="org.geometerplus.android.fbreader.library.InitializationService" android:process=":library" />
<activity android:name="org.geometerplus.android.fbreader.library.LibraryTopLevelActivity" android:process=":library" android:configChanges="orientation|keyboardHidden">
<meta-data android:name="android.app.default_searchable" android:value="org.geometerplus.android.fbreader.BookSearchActivity" />
<meta-data android:name="android.app.default_searchable" android:value="org.geometerplus.android.fbreader.library.BookSearchActivity" />
</activity>
<activity android:name="org.geometerplus.android.fbreader.library.LibraryTreeActivity" android:process=":library" android:configChanges="orientation|keyboardHidden">
<meta-data android:name="android.app.default_searchable" android:value="org.geometerplus.android.fbreader.BookSearchActivity" />
<meta-data android:name="android.app.default_searchable" android:value="org.geometerplus.android.fbreader.library.BookSearchActivity" />
</activity>
<activity android:name="org.geometerplus.android.fbreader.TOCActivity" android:configChanges="orientation|keyboardHidden" />
<activity android:name="org.geometerplus.android.fbreader.BookmarksActivity" android:configChanges="orientation|keyboardHidden">

View file

@ -31,26 +31,26 @@ public class BookmarkSearchActivity extends SearchActivity {
private final LinkedList<Bookmark> myBookmarks = new LinkedList<Bookmark>();
@Override
void onSuccess() {
public void onSuccess() {
BookmarksActivity.Instance.showSearchResultsTab(myBookmarks);
}
/*@Override
void onFailure() {
public void onFailure() {
}*/
@Override
String getFailureMessageResourceKey() {
public String getFailureMessageResourceKey() {
return "bookmarkNotFound";
}
@Override
String getWaitMessageResourceKey() {
public String getWaitMessageResourceKey() {
return "search";
}
@Override
boolean runSearch(String pattern) {
public boolean runSearch(String pattern) {
final FBReaderApp fbreader = (FBReaderApp)FBReaderApp.Instance();
fbreader.BookmarkSearchPatternOption.setValue(pattern);
pattern = pattern.toLowerCase();
@ -64,7 +64,7 @@ public class BookmarkSearchActivity extends SearchActivity {
}
@Override
Activity getParentActivity() {
public Activity getParentActivity() {
return BookmarksActivity.Instance;
}
}

View file

@ -28,7 +28,7 @@ import org.geometerplus.zlibrary.core.resources.ZLResource;
import org.geometerplus.android.util.UIUtil;
abstract class SearchActivity extends Activity {
public abstract class SearchActivity extends Activity {
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
@ -71,10 +71,10 @@ abstract class SearchActivity extends Activity {
finish();
}
abstract boolean runSearch(String pattern);
abstract void onSuccess();
//abstract void onFailure();
abstract String getWaitMessageResourceKey();
abstract String getFailureMessageResourceKey();
abstract Activity getParentActivity();
public abstract boolean runSearch(String pattern);
public abstract void onSuccess();
//public abstract void onFailure();
public abstract String getWaitMessageResourceKey();
public abstract String getFailureMessageResourceKey();
public abstract Activity getParentActivity();
}

View file

@ -0,0 +1,65 @@
/*
* Copyright (C) 2009-2010 Geometer Plus <contact@geometerplus.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
* 02110-1301, USA.
*/
package org.geometerplus.android.fbreader.library;
import android.app.Activity;
import org.geometerplus.fbreader.library.*;
import org.geometerplus.android.fbreader.SearchActivity;
public class BookSearchActivity extends SearchActivity {
//private LibraryTree myTree;
@Override
public void onSuccess() {
//LibraryTabActivity.Instance.showSearchResultsTab(myTree);
}
/*@Override
public void onFailure() {
}*/
@Override
public String getFailureMessageResourceKey() {
return "bookNotFound";
}
@Override
public String getWaitMessageResourceKey() {
return "search";
}
@Override
public boolean runSearch(final String pattern) {
/*
final LibraryTabActivity parentActivity = LibraryTabActivity.Instance;
parentActivity.BookSearchPatternOption.setValue(pattern);
myTree = parentActivity.library().searchBooks(pattern);
return myTree.hasChildren();
*/
return false;
}
@Override
public Activity getParentActivity() {
return null;//LibraryTabActivity.Instance;
}
}

View file

@ -108,6 +108,7 @@ public class LibraryTopLevelActivity extends LibraryBaseActivity {
@Override
public boolean onSearchRequested() {
System.err.println("onSearchRequested");
startSearch(BookSearchPatternOption.getValue(), true, null, false);
return true;
}