From bd65b8c426121d2e3d61cdec4b663b600f3e5cec Mon Sep 17 00:00:00 2001 From: Nikolay Pultsin Date: Thu, 2 Jan 2014 01:50:05 +0000 Subject: [PATCH] fixed library directories list + processing config change events --- .../android/fbreader/config/SQLiteConfig.java | 1 + .../fbreader/library/FileFirstLevelTree.java | 40 +++++++++---------- 2 files changed, 21 insertions(+), 20 deletions(-) diff --git a/src/org/geometerplus/android/fbreader/config/SQLiteConfig.java b/src/org/geometerplus/android/fbreader/config/SQLiteConfig.java index a29506060..d0d63b1e4 100644 --- a/src/org/geometerplus/android/fbreader/config/SQLiteConfig.java +++ b/src/org/geometerplus/android/fbreader/config/SQLiteConfig.java @@ -130,6 +130,7 @@ final class SQLiteConfig extends ConfigInterface.Stub { mySetValueStatement.execute(); } catch (SQLException e) { } + sendChangeEvent(group, name, value); } @Override diff --git a/src/org/geometerplus/fbreader/library/FileFirstLevelTree.java b/src/org/geometerplus/fbreader/library/FileFirstLevelTree.java index 8d6ac62fe..7c4558d35 100644 --- a/src/org/geometerplus/fbreader/library/FileFirstLevelTree.java +++ b/src/org/geometerplus/fbreader/library/FileFirstLevelTree.java @@ -20,7 +20,6 @@ package org.geometerplus.fbreader.library; import org.geometerplus.zlibrary.core.filesystem.ZLFile; -import org.geometerplus.zlibrary.core.options.Config; import org.geometerplus.zlibrary.core.resources.ZLResource; import org.geometerplus.fbreader.Paths; @@ -28,15 +27,26 @@ import org.geometerplus.fbreader.Paths; public class FileFirstLevelTree extends FirstLevelTree { FileFirstLevelTree(RootTree root) { super(root, ROOT_FILE_TREE); - Config.Instance().runOnStart(new Runnable() { - public void run() { - for (String dir : Paths.BookPathOption().getValue()) { - addChild(dir, "fileTreeLibrary", dir); - } - addChild("/", "fileTreeRoot", null); - addChild(Paths.cardDirectory(), "fileTreeCard", null); - } - }); + } + + @Override + public String getTreeTitle() { + return getName(); + } + + @Override + public Status getOpeningStatus() { + return Status.ALWAYS_RELOAD_BEFORE_OPENING; + } + + @Override + public void waitForOpening() { + clear(); + for (String dir : Paths.BookPathOption().getValue()) { + addChild(dir, "fileTreeLibrary", dir); + } + addChild("/", "fileTreeRoot", null); + addChild(Paths.cardDirectory(), "fileTreeCard", null); } private void addChild(String path, String resourceKey, String summary) { @@ -51,14 +61,4 @@ public class FileFirstLevelTree extends FirstLevelTree { ); } } - - @Override - public String getTreeTitle() { - return getName(); - } - - @Override - public Status getOpeningStatus() { - return Status.READY_TO_OPEN; - } }