diff --git a/TODO.network b/TODO.network index da79c6ab1..3d1bed954 100644 --- a/TODO.network +++ b/TODO.network @@ -1,7 +1,6 @@ DONE нарисовать иконку (скопирована иконка ic_menu_networksearch.png) DONE переместить в главном меню наверх (вместо Settings) - -* пункт меню "delete sample" +DONE пункт меню "delete sample" * BookDownloaderService - i18n * указывать HTTP-agent = "FBReader/(java)" -- номер версии смотреть, как в диалоге About * прятать Profile (прятать запрещенные каталоги) diff --git a/data/resources/application/en.xml b/data/resources/application/en.xml index 893b54ef6..a52572c17 100644 --- a/data/resources/application/en.xml +++ b/data/resources/application/en.xml @@ -25,6 +25,7 @@ + diff --git a/src/org/geometerplus/android/fbreader/network/NetworkLibraryActivity.java b/src/org/geometerplus/android/fbreader/network/NetworkLibraryActivity.java index dc3a4c6d8..60522c877 100644 --- a/src/org/geometerplus/android/fbreader/network/NetworkLibraryActivity.java +++ b/src/org/geometerplus/android/fbreader/network/NetworkLibraryActivity.java @@ -160,6 +160,7 @@ public class NetworkLibraryActivity extends ListActivity implements MenuItem.OnM BookReference reference = book.reference(BookReference.Type.DOWNLOAD_DEMO); if (reference.localCopyFileName() != null) { menu.add(0, READ_DEMO_ITEM_ID, 0, resource.getResource("readDemo").getValue()); + menu.add(0, DELETE_DEMO_ITEM_ID, 0, resource.getResource("deleteDemo").getValue()); } else { menu.add(0, DOWNLOAD_DEMO_ITEM_ID, 0, resource.getResource("downloadDemo").getValue()); } @@ -311,6 +312,7 @@ public class NetworkLibraryActivity extends ListActivity implements MenuItem.OnM private static final int OPEN_IN_BROWSER_ITEM_ID = 8; private static final int RELOAD_ITEM_ID = 9; private static final int DONT_SHOW_ITEM_ID = 10; + private static final int DELETE_DEMO_ITEM_ID = 11; //private static final int DBG_PRINT_ENTRY_ITEM_ID = 32000; @@ -346,7 +348,10 @@ public class NetworkLibraryActivity extends ListActivity implements MenuItem.OnM doReadBook(tree, true); return true; case DELETE_BOOK_ITEM_ID: - tryToDeleteBook(tree); + tryToDeleteBook(tree, false); + return true; + case DELETE_DEMO_ITEM_ID: + tryToDeleteBook(tree, true); return true; case BUY_DIRECTLY_ITEM_ID: doBuyDirectly(tree); @@ -464,7 +469,7 @@ public class NetworkLibraryActivity extends ListActivity implements MenuItem.OnM } } - private void tryToDeleteBook(NetworkTree tree) { + private void tryToDeleteBook(NetworkTree tree, final boolean demo) { final NetworkBookTree bookTree = (NetworkBookTree) tree; final NetworkBookItem book = bookTree.Book; final ZLResource dialogResource = ZLResource.resource("dialog"); @@ -477,7 +482,17 @@ public class NetworkLibraryActivity extends ListActivity implements MenuItem.OnM .setPositiveButton(buttonResource.getResource("yes").getValue(), new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { // TODO: remove information about book from Library??? - book.removeLocalFiles(); + if (!demo) { + book.removeLocalFiles(); + } else { + final BookReference reference = book.reference(BookReference.Type.DOWNLOAD_DEMO); + if (reference != null) { + final String fileName = reference.localCopyFileName(); + if (fileName != null) { + new File(fileName).delete(); + } + } + } } }) .setNegativeButton(buttonResource.getResource("no").getValue(), null)