mirror of
https://github.com/geometer/FBReaderJ.git
synced 2025-10-06 03:50:19 +02:00
resources rearrangement; ZLFile.isReadable() method has been added
This commit is contained in:
parent
573b178aeb
commit
e659e69ee0
17 changed files with 52 additions and 47 deletions
|
@ -8,5 +8,6 @@ VR:
|
|||
NP:
|
||||
DONE Локализовать все сообщения
|
||||
* Отдельная иконка для архивов
|
||||
* Отдельная иконка для каталогов, к которым нет доступа (?) -- с замочком на папке
|
||||
DONE Архивы в архивах
|
||||
* filesystem: return special result (exception?) if directory is not readable
|
||||
DONE filesystem: return special result (exception?) if directory is not readable
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
<node name="deleteBook" value="Odstranit knihu"/>
|
||||
<node name="addToFavorites" value="Add to favorites" toBeTranslated="true"/>
|
||||
<node name="removeFromFavorites" value="Remove from favorites" toBeTranslated="true"/>
|
||||
<node name="permissionDenied" value="Permission denied" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="networkView">
|
||||
<node name="openCatalog" value="Otevřít katalog"/>
|
||||
|
@ -538,6 +537,7 @@
|
|||
<node name="bookNotFound" value="V knihovně nejsou bohužel žádné vhodné knihy"/>
|
||||
<node name="bookmarkNotFound" value="Nejsou bohužel žádné vhodné záložky"/>
|
||||
<node name="cannotOpenBook" value="Tuto knihu právě teď nelze bohužel otevřít"/>
|
||||
<node name="permissionDenied" value="Permission denied, sorry" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="external">
|
||||
<node name="browser" value="Prohlížeč"/>
|
||||
|
|
|
@ -42,7 +42,6 @@
|
|||
<node name="deleteBook" value="Buch löschen"/>
|
||||
<node name="addToFavorites" value="Add to favorites" toBeTranslated="true"/>
|
||||
<node name="removeFromFavorites" value="Remove from favorites" toBeTranslated="true"/>
|
||||
<node name="permissionDenied" value="Permission denied" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="networkView">
|
||||
<node name="openCatalog" value="Katalog öffnen"/>
|
||||
|
@ -539,6 +538,7 @@
|
|||
<node name="bookNotFound" value="Es wurden keine passenden Bücher in der Bibliothek gefunden."/>
|
||||
<node name="bookmarkNotFound" value="Es wurden kein passenden Lesezeichen gefunden."/>
|
||||
<node name="cannotOpenBook" value="Das Buch kann zurzeit nicht geöffnet werden."/>
|
||||
<node name="permissionDenied" value="Permission denied, sorry" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="external">
|
||||
<node name="browser" value="Browser"/>
|
||||
|
|
|
@ -40,7 +40,6 @@
|
|||
<node name="deleteBook" value="Delete book"/>
|
||||
<node name="addToFavorites" value="Add to favorites"/>
|
||||
<node name="removeFromFavorites" value="Remove from favorites"/>
|
||||
<node name="permissionDenied" value="Permission denied"/>
|
||||
</node>
|
||||
<node name="networkView">
|
||||
<node name="openCatalog" value="Open catalog"/>
|
||||
|
@ -540,6 +539,7 @@
|
|||
<node name="bookmarkNotFound" value="There are no suitable bookmarks, sorry"/>
|
||||
<node name="cannotOpenBook" value="Cannot open this book at the moment, sorry"/>
|
||||
<node name="dictNotInstalled" value="Supported dictionary is not installed, sorry"/>
|
||||
<node name="permissionDenied" value="Permission denied, sorry"/>
|
||||
</node>
|
||||
<node name="external">
|
||||
<node name="browser" value="Browser"/>
|
||||
|
|
|
@ -44,7 +44,6 @@
|
|||
<node name="deleteBook" value="Supprimer ce livre"/>
|
||||
<node name="addToFavorites" value="Add to favorites" toBeTranslated="true"/>
|
||||
<node name="removeFromFavorites" value="Remove from favorites" toBeTranslated="true"/>
|
||||
<node name="permissionDenied" value="Permission denied" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="networkView">
|
||||
<node name="openCatalog" value="Ouvrir le catalogue"/>
|
||||
|
@ -541,6 +540,7 @@
|
|||
<node name="bookNotFound" value="Aucun livre correspondant dans la bibliothèque"/>
|
||||
<node name="bookmarkNotFound" value="Aucun marque-page correspondant"/>
|
||||
<node name="cannotOpenBook" value="Impossible d'ouvrir le livre"/>
|
||||
<node name="permissionDenied" value="Permission denied, sorry" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="external">
|
||||
<node name="browser" value="Navigateur"/>
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
<node name="deleteBook" value="Könyv törlése"/>
|
||||
<node name="addToFavorites" value="Add to favorites" toBeTranslated="true"/>
|
||||
<node name="removeFromFavorites" value="Remove from favorites" toBeTranslated="true"/>
|
||||
<node name="permissionDenied" value="Permission denied" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="networkView">
|
||||
<node name="openCatalog" value="Katalógus megnyitása"/>
|
||||
|
@ -538,6 +537,7 @@
|
|||
<node name="bookNotFound" value="A keresett könyv sajnos nem található meg a könyvtárban"/>
|
||||
<node name="bookmarkNotFound" value="Sajnos nem találhatóak könyvjelzők"/>
|
||||
<node name="cannotOpenBook" value="A könyv sajnos jelenleg nem nyitható meg"/>
|
||||
<node name="permissionDenied" value="Permission denied, sorry" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="external">
|
||||
<node name="browser" value="Böngésző"/>
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
<node name="deleteBook" value="Cancella libro"/>
|
||||
<node name="addToFavorites" value="Add to favorites" toBeTranslated="true"/>
|
||||
<node name="removeFromFavorites" value="Remove from favorites" toBeTranslated="true"/>
|
||||
<node name="permissionDenied" value="Permission denied" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="networkView">
|
||||
<node name="openCatalog" value="Apri catalogo"/>
|
||||
|
@ -538,6 +537,7 @@
|
|||
<node name="bookNotFound" value="Spiacente, non ci sono libri adatti nella libreria"/>
|
||||
<node name="bookmarkNotFound" value="Spiacente, non ci sono segnalibri adatti"/>
|
||||
<node name="cannotOpenBook" value="Spiacente, non è possibile aprire il libro in questo momento"/>
|
||||
<node name="permissionDenied" value="Permission denied, sorry" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="external">
|
||||
<node name="browser" value="Browser"/>
|
||||
|
|
|
@ -40,7 +40,6 @@
|
|||
<node name="deleteBook" value="Удалить книгу"/>
|
||||
<node name="addToFavorites" value="Добавить в избранное"/>
|
||||
<node name="removeFromFavorites" value="Убрать из избранного"/>
|
||||
<node name="permissionDenied" value="Нет доступа к файлам" />
|
||||
</node>
|
||||
<node name="networkView">
|
||||
<node name="openCatalog" value="Открыть каталог"/>
|
||||
|
@ -540,6 +539,7 @@
|
|||
<node name="bookmarkNotFound" value="Нет подходящих закладок"/>
|
||||
<node name="cannotOpenBook" value="Не удается открыть книгу"/>
|
||||
<node name="dictNotInstalled" value="Не установлен поддерживаемый словарь"/>
|
||||
<node name="permissionDenied" value="Нет доступа к файлам" />
|
||||
</node>
|
||||
<node name="external">
|
||||
<node name="browser" value="браузере"/>
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
<node name="deleteBook" value="Видалити книжку"/>
|
||||
<node name="addToFavorites" value="Add to favorites" toBeTranslated="true"/>
|
||||
<node name="removeFromFavorites" value="Remove from favorites" toBeTranslated="true"/>
|
||||
<node name="permissionDenied" value="Permission denied" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="networkView">
|
||||
<node name="openCatalog" value="Відкрити теку"/>
|
||||
|
@ -538,6 +537,7 @@
|
|||
<node name="bookNotFound" value="Немає відповідних книг"/>
|
||||
<node name="bookmarkNotFound" value="Нема відповідних закладок"/>
|
||||
<node name="cannotOpenBook" value="Невдається відкрити книгу"/>
|
||||
<node name="permissionDenied" value="Permission denied, sorry" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="external">
|
||||
<node name="browser" value="браузері"/>
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
<node name="deleteBook" value="Xóa sách"/>
|
||||
<node name="addToFavorites" value="Add to favorites" toBeTranslated="true"/>
|
||||
<node name="removeFromFavorites" value="Remove from favorites" toBeTranslated="true"/>
|
||||
<node name="permissionDenied" value="Permission denied" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="networkView">
|
||||
<node name="openCatalog" value="Mở danh mục"/>
|
||||
|
@ -538,6 +537,7 @@
|
|||
<node name="bookNotFound" value="Xin lỗi, không có quyển nào thích hợp trong thư viện"/>
|
||||
<node name="bookmarkNotFound" value="Xin lỗi, không có đánh dấu thích hợp"/>
|
||||
<node name="cannotOpenBook" value="Xin lỗi, không thể mở sách vào lúc này"/>
|
||||
<node name="permissionDenied" value="Permission denied, sorry" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="external">
|
||||
<node name="browser" value="Trình duyệt"/>
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
<node name="deleteBook" value="删除图书" />
|
||||
<node name="addToFavorites" value="Add to favorites" toBeTranslated="true"/>
|
||||
<node name="removeFromFavorites" value="Remove from favorites" toBeTranslated="true"/>
|
||||
<node name="permissionDenied" value="Permission denied" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="networkView">
|
||||
<node name="openCatalog" value="打开书库目录" />
|
||||
|
@ -538,6 +537,7 @@
|
|||
<node name="bookNotFound" value="对不起,书库中找不到需要的书籍" />
|
||||
<node name="bookmarkNotFound" value="对不起,找不到对应的书签" />
|
||||
<node name="cannotOpenBook" value="对不起,无法开启本书" />
|
||||
<node name="permissionDenied" value="Permission denied, sorry" toBeTranslated="true"/>
|
||||
</node>
|
||||
<node name="external">
|
||||
<node name="browser" value="浏览器" />
|
||||
|
|
|
@ -22,7 +22,6 @@ package org.geometerplus.android.fbreader;
|
|||
import android.os.*;
|
||||
import android.app.*;
|
||||
import android.content.Intent;
|
||||
import android.widget.Toast;
|
||||
|
||||
import org.geometerplus.zlibrary.core.resources.ZLResource;
|
||||
|
||||
|
@ -48,13 +47,7 @@ public abstract class SearchActivity extends Activity {
|
|||
};
|
||||
final Handler failureHandler = new Handler() {
|
||||
public void handleMessage(Message message) {
|
||||
Toast.makeText(
|
||||
getParentActivity(),
|
||||
ZLResource.resource("errorMessage").getResource(
|
||||
getFailureMessageResourceKey()
|
||||
).getValue(),
|
||||
Toast.LENGTH_SHORT
|
||||
).show();
|
||||
UIUtil.showErrorMessage(getParentActivity(), getFailureMessageResourceKey());
|
||||
}
|
||||
};
|
||||
final Runnable runnable = new Runnable() {
|
||||
|
|
|
@ -298,34 +298,31 @@ public final class FileManager extends BaseActivity {
|
|||
}
|
||||
|
||||
public void run() {
|
||||
try {
|
||||
for (ZLFile file : myFile.children()) {
|
||||
if (Thread.currentThread().isInterrupted()) {
|
||||
break;
|
||||
}
|
||||
if (file.isDirectory() ||
|
||||
file.isArchive() ||
|
||||
PluginCollection.Instance().getPlugin(file) != null) {
|
||||
final FileListAdapter adapter = (FileListAdapter)getListAdapter();
|
||||
adapter.add(new FileItem(file));
|
||||
// adapter.notifyDataSetChanged(); // TODO question!
|
||||
runOnUiThread(new Runnable() {
|
||||
public void run() {
|
||||
adapter.notifyDataSetChanged();
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
if (!myFile.isReadable()) {
|
||||
runOnUiThread(new Runnable() {
|
||||
public void run() {
|
||||
Toast.makeText(FileManager.this,
|
||||
myResource.getResource("permissionDenied").getValue(),
|
||||
Toast.LENGTH_SHORT
|
||||
).show();
|
||||
UIUtil.showErrorMessage(FileManager.this, "permissionDenied");
|
||||
}
|
||||
});
|
||||
finish();
|
||||
return;
|
||||
}
|
||||
|
||||
for (ZLFile file : myFile.children()) {
|
||||
if (Thread.currentThread().isInterrupted()) {
|
||||
break;
|
||||
}
|
||||
if (file.isDirectory() || file.isArchive() ||
|
||||
PluginCollection.Instance().getPlugin(file) != null) {
|
||||
final FileListAdapter adapter = (FileListAdapter)getListAdapter();
|
||||
adapter.add(new FileItem(file));
|
||||
// adapter.notifyDataSetChanged(); // TODO question!
|
||||
runOnUiThread(new Runnable() {
|
||||
public void run() {
|
||||
adapter.notifyDataSetChanged();
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -82,11 +82,7 @@ abstract class LibraryBaseActivity extends BaseActivity {
|
|||
}
|
||||
|
||||
protected void showNotFoundToast() {
|
||||
Toast.makeText(
|
||||
this,
|
||||
ZLResource.resource("errorMessage").getResource("bookNotFound").getValue(),
|
||||
Toast.LENGTH_SHORT
|
||||
).show();
|
||||
UIUtil.showErrorMessage(this, "bookNotFound");
|
||||
}
|
||||
|
||||
protected final class LibraryAdapter extends BaseAdapter implements View.OnCreateContextMenuListener {
|
||||
|
|
|
@ -26,6 +26,7 @@ import android.content.Context;
|
|||
import android.app.ProgressDialog;
|
||||
import android.os.Handler;
|
||||
import android.os.Message;
|
||||
import android.widget.Toast;
|
||||
|
||||
import org.geometerplus.zlibrary.core.resources.ZLResource;
|
||||
|
||||
|
@ -108,4 +109,12 @@ public abstract class UIUtil {
|
|||
runner.setPriority(Thread.MIN_PRIORITY);
|
||||
runner.start();
|
||||
}
|
||||
|
||||
public static void showErrorMessage(Context context, String resourceKey) {
|
||||
Toast.makeText(
|
||||
context,
|
||||
ZLResource.resource("errorMessage").getResource(resourceKey).getValue(),
|
||||
Toast.LENGTH_SHORT
|
||||
).show();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -132,6 +132,10 @@ public abstract class ZLFile {
|
|||
public abstract ZLPhysicalFile getPhysicalFile();
|
||||
public abstract InputStream getInputStream() throws IOException;
|
||||
|
||||
public boolean isReadable() {
|
||||
return true;
|
||||
}
|
||||
|
||||
public final boolean isCompressed() {
|
||||
return (0 != (myArchiveType & ArchiveType.COMPRESSED));
|
||||
}
|
||||
|
|
|
@ -49,6 +49,11 @@ public final class ZLPhysicalFile extends ZLFile {
|
|||
return myFile.isDirectory();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isReadable() {
|
||||
return myFile.canRead();
|
||||
}
|
||||
|
||||
public boolean delete() {
|
||||
return myFile.delete();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue