diff --git a/.gitignore b/.gitignore
index f4af4aded0e..7d4173f71f5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,3 +12,22 @@ READY/
.settings
*.so
*~
+
+# Android Studio
+.idea/
+*.apk
+*.txt
+
+# Gradle files
+*.bin
+*.iml
+*.iws
+*.ipr
+.gradle/
+*/build/
+
+# FBReader help books
+intro/
+
+# Windows VIM
+*.swp
diff --git a/AndroidManifest.xml.pattern b/AndroidManifest.xml.pattern
deleted file mode 100644
index 869fcc1a58c..00000000000
--- a/AndroidManifest.xml.pattern
+++ /dev/null
@@ -1,337 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ChangeLog b/ChangeLog
index d5d8e3fbb55..781c287b2b0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -7,8 +7,10 @@
* (planned) CSS selectors priority
===== 2.2.2 (Jan ??, 2015) =====
-* Added French introduction translation
+* Added French, German, Greek, Polish, and Ukrainian intro translations
* Updated Dutch localisation + Dutch intro (by Frank Fesevur)
+* Updated German localisation (by Matthias Dill)
+* added IBookCollection.getDescription(book) method
===== 2.2.1 (Jan 03, 2015) =====
* Fixed English mistakes (thanks to Sahak Petrosyan)
diff --git a/HowToBuild b/HowToBuild
deleted file mode 100644
index e612eef9a61..00000000000
--- a/HowToBuild
+++ /dev/null
@@ -1,33 +0,0 @@
-How to Build for Android
-------------------------
-
-Prerequisites:
-
-1. Android SDK >= 1.6
-
-2. Android NDK >= r4b
-
-3. Apache Ant >= 1.7.0
-
-4. (Windows-only) Cygwin >= 1.7
-
-To build:
-
-1. Create 'local.properties' file containing sdk.dir && ndk.dir definitions:
- sdk.dir=
- ndk.dir=
-E.g., on my computer 'local.properties' consists of 2 lines:
- sdk.dir=/Users/geometer/android-sdk-mac_86
- ndk.dir=/Users/geometer/android-ndk-r4b
-
-2. If you use Linux or MacOS, just run 'ant package' and go to step 3. For debugging
-purposes, you might want to run 'ant dbg' for building the package in debug mode, signing
-with your debug key (in this case, you can skip step 3).
-
-If you are Windows user
- 2a. Run ndk-build (a program from Android NDK directory) in your project catalog;
- This program only runs from Cygwin >= 1.7, please read NDK docs for details.
- Read and try config cygwin using 'cygwin_installation_and_configuration.pdf'
- 2b. Run 'ant release'.
-
-3. Sign your package manually.
diff --git a/README.md b/README.md
new file mode 100644
index 00000000000..9f8dd8f58b7
--- /dev/null
+++ b/README.md
@@ -0,0 +1,1032 @@
+## Building FBReader using Android Studio and Gradle
+
+#####Tested on a fresh installation of Windows 8.1 x64 using Android Studio v1.02 build 1653844, jdk-7u71-windows-x64, and android-ndk-r10d.
+
+1. Clone the project into your %userprofile%\AndroidStudioProjects\
+
+1. Import the project into Android Studio
+
+1. Perform a project level gradle sync (CTR+SHIFT+A and search for "project sync", double click the first result).
+Android Studio may complain about not finding a git.exe in your path, but this will not prevent you from building the project
+
+1. Install Android SDK Platform API 14 when prompted
+
+1. Install Android SDK Platform API 5 when prompted
+
+1. Install Android SDK Platform API 11 when prompted
+
+1. FBReader has now been successfully built using Android Studio, but is missing the necessary binaries (*.so)
+
+## Compiling the binaries
+
+1. To compile the binaries from the source, navigate to where you extracted the NDK
+
+1. Execute the following command in your shell:
+
+ ndk-build -C %userprofile%\AndroidStudioProjects\FBReaderJ\fBReaderJ\src\main\jni
+
+ The binaries should be automatically placed into the appropriate directories (%userprofile%\AndroidStudioProjects\FBReaderJ\fBReaderJ\src\main\lib)
+
+1. Finally, rebuild the project. FBReader should now run without issue on the emulator/on your device.
+
+## Generating the introductory help epubs
+
+This step is optional. If you would like to see the introductory help epub when FBReader starts, execute the following commands in your shell and rebuild the project:
+
+ cd %userprofile%\AndroidStudioProjects\FBReaderJ\help\
+ generate.py proto html ..\fBReaderJ\src\main\assets\data\intro\
+
+
+
+ECLIPSE ANDROID PROJECT IMPORT SUMMARY
+======================================
+
+Manifest Merging:
+-----------------
+Your project uses libraries that provide manifests, and your Eclipse
+project did not explicitly turn on manifest merging. In Android Gradle
+projects, manifests are always merged (meaning that contents from your
+libraries' manifests will be merged into the app manifest. If you had
+manually copied contents from library manifests into your app manifest
+you may need to remove these for the app to build correctly.
+
+Ignored Files:
+--------------
+The following files were *not* copied into the new Gradle project; you
+should evaluate whether these are still needed in your project and if
+so manually move them:
+
+From AmbilWarna:
+
+* AmbilWarna.iml
+* build.xml
+
+From FBReaderJ:
+
+* .gitignore
+* .idea\
+* .idea\.name
+* .idea\FBReaderJ.iml
+* .idea\compiler.xml
+* .idea\copyright\
+* .idea\copyright\profiles_settings.xml
+* .idea\encodings.xml
+* .idea\misc.xml
+* .idea\modules.xml
+* .idea\scopes\
+* .idea\scopes\scope_settings.xml
+* .idea\vcs.xml
+* .idea\workspace.xml
+* AndroidManifest.xml.pattern
+* ChangeLog
+* HowToBuild
+* TODO.1.5
+* TODO.2pages
+* TODO.bookInfo
+* TODO.catalogs
+* TODO.dictionary
+* TODO.favorites
+* TODO.highlighting
+* TODO.honeycomb
+* TODO.library
+* TODO.libraryService
+* TODO.litres
+* TODO.network
+* TODO.selection
+* TODO.tips
+* VERSION
+* ant.properties
+* build.xml
+* docs\
+* docs\cygwin_installation_and_configuration.pdf
+* help\
+* help\generate.py
+* help\html\
+* help\html\be.html
+* help\html\cs.html
+* help\html\en.html
+* help\html\es.html
+* help\html\fr.html
+* help\html\hy.html
+* help\html\nl.html
+* help\html\pt.html
+* help\html\ru.html
+* help\html\uk.html
+* help\proto\
+* help\proto\container.xml
+* help\proto\content.opf
+* help\proto\fbreader.png
+* help\proto\style.css
+* icons-misc\
+* icons-misc\AUDIO\
+* icons-misc\AUDIO\audio.cdr
+* icons-misc\AUDIO\audio_1024x1024.png
+* icons-misc\AUDIO\audio_114x114.png
+* icons-misc\AUDIO\audio_128x128.png
+* icons-misc\AUDIO\audio_144x144.png
+* icons-misc\AUDIO\audio_256x256.png
+* icons-misc\AUDIO\audio_32x32.png
+* icons-misc\AUDIO\audio_48x48.png
+* icons-misc\AUDIO\audio_512x512.png
+* icons-misc\AUDIO\audio_64x64.png
+* icons-misc\AUDIO\audio_72x72.png
+* icons-misc\BOOKMARKS\
+* icons-misc\BOOKMARKS\bookmarks.cdr
+* icons-misc\BOOKMARKS\bookmarks_1024x1024.png
+* icons-misc\BOOKMARKS\bookmarks_114x114.png
+* icons-misc\BOOKMARKS\bookmarks_128x128.png
+* icons-misc\BOOKMARKS\bookmarks_144x144.png
+* icons-misc\BOOKMARKS\bookmarks_256x256.png
+* icons-misc\BOOKMARKS\bookmarks_32x32.png
+* icons-misc\BOOKMARKS\bookmarks_48x48.png
+* icons-misc\BOOKMARKS\bookmarks_512x512.png
+* icons-misc\BOOKMARKS\bookmarks_64x64.png
+* icons-misc\BOOKMARKS\bookmarks_72x72.png
+* icons-misc\BOOKS\
+* icons-misc\BOOKS\books.cdr
+* icons-misc\BOOKS\books_1024x1024.png
+* icons-misc\BOOKS\books_114x114.png
+* icons-misc\BOOKS\books_128x128.png
+* icons-misc\BOOKS\books_144x144.png
+* icons-misc\BOOKS\books_256x256.png
+* icons-misc\BOOKS\books_32x32.png
+* icons-misc\BOOKS\books_48x48.png
+* icons-misc\BOOKS\books_512x512.png
+* icons-misc\BOOKS\books_64x64.png
+* icons-misc\BOOKS\books_72x72.png
+* icons-misc\PDF\
+* icons-misc\PDF\PDF.cdr
+* icons-misc\PDF\PDF_1024x1024.png
+* icons-misc\PDF\PDF_114x144.png
+* icons-misc\PDF\PDF_128x128.png
+* icons-misc\PDF\PDF_144x144.png
+* icons-misc\PDF\PDF_256x256.png
+* icons-misc\PDF\PDF_32x32.png
+* icons-misc\PDF\PDF_48x48.png
+* icons-misc\PDF\PDF_512x512.png
+* icons-misc\PDF\PDF_64x64.png
+* icons-misc\PDF\PDF_72x72.png
+* icons-misc\SCAN\
+* icons-misc\SCAN\Thumbs.db
+* icons-misc\SCAN\scan.cdr
+* icons-misc\SCAN\scan_1024x1024.png
+* icons-misc\SCAN\scan_114x114.png
+* icons-misc\SCAN\scan_128x128.png
+* icons-misc\SCAN\scan_144x144.png
+* icons-misc\SCAN\scan_256x256.png
+* icons-misc\SCAN\scan_32x32.png
+* icons-misc\SCAN\scan_48x48.png
+* icons-misc\SCAN\scan_512x512.png
+* icons-misc\SCAN\scan_64x64.png
+* icons-misc\SCAN\scan_72x72.png
+* icons-misc\WI-FI\
+* icons-misc\WI-FI\wi-fi.cdr
+* icons-misc\WI-FI\wi-fi_1024x1024.png
+* icons-misc\WI-FI\wi-fi_114x144.png
+* icons-misc\WI-FI\wi-fi_128x128.png
+* icons-misc\WI-FI\wi-fi_144x144.png
+* icons-misc\WI-FI\wi-fi_256x256.png
+* icons-misc\WI-FI\wi-fi_32x32.png
+* icons-misc\WI-FI\wi-fi_48x48.png
+* icons-misc\WI-FI\wi-fi_512x512.png
+* icons-misc\WI-FI\wi-fi_64x64.png
+* icons-misc\WI-FI\wi-fi_72x72.png
+* icons-misc\litres\
+* icons-misc\litres\Litres.cdr
+* icons-misc\litres\Litres_1024x1024.png
+* icons-misc\litres\Litres_114x114.png
+* icons-misc\litres\Litres_128x128.png
+* icons-misc\litres\Litres_144x144.png
+* icons-misc\litres\Litres_256x256.png
+* icons-misc\litres\Litres_32x32_1.png
+* icons-misc\litres\Litres_32x32_2.png
+* icons-misc\litres\Litres_48x48.png
+* icons-misc\litres\Litres_512x512.png
+* icons-misc\litres\Litres_64x64.png
+* icons-misc\litres\Litres_72x72.png
+* icons-scalable\
+* icons-scalable\FBReader.svg
+* icons-scalable\Library Icons.psd
+* icons-scalable\basket.psd
+* icons-scalable\basketBLUE.psd
+* ideas.mss
+* obsolete\
+* obsolete\build.xml
+* obsolete\external\
+* obsolete\external\ExternalProgramFormatPlugin.java
+* obsolete\external\FBReader.Opener.java
+* obsolete\external\Formats.java
+* obsolete\help\
+* obsolete\help\MiniHelp.be.fb2
+* obsolete\help\MiniHelp.ca.fb2
+* obsolete\help\MiniHelp.da.fb2
+* obsolete\help\MiniHelp.de.fb2
+* obsolete\help\MiniHelp.el.fb2
+* obsolete\help\MiniHelp.es.fb2
+* obsolete\help\MiniHelp.eu.fb2
+* obsolete\help\MiniHelp.fr.fb2
+* obsolete\help\MiniHelp.gl.fb2
+* obsolete\help\MiniHelp.hu.fb2
+* obsolete\help\MiniHelp.it.fb2
+* obsolete\help\MiniHelp.ja.fb2
+* obsolete\help\MiniHelp.ka.fb2
+* obsolete\help\MiniHelp.nb.fb2
+* obsolete\help\MiniHelp.nl.fb2
+* obsolete\help\MiniHelp.pl.fb2
+* obsolete\help\MiniHelp.pt.fb2
+* obsolete\help\MiniHelp.ro.fb2
+* obsolete\help\MiniHelp.sr.fb2
+* obsolete\help\MiniHelp.th.fb2
+* obsolete\help\MiniHelp.tr.fb2
+* obsolete\help\MiniHelp.uk.fb2
+* obsolete\help\MiniHelp.vi.fb2
+* obsolete\help\MiniHelp.zh.fb2
+* obsolete\help\MiniHelp.zh_TW.fb2
+* obsolete\icons\
+* obsolete\icons\application\
+* obsolete\icons\application\48x48.png
+* obsolete\icons\application\64x64.png
+* obsolete\icons\booktree\
+* obsolete\icons\booktree\tree-bookinfo.png
+* obsolete\icons\booktree\tree-remove.png
+* obsolete\icons\booktree\tree-removetag.png
+* obsolete\icons\booktree\tree-taginfo.png
+* obsolete\icons\toolbar\
+* obsolete\icons\toolbar\addBook.png
+* obsolete\icons\toolbar\bookInfo.png
+* obsolete\icons\toolbar\findNext.png
+* obsolete\icons\toolbar\findPrevious.png
+* obsolete\icons\toolbar\gotoHome.png
+* obsolete\icons\toolbar\preferences.png
+* obsolete\icons\toolbar\redo.png
+* obsolete\icons\toolbar\rotate.png
+* obsolete\icons\toolbar\search.png
+* obsolete\icons\toolbar\showHelp.png
+* obsolete\icons\toolbar\showLibrary.png
+* obsolete\icons\toolbar\showRecent.png
+* obsolete\icons\toolbar\toc.png
+* obsolete\icons\toolbar\undo.png
+* obsolete\j2me\
+* obsolete\j2me\FBReaderJ.jad
+* obsolete\j2me\build.xml
+* obsolete\j2me\data\
+* obsolete\j2me\data\FBReaderJ.png
+* obsolete\j2me\data\default\
+* obsolete\j2me\data\default\keymap.xml
+* obsolete\j2me\data\default\menubar.xml
+* obsolete\j2me\data\default\styles.xml
+* obsolete\j2me\manifest.mf
+* obsolete\j2me\src\
+* obsolete\j2me\src\java\
+* obsolete\j2me\src\java\util\
+* obsolete\j2me\src\java\util\zip\
+* obsolete\j2me\src\java\util\zip\ZipEntry.java
+* obsolete\j2me\src\java\util\zip\ZipException.java
+* obsolete\j2me\src\java\util\zip\ZipFile.java
+* obsolete\j2me\src\java\util\zip\ZipInputStream.java
+* obsolete\j2me\src\org\
+* obsolete\j2me\src\org\zlibrary\
+* obsolete\j2me\src\org\zlibrary\core\
+* obsolete\j2me\src\org\zlibrary\core\util\
+* obsolete\j2me\src\org\zlibrary\core\util\ArrayList.java
+* obsolete\j2me\src\org\zlibrary\core\util\Collections.java
+* obsolete\j2me\src\org\zlibrary\core\util\Comparator.java
+* obsolete\j2me\src\org\zlibrary\core\util\File.java
+* obsolete\j2me\src\org\zlibrary\core\util\HashMap.java
+* obsolete\j2me\src\org\zlibrary\core\util\Locale.java
+* obsolete\j2me\src\org\zlibrary\ui\
+* obsolete\j2me\src\org\zlibrary\ui\j2me\
+* obsolete\j2me\src\org\zlibrary\ui\j2me\application\
+* obsolete\j2me\src\org\zlibrary\ui\j2me\application\ZLJ2MEApplicationWindow.java
+* obsolete\j2me\src\org\zlibrary\ui\j2me\config\
+* obsolete\j2me\src\org\zlibrary\ui\j2me\config\ZLJ2MEConfig.java
+* obsolete\j2me\src\org\zlibrary\ui\j2me\config\ZLJ2MEConfigManager.java
+* obsolete\j2me\src\org\zlibrary\ui\j2me\image\
+* obsolete\j2me\src\org\zlibrary\ui\j2me\image\ZLJ2MEImageData.java
+* obsolete\j2me\src\org\zlibrary\ui\j2me\image\ZLJ2MEImageManager.java
+* obsolete\j2me\src\org\zlibrary\ui\j2me\library\
+* obsolete\j2me\src\org\zlibrary\ui\j2me\library\ZLJ2MELibrary.java
+* obsolete\j2me\src\org\zlibrary\ui\j2me\library\ZLMIDlet.java
+* obsolete\j2me\src\org\zlibrary\ui\j2me\view\
+* obsolete\j2me\src\org\zlibrary\ui\j2me\view\ZLCanvas.java
+* obsolete\j2me\src\org\zlibrary\ui\j2me\view\ZLJ2MEPaintContext.java
+* obsolete\j2me\src\org\zlibrary\ui\j2me\view\ZLJ2MEViewWidget.java
+* obsolete\lib\
+* obsolete\lib\antenna-bin-1.0.0.jar
+* obsolete\lib\junit.jar
+* obsolete\lib\proguard.jar
+* obsolete\manifest.mf
+* obsolete\swing\
+* obsolete\swing\data\
+* obsolete\swing\data\default\
+* obsolete\swing\data\default\keymap.xml
+* obsolete\swing\data\default\styles.xml
+* obsolete\swing\data\default\toolbar.xml
+* obsolete\swing\icons\
+* obsolete\swing\icons\filetree\
+* obsolete\swing\icons\filetree\fb2.png
+* obsolete\swing\icons\filetree\folder.png
+* obsolete\swing\icons\filetree\html.png
+* obsolete\swing\icons\filetree\mobipocket.png
+* obsolete\swing\icons\filetree\oeb.png
+* obsolete\swing\icons\filetree\openreader.png
+* obsolete\swing\icons\filetree\palm.png
+* obsolete\swing\icons\filetree\plucker.png
+* obsolete\swing\icons\filetree\rtf.png
+* obsolete\swing\icons\filetree\tcr.png
+* obsolete\swing\icons\filetree\unknown.png
+* obsolete\swing\icons\filetree\upfolder.png
+* obsolete\swing\icons\filetree\weasel.png
+* obsolete\swing\icons\filetree\zipfolder.png
+* obsolete\swing\src\
+* obsolete\swing\src\org\
+* obsolete\swing\src\org\geometerplus\
+* obsolete\swing\src\org\geometerplus\zlibrary\
+* obsolete\swing\src\org\geometerplus\zlibrary\core\
+* obsolete\swing\src\org\geometerplus\zlibrary\core\xmlconfig\
+* obsolete\swing\src\org\geometerplus\zlibrary\core\xmlconfig\ZLConfigImpl.java
+* obsolete\swing\src\org\geometerplus\zlibrary\core\xmlconfig\ZLConfigReader.java
+* obsolete\swing\src\org\geometerplus\zlibrary\core\xmlconfig\ZLConfigWriter.java
+* obsolete\swing\src\org\geometerplus\zlibrary\core\xmlconfig\ZLDeletedValuesSet.java
+* obsolete\swing\src\org\geometerplus\zlibrary\core\xmlconfig\ZLDeltaConfig.java
+* obsolete\swing\src\org\geometerplus\zlibrary\core\xmlconfig\ZLGroup.java
+* obsolete\swing\src\org\geometerplus\zlibrary\core\xmlconfig\ZLOptionID.java
+* obsolete\swing\src\org\geometerplus\zlibrary\core\xmlconfig\ZLOptionInfo.java
+* obsolete\swing\src\org\geometerplus\zlibrary\core\xmlconfig\ZLReader.java
+* obsolete\swing\src\org\geometerplus\zlibrary\core\xmlconfig\ZLSimpleConfig.java
+* obsolete\swing\src\org\geometerplus\zlibrary\core\xmlconfig\ZLWriter.java
+* obsolete\swing\src\org\geometerplus\zlibrary\core\xmlconfig\ZLXMLConfigManager.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\application\
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\application\ZLSwingApplicationWindow.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\ZLBoolean3OptionView.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\ZLBooleanOptionView.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\ZLChoiceOptionView.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\ZLColorOptionView.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\ZLComboOptionView.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\ZLKeyOptionView.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\ZLSpinOptionView.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\ZLStringOptionView.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\ZLSwingDialog.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\ZLSwingDialogContent.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\ZLSwingDialogManager.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\ZLSwingOptionView.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\ZLSwingOptionsDialog.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\dialogs\ZLSwingSelectionDialog.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\image\
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\image\ZLSwingImageData.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\image\ZLSwingImageManager.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\library\
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\library\Main.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\library\ZLSwingLibrary.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\util\
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\util\ZLSwingIconUtil.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\view\
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\view\ZLSwingPaintContext.java
+* obsolete\swing\src\org\geometerplus\zlibrary\ui\swing\view\ZLSwingViewWidget.java
+* obsolete\test\
+* obsolete\test\data\
+* obsolete\test\data\fb2\
+* obsolete\test\data\fb2\annotation.fb2
+* obsolete\test\data\fb2\annotation_before.fb2
+* obsolete\test\data\fb2\annotation_before_exp.txt
+* obsolete\test\data\fb2\annotation_exp.txt
+* obsolete\test\data\fb2\cite.fb2
+* obsolete\test\data\fb2\cite_exp.txt
+* obsolete\test\data\fb2\date.fb2
+* obsolete\test\data\fb2\date_exp.txt
+* obsolete\test\data\fb2\empty_line.fb2
+* obsolete\test\data\fb2\empty_line_exp.txt
+* obsolete\test\data\fb2\epigraph.fb2
+* obsolete\test\data\fb2\epigraph_exp.txt
+* obsolete\test\data\fb2\ext_hyperlink.fb2
+* obsolete\test\data\fb2\ext_hyperlink_exp.txt
+* obsolete\test\data\fb2\filesystem\
+* obsolete\test\data\fb2\filesystem\directory\
+* obsolete\test\data\fb2\filesystem\directory\testbookZip.zip
+* obsolete\test\data\fb2\filesystem\directory\testfb2book.fb2
+* obsolete\test\data\fb2\filesystem\testbookZip.zip
+* obsolete\test\data\fb2\filesystem\testfb2book.fb2
+* obsolete\test\data\fb2\footnote.fb2
+* obsolete\test\data\fb2\footnote1.fb2
+* obsolete\test\data\fb2\footnote_exp.txt
+* obsolete\test\data\fb2\image.fb2
+* obsolete\test\data\fb2\image_exp.txt
+* obsolete\test\data\fb2\karenina.fb2
+* obsolete\test\data\fb2\karenina_exp.txt
+* obsolete\test\data\fb2\one_note.fb2
+* obsolete\test\data\fb2\one_note_exp.txt
+* obsolete\test\data\fb2\poem.fb2
+* obsolete\test\data\fb2\poem_exp.txt
+* obsolete\test\data\fb2\poem_title.fb2
+* obsolete\test\data\fb2\poem_title_exp.txt
+* obsolete\test\data\fb2\section.fb2
+* obsolete\test\data\fb2\section_exp.txt
+* obsolete\test\data\fb2\section_title.fb2
+* obsolete\test\data\fb2\section_title_exp.txt
+* obsolete\test\data\fb2\simple_notes.fb2
+* obsolete\test\data\fb2\stanza.fb2
+* obsolete\test\data\fb2\stanza_exp.txt
+* obsolete\test\data\fb2\subtitle.fb2
+* obsolete\test\data\fb2\subtitle_exp.txt
+* obsolete\test\data\fb2\test1.fb2
+* obsolete\test\data\fb2\test1_exp.txt
+* obsolete\test\data\fb2\test2.fb2
+* obsolete\test\data\fb2\test2_exp.txt
+* obsolete\test\data\fb2\test3.fb2
+* obsolete\test\data\fb2\test3_exp.txt
+* obsolete\test\data\fb2\test4.fb2
+* obsolete\test\data\fb2\test4_exp.txt
+* obsolete\test\data\fb2\test5.fb2
+* obsolete\test\data\fb2\test5_exp.txt
+* obsolete\test\data\fb2\test6.fb2
+* obsolete\test\data\fb2\test6_exp.txt
+* obsolete\test\data\fb2\test7.fb2
+* obsolete\test\data\fb2\test7_exp.txt
+* obsolete\test\data\fb2\test8.fb2
+* obsolete\test\data\fb2\test8_exp.txt
+* obsolete\test\data\fb2\text_author.fb2
+* obsolete\test\data\fb2\text_author_exp.txt
+* obsolete\test\data\fb2\title.fb2
+* obsolete\test\data\fb2\title_exp.txt
+* obsolete\test\data\fb2\tree1.fb2
+* obsolete\test\data\fb2\tree1_exp.txt
+* obsolete\test\data\fb2\tree2.fb2
+* obsolete\test\data\fb2\tree2_exp.txt
+* obsolete\test\data\fb2\tree2sections.fb2
+* obsolete\test\data\fb2\tree2sections_exp.txt
+* obsolete\test\data\fb2\verse.fb2
+* obsolete\test\data\fb2\verse_exp.txt
+* obsolete\test\data\fb2\whiteguard.fb2
+* obsolete\test\data\fb2\whiteguard_exp.txt
+* obsolete\test\data\resources\
+* obsolete\test\data\resources\application\
+* obsolete\test\data\resources\application\en.xml
+* obsolete\test\data\resources\application\fi.xml
+* obsolete\test\data\resources\application\fr.xml
+* obsolete\test\data\resources\application\it.xml
+* obsolete\test\data\resources\application\ru.xml
+* obsolete\test\data\resources\application\sv.xml
+* obsolete\test\data\resources\application\uk.xml
+* obsolete\test\data\resources\zlibrary\
+* obsolete\test\data\resources\zlibrary\en.xml
+* obsolete\test\data\resources\zlibrary\fi.xml
+* obsolete\test\data\resources\zlibrary\fr.xml
+* obsolete\test\data\resources\zlibrary\it.xml
+* obsolete\test\data\resources\zlibrary\ru.xml
+* obsolete\test\data\resources\zlibrary\sv.xml
+* obsolete\test\data\resources\zlibrary\uk.xml
+* obsolete\test\org\
+* obsolete\test\org\test\
+* obsolete\test\org\test\fbreader\
+* obsolete\test\org\test\fbreader\collection\
+* obsolete\test\org\test\fbreader\collection\AllTests.java
+* obsolete\test\org\test\fbreader\collection\TestBookCollection.java
+* obsolete\test\org\test\fbreader\collection\TestBookList.java
+* obsolete\test\org\test\fbreader\formats\
+* obsolete\test\org\test\fbreader\formats\fb2\
+* obsolete\test\org\test\fbreader\formats\fb2\AllTests.java
+* obsolete\test\org\test\fbreader\formats\fb2\TestFB2Reader.java
+* obsolete\test\org\test\zlibrary\
+* obsolete\test\org\test\zlibrary\core\
+* obsolete\test\org\test\zlibrary\core\resources\
+* obsolete\test\org\test\zlibrary\core\resources\AllTests.java
+* obsolete\test\org\test\zlibrary\core\resources\TestResources.java
+* obsolete\test\org\test\zlibrary\description\
+* obsolete\test\org\test\zlibrary\description\AllTests.java
+* obsolete\test\org\test\zlibrary\description\TestDescriptionBook.java
+* obsolete\test\org\test\zlibrary\filesystem\
+* obsolete\test\org\test\zlibrary\filesystem\TestALL.java
+* obsolete\test\org\test\zlibrary\filesystem\TestZLDir.java
+* obsolete\test\org\test\zlibrary\filesystem\TestZLFSManager.java
+* obsolete\test\org\test\zlibrary\filesystem\TestZLFile.java
+* obsolete\test\org\test\zlibrary\hyphenation\
+* obsolete\test\org\test\zlibrary\hyphenation\TestAll.java
+* obsolete\test\org\test\zlibrary\hyphenation\TestTextTeXHyphenationPattern.java
+* obsolete\test\org\test\zlibrary\hyphenation\TestTextTeXHyphenator.java
+* obsolete\test\org\test\zlibrary\model\
+* obsolete\test\org\test\zlibrary\model\ModelDumper.java
+* obsolete\test\org\test\zlibrary\model\TestAll.java
+* obsolete\test\org\test\zlibrary\model\TestTextControlEntry.java
+* obsolete\test\org\test\zlibrary\model\TestTextEntry.java
+* obsolete\test\org\test\zlibrary\model\TestTextParagraph.java
+* obsolete\test\org\test\zlibrary\model\TestTreeModel.java
+* obsolete\test\org\test\zlibrary\model\TestTreeParagraph.java
+* obsolete\test\org\test\zlibrary\model\TestZLTextModel.java
+* obsolete\test\org\test\zlibrary\options\
+* obsolete\test\org\test\zlibrary\options\ConfigIOTests.java
+* obsolete\test\org\test\zlibrary\options\TestAll.java
+* obsolete\test\org\test\zlibrary\options\UtilTests.java
+* obsolete\test\org\test\zlibrary\options\ZLBoolean3OptionTests1.java
+* obsolete\test\org\test\zlibrary\options\ZLBoolean3OptionTests2.java
+* obsolete\test\org\test\zlibrary\options\ZLBooleanOptionTests1.java
+* obsolete\test\org\test\zlibrary\options\ZLBooleanOptionTests2.java
+* obsolete\test\org\test\zlibrary\options\ZLColorOptionTests1.java
+* obsolete\test\org\test\zlibrary\options\ZLColorOptionTests2.java
+* obsolete\test\org\test\zlibrary\options\ZLConfigWriterTests.java
+* obsolete\test\org\test\zlibrary\options\ZLIntegerOptionTests1.java
+* obsolete\test\org\test\zlibrary\options\ZLIntegerOptionTests2.java
+* obsolete\test\org\test\zlibrary\options\ZLIntegerRangeOptionTests1.java
+* obsolete\test\org\test\zlibrary\options\ZLIntegerRangeOptionTests2.java
+* obsolete\test\org\test\zlibrary\options\ZLOptionTests.java
+* obsolete\test\org\test\zlibrary\options\ZLStringOptionTests1.java
+* obsolete\test\org\test\zlibrary\options\ZLStringOptionTests2.java
+* obsolete\test\org\test\zlibrary\options\examples\
+* obsolete\test\org\test\zlibrary\options\examples\options.xml
+* proguard.cfg
+* scripts\
+* scripts\buildAll.sh
+* scripts\changeCopyright.pl
+* scripts\copyright
+* scripts\mergeAll.sh
+* scripts\packageTool.sh
+* scripts\resources\
+* scripts\resources\clean.xslt
+* scripts\resources\repair.py
+* scripts\resources\stats.sh
+* scripts\resources\synchronize.sh
+* scripts\resources\update.sh
+* scripts\set_tags.sh
+* third-party\
+* third-party\AmbilWarna\
+* third-party\AmbilWarna\.project
+* third-party\AmbilWarna\AmbilWarna.iml
+* third-party\AmbilWarna\AndroidManifest.xml
+* third-party\AmbilWarna\build.xml
+* third-party\AmbilWarna\project.properties
+* third-party\AmbilWarna\res\
+* third-party\AmbilWarna\res\drawable-hdpi\
+* third-party\AmbilWarna\res\drawable-hdpi\ambilwarna_arrow_down.png
+* third-party\AmbilWarna\res\drawable-hdpi\ambilwarna_arrow_right.png
+* third-party\AmbilWarna\res\drawable-hdpi\ambilwarna_cursor.png
+* third-party\AmbilWarna\res\drawable-hdpi\ambilwarna_target.png
+* third-party\AmbilWarna\res\drawable-ldpi\
+* third-party\AmbilWarna\res\drawable-ldpi\ambilwarna_arrow_down.png
+* third-party\AmbilWarna\res\drawable-ldpi\ambilwarna_arrow_right.png
+* third-party\AmbilWarna\res\drawable-ldpi\ambilwarna_cursor.png
+* third-party\AmbilWarna\res\drawable-ldpi\ambilwarna_target.png
+* third-party\AmbilWarna\res\drawable-xhdpi\
+* third-party\AmbilWarna\res\drawable-xhdpi\ambilwarna_arrow_down.png
+* third-party\AmbilWarna\res\drawable-xhdpi\ambilwarna_arrow_right.png
+* third-party\AmbilWarna\res\drawable-xhdpi\ambilwarna_cursor.png
+* third-party\AmbilWarna\res\drawable-xhdpi\ambilwarna_target.png
+* third-party\AmbilWarna\res\drawable\
+* third-party\AmbilWarna\res\drawable\ambilwarna_arrow_down.png
+* third-party\AmbilWarna\res\drawable\ambilwarna_arrow_right.png
+* third-party\AmbilWarna\res\drawable\ambilwarna_cursor.png
+* third-party\AmbilWarna\res\drawable\ambilwarna_hue.png
+* third-party\AmbilWarna\res\drawable\ambilwarna_target.png
+* third-party\AmbilWarna\res\layout-land\
+* third-party\AmbilWarna\res\layout-land\ambilwarna_dialog.xml
+* third-party\AmbilWarna\res\layout\
+* third-party\AmbilWarna\res\layout\ambilwarna_dialog.xml
+* third-party\AmbilWarna\res\layout\ambilwarna_pref_widget.xml
+* third-party\AmbilWarna\res\values-land\
+* third-party\AmbilWarna\res\values-land\dimen.xml
+* third-party\AmbilWarna\res\values-xlarge-land\
+* third-party\AmbilWarna\res\values-xlarge-land\dimen.xml
+* third-party\AmbilWarna\res\values\
+* third-party\AmbilWarna\res\values\dimen.xml
+* third-party\AmbilWarna\src\
+* third-party\AmbilWarna\src\yuku\
+* third-party\AmbilWarna\src\yuku\ambilwarna\
+* third-party\AmbilWarna\src\yuku\ambilwarna\AmbilWarnaDialog.java
+* third-party\AmbilWarna\src\yuku\ambilwarna\AmbilWarnaKotak.java
+* third-party\AmbilWarna\src\yuku\ambilwarna\widget\
+* third-party\AmbilWarna\src\yuku\ambilwarna\widget\AmbilWarnaPrefWidgetView.java
+* third-party\android-filechooser\
+* third-party\android-filechooser\LICENSE
+* third-party\android-filechooser\NOTICE
+* third-party\android-filechooser\code\
+* third-party\android-filechooser\code\AndroidManifest.xml
+* third-party\android-filechooser\code\build.xml
+* third-party\android-filechooser\code\proguard-project.txt
+* third-party\android-filechooser\code\proguard.cfg
+* third-party\android-filechooser\code\project.properties
+* third-party\android-filechooser\code\res\
+* third-party\android-filechooser\code\res\drawable-hdpi-v11\
+* third-party\android-filechooser\code\res\drawable-hdpi-v11\afc_ic_menu_gridview.png
+* third-party\android-filechooser\code\res\drawable-hdpi-v11\afc_ic_menu_home.png
+* third-party\android-filechooser\code\res\drawable-hdpi-v11\afc_ic_menu_listview.png
+* third-party\android-filechooser\code\res\drawable-hdpi-v11\afc_ic_menu_reload.png
+* third-party\android-filechooser\code\res\drawable-hdpi-v11\afc_ic_menu_sort_by_date_asc.png
+* third-party\android-filechooser\code\res\drawable-hdpi-v11\afc_ic_menu_sort_by_date_desc.png
+* third-party\android-filechooser\code\res\drawable-hdpi-v11\afc_ic_menu_sort_by_name_asc.png
+* third-party\android-filechooser\code\res\drawable-hdpi-v11\afc_ic_menu_sort_by_name_desc.png
+* third-party\android-filechooser\code\res\drawable-hdpi-v11\afc_ic_menu_sort_by_size_asc.png
+* third-party\android-filechooser\code\res\drawable-hdpi-v11\afc_ic_menu_sort_by_size_desc.png
+* third-party\android-filechooser\code\res\drawable-hdpi\
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_create_folder.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_create_folder_disabled.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_create_folder_pressed.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_folders_view_grid.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_folders_view_grid_disabled.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_folders_view_grid_pressed.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_folders_view_list.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_folders_view_list_disabled.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_folders_view_list_pressed.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_navi_left.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_navi_left_disabled.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_navi_left_pressed.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_navi_right.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_navi_right_disabled.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_navi_right_pressed.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_ok_saveas.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_ok_saveas_pressed.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_sort_as.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_sort_as_disabled.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_sort_as_pressed.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_sort_de.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_sort_de_disabled.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_button_sort_de_pressed.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_context_menu_item_divider.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_file.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_file_audio.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_file_compressed.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_file_disabled.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_file_image.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_file_plain_text.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_file_video.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_folder.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_folder_disabled.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_folder_locked.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_ic_menu_gridview.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_ic_menu_home.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_ic_menu_listview.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_ic_menu_reload.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_ic_menu_sort_by_date_asc.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_ic_menu_sort_by_date_desc.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_ic_menu_sort_by_name_asc.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_ic_menu_sort_by_name_desc.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_ic_menu_sort_by_size_asc.png
+* third-party\android-filechooser\code\res\drawable-hdpi\afc_ic_menu_sort_by_size_desc.png
+* third-party\android-filechooser\code\res\drawable-ldpi-v11\
+* third-party\android-filechooser\code\res\drawable-ldpi-v11\afc_ic_menu_gridview.png
+* third-party\android-filechooser\code\res\drawable-ldpi-v11\afc_ic_menu_home.png
+* third-party\android-filechooser\code\res\drawable-ldpi-v11\afc_ic_menu_listview.png
+* third-party\android-filechooser\code\res\drawable-ldpi-v11\afc_ic_menu_reload.png
+* third-party\android-filechooser\code\res\drawable-ldpi-v11\afc_ic_menu_sort_by_date_asc.png
+* third-party\android-filechooser\code\res\drawable-ldpi-v11\afc_ic_menu_sort_by_date_desc.png
+* third-party\android-filechooser\code\res\drawable-ldpi-v11\afc_ic_menu_sort_by_name_asc.png
+* third-party\android-filechooser\code\res\drawable-ldpi-v11\afc_ic_menu_sort_by_name_desc.png
+* third-party\android-filechooser\code\res\drawable-ldpi-v11\afc_ic_menu_sort_by_size_asc.png
+* third-party\android-filechooser\code\res\drawable-ldpi-v11\afc_ic_menu_sort_by_size_desc.png
+* third-party\android-filechooser\code\res\drawable-ldpi\
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_create_folder.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_create_folder_disabled.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_create_folder_pressed.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_folders_view_grid.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_folders_view_grid_disabled.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_folders_view_grid_pressed.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_folders_view_list.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_folders_view_list_disabled.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_folders_view_list_pressed.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_navi_left.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_navi_left_disabled.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_navi_left_pressed.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_navi_right.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_navi_right_disabled.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_navi_right_pressed.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_ok_saveas.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_button_ok_saveas_pressed.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_context_menu_item_divider.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_file.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_file_audio.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_file_compressed.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_file_disabled.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_file_image.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_file_plain_text.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_file_video.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_folder.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_folder_disabled.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_folder_locked.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_ic_menu_gridview.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_ic_menu_home.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_ic_menu_listview.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_ic_menu_reload.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_ic_menu_sort_by_date_asc.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_ic_menu_sort_by_date_desc.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_ic_menu_sort_by_name_asc.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_ic_menu_sort_by_name_desc.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_ic_menu_sort_by_size_asc.png
+* third-party\android-filechooser\code\res\drawable-ldpi\afc_ic_menu_sort_by_size_desc.png
+* third-party\android-filechooser\code\res\drawable-mdpi-v11\
+* third-party\android-filechooser\code\res\drawable-mdpi-v11\afc_ic_menu_gridview.png
+* third-party\android-filechooser\code\res\drawable-mdpi-v11\afc_ic_menu_home.png
+* third-party\android-filechooser\code\res\drawable-mdpi-v11\afc_ic_menu_listview.png
+* third-party\android-filechooser\code\res\drawable-mdpi-v11\afc_ic_menu_reload.png
+* third-party\android-filechooser\code\res\drawable-mdpi-v11\afc_ic_menu_sort_by_date_asc.png
+* third-party\android-filechooser\code\res\drawable-mdpi-v11\afc_ic_menu_sort_by_date_desc.png
+* third-party\android-filechooser\code\res\drawable-mdpi-v11\afc_ic_menu_sort_by_name_asc.png
+* third-party\android-filechooser\code\res\drawable-mdpi-v11\afc_ic_menu_sort_by_name_desc.png
+* third-party\android-filechooser\code\res\drawable-mdpi-v11\afc_ic_menu_sort_by_size_asc.png
+* third-party\android-filechooser\code\res\drawable-mdpi-v11\afc_ic_menu_sort_by_size_desc.png
+* third-party\android-filechooser\code\res\drawable-mdpi\
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_create_folder.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_create_folder_disabled.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_create_folder_pressed.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_folders_view_grid.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_folders_view_grid_disabled.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_folders_view_grid_pressed.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_folders_view_list.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_folders_view_list_disabled.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_folders_view_list_pressed.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_navi_left.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_navi_left_disabled.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_navi_left_pressed.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_navi_right.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_navi_right_disabled.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_navi_right_pressed.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_ok_saveas.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_button_ok_saveas_pressed.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_context_menu_item_divider.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_file.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_file_audio.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_file_compressed.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_file_disabled.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_file_image.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_file_plain_text.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_file_video.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_folder.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_folder_disabled.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_folder_locked.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_ic_menu_gridview.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_ic_menu_home.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_ic_menu_listview.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_ic_menu_reload.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_ic_menu_sort_by_date_asc.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_ic_menu_sort_by_date_desc.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_ic_menu_sort_by_name_asc.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_ic_menu_sort_by_name_desc.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_ic_menu_sort_by_size_asc.png
+* third-party\android-filechooser\code\res\drawable-mdpi\afc_ic_menu_sort_by_size_desc.png
+* third-party\android-filechooser\code\res\drawable-xhdpi-v11\
+* third-party\android-filechooser\code\res\drawable-xhdpi-v11\afc_ic_menu_gridview.png
+* third-party\android-filechooser\code\res\drawable-xhdpi-v11\afc_ic_menu_home.png
+* third-party\android-filechooser\code\res\drawable-xhdpi-v11\afc_ic_menu_listview.png
+* third-party\android-filechooser\code\res\drawable-xhdpi-v11\afc_ic_menu_reload.png
+* third-party\android-filechooser\code\res\drawable-xhdpi-v11\afc_ic_menu_sort_by_date_asc.png
+* third-party\android-filechooser\code\res\drawable-xhdpi-v11\afc_ic_menu_sort_by_date_desc.png
+* third-party\android-filechooser\code\res\drawable-xhdpi-v11\afc_ic_menu_sort_by_name_asc.png
+* third-party\android-filechooser\code\res\drawable-xhdpi-v11\afc_ic_menu_sort_by_name_desc.png
+* third-party\android-filechooser\code\res\drawable-xhdpi-v11\afc_ic_menu_sort_by_size_asc.png
+* third-party\android-filechooser\code\res\drawable-xhdpi-v11\afc_ic_menu_sort_by_size_desc.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_create_folder.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_create_folder_disabled.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_create_folder_pressed.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_folders_view_grid.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_folders_view_grid_disabled.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_folders_view_grid_pressed.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_folders_view_list.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_folders_view_list_disabled.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_folders_view_list_pressed.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_navi_left.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_navi_left_disabled.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_navi_left_pressed.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_navi_right.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_navi_right_disabled.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_navi_right_pressed.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_ok_saveas.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_button_ok_saveas_pressed.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_context_menu_item_divider.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_file.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_file_audio.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_file_compressed.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_file_disabled.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_file_image.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_file_plain_text.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_file_video.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_folder.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_folder_disabled.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_folder_locked.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_ic_menu_gridview.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_ic_menu_home.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_ic_menu_listview.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_ic_menu_reload.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_ic_menu_sort_by_date_asc.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_ic_menu_sort_by_date_desc.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_ic_menu_sort_by_name_asc.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_ic_menu_sort_by_name_desc.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_ic_menu_sort_by_size_asc.png
+* third-party\android-filechooser\code\res\drawable-xhdpi\afc_ic_menu_sort_by_size_desc.png
+* third-party\android-filechooser\code\res\drawable\
+* third-party\android-filechooser\code\res\drawable\afc_button_location_dark_pressed.xml
+* third-party\android-filechooser\code\res\drawable\afc_item_file.xml
+* third-party\android-filechooser\code\res\drawable\afc_item_folder.xml
+* third-party\android-filechooser\code\res\drawable\afc_selector_button_create_folder.xml
+* third-party\android-filechooser\code\res\drawable\afc_selector_button_folders_view_grid.xml
+* third-party\android-filechooser\code\res\drawable\afc_selector_button_folders_view_list.xml
+* third-party\android-filechooser\code\res\drawable\afc_selector_button_location_dark.xml
+* third-party\android-filechooser\code\res\drawable\afc_selector_button_navi_left.xml
+* third-party\android-filechooser\code\res\drawable\afc_selector_button_navi_right.xml
+* third-party\android-filechooser\code\res\drawable\afc_selector_button_ok_saveas.xml
+* third-party\android-filechooser\code\res\drawable\afc_selector_button_sort_as.xml
+* third-party\android-filechooser\code\res\drawable\afc_selector_button_sort_de.xml
+* third-party\android-filechooser\code\res\layout-v11\
+* third-party\android-filechooser\code\res\layout-v11\afc_file_chooser.xml
+* third-party\android-filechooser\code\res\layout-v11\afc_settings_sort_view.xml
+* third-party\android-filechooser\code\res\layout\
+* third-party\android-filechooser\code\res\layout\afc_button_location.xml
+* third-party\android-filechooser\code\res\layout\afc_context_menu_tiem.xml
+* third-party\android-filechooser\code\res\layout\afc_context_menu_view.xml
+* third-party\android-filechooser\code\res\layout\afc_file_chooser.xml
+* third-party\android-filechooser\code\res\layout\afc_file_item.xml
+* third-party\android-filechooser\code\res\layout\afc_gridview_files.xml
+* third-party\android-filechooser\code\res\layout\afc_listview_files.xml
+* third-party\android-filechooser\code\res\layout\afc_settings_sort_view.xml
+* third-party\android-filechooser\code\res\layout\afc_simple_text_input_view.xml
+* third-party\android-filechooser\code\res\menu\
+* third-party\android-filechooser\code\res\menu\afc_file_chooser_activity.xml
+* third-party\android-filechooser\code\res\values-es\
+* third-party\android-filechooser\code\res\values-es\strings.xml
+* third-party\android-filechooser\code\res\values-hdpi\
+* third-party\android-filechooser\code\res\values-hdpi\dimens.xml
+* third-party\android-filechooser\code\res\values-ldpi\
+* third-party\android-filechooser\code\res\values-ldpi\dimens.xml
+* third-party\android-filechooser\code\res\values-mdpi\
+* third-party\android-filechooser\code\res\values-mdpi\dimens.xml
+* third-party\android-filechooser\code\res\values-ru\
+* third-party\android-filechooser\code\res\values-ru\strings.xml
+* third-party\android-filechooser\code\res\values-v11\
+* third-party\android-filechooser\code\res\values-v11\styles.xml
+* third-party\android-filechooser\code\res\values-v14\
+* third-party\android-filechooser\code\res\values-v14\styles.xml
+* third-party\android-filechooser\code\res\values-vi\
+* third-party\android-filechooser\code\res\values-vi\strings.xml
+* third-party\android-filechooser\code\res\values-xhdpi\
+* third-party\android-filechooser\code\res\values-xhdpi\dimens.xml
+* third-party\android-filechooser\code\res\values\
+* third-party\android-filechooser\code\res\values\colors.xml
+* third-party\android-filechooser\code\res\values\dimens.xml
+* third-party\android-filechooser\code\res\values\preferences.xml
+* third-party\android-filechooser\code\res\values\strings.xml
+* third-party\android-filechooser\code\res\values\styles.xml
+* third-party\android-filechooser\code\src\
+* third-party\android-filechooser\code\src\group\
+* third-party\android-filechooser\code\src\group\pals\
+* third-party\android-filechooser\code\src\group\pals\android\
+* third-party\android-filechooser\code\src\group\pals\android\lib\
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\FileChooserActivity.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\IFileAdapter.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\IFileDataModel.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\io\
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\io\IFile.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\io\IFileFilter.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\io\localfile\
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\io\localfile\LocalFile.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\io\localfile\ParentFile.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\prefs\
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\prefs\DisplayPrefs.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\prefs\Prefs.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\services\
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\services\FileProviderService.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\services\IFileProvider.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\services\LocalFileProvider.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\ActivityCompat.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\Converter.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\DateUtils.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\E.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\FileComparator.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\FileUtils.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\MimeTypes.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\TextUtils.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\Ui.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\Utils.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\history\
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\history\History.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\history\HistoryFilter.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\history\HistoryListener.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\history\HistoryStore.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\ui\
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\ui\ContextMenuUtils.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\ui\Dlg.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\ui\LoadingDialog.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\ui\MenuItemAdapter.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\ui\TaskListener.java
+* third-party\android-filechooser\code\src\group\pals\android\lib\ui\filechooser\utils\ui\ViewFilesContextMenuUtils.java
+* third-party\drag-sort-listview\
+* third-party\drag-sort-listview\CHANGELOG.md
+* third-party\drag-sort-listview\README.md
+* third-party\drag-sort-listview\library\
+* third-party\drag-sort-listview\library\.gitignore
+* third-party\drag-sort-listview\library\AndroidManifest.xml
+* third-party\drag-sort-listview\library\ant.properties
+* third-party\drag-sort-listview\library\build.xml
+* third-party\drag-sort-listview\library\pom.xml
+* third-party\drag-sort-listview\library\proguard-project.txt
+* third-party\drag-sort-listview\library\project.properties
+* third-party\drag-sort-listview\library\res\
+* third-party\drag-sort-listview\library\res\values\
+* third-party\drag-sort-listview\library\res\values\dslv_attrs.xml
+* third-party\drag-sort-listview\library\src\
+* third-party\drag-sort-listview\library\src\com\
+* third-party\drag-sort-listview\library\src\com\mobeta\
+* third-party\drag-sort-listview\library\src\com\mobeta\android\
+* third-party\drag-sort-listview\library\src\com\mobeta\android\dslv\
+* third-party\drag-sort-listview\library\src\com\mobeta\android\dslv\DragSortController.java
+* third-party\drag-sort-listview\library\src\com\mobeta\android\dslv\DragSortCursorAdapter.java
+* third-party\drag-sort-listview\library\src\com\mobeta\android\dslv\DragSortItemView.java
+* third-party\drag-sort-listview\library\src\com\mobeta\android\dslv\DragSortItemViewCheckable.java
+* third-party\drag-sort-listview\library\src\com\mobeta\android\dslv\DragSortListView.java
+* third-party\drag-sort-listview\library\src\com\mobeta\android\dslv\ResourceDragSortCursorAdapter.java
+* third-party\drag-sort-listview\library\src\com\mobeta\android\dslv\SimpleDragSortCursorAdapter.java
+* third-party\drag-sort-listview\library\src\com\mobeta\android\dslv\SimpleFloatViewManager.java
+* third-party\drag-sort-listview\pom.xml
+* third-party\drag-sort-listview\tools\
+* third-party\drag-sort-listview\tools\demo-sign-align.sh
+* third-party\drag-sort-listview\tools\doc-dslv.sh
+* third-party\drag-sort-listview\tools\dslv.py
+* third-party\drag-sort-listview\tools\pkg-dslv.sh
+
+From code:
+
+* build.xml
+* proguard-project.txt
+* proguard.cfg
+
+From library:
+
+* .gitignore
+* ant.properties
+* build.xml
+* pom.xml
+* proguard-project.txt
+
+Replaced Jars with Dependencies:
+--------------------------------
+The importer recognized the following .jar files as third party
+libraries and replaced them with Gradle dependencies instead. This has
+the advantage that more explicit version information is known, and the
+libraries can be updated automatically. However, it is possible that
+the .jar file in your project was of an older version than the
+dependency we picked, which could render the project not compileable.
+You can disable the jar replacement in the import wizard and try again:
+
+android-support-v4.jar => com.android.support:support-v4:18.0.0
+
+Moved Files:
+------------
+Android Gradle projects use a different directory structure than ADT
+Eclipse projects. Here's how the projects were restructured:
+
+In AmbilWarna:
+
+* AndroidManifest.xml => ambilWarna\src\main\AndroidManifest.xml
+* res\ => ambilWarna\src\main\res\
+* src\ => ambilWarna\src\main\java\
+
+In code:
+
+* AndroidManifest.xml => code\src\main\AndroidManifest.xml
+* res\ => code\src\main\res\
+* src\ => code\src\main\java\
+
+In library:
+
+* AndroidManifest.xml => library\src\main\AndroidManifest.xml
+* res\ => library\src\main\res\
+* src\ => library\src\main\java\
+
+In FBReaderJ:
+
+* AndroidManifest.xml => fBReaderJ\src\main\AndroidManifest.xml
+* assets\ => fBReaderJ\src\main\assets\
+* jni\ => fBReaderJ\src\main\jni\
+* libs\httpmime-4.2.5.jar => fBReaderJ\libs\httpmime-4.2.5.jar
+* libs\json-simple-1.1.1.jar => fBReaderJ\libs\json-simple-1.1.1.jar
+* libs\LingvoIntegration_2.5.2.12.jar => fBReaderJ\libs\LingvoIntegration_2.5.2.12.jar
+* libs\nanohttpd-2.0.5.jar => fBReaderJ\libs\nanohttpd-2.0.5.jar
+* libs\open-dictionary-api-1.2.1.jar => fBReaderJ\libs\open-dictionary-api-1.2.1.jar
+* libs\pdfparse.jar => fBReaderJ\libs\pdfparse.jar
+* res\ => fBReaderJ\src\main\res\
+* src\ => fBReaderJ\src\main\java\
+* src\org\geometerplus\android\fbreader\api\ApiInterface.aidl => fBReaderJ\src\main\aidl\org\geometerplus\android\fbreader\api\ApiInterface.aidl
+* src\org\geometerplus\android\fbreader\api\ApiObject.aidl => fBReaderJ\src\main\aidl\org\geometerplus\android\fbreader\api\ApiObject.aidl
+* src\org\geometerplus\android\fbreader\api\TextPosition.aidl => fBReaderJ\src\main\aidl\org\geometerplus\android\fbreader\api\TextPosition.aidl
+* src\org\geometerplus\android\fbreader\config\ConfigInterface.aidl => fBReaderJ\src\main\aidl\org\geometerplus\android\fbreader\config\ConfigInterface.aidl
+* src\org\geometerplus\android\fbreader\formatPlugin\CoverReader.aidl => fBReaderJ\src\main\aidl\org\geometerplus\android\fbreader\formatPlugin\CoverReader.aidl
+* src\org\geometerplus\android\fbreader\httpd\DataInterface.aidl => fBReaderJ\src\main\aidl\org\geometerplus\android\fbreader\httpd\DataInterface.aidl
+* src\org\geometerplus\android\fbreader\libraryService\LibraryInterface.aidl => fBReaderJ\src\main\aidl\org\geometerplus\android\fbreader\libraryService\LibraryInterface.aidl
+* src\org\geometerplus\android\fbreader\libraryService\PositionWithTimestamp.aidl => fBReaderJ\src\main\aidl\org\geometerplus\android\fbreader\libraryService\PositionWithTimestamp.aidl
+* src\org\geometerplus\android\fbreader\network\BookDownloaderInterface.aidl => fBReaderJ\src\main\aidl\org\geometerplus\android\fbreader\network\BookDownloaderInterface.aidl
+
+Next Steps:
+-----------
+You can now build the project. The Gradle project needs network
+connectivity to download dependencies.
+
+Bugs:
+-----
+If for some reason your project does not build, and you determine that
+it is due to a bug or limitation of the Eclipse to Gradle importer,
+please file a bug at http://b.android.com with category
+Component-Tools.
+
+(This import summary is for your information only, and can be deleted
+after import once you are satisfied with the results.)
diff --git a/VERSION b/VERSION
deleted file mode 100644
index b1b25a5ffae..00000000000
--- a/VERSION
+++ /dev/null
@@ -1 +0,0 @@
-2.2.2
diff --git a/ambilWarna/build.gradle b/ambilWarna/build.gradle
new file mode 100644
index 00000000000..e4ecd7bf250
--- /dev/null
+++ b/ambilWarna/build.gradle
@@ -0,0 +1,18 @@
+apply plugin: 'com.android.library'
+
+android {
+ compileSdkVersion 11
+ buildToolsVersion "21.1.2"
+
+ defaultConfig {
+ minSdkVersion 3
+ targetSdkVersion 3
+ }
+
+ buildTypes {
+ release {
+ minifyEnabled false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
+ }
+ }
+}
diff --git a/third-party/AmbilWarna/AndroidManifest.xml b/ambilWarna/src/main/AndroidManifest.xml
similarity index 100%
rename from third-party/AmbilWarna/AndroidManifest.xml
rename to ambilWarna/src/main/AndroidManifest.xml
diff --git a/third-party/AmbilWarna/src/yuku/ambilwarna/AmbilWarnaDialog.java b/ambilWarna/src/main/java/yuku/ambilwarna/AmbilWarnaDialog.java
similarity index 100%
rename from third-party/AmbilWarna/src/yuku/ambilwarna/AmbilWarnaDialog.java
rename to ambilWarna/src/main/java/yuku/ambilwarna/AmbilWarnaDialog.java
diff --git a/third-party/AmbilWarna/src/yuku/ambilwarna/AmbilWarnaKotak.java b/ambilWarna/src/main/java/yuku/ambilwarna/AmbilWarnaKotak.java
similarity index 100%
rename from third-party/AmbilWarna/src/yuku/ambilwarna/AmbilWarnaKotak.java
rename to ambilWarna/src/main/java/yuku/ambilwarna/AmbilWarnaKotak.java
diff --git a/third-party/AmbilWarna/src/yuku/ambilwarna/widget/AmbilWarnaPrefWidgetView.java b/ambilWarna/src/main/java/yuku/ambilwarna/widget/AmbilWarnaPrefWidgetView.java
similarity index 100%
rename from third-party/AmbilWarna/src/yuku/ambilwarna/widget/AmbilWarnaPrefWidgetView.java
rename to ambilWarna/src/main/java/yuku/ambilwarna/widget/AmbilWarnaPrefWidgetView.java
diff --git a/third-party/AmbilWarna/res/drawable-hdpi/ambilwarna_arrow_down.png b/ambilWarna/src/main/res/drawable-hdpi/ambilwarna_arrow_down.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable-hdpi/ambilwarna_arrow_down.png
rename to ambilWarna/src/main/res/drawable-hdpi/ambilwarna_arrow_down.png
diff --git a/third-party/AmbilWarna/res/drawable-hdpi/ambilwarna_arrow_right.png b/ambilWarna/src/main/res/drawable-hdpi/ambilwarna_arrow_right.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable-hdpi/ambilwarna_arrow_right.png
rename to ambilWarna/src/main/res/drawable-hdpi/ambilwarna_arrow_right.png
diff --git a/third-party/AmbilWarna/res/drawable-hdpi/ambilwarna_cursor.png b/ambilWarna/src/main/res/drawable-hdpi/ambilwarna_cursor.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable-hdpi/ambilwarna_cursor.png
rename to ambilWarna/src/main/res/drawable-hdpi/ambilwarna_cursor.png
diff --git a/third-party/AmbilWarna/res/drawable-hdpi/ambilwarna_target.png b/ambilWarna/src/main/res/drawable-hdpi/ambilwarna_target.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable-hdpi/ambilwarna_target.png
rename to ambilWarna/src/main/res/drawable-hdpi/ambilwarna_target.png
diff --git a/third-party/AmbilWarna/res/drawable-ldpi/ambilwarna_arrow_down.png b/ambilWarna/src/main/res/drawable-ldpi/ambilwarna_arrow_down.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable-ldpi/ambilwarna_arrow_down.png
rename to ambilWarna/src/main/res/drawable-ldpi/ambilwarna_arrow_down.png
diff --git a/third-party/AmbilWarna/res/drawable-ldpi/ambilwarna_arrow_right.png b/ambilWarna/src/main/res/drawable-ldpi/ambilwarna_arrow_right.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable-ldpi/ambilwarna_arrow_right.png
rename to ambilWarna/src/main/res/drawable-ldpi/ambilwarna_arrow_right.png
diff --git a/third-party/AmbilWarna/res/drawable-ldpi/ambilwarna_cursor.png b/ambilWarna/src/main/res/drawable-ldpi/ambilwarna_cursor.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable-ldpi/ambilwarna_cursor.png
rename to ambilWarna/src/main/res/drawable-ldpi/ambilwarna_cursor.png
diff --git a/third-party/AmbilWarna/res/drawable-ldpi/ambilwarna_target.png b/ambilWarna/src/main/res/drawable-ldpi/ambilwarna_target.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable-ldpi/ambilwarna_target.png
rename to ambilWarna/src/main/res/drawable-ldpi/ambilwarna_target.png
diff --git a/third-party/AmbilWarna/res/drawable-xhdpi/ambilwarna_arrow_down.png b/ambilWarna/src/main/res/drawable-xhdpi/ambilwarna_arrow_down.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable-xhdpi/ambilwarna_arrow_down.png
rename to ambilWarna/src/main/res/drawable-xhdpi/ambilwarna_arrow_down.png
diff --git a/third-party/AmbilWarna/res/drawable-xhdpi/ambilwarna_arrow_right.png b/ambilWarna/src/main/res/drawable-xhdpi/ambilwarna_arrow_right.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable-xhdpi/ambilwarna_arrow_right.png
rename to ambilWarna/src/main/res/drawable-xhdpi/ambilwarna_arrow_right.png
diff --git a/third-party/AmbilWarna/res/drawable-xhdpi/ambilwarna_cursor.png b/ambilWarna/src/main/res/drawable-xhdpi/ambilwarna_cursor.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable-xhdpi/ambilwarna_cursor.png
rename to ambilWarna/src/main/res/drawable-xhdpi/ambilwarna_cursor.png
diff --git a/third-party/AmbilWarna/res/drawable-xhdpi/ambilwarna_target.png b/ambilWarna/src/main/res/drawable-xhdpi/ambilwarna_target.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable-xhdpi/ambilwarna_target.png
rename to ambilWarna/src/main/res/drawable-xhdpi/ambilwarna_target.png
diff --git a/third-party/AmbilWarna/res/drawable/ambilwarna_arrow_down.png b/ambilWarna/src/main/res/drawable/ambilwarna_arrow_down.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable/ambilwarna_arrow_down.png
rename to ambilWarna/src/main/res/drawable/ambilwarna_arrow_down.png
diff --git a/third-party/AmbilWarna/res/drawable/ambilwarna_arrow_right.png b/ambilWarna/src/main/res/drawable/ambilwarna_arrow_right.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable/ambilwarna_arrow_right.png
rename to ambilWarna/src/main/res/drawable/ambilwarna_arrow_right.png
diff --git a/third-party/AmbilWarna/res/drawable/ambilwarna_cursor.png b/ambilWarna/src/main/res/drawable/ambilwarna_cursor.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable/ambilwarna_cursor.png
rename to ambilWarna/src/main/res/drawable/ambilwarna_cursor.png
diff --git a/third-party/AmbilWarna/res/drawable/ambilwarna_hue.png b/ambilWarna/src/main/res/drawable/ambilwarna_hue.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable/ambilwarna_hue.png
rename to ambilWarna/src/main/res/drawable/ambilwarna_hue.png
diff --git a/third-party/AmbilWarna/res/drawable/ambilwarna_target.png b/ambilWarna/src/main/res/drawable/ambilwarna_target.png
similarity index 100%
rename from third-party/AmbilWarna/res/drawable/ambilwarna_target.png
rename to ambilWarna/src/main/res/drawable/ambilwarna_target.png
diff --git a/third-party/AmbilWarna/res/layout-land/ambilwarna_dialog.xml b/ambilWarna/src/main/res/layout-land/ambilwarna_dialog.xml
similarity index 100%
rename from third-party/AmbilWarna/res/layout-land/ambilwarna_dialog.xml
rename to ambilWarna/src/main/res/layout-land/ambilwarna_dialog.xml
diff --git a/third-party/AmbilWarna/res/layout/ambilwarna_dialog.xml b/ambilWarna/src/main/res/layout/ambilwarna_dialog.xml
similarity index 100%
rename from third-party/AmbilWarna/res/layout/ambilwarna_dialog.xml
rename to ambilWarna/src/main/res/layout/ambilwarna_dialog.xml
diff --git a/third-party/AmbilWarna/res/layout/ambilwarna_pref_widget.xml b/ambilWarna/src/main/res/layout/ambilwarna_pref_widget.xml
similarity index 100%
rename from third-party/AmbilWarna/res/layout/ambilwarna_pref_widget.xml
rename to ambilWarna/src/main/res/layout/ambilwarna_pref_widget.xml
diff --git a/third-party/AmbilWarna/res/values-land/dimen.xml b/ambilWarna/src/main/res/values-land/dimen.xml
similarity index 100%
rename from third-party/AmbilWarna/res/values-land/dimen.xml
rename to ambilWarna/src/main/res/values-land/dimen.xml
diff --git a/third-party/AmbilWarna/res/values-xlarge-land/dimen.xml b/ambilWarna/src/main/res/values-xlarge-land/dimen.xml
similarity index 100%
rename from third-party/AmbilWarna/res/values-xlarge-land/dimen.xml
rename to ambilWarna/src/main/res/values-xlarge-land/dimen.xml
diff --git a/third-party/AmbilWarna/res/values/dimen.xml b/ambilWarna/src/main/res/values/dimen.xml
similarity index 100%
rename from third-party/AmbilWarna/res/values/dimen.xml
rename to ambilWarna/src/main/res/values/dimen.xml
diff --git a/ant.properties b/ant.properties
deleted file mode 100644
index dfedffdf262..00000000000
--- a/ant.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-# This file is used to override default values used by the Ant build system.
-#
-# This file must be checked in Version Control Systems, as it is
-# integral to the build system of your project.
-
-# This file is only used by the Ant script.
-
-# You can use this to override default values such as
-# 'source.dir' for the location of your java source folder and
-# 'out.dir' for the location of your output folder.
-
-# You can also use it define how the release builds are signed by declaring
-# the following properties:
-# 'key.store' for the location of your keystore and
-# 'key.alias' for the name of the key to use.
-# The password will be asked during the build when you use the 'release' target.
-
-application-package=org.geometerplus.zlibrary.ui.android.library
diff --git a/build.gradle b/build.gradle
new file mode 100644
index 00000000000..e26cdeef216
--- /dev/null
+++ b/build.gradle
@@ -0,0 +1,15 @@
+// Top-level build file where you can add configuration options common to all sub-projects/modules.
+buildscript {
+ repositories {
+ jcenter()
+ }
+ dependencies {
+ classpath 'com.android.tools.build:gradle:1.0.0'
+ }
+}
+
+allprojects {
+ repositories {
+ jcenter()
+ }
+}
diff --git a/build.xml b/build.xml
deleted file mode 100644
index b0eca4734ff..00000000000
--- a/build.xml
+++ /dev/null
@@ -1,100 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/build/intermediates/dex-cache/cache.xml b/build/intermediates/dex-cache/cache.xml
new file mode 100644
index 00000000000..8c059d1e586
--- /dev/null
+++ b/build/intermediates/dex-cache/cache.xml
@@ -0,0 +1,89 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/code/build.gradle b/code/build.gradle
new file mode 100644
index 00000000000..5badaebcbf2
--- /dev/null
+++ b/code/build.gradle
@@ -0,0 +1,18 @@
+apply plugin: 'com.android.library'
+
+android {
+ compileSdkVersion 14
+ buildToolsVersion "21.1.2"
+
+ defaultConfig {
+ minSdkVersion 4
+ targetSdkVersion 16
+ }
+
+ buildTypes {
+ release {
+ minifyEnabled false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
+ }
+ }
+}
diff --git a/third-party/android-filechooser/code/AndroidManifest.xml b/code/src/main/AndroidManifest.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/AndroidManifest.xml
rename to code/src/main/AndroidManifest.xml
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/FileChooserActivity.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/FileChooserActivity.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/FileChooserActivity.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/FileChooserActivity.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/IFileAdapter.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/IFileAdapter.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/IFileAdapter.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/IFileAdapter.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/IFileDataModel.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/IFileDataModel.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/IFileDataModel.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/IFileDataModel.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/io/IFile.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/io/IFile.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/io/IFile.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/io/IFile.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/io/IFileFilter.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/io/IFileFilter.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/io/IFileFilter.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/io/IFileFilter.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/io/localfile/LocalFile.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/io/localfile/LocalFile.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/io/localfile/LocalFile.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/io/localfile/LocalFile.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/io/localfile/ParentFile.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/io/localfile/ParentFile.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/io/localfile/ParentFile.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/io/localfile/ParentFile.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/prefs/DisplayPrefs.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/prefs/DisplayPrefs.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/prefs/DisplayPrefs.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/prefs/DisplayPrefs.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/prefs/Prefs.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/prefs/Prefs.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/prefs/Prefs.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/prefs/Prefs.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/services/FileProviderService.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/services/FileProviderService.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/services/FileProviderService.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/services/FileProviderService.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/services/IFileProvider.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/services/IFileProvider.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/services/IFileProvider.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/services/IFileProvider.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/services/LocalFileProvider.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/services/LocalFileProvider.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/services/LocalFileProvider.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/services/LocalFileProvider.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/ActivityCompat.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/ActivityCompat.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/ActivityCompat.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/ActivityCompat.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/Converter.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/Converter.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/Converter.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/Converter.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/DateUtils.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/DateUtils.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/DateUtils.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/DateUtils.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/E.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/E.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/E.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/E.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/FileComparator.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/FileComparator.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/FileComparator.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/FileComparator.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/FileUtils.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/FileUtils.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/FileUtils.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/FileUtils.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/MimeTypes.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/MimeTypes.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/MimeTypes.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/MimeTypes.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/TextUtils.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/TextUtils.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/TextUtils.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/TextUtils.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/Ui.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/Ui.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/Ui.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/Ui.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/Utils.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/Utils.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/Utils.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/Utils.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/history/History.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/history/History.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/history/History.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/history/History.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/history/HistoryFilter.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/history/HistoryFilter.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/history/HistoryFilter.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/history/HistoryFilter.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/history/HistoryListener.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/history/HistoryListener.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/history/HistoryListener.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/history/HistoryListener.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/history/HistoryStore.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/history/HistoryStore.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/history/HistoryStore.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/history/HistoryStore.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/ui/ContextMenuUtils.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/ui/ContextMenuUtils.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/ui/ContextMenuUtils.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/ui/ContextMenuUtils.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/ui/Dlg.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/ui/Dlg.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/ui/Dlg.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/ui/Dlg.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/ui/LoadingDialog.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/ui/LoadingDialog.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/ui/LoadingDialog.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/ui/LoadingDialog.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/ui/MenuItemAdapter.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/ui/MenuItemAdapter.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/ui/MenuItemAdapter.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/ui/MenuItemAdapter.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/ui/TaskListener.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/ui/TaskListener.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/ui/TaskListener.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/ui/TaskListener.java
diff --git a/third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/ui/ViewFilesContextMenuUtils.java b/code/src/main/java/group/pals/android/lib/ui/filechooser/utils/ui/ViewFilesContextMenuUtils.java
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/src/group/pals/android/lib/ui/filechooser/utils/ui/ViewFilesContextMenuUtils.java
rename to code/src/main/java/group/pals/android/lib/ui/filechooser/utils/ui/ViewFilesContextMenuUtils.java
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_gridview.png b/code/src/main/res/drawable-hdpi-v11/afc_ic_menu_gridview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_gridview.png
rename to code/src/main/res/drawable-hdpi-v11/afc_ic_menu_gridview.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_home.png b/code/src/main/res/drawable-hdpi-v11/afc_ic_menu_home.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_home.png
rename to code/src/main/res/drawable-hdpi-v11/afc_ic_menu_home.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_listview.png b/code/src/main/res/drawable-hdpi-v11/afc_ic_menu_listview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_listview.png
rename to code/src/main/res/drawable-hdpi-v11/afc_ic_menu_listview.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_reload.png b/code/src/main/res/drawable-hdpi-v11/afc_ic_menu_reload.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_reload.png
rename to code/src/main/res/drawable-hdpi-v11/afc_ic_menu_reload.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_sort_by_date_asc.png b/code/src/main/res/drawable-hdpi-v11/afc_ic_menu_sort_by_date_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_sort_by_date_asc.png
rename to code/src/main/res/drawable-hdpi-v11/afc_ic_menu_sort_by_date_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_sort_by_date_desc.png b/code/src/main/res/drawable-hdpi-v11/afc_ic_menu_sort_by_date_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_sort_by_date_desc.png
rename to code/src/main/res/drawable-hdpi-v11/afc_ic_menu_sort_by_date_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_sort_by_name_asc.png b/code/src/main/res/drawable-hdpi-v11/afc_ic_menu_sort_by_name_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_sort_by_name_asc.png
rename to code/src/main/res/drawable-hdpi-v11/afc_ic_menu_sort_by_name_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_sort_by_name_desc.png b/code/src/main/res/drawable-hdpi-v11/afc_ic_menu_sort_by_name_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_sort_by_name_desc.png
rename to code/src/main/res/drawable-hdpi-v11/afc_ic_menu_sort_by_name_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_sort_by_size_asc.png b/code/src/main/res/drawable-hdpi-v11/afc_ic_menu_sort_by_size_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_sort_by_size_asc.png
rename to code/src/main/res/drawable-hdpi-v11/afc_ic_menu_sort_by_size_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_sort_by_size_desc.png b/code/src/main/res/drawable-hdpi-v11/afc_ic_menu_sort_by_size_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi-v11/afc_ic_menu_sort_by_size_desc.png
rename to code/src/main/res/drawable-hdpi-v11/afc_ic_menu_sort_by_size_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_create_folder.png b/code/src/main/res/drawable-hdpi/afc_button_create_folder.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_create_folder.png
rename to code/src/main/res/drawable-hdpi/afc_button_create_folder.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_create_folder_disabled.png b/code/src/main/res/drawable-hdpi/afc_button_create_folder_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_create_folder_disabled.png
rename to code/src/main/res/drawable-hdpi/afc_button_create_folder_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_create_folder_pressed.png b/code/src/main/res/drawable-hdpi/afc_button_create_folder_pressed.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_create_folder_pressed.png
rename to code/src/main/res/drawable-hdpi/afc_button_create_folder_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_folders_view_grid.png b/code/src/main/res/drawable-hdpi/afc_button_folders_view_grid.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_folders_view_grid.png
rename to code/src/main/res/drawable-hdpi/afc_button_folders_view_grid.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_folders_view_grid_disabled.png b/code/src/main/res/drawable-hdpi/afc_button_folders_view_grid_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_folders_view_grid_disabled.png
rename to code/src/main/res/drawable-hdpi/afc_button_folders_view_grid_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_folders_view_grid_pressed.png b/code/src/main/res/drawable-hdpi/afc_button_folders_view_grid_pressed.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_folders_view_grid_pressed.png
rename to code/src/main/res/drawable-hdpi/afc_button_folders_view_grid_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_folders_view_list.png b/code/src/main/res/drawable-hdpi/afc_button_folders_view_list.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_folders_view_list.png
rename to code/src/main/res/drawable-hdpi/afc_button_folders_view_list.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_folders_view_list_disabled.png b/code/src/main/res/drawable-hdpi/afc_button_folders_view_list_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_folders_view_list_disabled.png
rename to code/src/main/res/drawable-hdpi/afc_button_folders_view_list_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_folders_view_list_pressed.png b/code/src/main/res/drawable-hdpi/afc_button_folders_view_list_pressed.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_folders_view_list_pressed.png
rename to code/src/main/res/drawable-hdpi/afc_button_folders_view_list_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_navi_left.png b/code/src/main/res/drawable-hdpi/afc_button_navi_left.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_navi_left.png
rename to code/src/main/res/drawable-hdpi/afc_button_navi_left.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_navi_left_disabled.png b/code/src/main/res/drawable-hdpi/afc_button_navi_left_disabled.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_navi_left_disabled.png
rename to code/src/main/res/drawable-hdpi/afc_button_navi_left_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_navi_left_pressed.png b/code/src/main/res/drawable-hdpi/afc_button_navi_left_pressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_navi_left_pressed.png
rename to code/src/main/res/drawable-hdpi/afc_button_navi_left_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_navi_right.png b/code/src/main/res/drawable-hdpi/afc_button_navi_right.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_navi_right.png
rename to code/src/main/res/drawable-hdpi/afc_button_navi_right.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_navi_right_disabled.png b/code/src/main/res/drawable-hdpi/afc_button_navi_right_disabled.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_navi_right_disabled.png
rename to code/src/main/res/drawable-hdpi/afc_button_navi_right_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_navi_right_pressed.png b/code/src/main/res/drawable-hdpi/afc_button_navi_right_pressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_navi_right_pressed.png
rename to code/src/main/res/drawable-hdpi/afc_button_navi_right_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_ok_saveas.png b/code/src/main/res/drawable-hdpi/afc_button_ok_saveas.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_ok_saveas.png
rename to code/src/main/res/drawable-hdpi/afc_button_ok_saveas.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_ok_saveas_pressed.png b/code/src/main/res/drawable-hdpi/afc_button_ok_saveas_pressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_ok_saveas_pressed.png
rename to code/src/main/res/drawable-hdpi/afc_button_ok_saveas_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_sort_as.png b/code/src/main/res/drawable-hdpi/afc_button_sort_as.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_sort_as.png
rename to code/src/main/res/drawable-hdpi/afc_button_sort_as.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_sort_as_disabled.png b/code/src/main/res/drawable-hdpi/afc_button_sort_as_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_sort_as_disabled.png
rename to code/src/main/res/drawable-hdpi/afc_button_sort_as_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_sort_as_pressed.png b/code/src/main/res/drawable-hdpi/afc_button_sort_as_pressed.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_sort_as_pressed.png
rename to code/src/main/res/drawable-hdpi/afc_button_sort_as_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_sort_de.png b/code/src/main/res/drawable-hdpi/afc_button_sort_de.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_sort_de.png
rename to code/src/main/res/drawable-hdpi/afc_button_sort_de.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_sort_de_disabled.png b/code/src/main/res/drawable-hdpi/afc_button_sort_de_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_sort_de_disabled.png
rename to code/src/main/res/drawable-hdpi/afc_button_sort_de_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_button_sort_de_pressed.png b/code/src/main/res/drawable-hdpi/afc_button_sort_de_pressed.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_button_sort_de_pressed.png
rename to code/src/main/res/drawable-hdpi/afc_button_sort_de_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_context_menu_item_divider.png b/code/src/main/res/drawable-hdpi/afc_context_menu_item_divider.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_context_menu_item_divider.png
rename to code/src/main/res/drawable-hdpi/afc_context_menu_item_divider.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_file.png b/code/src/main/res/drawable-hdpi/afc_file.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_file.png
rename to code/src/main/res/drawable-hdpi/afc_file.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_file_audio.png b/code/src/main/res/drawable-hdpi/afc_file_audio.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_file_audio.png
rename to code/src/main/res/drawable-hdpi/afc_file_audio.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_file_compressed.png b/code/src/main/res/drawable-hdpi/afc_file_compressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_file_compressed.png
rename to code/src/main/res/drawable-hdpi/afc_file_compressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_file_disabled.png b/code/src/main/res/drawable-hdpi/afc_file_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_file_disabled.png
rename to code/src/main/res/drawable-hdpi/afc_file_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_file_image.png b/code/src/main/res/drawable-hdpi/afc_file_image.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_file_image.png
rename to code/src/main/res/drawable-hdpi/afc_file_image.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_file_plain_text.png b/code/src/main/res/drawable-hdpi/afc_file_plain_text.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_file_plain_text.png
rename to code/src/main/res/drawable-hdpi/afc_file_plain_text.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_file_video.png b/code/src/main/res/drawable-hdpi/afc_file_video.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_file_video.png
rename to code/src/main/res/drawable-hdpi/afc_file_video.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_folder.png b/code/src/main/res/drawable-hdpi/afc_folder.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_folder.png
rename to code/src/main/res/drawable-hdpi/afc_folder.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_folder_disabled.png b/code/src/main/res/drawable-hdpi/afc_folder_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_folder_disabled.png
rename to code/src/main/res/drawable-hdpi/afc_folder_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_folder_locked.png b/code/src/main/res/drawable-hdpi/afc_folder_locked.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_folder_locked.png
rename to code/src/main/res/drawable-hdpi/afc_folder_locked.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_gridview.png b/code/src/main/res/drawable-hdpi/afc_ic_menu_gridview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_gridview.png
rename to code/src/main/res/drawable-hdpi/afc_ic_menu_gridview.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_home.png b/code/src/main/res/drawable-hdpi/afc_ic_menu_home.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_home.png
rename to code/src/main/res/drawable-hdpi/afc_ic_menu_home.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_listview.png b/code/src/main/res/drawable-hdpi/afc_ic_menu_listview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_listview.png
rename to code/src/main/res/drawable-hdpi/afc_ic_menu_listview.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_reload.png b/code/src/main/res/drawable-hdpi/afc_ic_menu_reload.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_reload.png
rename to code/src/main/res/drawable-hdpi/afc_ic_menu_reload.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_sort_by_date_asc.png b/code/src/main/res/drawable-hdpi/afc_ic_menu_sort_by_date_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_sort_by_date_asc.png
rename to code/src/main/res/drawable-hdpi/afc_ic_menu_sort_by_date_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_sort_by_date_desc.png b/code/src/main/res/drawable-hdpi/afc_ic_menu_sort_by_date_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_sort_by_date_desc.png
rename to code/src/main/res/drawable-hdpi/afc_ic_menu_sort_by_date_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_sort_by_name_asc.png b/code/src/main/res/drawable-hdpi/afc_ic_menu_sort_by_name_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_sort_by_name_asc.png
rename to code/src/main/res/drawable-hdpi/afc_ic_menu_sort_by_name_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_sort_by_name_desc.png b/code/src/main/res/drawable-hdpi/afc_ic_menu_sort_by_name_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_sort_by_name_desc.png
rename to code/src/main/res/drawable-hdpi/afc_ic_menu_sort_by_name_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_sort_by_size_asc.png b/code/src/main/res/drawable-hdpi/afc_ic_menu_sort_by_size_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_sort_by_size_asc.png
rename to code/src/main/res/drawable-hdpi/afc_ic_menu_sort_by_size_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_sort_by_size_desc.png b/code/src/main/res/drawable-hdpi/afc_ic_menu_sort_by_size_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-hdpi/afc_ic_menu_sort_by_size_desc.png
rename to code/src/main/res/drawable-hdpi/afc_ic_menu_sort_by_size_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_gridview.png b/code/src/main/res/drawable-ldpi-v11/afc_ic_menu_gridview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_gridview.png
rename to code/src/main/res/drawable-ldpi-v11/afc_ic_menu_gridview.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_home.png b/code/src/main/res/drawable-ldpi-v11/afc_ic_menu_home.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_home.png
rename to code/src/main/res/drawable-ldpi-v11/afc_ic_menu_home.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_listview.png b/code/src/main/res/drawable-ldpi-v11/afc_ic_menu_listview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_listview.png
rename to code/src/main/res/drawable-ldpi-v11/afc_ic_menu_listview.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_reload.png b/code/src/main/res/drawable-ldpi-v11/afc_ic_menu_reload.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_reload.png
rename to code/src/main/res/drawable-ldpi-v11/afc_ic_menu_reload.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_sort_by_date_asc.png b/code/src/main/res/drawable-ldpi-v11/afc_ic_menu_sort_by_date_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_sort_by_date_asc.png
rename to code/src/main/res/drawable-ldpi-v11/afc_ic_menu_sort_by_date_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_sort_by_date_desc.png b/code/src/main/res/drawable-ldpi-v11/afc_ic_menu_sort_by_date_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_sort_by_date_desc.png
rename to code/src/main/res/drawable-ldpi-v11/afc_ic_menu_sort_by_date_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_sort_by_name_asc.png b/code/src/main/res/drawable-ldpi-v11/afc_ic_menu_sort_by_name_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_sort_by_name_asc.png
rename to code/src/main/res/drawable-ldpi-v11/afc_ic_menu_sort_by_name_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_sort_by_name_desc.png b/code/src/main/res/drawable-ldpi-v11/afc_ic_menu_sort_by_name_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_sort_by_name_desc.png
rename to code/src/main/res/drawable-ldpi-v11/afc_ic_menu_sort_by_name_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_sort_by_size_asc.png b/code/src/main/res/drawable-ldpi-v11/afc_ic_menu_sort_by_size_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_sort_by_size_asc.png
rename to code/src/main/res/drawable-ldpi-v11/afc_ic_menu_sort_by_size_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_sort_by_size_desc.png b/code/src/main/res/drawable-ldpi-v11/afc_ic_menu_sort_by_size_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi-v11/afc_ic_menu_sort_by_size_desc.png
rename to code/src/main/res/drawable-ldpi-v11/afc_ic_menu_sort_by_size_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_create_folder.png b/code/src/main/res/drawable-ldpi/afc_button_create_folder.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_create_folder.png
rename to code/src/main/res/drawable-ldpi/afc_button_create_folder.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_create_folder_disabled.png b/code/src/main/res/drawable-ldpi/afc_button_create_folder_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_create_folder_disabled.png
rename to code/src/main/res/drawable-ldpi/afc_button_create_folder_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_create_folder_pressed.png b/code/src/main/res/drawable-ldpi/afc_button_create_folder_pressed.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_create_folder_pressed.png
rename to code/src/main/res/drawable-ldpi/afc_button_create_folder_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_folders_view_grid.png b/code/src/main/res/drawable-ldpi/afc_button_folders_view_grid.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_folders_view_grid.png
rename to code/src/main/res/drawable-ldpi/afc_button_folders_view_grid.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_folders_view_grid_disabled.png b/code/src/main/res/drawable-ldpi/afc_button_folders_view_grid_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_folders_view_grid_disabled.png
rename to code/src/main/res/drawable-ldpi/afc_button_folders_view_grid_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_folders_view_grid_pressed.png b/code/src/main/res/drawable-ldpi/afc_button_folders_view_grid_pressed.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_folders_view_grid_pressed.png
rename to code/src/main/res/drawable-ldpi/afc_button_folders_view_grid_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_folders_view_list.png b/code/src/main/res/drawable-ldpi/afc_button_folders_view_list.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_folders_view_list.png
rename to code/src/main/res/drawable-ldpi/afc_button_folders_view_list.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_folders_view_list_disabled.png b/code/src/main/res/drawable-ldpi/afc_button_folders_view_list_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_folders_view_list_disabled.png
rename to code/src/main/res/drawable-ldpi/afc_button_folders_view_list_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_folders_view_list_pressed.png b/code/src/main/res/drawable-ldpi/afc_button_folders_view_list_pressed.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_folders_view_list_pressed.png
rename to code/src/main/res/drawable-ldpi/afc_button_folders_view_list_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_navi_left.png b/code/src/main/res/drawable-ldpi/afc_button_navi_left.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_navi_left.png
rename to code/src/main/res/drawable-ldpi/afc_button_navi_left.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_navi_left_disabled.png b/code/src/main/res/drawable-ldpi/afc_button_navi_left_disabled.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_navi_left_disabled.png
rename to code/src/main/res/drawable-ldpi/afc_button_navi_left_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_navi_left_pressed.png b/code/src/main/res/drawable-ldpi/afc_button_navi_left_pressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_navi_left_pressed.png
rename to code/src/main/res/drawable-ldpi/afc_button_navi_left_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_navi_right.png b/code/src/main/res/drawable-ldpi/afc_button_navi_right.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_navi_right.png
rename to code/src/main/res/drawable-ldpi/afc_button_navi_right.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_navi_right_disabled.png b/code/src/main/res/drawable-ldpi/afc_button_navi_right_disabled.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_navi_right_disabled.png
rename to code/src/main/res/drawable-ldpi/afc_button_navi_right_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_navi_right_pressed.png b/code/src/main/res/drawable-ldpi/afc_button_navi_right_pressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_navi_right_pressed.png
rename to code/src/main/res/drawable-ldpi/afc_button_navi_right_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_ok_saveas.png b/code/src/main/res/drawable-ldpi/afc_button_ok_saveas.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_ok_saveas.png
rename to code/src/main/res/drawable-ldpi/afc_button_ok_saveas.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_button_ok_saveas_pressed.png b/code/src/main/res/drawable-ldpi/afc_button_ok_saveas_pressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_button_ok_saveas_pressed.png
rename to code/src/main/res/drawable-ldpi/afc_button_ok_saveas_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_context_menu_item_divider.png b/code/src/main/res/drawable-ldpi/afc_context_menu_item_divider.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_context_menu_item_divider.png
rename to code/src/main/res/drawable-ldpi/afc_context_menu_item_divider.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_file.png b/code/src/main/res/drawable-ldpi/afc_file.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_file.png
rename to code/src/main/res/drawable-ldpi/afc_file.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_file_audio.png b/code/src/main/res/drawable-ldpi/afc_file_audio.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_file_audio.png
rename to code/src/main/res/drawable-ldpi/afc_file_audio.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_file_compressed.png b/code/src/main/res/drawable-ldpi/afc_file_compressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_file_compressed.png
rename to code/src/main/res/drawable-ldpi/afc_file_compressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_file_disabled.png b/code/src/main/res/drawable-ldpi/afc_file_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_file_disabled.png
rename to code/src/main/res/drawable-ldpi/afc_file_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_file_image.png b/code/src/main/res/drawable-ldpi/afc_file_image.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_file_image.png
rename to code/src/main/res/drawable-ldpi/afc_file_image.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_file_plain_text.png b/code/src/main/res/drawable-ldpi/afc_file_plain_text.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_file_plain_text.png
rename to code/src/main/res/drawable-ldpi/afc_file_plain_text.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_file_video.png b/code/src/main/res/drawable-ldpi/afc_file_video.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_file_video.png
rename to code/src/main/res/drawable-ldpi/afc_file_video.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_folder.png b/code/src/main/res/drawable-ldpi/afc_folder.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_folder.png
rename to code/src/main/res/drawable-ldpi/afc_folder.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_folder_disabled.png b/code/src/main/res/drawable-ldpi/afc_folder_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_folder_disabled.png
rename to code/src/main/res/drawable-ldpi/afc_folder_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_folder_locked.png b/code/src/main/res/drawable-ldpi/afc_folder_locked.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_folder_locked.png
rename to code/src/main/res/drawable-ldpi/afc_folder_locked.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_gridview.png b/code/src/main/res/drawable-ldpi/afc_ic_menu_gridview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_gridview.png
rename to code/src/main/res/drawable-ldpi/afc_ic_menu_gridview.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_home.png b/code/src/main/res/drawable-ldpi/afc_ic_menu_home.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_home.png
rename to code/src/main/res/drawable-ldpi/afc_ic_menu_home.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_listview.png b/code/src/main/res/drawable-ldpi/afc_ic_menu_listview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_listview.png
rename to code/src/main/res/drawable-ldpi/afc_ic_menu_listview.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_reload.png b/code/src/main/res/drawable-ldpi/afc_ic_menu_reload.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_reload.png
rename to code/src/main/res/drawable-ldpi/afc_ic_menu_reload.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_sort_by_date_asc.png b/code/src/main/res/drawable-ldpi/afc_ic_menu_sort_by_date_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_sort_by_date_asc.png
rename to code/src/main/res/drawable-ldpi/afc_ic_menu_sort_by_date_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_sort_by_date_desc.png b/code/src/main/res/drawable-ldpi/afc_ic_menu_sort_by_date_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_sort_by_date_desc.png
rename to code/src/main/res/drawable-ldpi/afc_ic_menu_sort_by_date_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_sort_by_name_asc.png b/code/src/main/res/drawable-ldpi/afc_ic_menu_sort_by_name_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_sort_by_name_asc.png
rename to code/src/main/res/drawable-ldpi/afc_ic_menu_sort_by_name_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_sort_by_name_desc.png b/code/src/main/res/drawable-ldpi/afc_ic_menu_sort_by_name_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_sort_by_name_desc.png
rename to code/src/main/res/drawable-ldpi/afc_ic_menu_sort_by_name_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_sort_by_size_asc.png b/code/src/main/res/drawable-ldpi/afc_ic_menu_sort_by_size_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_sort_by_size_asc.png
rename to code/src/main/res/drawable-ldpi/afc_ic_menu_sort_by_size_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_sort_by_size_desc.png b/code/src/main/res/drawable-ldpi/afc_ic_menu_sort_by_size_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-ldpi/afc_ic_menu_sort_by_size_desc.png
rename to code/src/main/res/drawable-ldpi/afc_ic_menu_sort_by_size_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_gridview.png b/code/src/main/res/drawable-mdpi-v11/afc_ic_menu_gridview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_gridview.png
rename to code/src/main/res/drawable-mdpi-v11/afc_ic_menu_gridview.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_home.png b/code/src/main/res/drawable-mdpi-v11/afc_ic_menu_home.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_home.png
rename to code/src/main/res/drawable-mdpi-v11/afc_ic_menu_home.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_listview.png b/code/src/main/res/drawable-mdpi-v11/afc_ic_menu_listview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_listview.png
rename to code/src/main/res/drawable-mdpi-v11/afc_ic_menu_listview.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_reload.png b/code/src/main/res/drawable-mdpi-v11/afc_ic_menu_reload.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_reload.png
rename to code/src/main/res/drawable-mdpi-v11/afc_ic_menu_reload.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_sort_by_date_asc.png b/code/src/main/res/drawable-mdpi-v11/afc_ic_menu_sort_by_date_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_sort_by_date_asc.png
rename to code/src/main/res/drawable-mdpi-v11/afc_ic_menu_sort_by_date_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_sort_by_date_desc.png b/code/src/main/res/drawable-mdpi-v11/afc_ic_menu_sort_by_date_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_sort_by_date_desc.png
rename to code/src/main/res/drawable-mdpi-v11/afc_ic_menu_sort_by_date_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_sort_by_name_asc.png b/code/src/main/res/drawable-mdpi-v11/afc_ic_menu_sort_by_name_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_sort_by_name_asc.png
rename to code/src/main/res/drawable-mdpi-v11/afc_ic_menu_sort_by_name_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_sort_by_name_desc.png b/code/src/main/res/drawable-mdpi-v11/afc_ic_menu_sort_by_name_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_sort_by_name_desc.png
rename to code/src/main/res/drawable-mdpi-v11/afc_ic_menu_sort_by_name_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_sort_by_size_asc.png b/code/src/main/res/drawable-mdpi-v11/afc_ic_menu_sort_by_size_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_sort_by_size_asc.png
rename to code/src/main/res/drawable-mdpi-v11/afc_ic_menu_sort_by_size_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_sort_by_size_desc.png b/code/src/main/res/drawable-mdpi-v11/afc_ic_menu_sort_by_size_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi-v11/afc_ic_menu_sort_by_size_desc.png
rename to code/src/main/res/drawable-mdpi-v11/afc_ic_menu_sort_by_size_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_create_folder.png b/code/src/main/res/drawable-mdpi/afc_button_create_folder.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_create_folder.png
rename to code/src/main/res/drawable-mdpi/afc_button_create_folder.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_create_folder_disabled.png b/code/src/main/res/drawable-mdpi/afc_button_create_folder_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_create_folder_disabled.png
rename to code/src/main/res/drawable-mdpi/afc_button_create_folder_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_create_folder_pressed.png b/code/src/main/res/drawable-mdpi/afc_button_create_folder_pressed.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_create_folder_pressed.png
rename to code/src/main/res/drawable-mdpi/afc_button_create_folder_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_folders_view_grid.png b/code/src/main/res/drawable-mdpi/afc_button_folders_view_grid.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_folders_view_grid.png
rename to code/src/main/res/drawable-mdpi/afc_button_folders_view_grid.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_folders_view_grid_disabled.png b/code/src/main/res/drawable-mdpi/afc_button_folders_view_grid_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_folders_view_grid_disabled.png
rename to code/src/main/res/drawable-mdpi/afc_button_folders_view_grid_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_folders_view_grid_pressed.png b/code/src/main/res/drawable-mdpi/afc_button_folders_view_grid_pressed.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_folders_view_grid_pressed.png
rename to code/src/main/res/drawable-mdpi/afc_button_folders_view_grid_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_folders_view_list.png b/code/src/main/res/drawable-mdpi/afc_button_folders_view_list.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_folders_view_list.png
rename to code/src/main/res/drawable-mdpi/afc_button_folders_view_list.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_folders_view_list_disabled.png b/code/src/main/res/drawable-mdpi/afc_button_folders_view_list_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_folders_view_list_disabled.png
rename to code/src/main/res/drawable-mdpi/afc_button_folders_view_list_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_folders_view_list_pressed.png b/code/src/main/res/drawable-mdpi/afc_button_folders_view_list_pressed.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_folders_view_list_pressed.png
rename to code/src/main/res/drawable-mdpi/afc_button_folders_view_list_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_navi_left.png b/code/src/main/res/drawable-mdpi/afc_button_navi_left.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_navi_left.png
rename to code/src/main/res/drawable-mdpi/afc_button_navi_left.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_navi_left_disabled.png b/code/src/main/res/drawable-mdpi/afc_button_navi_left_disabled.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_navi_left_disabled.png
rename to code/src/main/res/drawable-mdpi/afc_button_navi_left_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_navi_left_pressed.png b/code/src/main/res/drawable-mdpi/afc_button_navi_left_pressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_navi_left_pressed.png
rename to code/src/main/res/drawable-mdpi/afc_button_navi_left_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_navi_right.png b/code/src/main/res/drawable-mdpi/afc_button_navi_right.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_navi_right.png
rename to code/src/main/res/drawable-mdpi/afc_button_navi_right.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_navi_right_disabled.png b/code/src/main/res/drawable-mdpi/afc_button_navi_right_disabled.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_navi_right_disabled.png
rename to code/src/main/res/drawable-mdpi/afc_button_navi_right_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_navi_right_pressed.png b/code/src/main/res/drawable-mdpi/afc_button_navi_right_pressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_navi_right_pressed.png
rename to code/src/main/res/drawable-mdpi/afc_button_navi_right_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_ok_saveas.png b/code/src/main/res/drawable-mdpi/afc_button_ok_saveas.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_ok_saveas.png
rename to code/src/main/res/drawable-mdpi/afc_button_ok_saveas.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_button_ok_saveas_pressed.png b/code/src/main/res/drawable-mdpi/afc_button_ok_saveas_pressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_button_ok_saveas_pressed.png
rename to code/src/main/res/drawable-mdpi/afc_button_ok_saveas_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_context_menu_item_divider.png b/code/src/main/res/drawable-mdpi/afc_context_menu_item_divider.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_context_menu_item_divider.png
rename to code/src/main/res/drawable-mdpi/afc_context_menu_item_divider.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_file.png b/code/src/main/res/drawable-mdpi/afc_file.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_file.png
rename to code/src/main/res/drawable-mdpi/afc_file.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_file_audio.png b/code/src/main/res/drawable-mdpi/afc_file_audio.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_file_audio.png
rename to code/src/main/res/drawable-mdpi/afc_file_audio.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_file_compressed.png b/code/src/main/res/drawable-mdpi/afc_file_compressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_file_compressed.png
rename to code/src/main/res/drawable-mdpi/afc_file_compressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_file_disabled.png b/code/src/main/res/drawable-mdpi/afc_file_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_file_disabled.png
rename to code/src/main/res/drawable-mdpi/afc_file_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_file_image.png b/code/src/main/res/drawable-mdpi/afc_file_image.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_file_image.png
rename to code/src/main/res/drawable-mdpi/afc_file_image.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_file_plain_text.png b/code/src/main/res/drawable-mdpi/afc_file_plain_text.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_file_plain_text.png
rename to code/src/main/res/drawable-mdpi/afc_file_plain_text.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_file_video.png b/code/src/main/res/drawable-mdpi/afc_file_video.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_file_video.png
rename to code/src/main/res/drawable-mdpi/afc_file_video.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_folder.png b/code/src/main/res/drawable-mdpi/afc_folder.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_folder.png
rename to code/src/main/res/drawable-mdpi/afc_folder.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_folder_disabled.png b/code/src/main/res/drawable-mdpi/afc_folder_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_folder_disabled.png
rename to code/src/main/res/drawable-mdpi/afc_folder_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_folder_locked.png b/code/src/main/res/drawable-mdpi/afc_folder_locked.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_folder_locked.png
rename to code/src/main/res/drawable-mdpi/afc_folder_locked.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_gridview.png b/code/src/main/res/drawable-mdpi/afc_ic_menu_gridview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_gridview.png
rename to code/src/main/res/drawable-mdpi/afc_ic_menu_gridview.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_home.png b/code/src/main/res/drawable-mdpi/afc_ic_menu_home.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_home.png
rename to code/src/main/res/drawable-mdpi/afc_ic_menu_home.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_listview.png b/code/src/main/res/drawable-mdpi/afc_ic_menu_listview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_listview.png
rename to code/src/main/res/drawable-mdpi/afc_ic_menu_listview.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_reload.png b/code/src/main/res/drawable-mdpi/afc_ic_menu_reload.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_reload.png
rename to code/src/main/res/drawable-mdpi/afc_ic_menu_reload.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_sort_by_date_asc.png b/code/src/main/res/drawable-mdpi/afc_ic_menu_sort_by_date_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_sort_by_date_asc.png
rename to code/src/main/res/drawable-mdpi/afc_ic_menu_sort_by_date_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_sort_by_date_desc.png b/code/src/main/res/drawable-mdpi/afc_ic_menu_sort_by_date_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_sort_by_date_desc.png
rename to code/src/main/res/drawable-mdpi/afc_ic_menu_sort_by_date_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_sort_by_name_asc.png b/code/src/main/res/drawable-mdpi/afc_ic_menu_sort_by_name_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_sort_by_name_asc.png
rename to code/src/main/res/drawable-mdpi/afc_ic_menu_sort_by_name_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_sort_by_name_desc.png b/code/src/main/res/drawable-mdpi/afc_ic_menu_sort_by_name_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_sort_by_name_desc.png
rename to code/src/main/res/drawable-mdpi/afc_ic_menu_sort_by_name_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_sort_by_size_asc.png b/code/src/main/res/drawable-mdpi/afc_ic_menu_sort_by_size_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_sort_by_size_asc.png
rename to code/src/main/res/drawable-mdpi/afc_ic_menu_sort_by_size_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_sort_by_size_desc.png b/code/src/main/res/drawable-mdpi/afc_ic_menu_sort_by_size_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-mdpi/afc_ic_menu_sort_by_size_desc.png
rename to code/src/main/res/drawable-mdpi/afc_ic_menu_sort_by_size_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_gridview.png b/code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_gridview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_gridview.png
rename to code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_gridview.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_home.png b/code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_home.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_home.png
rename to code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_home.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_listview.png b/code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_listview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_listview.png
rename to code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_listview.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_reload.png b/code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_reload.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_reload.png
rename to code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_reload.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_date_asc.png b/code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_date_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_date_asc.png
rename to code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_date_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_date_desc.png b/code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_date_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_date_desc.png
rename to code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_date_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_name_asc.png b/code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_name_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_name_asc.png
rename to code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_name_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_name_desc.png b/code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_name_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_name_desc.png
rename to code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_name_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_size_asc.png b/code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_size_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_size_asc.png
rename to code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_size_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_size_desc.png b/code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_size_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_size_desc.png
rename to code/src/main/res/drawable-xhdpi-v11/afc_ic_menu_sort_by_size_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_create_folder.png b/code/src/main/res/drawable-xhdpi/afc_button_create_folder.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_create_folder.png
rename to code/src/main/res/drawable-xhdpi/afc_button_create_folder.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_create_folder_disabled.png b/code/src/main/res/drawable-xhdpi/afc_button_create_folder_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_create_folder_disabled.png
rename to code/src/main/res/drawable-xhdpi/afc_button_create_folder_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_create_folder_pressed.png b/code/src/main/res/drawable-xhdpi/afc_button_create_folder_pressed.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_create_folder_pressed.png
rename to code/src/main/res/drawable-xhdpi/afc_button_create_folder_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_folders_view_grid.png b/code/src/main/res/drawable-xhdpi/afc_button_folders_view_grid.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_folders_view_grid.png
rename to code/src/main/res/drawable-xhdpi/afc_button_folders_view_grid.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_folders_view_grid_disabled.png b/code/src/main/res/drawable-xhdpi/afc_button_folders_view_grid_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_folders_view_grid_disabled.png
rename to code/src/main/res/drawable-xhdpi/afc_button_folders_view_grid_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_folders_view_grid_pressed.png b/code/src/main/res/drawable-xhdpi/afc_button_folders_view_grid_pressed.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_folders_view_grid_pressed.png
rename to code/src/main/res/drawable-xhdpi/afc_button_folders_view_grid_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_folders_view_list.png b/code/src/main/res/drawable-xhdpi/afc_button_folders_view_list.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_folders_view_list.png
rename to code/src/main/res/drawable-xhdpi/afc_button_folders_view_list.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_folders_view_list_disabled.png b/code/src/main/res/drawable-xhdpi/afc_button_folders_view_list_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_folders_view_list_disabled.png
rename to code/src/main/res/drawable-xhdpi/afc_button_folders_view_list_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_folders_view_list_pressed.png b/code/src/main/res/drawable-xhdpi/afc_button_folders_view_list_pressed.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_folders_view_list_pressed.png
rename to code/src/main/res/drawable-xhdpi/afc_button_folders_view_list_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_navi_left.png b/code/src/main/res/drawable-xhdpi/afc_button_navi_left.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_navi_left.png
rename to code/src/main/res/drawable-xhdpi/afc_button_navi_left.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_navi_left_disabled.png b/code/src/main/res/drawable-xhdpi/afc_button_navi_left_disabled.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_navi_left_disabled.png
rename to code/src/main/res/drawable-xhdpi/afc_button_navi_left_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_navi_left_pressed.png b/code/src/main/res/drawable-xhdpi/afc_button_navi_left_pressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_navi_left_pressed.png
rename to code/src/main/res/drawable-xhdpi/afc_button_navi_left_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_navi_right.png b/code/src/main/res/drawable-xhdpi/afc_button_navi_right.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_navi_right.png
rename to code/src/main/res/drawable-xhdpi/afc_button_navi_right.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_navi_right_disabled.png b/code/src/main/res/drawable-xhdpi/afc_button_navi_right_disabled.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_navi_right_disabled.png
rename to code/src/main/res/drawable-xhdpi/afc_button_navi_right_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_navi_right_pressed.png b/code/src/main/res/drawable-xhdpi/afc_button_navi_right_pressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_navi_right_pressed.png
rename to code/src/main/res/drawable-xhdpi/afc_button_navi_right_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_ok_saveas.png b/code/src/main/res/drawable-xhdpi/afc_button_ok_saveas.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_ok_saveas.png
rename to code/src/main/res/drawable-xhdpi/afc_button_ok_saveas.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_ok_saveas_pressed.png b/code/src/main/res/drawable-xhdpi/afc_button_ok_saveas_pressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_button_ok_saveas_pressed.png
rename to code/src/main/res/drawable-xhdpi/afc_button_ok_saveas_pressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_context_menu_item_divider.png b/code/src/main/res/drawable-xhdpi/afc_context_menu_item_divider.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_context_menu_item_divider.png
rename to code/src/main/res/drawable-xhdpi/afc_context_menu_item_divider.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_file.png b/code/src/main/res/drawable-xhdpi/afc_file.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_file.png
rename to code/src/main/res/drawable-xhdpi/afc_file.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_file_audio.png b/code/src/main/res/drawable-xhdpi/afc_file_audio.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_file_audio.png
rename to code/src/main/res/drawable-xhdpi/afc_file_audio.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_file_compressed.png b/code/src/main/res/drawable-xhdpi/afc_file_compressed.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_file_compressed.png
rename to code/src/main/res/drawable-xhdpi/afc_file_compressed.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_file_disabled.png b/code/src/main/res/drawable-xhdpi/afc_file_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_file_disabled.png
rename to code/src/main/res/drawable-xhdpi/afc_file_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_file_image.png b/code/src/main/res/drawable-xhdpi/afc_file_image.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_file_image.png
rename to code/src/main/res/drawable-xhdpi/afc_file_image.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_file_plain_text.png b/code/src/main/res/drawable-xhdpi/afc_file_plain_text.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_file_plain_text.png
rename to code/src/main/res/drawable-xhdpi/afc_file_plain_text.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_file_video.png b/code/src/main/res/drawable-xhdpi/afc_file_video.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_file_video.png
rename to code/src/main/res/drawable-xhdpi/afc_file_video.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_folder.png b/code/src/main/res/drawable-xhdpi/afc_folder.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_folder.png
rename to code/src/main/res/drawable-xhdpi/afc_folder.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_folder_disabled.png b/code/src/main/res/drawable-xhdpi/afc_folder_disabled.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_folder_disabled.png
rename to code/src/main/res/drawable-xhdpi/afc_folder_disabled.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_folder_locked.png b/code/src/main/res/drawable-xhdpi/afc_folder_locked.png
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_folder_locked.png
rename to code/src/main/res/drawable-xhdpi/afc_folder_locked.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_gridview.png b/code/src/main/res/drawable-xhdpi/afc_ic_menu_gridview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_gridview.png
rename to code/src/main/res/drawable-xhdpi/afc_ic_menu_gridview.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_home.png b/code/src/main/res/drawable-xhdpi/afc_ic_menu_home.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_home.png
rename to code/src/main/res/drawable-xhdpi/afc_ic_menu_home.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_listview.png b/code/src/main/res/drawable-xhdpi/afc_ic_menu_listview.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_listview.png
rename to code/src/main/res/drawable-xhdpi/afc_ic_menu_listview.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_reload.png b/code/src/main/res/drawable-xhdpi/afc_ic_menu_reload.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_reload.png
rename to code/src/main/res/drawable-xhdpi/afc_ic_menu_reload.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_sort_by_date_asc.png b/code/src/main/res/drawable-xhdpi/afc_ic_menu_sort_by_date_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_sort_by_date_asc.png
rename to code/src/main/res/drawable-xhdpi/afc_ic_menu_sort_by_date_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_sort_by_date_desc.png b/code/src/main/res/drawable-xhdpi/afc_ic_menu_sort_by_date_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_sort_by_date_desc.png
rename to code/src/main/res/drawable-xhdpi/afc_ic_menu_sort_by_date_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_sort_by_name_asc.png b/code/src/main/res/drawable-xhdpi/afc_ic_menu_sort_by_name_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_sort_by_name_asc.png
rename to code/src/main/res/drawable-xhdpi/afc_ic_menu_sort_by_name_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_sort_by_name_desc.png b/code/src/main/res/drawable-xhdpi/afc_ic_menu_sort_by_name_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_sort_by_name_desc.png
rename to code/src/main/res/drawable-xhdpi/afc_ic_menu_sort_by_name_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_sort_by_size_asc.png b/code/src/main/res/drawable-xhdpi/afc_ic_menu_sort_by_size_asc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_sort_by_size_asc.png
rename to code/src/main/res/drawable-xhdpi/afc_ic_menu_sort_by_size_asc.png
diff --git a/third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_sort_by_size_desc.png b/code/src/main/res/drawable-xhdpi/afc_ic_menu_sort_by_size_desc.png
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable-xhdpi/afc_ic_menu_sort_by_size_desc.png
rename to code/src/main/res/drawable-xhdpi/afc_ic_menu_sort_by_size_desc.png
diff --git a/third-party/android-filechooser/code/res/drawable/afc_button_location_dark_pressed.xml b/code/src/main/res/drawable/afc_button_location_dark_pressed.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable/afc_button_location_dark_pressed.xml
rename to code/src/main/res/drawable/afc_button_location_dark_pressed.xml
diff --git a/third-party/android-filechooser/code/res/drawable/afc_item_file.xml b/code/src/main/res/drawable/afc_item_file.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable/afc_item_file.xml
rename to code/src/main/res/drawable/afc_item_file.xml
diff --git a/third-party/android-filechooser/code/res/drawable/afc_item_folder.xml b/code/src/main/res/drawable/afc_item_folder.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable/afc_item_folder.xml
rename to code/src/main/res/drawable/afc_item_folder.xml
diff --git a/third-party/android-filechooser/code/res/drawable/afc_selector_button_create_folder.xml b/code/src/main/res/drawable/afc_selector_button_create_folder.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable/afc_selector_button_create_folder.xml
rename to code/src/main/res/drawable/afc_selector_button_create_folder.xml
diff --git a/third-party/android-filechooser/code/res/drawable/afc_selector_button_folders_view_grid.xml b/code/src/main/res/drawable/afc_selector_button_folders_view_grid.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable/afc_selector_button_folders_view_grid.xml
rename to code/src/main/res/drawable/afc_selector_button_folders_view_grid.xml
diff --git a/third-party/android-filechooser/code/res/drawable/afc_selector_button_folders_view_list.xml b/code/src/main/res/drawable/afc_selector_button_folders_view_list.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable/afc_selector_button_folders_view_list.xml
rename to code/src/main/res/drawable/afc_selector_button_folders_view_list.xml
diff --git a/third-party/android-filechooser/code/res/drawable/afc_selector_button_location_dark.xml b/code/src/main/res/drawable/afc_selector_button_location_dark.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable/afc_selector_button_location_dark.xml
rename to code/src/main/res/drawable/afc_selector_button_location_dark.xml
diff --git a/third-party/android-filechooser/code/res/drawable/afc_selector_button_navi_left.xml b/code/src/main/res/drawable/afc_selector_button_navi_left.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable/afc_selector_button_navi_left.xml
rename to code/src/main/res/drawable/afc_selector_button_navi_left.xml
diff --git a/third-party/android-filechooser/code/res/drawable/afc_selector_button_navi_right.xml b/code/src/main/res/drawable/afc_selector_button_navi_right.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable/afc_selector_button_navi_right.xml
rename to code/src/main/res/drawable/afc_selector_button_navi_right.xml
diff --git a/third-party/android-filechooser/code/res/drawable/afc_selector_button_ok_saveas.xml b/code/src/main/res/drawable/afc_selector_button_ok_saveas.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable/afc_selector_button_ok_saveas.xml
rename to code/src/main/res/drawable/afc_selector_button_ok_saveas.xml
diff --git a/third-party/android-filechooser/code/res/drawable/afc_selector_button_sort_as.xml b/code/src/main/res/drawable/afc_selector_button_sort_as.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable/afc_selector_button_sort_as.xml
rename to code/src/main/res/drawable/afc_selector_button_sort_as.xml
diff --git a/third-party/android-filechooser/code/res/drawable/afc_selector_button_sort_de.xml b/code/src/main/res/drawable/afc_selector_button_sort_de.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/drawable/afc_selector_button_sort_de.xml
rename to code/src/main/res/drawable/afc_selector_button_sort_de.xml
diff --git a/third-party/android-filechooser/code/res/layout-v11/afc_file_chooser.xml b/code/src/main/res/layout-v11/afc_file_chooser.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/layout-v11/afc_file_chooser.xml
rename to code/src/main/res/layout-v11/afc_file_chooser.xml
diff --git a/third-party/android-filechooser/code/res/layout-v11/afc_settings_sort_view.xml b/code/src/main/res/layout-v11/afc_settings_sort_view.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/layout-v11/afc_settings_sort_view.xml
rename to code/src/main/res/layout-v11/afc_settings_sort_view.xml
diff --git a/third-party/android-filechooser/code/res/layout/afc_button_location.xml b/code/src/main/res/layout/afc_button_location.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/layout/afc_button_location.xml
rename to code/src/main/res/layout/afc_button_location.xml
diff --git a/third-party/android-filechooser/code/res/layout/afc_context_menu_tiem.xml b/code/src/main/res/layout/afc_context_menu_tiem.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/layout/afc_context_menu_tiem.xml
rename to code/src/main/res/layout/afc_context_menu_tiem.xml
diff --git a/third-party/android-filechooser/code/res/layout/afc_context_menu_view.xml b/code/src/main/res/layout/afc_context_menu_view.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/layout/afc_context_menu_view.xml
rename to code/src/main/res/layout/afc_context_menu_view.xml
diff --git a/third-party/android-filechooser/code/res/layout/afc_file_chooser.xml b/code/src/main/res/layout/afc_file_chooser.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/layout/afc_file_chooser.xml
rename to code/src/main/res/layout/afc_file_chooser.xml
diff --git a/third-party/android-filechooser/code/res/layout/afc_file_item.xml b/code/src/main/res/layout/afc_file_item.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/layout/afc_file_item.xml
rename to code/src/main/res/layout/afc_file_item.xml
diff --git a/third-party/android-filechooser/code/res/layout/afc_gridview_files.xml b/code/src/main/res/layout/afc_gridview_files.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/layout/afc_gridview_files.xml
rename to code/src/main/res/layout/afc_gridview_files.xml
diff --git a/third-party/android-filechooser/code/res/layout/afc_listview_files.xml b/code/src/main/res/layout/afc_listview_files.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/layout/afc_listview_files.xml
rename to code/src/main/res/layout/afc_listview_files.xml
diff --git a/third-party/android-filechooser/code/res/layout/afc_settings_sort_view.xml b/code/src/main/res/layout/afc_settings_sort_view.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/layout/afc_settings_sort_view.xml
rename to code/src/main/res/layout/afc_settings_sort_view.xml
diff --git a/third-party/android-filechooser/code/res/layout/afc_simple_text_input_view.xml b/code/src/main/res/layout/afc_simple_text_input_view.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/layout/afc_simple_text_input_view.xml
rename to code/src/main/res/layout/afc_simple_text_input_view.xml
diff --git a/third-party/android-filechooser/code/res/menu/afc_file_chooser_activity.xml b/code/src/main/res/menu/afc_file_chooser_activity.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/menu/afc_file_chooser_activity.xml
rename to code/src/main/res/menu/afc_file_chooser_activity.xml
diff --git a/third-party/android-filechooser/code/res/values-es/strings.xml b/code/src/main/res/values-es/strings.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/values-es/strings.xml
rename to code/src/main/res/values-es/strings.xml
diff --git a/third-party/android-filechooser/code/res/values-hdpi/dimens.xml b/code/src/main/res/values-hdpi/dimens.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/values-hdpi/dimens.xml
rename to code/src/main/res/values-hdpi/dimens.xml
diff --git a/third-party/android-filechooser/code/res/values-ldpi/dimens.xml b/code/src/main/res/values-ldpi/dimens.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/values-ldpi/dimens.xml
rename to code/src/main/res/values-ldpi/dimens.xml
diff --git a/third-party/android-filechooser/code/res/values-mdpi/dimens.xml b/code/src/main/res/values-mdpi/dimens.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/values-mdpi/dimens.xml
rename to code/src/main/res/values-mdpi/dimens.xml
diff --git a/third-party/android-filechooser/code/res/values-ru/strings.xml b/code/src/main/res/values-ru/strings.xml
similarity index 100%
rename from third-party/android-filechooser/code/res/values-ru/strings.xml
rename to code/src/main/res/values-ru/strings.xml
diff --git a/third-party/android-filechooser/code/res/values-v11/styles.xml b/code/src/main/res/values-v11/styles.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/values-v11/styles.xml
rename to code/src/main/res/values-v11/styles.xml
diff --git a/third-party/android-filechooser/code/res/values-v14/styles.xml b/code/src/main/res/values-v14/styles.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/values-v14/styles.xml
rename to code/src/main/res/values-v14/styles.xml
diff --git a/third-party/android-filechooser/code/res/values-vi/strings.xml b/code/src/main/res/values-vi/strings.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/values-vi/strings.xml
rename to code/src/main/res/values-vi/strings.xml
diff --git a/third-party/android-filechooser/code/res/values-xhdpi/dimens.xml b/code/src/main/res/values-xhdpi/dimens.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/values-xhdpi/dimens.xml
rename to code/src/main/res/values-xhdpi/dimens.xml
diff --git a/third-party/android-filechooser/code/res/values/colors.xml b/code/src/main/res/values/colors.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/values/colors.xml
rename to code/src/main/res/values/colors.xml
diff --git a/third-party/android-filechooser/code/res/values/dimens.xml b/code/src/main/res/values/dimens.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/values/dimens.xml
rename to code/src/main/res/values/dimens.xml
diff --git a/third-party/android-filechooser/code/res/values/preferences.xml b/code/src/main/res/values/preferences.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/values/preferences.xml
rename to code/src/main/res/values/preferences.xml
diff --git a/third-party/android-filechooser/code/res/values/strings.xml b/code/src/main/res/values/strings.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/values/strings.xml
rename to code/src/main/res/values/strings.xml
diff --git a/third-party/android-filechooser/code/res/values/styles.xml b/code/src/main/res/values/styles.xml
old mode 100755
new mode 100644
similarity index 100%
rename from third-party/android-filechooser/code/res/values/styles.xml
rename to code/src/main/res/values/styles.xml
diff --git a/converter.py b/converter.py
new file mode 100644
index 00000000000..fc6079da8a1
--- /dev/null
+++ b/converter.py
@@ -0,0 +1,202 @@
+#!/usr/bin/env python2
+import os, sys
+
+# Retreived from Android Project Import Summary, README.md
+unmoved = [
+ "HowToBuild",
+ "TODO.1.5",
+ "TODO.2pages",
+ "TODO.bookInfo",
+ "TODO.catalogs",
+ "TODO.dictionary",
+ "TODO.favorites",
+ "TODO.highlighting",
+ "TODO.honeycomb",
+ "TODO.library",
+ "TODO.libraryService",
+ "TODO.litres",
+ "TODO.network",
+ "TODO.selection",
+ "TODO.tips",
+ "help/"
+]
+
+ignored = [
+ "ChangeLog",
+ "VERSION",
+ "AndroidManifest.xml.pattern",
+ "scripts/",
+ "project.properties"
+]
+
+added = [
+ "docs/",
+ "third-party/"
+]
+
+conversionMap = {
+ #In AmbilWarna:
+ #third-party/drag-sort-listview/library/
+ "third-party/AmbilWarna/AndroidManifest.xml" : "ambilWarna/src/main/AndroidManifest.xml",
+ "third-party/AmbilWarna/res/" : "ambilWarna/src/main/res/",
+ "third-party/AmbilWarna/src/" : "ambilWarna/src/main/java/",
+
+ #In code:
+ #third-party/android-filechooser/code/
+ "third-party/android-filechooser/code/AndroidManifest.xml" : "code/src/main/AndroidManifest.xml",
+ "third-party/android-filechooser/code/res/" : "code/src/main/res/",
+ "third-party/android-filechooser/code/src/" : "code/src/main/java/",
+
+ #In library:
+ #third-party/drag-sort-listview/library/
+ "third-party/drag-sort-listview/library/AndroidManifest.xml" : "library/src/main/AndroidManifest.xml",
+ "third-party/drag-sort-listview/library/res/" : "library/src/main/res/",
+ "third-party/drag-sort-listview/library/src/" : "library/src/main/java/",
+
+ #In FBReaderJ:
+ "AndroidManifest.xml" : "fBReaderJ/src/main/AndroidManifest.xml",
+ "assets/" : "fBReaderJ/src/main/assets/",
+ "jni/" : "fBReaderJ/src/main/jni/",
+ "libs/httpmime-4.2.5.jar" : "fBReaderJ/libs/httpmime-4.2.5.jar",
+ "libs/json-simple-1.1.1.jar" : "fBReaderJ/libs/json-simple-1.1.1.jar",
+ "libs/LingvoIntegration_2.5.2.12.jar" : "fBReaderJ/libs/LingvoIntegration_2.5.2.12.jar",
+ "libs/nanohttpd-2.0.5.jar" : "fBReaderJ/libs/nanohttpd-2.0.5.jar",
+ "libs/open-dictionary-api-1.2.1.jar" : "fBReaderJ/libs/open-dictionary-api-1.2.1.jar",
+ "libs/pdfparse.jar" : "fBReaderJ/libs/pdfparse.jar",
+ "res/" : "fBReaderJ/src/main/res/",
+ "src/" : "fBReaderJ/src/main/java/",
+ "src/org/geometerplus/android/fbreader/api/ApiInterface.aidl" : "fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/api/ApiInterface.aidl",
+ "src/org/geometerplus/android/fbreader/api/ApiObject.aidl" : "fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/api/ApiObject.aidl",
+ "src/org/geometerplus/android/fbreader/api/TextPosition.aidl" : "fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/api/TextPosition.aidl",
+ "src/org/geometerplus/android/fbreader/config/ConfigInterface.aidl" : "fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/config/ConfigInterface.aidl",
+ "src/org/geometerplus/android/fbreader/formatPlugin/CoverReader.aidl" : "fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/formatPlugin/CoverReader.aidl",
+ "src/org/geometerplus/android/fbreader/httpd/DataInterface.aidl" : "fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/httpd/DataInterface.aidl",
+ "src/org/geometerplus/android/fbreader/libraryService/LibraryInterface.aidl" : "fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/libraryService/LibraryInterface.aidl",
+ "src/org/geometerplus/android/fbreader/libraryService/PositionWithTimestamp.aidl" : "fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/libraryService/PositionWithTimestamp.aidl",
+ "src/org/geometerplus/android/fbreader/network/BookDownloaderInterface.aidl" : "fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/network/BookDownloaderInterface.aidl",
+
+ "fbreader/app/" : "fBReaderJ/",
+#src/com/paragon/dictionary/fbreader/OpenDictionaryActivity.java ? fbreader/app/src/main/java/com/paragon/dictionary/fbreader/OpenDictionaryActivity.java
+}
+
+
+def getABFileNames(line):
+ split = line.split()
+ fileA = ""
+ fileB = ""
+ for word in split:
+ if word.startswith("a/"):
+ fileA = word[2:]
+ elif word.startswith("b/"):
+ fileB = word[2:]
+ return fileA, fileB
+
+deleteLine = False
+deleteLineMarker = "@@[[{{!!TO_BE_DELETED!!}}]]@@"
+
+def convertToAndroidStudioPaths(line):
+ global deleteLine
+ print line
+ a, b = getABFileNames(line)
+ fullPath = a if b == "" else b
+ splitPaths = fullPath.split('/')
+ firstPath = splitPaths[0] + '/' if len(splitPaths) > 1 else splitPaths[0]
+ firstAndSecondPath = firstPath + (splitPaths[1] + '/') if len(splitPaths) > 1 else ''
+
+ deleteLine = False
+ converted = ""
+ if firstPath in conversionMap:
+ if fullPath in conversionMap:
+ # Then this file is an .aidl file
+ print "OK: AIDL file \'" + firstPath + "\' is in map as " + conversionMap[firstPath]
+ converted = conversionMap[fullPath]
+ else:
+ print "OK: \'" + firstPath + "\' is in map as " + conversionMap[firstPath]
+ splitPaths[0] = conversionMap[firstPath][:-1] if len(splitPaths) > 1 else conversionMap[firstPath]
+ converted = '/'.join(splitPaths)
+ # purposeful directory renaming in upstream (preparing for gradle build system 2c1d5c53e254a) discovered at 2/5/2016
+ elif firstAndSecondPath in conversionMap:
+ print "OK: \'" + firstAndSecondPath + "\' is in map as " + conversionMap[firstAndSecondPath] + "(narrowing procedure)"
+ # throw away the extra element
+ splitPaths = splitPaths[1:]
+ splitPaths[0] = conversionMap[firstAndSecondPath][:-1]
+ converted = '/'.join(splitPaths)
+ else:
+ if firstPath in unmoved:
+ converted = fullPath
+ print "UNMOVED: \'" + firstPath + "\' is unmoved"
+ elif firstPath in ignored:
+ deleteLine = True
+ converted = deleteLineMarker
+ print "IGNORED: \'" + firstPath + "\' is ignored"
+ elif firstPath in added:
+ converted = fullPath
+ print "ADDED: \'" + firstPath + "\' is added"
+ else:
+ print "FAIL: \'" + firstPath + "\' is not in map"
+ sys.exit()
+ print converted + '\n'
+
+ convertedLine = ""
+ if line.startswith("diff --git a/"):
+ convertedLine = "diff --git a/" + converted + " b/" + converted
+ elif line.startswith("--- a/"):
+ convertedLine = "--- a/" + converted
+ elif line.startswith("+++ b/"):
+ convertedLine = "+++ b/" + converted
+ return deleteLineMarker if deleteLine else convertedLine
+
+def isADiffHeader(line):
+ return line.startswith("diff --git a/") or line.startswith("--- a/") or line.startswith("+++ b/")
+
+def keepLine(line):
+ return deleteLineMarker if deleteLine else line
+
+
+inputFileName = "patch"
+outputFileName = ""
+# Optional arguments to specify input/output files
+try:
+ inputFileName = sys.argv[1]
+ outputFileName = sys.argv[2]
+except:
+ {}
+
+# Do the conversion
+try:
+ with open(inputFileName, 'r') as originalPatch:
+ # Read all lines into memory
+ lines = [line.rstrip() for line in originalPatch.readlines()]
+ # Convert paths to android studio paths if it's a diff header, and mark
+ # the line for deletion if it is a diff for an ignored file
+ altered_lines = [convertToAndroidStudioPaths(line) if isADiffHeader(line) else keepLine(line) for line in lines]
+ # Remove the lines marked by deleteLineMarker from our new diff
+ altered_lines = [line for line in altered_lines if line != deleteLineMarker]
+
+ outputFileName = inputFileName + "NEW" if outputFileName == "" else outputFileName
+ # Open as binary to avoid EOL errors
+ with open(outputFileName, 'wb') as convertedPatch:
+ # Rejoin the lines and write to the new file
+ convertedPatch.write('\n'.join(altered_lines) + '\n')
+
+ print "SUCCESS: Converted diff saved as \'" + outputFileName + "\'"
+except Exception as e:
+ print str(e)
+ """
+ Usage: converter.py [inputFile] [outputFile]
+
+ This script converts FBReaderJ diffs from the Eclipse project
+ structure to the Android Studio project structure
+
+ git checkout upstream_master
+ git pull
+ git diff (SHA of last full sync) > ../patch
+ git checkout android_studio
+ converter.py ../patch ../patchNEW
+ git apply ../patchNEW
+
+ Unrecognized files will immediately stop conversion
+
+ Default [inputFile] is file name "patch" if no arguments are supplied
+ Appends "NEW" onto output file name if [outputFile] is not supplied
+ """
diff --git a/docs/cygwin_installation_and_configuration.pdf b/docs/cygwin_installation_and_configuration.pdf
deleted file mode 100644
index b7fb685ce93..00000000000
Binary files a/docs/cygwin_installation_and_configuration.pdf and /dev/null differ
diff --git a/fBReaderJ/build.gradle b/fBReaderJ/build.gradle
new file mode 100644
index 00000000000..e005fe51c35
--- /dev/null
+++ b/fBReaderJ/build.gradle
@@ -0,0 +1,65 @@
+apply plugin: 'com.android.application'
+
+import org.apache.tools.ant.taskdefs.condition.Os
+
+android {
+ compileSdkVersion 14
+ buildToolsVersion "21.1.2"
+
+ defaultConfig {
+ applicationId "org.geometerplus.zlibrary.ui.android"
+ minSdkVersion 5
+ targetSdkVersion 9
+
+ ndk {
+ moduleName "DeflatingDecompressor-v3"
+ }
+ }
+
+ buildTypes {
+ release {
+ minifyEnabled false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
+ }
+ }
+
+ sourceSets.main {
+ jniLibs.srcDir 'src/main/libs'
+ jni.srcDirs = [] //disable automatic ndk-build call
+ }
+
+ lintOptions {
+ checkReleaseBuilds false
+ // Or, if you prefer, you can continue to check for errors in release builds,
+ // but continue the build even when errors are found:
+ abortOnError false
+ }
+}
+
+dependencies {
+ compile 'com.android.support:support-v4:21.0.3'
+ compile project(':ambilWarna')
+ compile project(':library')
+ compile project(':code')
+ compile files('libs/httpmime-4.2.5.jar')
+ compile files('libs/json-simple-1.1.1.jar')
+ compile files('libs/LingvoIntegration_2.5.2.12.jar')
+ compile files('libs/nanohttpd-2.0.5.jar')
+ compile files('libs/open-dictionary-api-1.2.1.jar')
+ compile files('libs/pdfparse.jar')
+}
+
+/*
+// call regular ndk-build(.cmd) script from app directory
+task ndkBuild(type: Exec) {
+ if (Os.isFamily(Os.FAMILY_WINDOWS)) {
+ commandLine 'ndk-build.cmd', '-C', file('src/main/jni').absolutePath
+ } else {
+ commandLine 'ndk-build', '-C', file('src/main/jni').absolutePath
+ }
+}
+
+tasks.withType(JavaCompile) {
+ compileTask -> compileTask.dependsOn ndkBuild
+}
+*/
\ No newline at end of file
diff --git a/libs/LingvoIntegration_2.5.2.12.jar b/fBReaderJ/libs/LingvoIntegration_2.5.2.12.jar
similarity index 100%
rename from libs/LingvoIntegration_2.5.2.12.jar
rename to fBReaderJ/libs/LingvoIntegration_2.5.2.12.jar
diff --git a/libs/httpmime-4.2.5.jar b/fBReaderJ/libs/httpmime-4.2.5.jar
similarity index 100%
rename from libs/httpmime-4.2.5.jar
rename to fBReaderJ/libs/httpmime-4.2.5.jar
diff --git a/libs/json-simple-1.1.1.jar b/fBReaderJ/libs/json-simple-1.1.1.jar
similarity index 100%
rename from libs/json-simple-1.1.1.jar
rename to fBReaderJ/libs/json-simple-1.1.1.jar
diff --git a/libs/nanohttpd-2.0.5.jar b/fBReaderJ/libs/nanohttpd-2.0.5.jar
similarity index 100%
rename from libs/nanohttpd-2.0.5.jar
rename to fBReaderJ/libs/nanohttpd-2.0.5.jar
diff --git a/libs/open-dictionary-api-1.2.1.jar b/fBReaderJ/libs/open-dictionary-api-1.2.1.jar
similarity index 100%
rename from libs/open-dictionary-api-1.2.1.jar
rename to fBReaderJ/libs/open-dictionary-api-1.2.1.jar
diff --git a/libs/pdfparse.jar b/fBReaderJ/libs/pdfparse.jar
similarity index 100%
rename from libs/pdfparse.jar
rename to fBReaderJ/libs/pdfparse.jar
diff --git a/AndroidManifest.xml b/fBReaderJ/src/main/AndroidManifest.xml
similarity index 98%
rename from AndroidManifest.xml
rename to fBReaderJ/src/main/AndroidManifest.xml
index 95a9dab90af..9612c6d0330 100644
--- a/AndroidManifest.xml
+++ b/fBReaderJ/src/main/AndroidManifest.xml
@@ -2,8 +2,8 @@
-
+
-
+
-
+
diff --git a/src/org/geometerplus/android/fbreader/api/ApiInterface.aidl b/fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/api/ApiInterface.aidl
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/ApiInterface.aidl
rename to fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/api/ApiInterface.aidl
diff --git a/src/org/geometerplus/android/fbreader/api/ApiObject.aidl b/fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/api/ApiObject.aidl
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/ApiObject.aidl
rename to fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/api/ApiObject.aidl
diff --git a/src/org/geometerplus/android/fbreader/api/TextPosition.aidl b/fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/api/TextPosition.aidl
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/TextPosition.aidl
rename to fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/api/TextPosition.aidl
diff --git a/src/org/geometerplus/android/fbreader/config/ConfigInterface.aidl b/fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/config/ConfigInterface.aidl
similarity index 100%
rename from src/org/geometerplus/android/fbreader/config/ConfigInterface.aidl
rename to fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/config/ConfigInterface.aidl
diff --git a/src/org/geometerplus/android/fbreader/formatPlugin/CoverReader.aidl b/fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/formatPlugin/CoverReader.aidl
similarity index 100%
rename from src/org/geometerplus/android/fbreader/formatPlugin/CoverReader.aidl
rename to fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/formatPlugin/CoverReader.aidl
diff --git a/src/org/geometerplus/android/fbreader/httpd/DataInterface.aidl b/fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/httpd/DataInterface.aidl
similarity index 100%
rename from src/org/geometerplus/android/fbreader/httpd/DataInterface.aidl
rename to fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/httpd/DataInterface.aidl
diff --git a/src/org/geometerplus/android/fbreader/libraryService/LibraryInterface.aidl b/fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/libraryService/LibraryInterface.aidl
similarity index 83%
rename from src/org/geometerplus/android/fbreader/libraryService/LibraryInterface.aidl
rename to fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/libraryService/LibraryInterface.aidl
index 545a75ad8a8..3b7d5724337 100644
--- a/src/org/geometerplus/android/fbreader/libraryService/LibraryInterface.aidl
+++ b/fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/libraryService/LibraryInterface.aidl
@@ -41,7 +41,7 @@ interface LibraryInterface {
boolean saveBook(in String book);
void removeBook(in String book, in boolean deleteFromDisk);
- void addBookToRecentList(in String book);
+ void addToRecentlyOpened(in String book);
String getHash(in String book, in boolean force);
@@ -66,4 +66,14 @@ interface LibraryInterface {
void setHash(in String book, in String hash);
String getCoverUrl(in String bookPath);
+ String getDescription(in String book);
+
+ List recentlyAddedBooks(in int count);
+ List recentlyOpenedBooks(in int count);
+ void removeFromRecentlyOpened(in String book);
+
+ boolean canRemoveBook(in String book, in boolean deleteFromDisk);
+
+ List formats();
+ boolean setActiveFormats(in List formats);
}
diff --git a/src/org/geometerplus/android/fbreader/libraryService/PositionWithTimestamp.aidl b/fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/libraryService/PositionWithTimestamp.aidl
similarity index 100%
rename from src/org/geometerplus/android/fbreader/libraryService/PositionWithTimestamp.aidl
rename to fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/libraryService/PositionWithTimestamp.aidl
diff --git a/src/org/geometerplus/android/fbreader/network/BookDownloaderInterface.aidl b/fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/network/BookDownloaderInterface.aidl
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/BookDownloaderInterface.aidl
rename to fBReaderJ/src/main/aidl/org/geometerplus/android/fbreader/network/BookDownloaderInterface.aidl
diff --git a/assets/data/licences.html b/fBReaderJ/src/main/assets/data/licences.html
similarity index 100%
rename from assets/data/licences.html
rename to fBReaderJ/src/main/assets/data/licences.html
diff --git a/assets/default/keymap-nook.xml b/fBReaderJ/src/main/assets/default/keymap-nook.xml
similarity index 100%
rename from assets/default/keymap-nook.xml
rename to fBReaderJ/src/main/assets/default/keymap-nook.xml
diff --git a/assets/default/keymap.xml b/fBReaderJ/src/main/assets/default/keymap.xml
similarity index 100%
rename from assets/default/keymap.xml
rename to fBReaderJ/src/main/assets/default/keymap.xml
diff --git a/assets/default/plugins.xml b/fBReaderJ/src/main/assets/default/plugins.xml
similarity index 85%
rename from assets/default/plugins.xml
rename to fBReaderJ/src/main/assets/default/plugins.xml
index 115d2256ff8..d94a5e44a95 100644
--- a/assets/default/plugins.xml
+++ b/fBReaderJ/src/main/assets/default/plugins.xml
@@ -1,5 +1,5 @@
-
+
diff --git a/assets/default/styles.css b/fBReaderJ/src/main/assets/default/styles.css
similarity index 100%
rename from assets/default/styles.css
rename to fBReaderJ/src/main/assets/default/styles.css
diff --git a/assets/default/styles.xml b/fBReaderJ/src/main/assets/default/styles.xml
similarity index 100%
rename from assets/default/styles.xml
rename to fBReaderJ/src/main/assets/default/styles.xml
diff --git a/assets/default/tapzones/down.xml b/fBReaderJ/src/main/assets/default/tapzones/down.xml
similarity index 100%
rename from assets/default/tapzones/down.xml
rename to fBReaderJ/src/main/assets/default/tapzones/down.xml
diff --git a/assets/default/tapzones/left_to_right.xml b/fBReaderJ/src/main/assets/default/tapzones/left_to_right.xml
similarity index 100%
rename from assets/default/tapzones/left_to_right.xml
rename to fBReaderJ/src/main/assets/default/tapzones/left_to_right.xml
diff --git a/assets/default/tapzones/right_to_left.xml b/fBReaderJ/src/main/assets/default/tapzones/right_to_left.xml
similarity index 100%
rename from assets/default/tapzones/right_to_left.xml
rename to fBReaderJ/src/main/assets/default/tapzones/right_to_left.xml
diff --git a/assets/default/tapzones/up.xml b/fBReaderJ/src/main/assets/default/tapzones/up.xml
similarity index 100%
rename from assets/default/tapzones/up.xml
rename to fBReaderJ/src/main/assets/default/tapzones/up.xml
diff --git a/assets/dictionaries/bitknights.xml b/fBReaderJ/src/main/assets/dictionaries/bitknights.xml
similarity index 100%
rename from assets/dictionaries/bitknights.xml
rename to fBReaderJ/src/main/assets/dictionaries/bitknights.xml
diff --git a/assets/dictionaries/main.xml b/fBReaderJ/src/main/assets/dictionaries/main.xml
similarity index 100%
rename from assets/dictionaries/main.xml
rename to fBReaderJ/src/main/assets/dictionaries/main.xml
diff --git a/assets/encodings/Encodings.xml b/fBReaderJ/src/main/assets/encodings/Encodings.xml
similarity index 100%
rename from assets/encodings/Encodings.xml
rename to fBReaderJ/src/main/assets/encodings/Encodings.xml
diff --git a/assets/formats/fb2/fb2genres.xml b/fBReaderJ/src/main/assets/formats/fb2/fb2genres.xml
similarity index 100%
rename from assets/formats/fb2/fb2genres.xml
rename to fBReaderJ/src/main/assets/formats/fb2/fb2genres.xml
diff --git a/assets/formats/html/html.ent b/fBReaderJ/src/main/assets/formats/html/html.ent
similarity index 100%
rename from assets/formats/html/html.ent
rename to fBReaderJ/src/main/assets/formats/html/html.ent
diff --git a/assets/formats/xhtml/xhtml-lat1.ent b/fBReaderJ/src/main/assets/formats/xhtml/xhtml-lat1.ent
similarity index 100%
rename from assets/formats/xhtml/xhtml-lat1.ent
rename to fBReaderJ/src/main/assets/formats/xhtml/xhtml-lat1.ent
diff --git a/assets/formats/xhtml/xhtml-merged.ent b/fBReaderJ/src/main/assets/formats/xhtml/xhtml-merged.ent
similarity index 100%
rename from assets/formats/xhtml/xhtml-merged.ent
rename to fBReaderJ/src/main/assets/formats/xhtml/xhtml-merged.ent
diff --git a/assets/formats/xhtml/xhtml-special.ent b/fBReaderJ/src/main/assets/formats/xhtml/xhtml-special.ent
similarity index 100%
rename from assets/formats/xhtml/xhtml-special.ent
rename to fBReaderJ/src/main/assets/formats/xhtml/xhtml-special.ent
diff --git a/assets/formats/xhtml/xhtml-symbol.ent b/fBReaderJ/src/main/assets/formats/xhtml/xhtml-symbol.ent
similarity index 100%
rename from assets/formats/xhtml/xhtml-symbol.ent
rename to fBReaderJ/src/main/assets/formats/xhtml/xhtml-symbol.ent
diff --git a/assets/hyphenationPatterns/CHANGES b/fBReaderJ/src/main/assets/hyphenationPatterns/CHANGES
similarity index 100%
rename from assets/hyphenationPatterns/CHANGES
rename to fBReaderJ/src/main/assets/hyphenationPatterns/CHANGES
diff --git a/assets/hyphenationPatterns/LICENSES b/fBReaderJ/src/main/assets/hyphenationPatterns/LICENSES
similarity index 100%
rename from assets/hyphenationPatterns/LICENSES
rename to fBReaderJ/src/main/assets/hyphenationPatterns/LICENSES
diff --git a/assets/hyphenationPatterns/bg.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/bg.pattern
similarity index 100%
rename from assets/hyphenationPatterns/bg.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/bg.pattern
diff --git a/assets/hyphenationPatterns/cs.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/cs.pattern
similarity index 100%
rename from assets/hyphenationPatterns/cs.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/cs.pattern
diff --git a/assets/hyphenationPatterns/da.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/da.pattern
similarity index 100%
rename from assets/hyphenationPatterns/da.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/da.pattern
diff --git a/assets/hyphenationPatterns/de-traditional.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/de-traditional.pattern
similarity index 100%
rename from assets/hyphenationPatterns/de-traditional.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/de-traditional.pattern
diff --git a/assets/hyphenationPatterns/de.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/de.pattern
similarity index 100%
rename from assets/hyphenationPatterns/de.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/de.pattern
diff --git a/assets/hyphenationPatterns/el.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/el.pattern
similarity index 100%
rename from assets/hyphenationPatterns/el.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/el.pattern
diff --git a/assets/hyphenationPatterns/en.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/en.pattern
similarity index 100%
rename from assets/hyphenationPatterns/en.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/en.pattern
diff --git a/assets/hyphenationPatterns/eo.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/eo.pattern
similarity index 100%
rename from assets/hyphenationPatterns/eo.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/eo.pattern
diff --git a/assets/hyphenationPatterns/es.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/es.pattern
similarity index 100%
rename from assets/hyphenationPatterns/es.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/es.pattern
diff --git a/assets/hyphenationPatterns/fi.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/fi.pattern
similarity index 100%
rename from assets/hyphenationPatterns/fi.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/fi.pattern
diff --git a/assets/hyphenationPatterns/fr.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/fr.pattern
similarity index 100%
rename from assets/hyphenationPatterns/fr.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/fr.pattern
diff --git a/assets/hyphenationPatterns/hu.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/hu.pattern
similarity index 100%
rename from assets/hyphenationPatterns/hu.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/hu.pattern
diff --git a/assets/hyphenationPatterns/id.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/id.pattern
similarity index 100%
rename from assets/hyphenationPatterns/id.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/id.pattern
diff --git a/assets/hyphenationPatterns/it.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/it.pattern
similarity index 100%
rename from assets/hyphenationPatterns/it.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/it.pattern
diff --git a/assets/hyphenationPatterns/ka.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/ka.pattern
similarity index 100%
rename from assets/hyphenationPatterns/ka.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/ka.pattern
diff --git a/assets/hyphenationPatterns/lt.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/lt.pattern
similarity index 100%
rename from assets/hyphenationPatterns/lt.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/lt.pattern
diff --git a/assets/hyphenationPatterns/nb.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/nb.pattern
similarity index 100%
rename from assets/hyphenationPatterns/nb.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/nb.pattern
diff --git a/assets/hyphenationPatterns/nl.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/nl.pattern
similarity index 100%
rename from assets/hyphenationPatterns/nl.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/nl.pattern
diff --git a/assets/hyphenationPatterns/pl.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/pl.pattern
similarity index 100%
rename from assets/hyphenationPatterns/pl.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/pl.pattern
diff --git a/assets/hyphenationPatterns/pt.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/pt.pattern
similarity index 100%
rename from assets/hyphenationPatterns/pt.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/pt.pattern
diff --git a/assets/hyphenationPatterns/ru.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/ru.pattern
similarity index 100%
rename from assets/hyphenationPatterns/ru.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/ru.pattern
diff --git a/assets/hyphenationPatterns/sv.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/sv.pattern
similarity index 100%
rename from assets/hyphenationPatterns/sv.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/sv.pattern
diff --git a/assets/hyphenationPatterns/tr.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/tr.pattern
similarity index 100%
rename from assets/hyphenationPatterns/tr.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/tr.pattern
diff --git a/assets/hyphenationPatterns/uk.pattern b/fBReaderJ/src/main/assets/hyphenationPatterns/uk.pattern
similarity index 100%
rename from assets/hyphenationPatterns/uk.pattern
rename to fBReaderJ/src/main/assets/hyphenationPatterns/uk.pattern
diff --git a/assets/languagePatterns/cs_ibm852 b/fBReaderJ/src/main/assets/languagePatterns/cs_ibm852
similarity index 100%
rename from assets/languagePatterns/cs_ibm852
rename to fBReaderJ/src/main/assets/languagePatterns/cs_ibm852
diff --git a/assets/languagePatterns/cs_iso-8859-2 b/fBReaderJ/src/main/assets/languagePatterns/cs_iso-8859-2
similarity index 100%
rename from assets/languagePatterns/cs_iso-8859-2
rename to fBReaderJ/src/main/assets/languagePatterns/cs_iso-8859-2
diff --git a/assets/languagePatterns/cs_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/cs_utf-16
similarity index 100%
rename from assets/languagePatterns/cs_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/cs_utf-16
diff --git a/assets/languagePatterns/cs_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/cs_utf-16be
similarity index 100%
rename from assets/languagePatterns/cs_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/cs_utf-16be
diff --git a/assets/languagePatterns/cs_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/cs_utf-8
similarity index 100%
rename from assets/languagePatterns/cs_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/cs_utf-8
diff --git a/assets/languagePatterns/cs_windows-1250 b/fBReaderJ/src/main/assets/languagePatterns/cs_windows-1250
similarity index 100%
rename from assets/languagePatterns/cs_windows-1250
rename to fBReaderJ/src/main/assets/languagePatterns/cs_windows-1250
diff --git a/assets/languagePatterns/de_iso-8859-1 b/fBReaderJ/src/main/assets/languagePatterns/de_iso-8859-1
similarity index 100%
rename from assets/languagePatterns/de_iso-8859-1
rename to fBReaderJ/src/main/assets/languagePatterns/de_iso-8859-1
diff --git a/assets/languagePatterns/de_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/de_utf-16
similarity index 100%
rename from assets/languagePatterns/de_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/de_utf-16
diff --git a/assets/languagePatterns/de_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/de_utf-16be
similarity index 100%
rename from assets/languagePatterns/de_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/de_utf-16be
diff --git a/assets/languagePatterns/de_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/de_utf-8
similarity index 100%
rename from assets/languagePatterns/de_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/de_utf-8
diff --git a/assets/languagePatterns/el_iso-8859-7 b/fBReaderJ/src/main/assets/languagePatterns/el_iso-8859-7
similarity index 100%
rename from assets/languagePatterns/el_iso-8859-7
rename to fBReaderJ/src/main/assets/languagePatterns/el_iso-8859-7
diff --git a/assets/languagePatterns/el_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/el_utf-16
similarity index 100%
rename from assets/languagePatterns/el_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/el_utf-16
diff --git a/assets/languagePatterns/el_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/el_utf-16be
similarity index 100%
rename from assets/languagePatterns/el_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/el_utf-16be
diff --git a/assets/languagePatterns/el_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/el_utf-8
similarity index 100%
rename from assets/languagePatterns/el_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/el_utf-8
diff --git a/assets/languagePatterns/el_windows-1253 b/fBReaderJ/src/main/assets/languagePatterns/el_windows-1253
similarity index 100%
rename from assets/languagePatterns/el_windows-1253
rename to fBReaderJ/src/main/assets/languagePatterns/el_windows-1253
diff --git a/assets/languagePatterns/en_us-ascii b/fBReaderJ/src/main/assets/languagePatterns/en_us-ascii
similarity index 100%
rename from assets/languagePatterns/en_us-ascii
rename to fBReaderJ/src/main/assets/languagePatterns/en_us-ascii
diff --git a/assets/languagePatterns/en_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/en_utf-16
similarity index 100%
rename from assets/languagePatterns/en_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/en_utf-16
diff --git a/assets/languagePatterns/en_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/en_utf-16be
similarity index 100%
rename from assets/languagePatterns/en_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/en_utf-16be
diff --git a/assets/languagePatterns/en_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/en_utf-8
similarity index 100%
rename from assets/languagePatterns/en_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/en_utf-8
diff --git a/assets/languagePatterns/eo_iso-8859-3 b/fBReaderJ/src/main/assets/languagePatterns/eo_iso-8859-3
similarity index 100%
rename from assets/languagePatterns/eo_iso-8859-3
rename to fBReaderJ/src/main/assets/languagePatterns/eo_iso-8859-3
diff --git a/assets/languagePatterns/eo_us-ascii b/fBReaderJ/src/main/assets/languagePatterns/eo_us-ascii
similarity index 100%
rename from assets/languagePatterns/eo_us-ascii
rename to fBReaderJ/src/main/assets/languagePatterns/eo_us-ascii
diff --git a/assets/languagePatterns/eo_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/eo_utf-16
similarity index 100%
rename from assets/languagePatterns/eo_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/eo_utf-16
diff --git a/assets/languagePatterns/eo_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/eo_utf-16be
similarity index 100%
rename from assets/languagePatterns/eo_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/eo_utf-16be
diff --git a/assets/languagePatterns/eo_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/eo_utf-8
similarity index 100%
rename from assets/languagePatterns/eo_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/eo_utf-8
diff --git a/assets/languagePatterns/es_iso-8859-1 b/fBReaderJ/src/main/assets/languagePatterns/es_iso-8859-1
similarity index 100%
rename from assets/languagePatterns/es_iso-8859-1
rename to fBReaderJ/src/main/assets/languagePatterns/es_iso-8859-1
diff --git a/assets/languagePatterns/es_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/es_utf-16
similarity index 100%
rename from assets/languagePatterns/es_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/es_utf-16
diff --git a/assets/languagePatterns/es_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/es_utf-16be
similarity index 100%
rename from assets/languagePatterns/es_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/es_utf-16be
diff --git a/assets/languagePatterns/es_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/es_utf-8
similarity index 100%
rename from assets/languagePatterns/es_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/es_utf-8
diff --git a/assets/languagePatterns/fi_iso-8859-1 b/fBReaderJ/src/main/assets/languagePatterns/fi_iso-8859-1
similarity index 100%
rename from assets/languagePatterns/fi_iso-8859-1
rename to fBReaderJ/src/main/assets/languagePatterns/fi_iso-8859-1
diff --git a/assets/languagePatterns/fi_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/fi_utf-16
similarity index 100%
rename from assets/languagePatterns/fi_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/fi_utf-16
diff --git a/assets/languagePatterns/fi_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/fi_utf-16be
similarity index 100%
rename from assets/languagePatterns/fi_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/fi_utf-16be
diff --git a/assets/languagePatterns/fi_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/fi_utf-8
similarity index 100%
rename from assets/languagePatterns/fi_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/fi_utf-8
diff --git a/assets/languagePatterns/fr_iso-8859-1 b/fBReaderJ/src/main/assets/languagePatterns/fr_iso-8859-1
similarity index 100%
rename from assets/languagePatterns/fr_iso-8859-1
rename to fBReaderJ/src/main/assets/languagePatterns/fr_iso-8859-1
diff --git a/assets/languagePatterns/fr_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/fr_utf-16
similarity index 100%
rename from assets/languagePatterns/fr_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/fr_utf-16
diff --git a/assets/languagePatterns/fr_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/fr_utf-16be
similarity index 100%
rename from assets/languagePatterns/fr_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/fr_utf-16be
diff --git a/assets/languagePatterns/fr_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/fr_utf-8
similarity index 100%
rename from assets/languagePatterns/fr_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/fr_utf-8
diff --git a/assets/languagePatterns/hu_iso-8859-2 b/fBReaderJ/src/main/assets/languagePatterns/hu_iso-8859-2
similarity index 100%
rename from assets/languagePatterns/hu_iso-8859-2
rename to fBReaderJ/src/main/assets/languagePatterns/hu_iso-8859-2
diff --git a/assets/languagePatterns/hu_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/hu_utf-16
similarity index 100%
rename from assets/languagePatterns/hu_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/hu_utf-16
diff --git a/assets/languagePatterns/hu_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/hu_utf-16be
similarity index 100%
rename from assets/languagePatterns/hu_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/hu_utf-16be
diff --git a/assets/languagePatterns/hu_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/hu_utf-8
similarity index 100%
rename from assets/languagePatterns/hu_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/hu_utf-8
diff --git a/assets/languagePatterns/hu_windows-1250 b/fBReaderJ/src/main/assets/languagePatterns/hu_windows-1250
similarity index 100%
rename from assets/languagePatterns/hu_windows-1250
rename to fBReaderJ/src/main/assets/languagePatterns/hu_windows-1250
diff --git a/assets/languagePatterns/in_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/in_utf-16
similarity index 100%
rename from assets/languagePatterns/in_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/in_utf-16
diff --git a/assets/languagePatterns/in_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/in_utf-16be
similarity index 100%
rename from assets/languagePatterns/in_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/in_utf-16be
diff --git a/assets/languagePatterns/in_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/in_utf-8
similarity index 100%
rename from assets/languagePatterns/in_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/in_utf-8
diff --git a/assets/languagePatterns/it_iso-8859-1 b/fBReaderJ/src/main/assets/languagePatterns/it_iso-8859-1
similarity index 100%
rename from assets/languagePatterns/it_iso-8859-1
rename to fBReaderJ/src/main/assets/languagePatterns/it_iso-8859-1
diff --git a/assets/languagePatterns/it_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/it_utf-16
similarity index 100%
rename from assets/languagePatterns/it_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/it_utf-16
diff --git a/assets/languagePatterns/it_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/it_utf-16be
similarity index 100%
rename from assets/languagePatterns/it_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/it_utf-16be
diff --git a/assets/languagePatterns/it_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/it_utf-8
similarity index 100%
rename from assets/languagePatterns/it_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/it_utf-8
diff --git a/assets/languagePatterns/li_iso-8859-13 b/fBReaderJ/src/main/assets/languagePatterns/li_iso-8859-13
similarity index 100%
rename from assets/languagePatterns/li_iso-8859-13
rename to fBReaderJ/src/main/assets/languagePatterns/li_iso-8859-13
diff --git a/assets/languagePatterns/li_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/li_utf-16
similarity index 100%
rename from assets/languagePatterns/li_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/li_utf-16
diff --git a/assets/languagePatterns/li_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/li_utf-16be
similarity index 100%
rename from assets/languagePatterns/li_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/li_utf-16be
diff --git a/assets/languagePatterns/li_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/li_utf-8
similarity index 100%
rename from assets/languagePatterns/li_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/li_utf-8
diff --git a/assets/languagePatterns/li_windows-1257 b/fBReaderJ/src/main/assets/languagePatterns/li_windows-1257
similarity index 100%
rename from assets/languagePatterns/li_windows-1257
rename to fBReaderJ/src/main/assets/languagePatterns/li_windows-1257
diff --git a/assets/languagePatterns/nb_iso-8859-1 b/fBReaderJ/src/main/assets/languagePatterns/nb_iso-8859-1
similarity index 100%
rename from assets/languagePatterns/nb_iso-8859-1
rename to fBReaderJ/src/main/assets/languagePatterns/nb_iso-8859-1
diff --git a/assets/languagePatterns/nb_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/nb_utf-16
similarity index 100%
rename from assets/languagePatterns/nb_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/nb_utf-16
diff --git a/assets/languagePatterns/nb_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/nb_utf-16be
similarity index 100%
rename from assets/languagePatterns/nb_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/nb_utf-16be
diff --git a/assets/languagePatterns/nb_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/nb_utf-8
similarity index 100%
rename from assets/languagePatterns/nb_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/nb_utf-8
diff --git a/assets/languagePatterns/nl_iso-8859-1 b/fBReaderJ/src/main/assets/languagePatterns/nl_iso-8859-1
similarity index 100%
rename from assets/languagePatterns/nl_iso-8859-1
rename to fBReaderJ/src/main/assets/languagePatterns/nl_iso-8859-1
diff --git a/assets/languagePatterns/nl_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/nl_utf-16
similarity index 100%
rename from assets/languagePatterns/nl_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/nl_utf-16
diff --git a/assets/languagePatterns/nl_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/nl_utf-16be
similarity index 100%
rename from assets/languagePatterns/nl_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/nl_utf-16be
diff --git a/assets/languagePatterns/nl_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/nl_utf-8
similarity index 100%
rename from assets/languagePatterns/nl_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/nl_utf-8
diff --git a/assets/languagePatterns/nl_windows-1252 b/fBReaderJ/src/main/assets/languagePatterns/nl_windows-1252
similarity index 100%
rename from assets/languagePatterns/nl_windows-1252
rename to fBReaderJ/src/main/assets/languagePatterns/nl_windows-1252
diff --git a/assets/languagePatterns/pt_iso-8859-1 b/fBReaderJ/src/main/assets/languagePatterns/pt_iso-8859-1
similarity index 100%
rename from assets/languagePatterns/pt_iso-8859-1
rename to fBReaderJ/src/main/assets/languagePatterns/pt_iso-8859-1
diff --git a/assets/languagePatterns/pt_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/pt_utf-16
similarity index 100%
rename from assets/languagePatterns/pt_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/pt_utf-16
diff --git a/assets/languagePatterns/pt_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/pt_utf-16be
similarity index 100%
rename from assets/languagePatterns/pt_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/pt_utf-16be
diff --git a/assets/languagePatterns/pt_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/pt_utf-8
similarity index 100%
rename from assets/languagePatterns/pt_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/pt_utf-8
diff --git a/assets/languagePatterns/ru_ibm866 b/fBReaderJ/src/main/assets/languagePatterns/ru_ibm866
similarity index 100%
rename from assets/languagePatterns/ru_ibm866
rename to fBReaderJ/src/main/assets/languagePatterns/ru_ibm866
diff --git a/assets/languagePatterns/ru_iso-8859-5 b/fBReaderJ/src/main/assets/languagePatterns/ru_iso-8859-5
similarity index 100%
rename from assets/languagePatterns/ru_iso-8859-5
rename to fBReaderJ/src/main/assets/languagePatterns/ru_iso-8859-5
diff --git a/assets/languagePatterns/ru_koi8-r b/fBReaderJ/src/main/assets/languagePatterns/ru_koi8-r
similarity index 100%
rename from assets/languagePatterns/ru_koi8-r
rename to fBReaderJ/src/main/assets/languagePatterns/ru_koi8-r
diff --git a/assets/languagePatterns/ru_mac-cyrillic b/fBReaderJ/src/main/assets/languagePatterns/ru_mac-cyrillic
similarity index 100%
rename from assets/languagePatterns/ru_mac-cyrillic
rename to fBReaderJ/src/main/assets/languagePatterns/ru_mac-cyrillic
diff --git a/assets/languagePatterns/ru_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/ru_utf-16
similarity index 100%
rename from assets/languagePatterns/ru_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/ru_utf-16
diff --git a/assets/languagePatterns/ru_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/ru_utf-16be
similarity index 100%
rename from assets/languagePatterns/ru_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/ru_utf-16be
diff --git a/assets/languagePatterns/ru_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/ru_utf-8
similarity index 100%
rename from assets/languagePatterns/ru_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/ru_utf-8
diff --git a/assets/languagePatterns/ru_windows-1251 b/fBReaderJ/src/main/assets/languagePatterns/ru_windows-1251
similarity index 100%
rename from assets/languagePatterns/ru_windows-1251
rename to fBReaderJ/src/main/assets/languagePatterns/ru_windows-1251
diff --git a/assets/languagePatterns/sv_iso-8859-1 b/fBReaderJ/src/main/assets/languagePatterns/sv_iso-8859-1
similarity index 100%
rename from assets/languagePatterns/sv_iso-8859-1
rename to fBReaderJ/src/main/assets/languagePatterns/sv_iso-8859-1
diff --git a/assets/languagePatterns/sv_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/sv_utf-16
similarity index 100%
rename from assets/languagePatterns/sv_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/sv_utf-16
diff --git a/assets/languagePatterns/sv_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/sv_utf-16be
similarity index 100%
rename from assets/languagePatterns/sv_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/sv_utf-16be
diff --git a/assets/languagePatterns/sv_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/sv_utf-8
similarity index 100%
rename from assets/languagePatterns/sv_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/sv_utf-8
diff --git a/assets/languagePatterns/ta_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/ta_utf-16
similarity index 100%
rename from assets/languagePatterns/ta_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/ta_utf-16
diff --git a/assets/languagePatterns/ta_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/ta_utf-16be
similarity index 100%
rename from assets/languagePatterns/ta_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/ta_utf-16be
diff --git a/assets/languagePatterns/ta_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/ta_utf-8
similarity index 100%
rename from assets/languagePatterns/ta_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/ta_utf-8
diff --git a/assets/languagePatterns/tr_ibm857 b/fBReaderJ/src/main/assets/languagePatterns/tr_ibm857
similarity index 100%
rename from assets/languagePatterns/tr_ibm857
rename to fBReaderJ/src/main/assets/languagePatterns/tr_ibm857
diff --git a/assets/languagePatterns/tr_iso-8859-9 b/fBReaderJ/src/main/assets/languagePatterns/tr_iso-8859-9
similarity index 100%
rename from assets/languagePatterns/tr_iso-8859-9
rename to fBReaderJ/src/main/assets/languagePatterns/tr_iso-8859-9
diff --git a/assets/languagePatterns/tr_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/tr_utf-16
similarity index 100%
rename from assets/languagePatterns/tr_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/tr_utf-16
diff --git a/assets/languagePatterns/tr_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/tr_utf-16be
similarity index 100%
rename from assets/languagePatterns/tr_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/tr_utf-16be
diff --git a/assets/languagePatterns/tr_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/tr_utf-8
similarity index 100%
rename from assets/languagePatterns/tr_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/tr_utf-8
diff --git a/assets/languagePatterns/tr_windows-1254 b/fBReaderJ/src/main/assets/languagePatterns/tr_windows-1254
similarity index 100%
rename from assets/languagePatterns/tr_windows-1254
rename to fBReaderJ/src/main/assets/languagePatterns/tr_windows-1254
diff --git a/assets/languagePatterns/uk_ibm855 b/fBReaderJ/src/main/assets/languagePatterns/uk_ibm855
similarity index 100%
rename from assets/languagePatterns/uk_ibm855
rename to fBReaderJ/src/main/assets/languagePatterns/uk_ibm855
diff --git a/assets/languagePatterns/uk_iso-8859-5 b/fBReaderJ/src/main/assets/languagePatterns/uk_iso-8859-5
similarity index 100%
rename from assets/languagePatterns/uk_iso-8859-5
rename to fBReaderJ/src/main/assets/languagePatterns/uk_iso-8859-5
diff --git a/assets/languagePatterns/uk_koi8-u b/fBReaderJ/src/main/assets/languagePatterns/uk_koi8-u
similarity index 100%
rename from assets/languagePatterns/uk_koi8-u
rename to fBReaderJ/src/main/assets/languagePatterns/uk_koi8-u
diff --git a/assets/languagePatterns/uk_mac-cyrillic b/fBReaderJ/src/main/assets/languagePatterns/uk_mac-cyrillic
similarity index 100%
rename from assets/languagePatterns/uk_mac-cyrillic
rename to fBReaderJ/src/main/assets/languagePatterns/uk_mac-cyrillic
diff --git a/assets/languagePatterns/uk_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/uk_utf-16
similarity index 100%
rename from assets/languagePatterns/uk_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/uk_utf-16
diff --git a/assets/languagePatterns/uk_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/uk_utf-16be
similarity index 100%
rename from assets/languagePatterns/uk_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/uk_utf-16be
diff --git a/assets/languagePatterns/uk_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/uk_utf-8
similarity index 100%
rename from assets/languagePatterns/uk_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/uk_utf-8
diff --git a/assets/languagePatterns/uk_windows-1251 b/fBReaderJ/src/main/assets/languagePatterns/uk_windows-1251
similarity index 100%
rename from assets/languagePatterns/uk_windows-1251
rename to fBReaderJ/src/main/assets/languagePatterns/uk_windows-1251
diff --git a/assets/languagePatterns/zh_big5 b/fBReaderJ/src/main/assets/languagePatterns/zh_big5
similarity index 100%
rename from assets/languagePatterns/zh_big5
rename to fBReaderJ/src/main/assets/languagePatterns/zh_big5
diff --git a/assets/languagePatterns/zh_gb18030 b/fBReaderJ/src/main/assets/languagePatterns/zh_gb18030
similarity index 100%
rename from assets/languagePatterns/zh_gb18030
rename to fBReaderJ/src/main/assets/languagePatterns/zh_gb18030
diff --git a/assets/languagePatterns/zh_gb2312 b/fBReaderJ/src/main/assets/languagePatterns/zh_gb2312
similarity index 100%
rename from assets/languagePatterns/zh_gb2312
rename to fBReaderJ/src/main/assets/languagePatterns/zh_gb2312
diff --git a/assets/languagePatterns/zh_gbk b/fBReaderJ/src/main/assets/languagePatterns/zh_gbk
similarity index 100%
rename from assets/languagePatterns/zh_gbk
rename to fBReaderJ/src/main/assets/languagePatterns/zh_gbk
diff --git a/assets/languagePatterns/zh_utf-16 b/fBReaderJ/src/main/assets/languagePatterns/zh_utf-16
similarity index 100%
rename from assets/languagePatterns/zh_utf-16
rename to fBReaderJ/src/main/assets/languagePatterns/zh_utf-16
diff --git a/assets/languagePatterns/zh_utf-16be b/fBReaderJ/src/main/assets/languagePatterns/zh_utf-16be
similarity index 100%
rename from assets/languagePatterns/zh_utf-16be
rename to fBReaderJ/src/main/assets/languagePatterns/zh_utf-16be
diff --git a/assets/languagePatterns/zh_utf-8 b/fBReaderJ/src/main/assets/languagePatterns/zh_utf-8
similarity index 100%
rename from assets/languagePatterns/zh_utf-8
rename to fBReaderJ/src/main/assets/languagePatterns/zh_utf-8
diff --git a/assets/resources/application/ar.xml b/fBReaderJ/src/main/assets/resources/application/ar.xml
similarity index 99%
rename from assets/resources/application/ar.xml
rename to fBReaderJ/src/main/assets/resources/application/ar.xml
index cc6c6778e85..8af7d49865f 100644
--- a/assets/resources/application/ar.xml
+++ b/fBReaderJ/src/main/assets/resources/application/ar.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/be.xml b/fBReaderJ/src/main/assets/resources/application/be.xml
similarity index 99%
rename from assets/resources/application/be.xml
rename to fBReaderJ/src/main/assets/resources/application/be.xml
index c3ba0be086a..7da25640a1c 100644
--- a/assets/resources/application/be.xml
+++ b/fBReaderJ/src/main/assets/resources/application/be.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/bg.xml b/fBReaderJ/src/main/assets/resources/application/bg.xml
similarity index 99%
rename from assets/resources/application/bg.xml
rename to fBReaderJ/src/main/assets/resources/application/bg.xml
index af401fb9362..b36eb337abb 100644
--- a/assets/resources/application/bg.xml
+++ b/fBReaderJ/src/main/assets/resources/application/bg.xml
@@ -24,6 +24,9 @@
+
+
+
diff --git a/assets/resources/application/ca.xml b/fBReaderJ/src/main/assets/resources/application/ca.xml
similarity index 99%
rename from assets/resources/application/ca.xml
rename to fBReaderJ/src/main/assets/resources/application/ca.xml
index e5b42b4c02b..f6fcdbd524a 100644
--- a/assets/resources/application/ca.xml
+++ b/fBReaderJ/src/main/assets/resources/application/ca.xml
@@ -29,6 +29,9 @@
+
+
+
diff --git a/assets/resources/application/cs.xml b/fBReaderJ/src/main/assets/resources/application/cs.xml
similarity index 99%
rename from assets/resources/application/cs.xml
rename to fBReaderJ/src/main/assets/resources/application/cs.xml
index 58aea785a53..5bb3cbdbd46 100644
--- a/assets/resources/application/cs.xml
+++ b/fBReaderJ/src/main/assets/resources/application/cs.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/da.xml b/fBReaderJ/src/main/assets/resources/application/da.xml
similarity index 99%
rename from assets/resources/application/da.xml
rename to fBReaderJ/src/main/assets/resources/application/da.xml
index bfaebeedb09..730de344db1 100644
--- a/assets/resources/application/da.xml
+++ b/fBReaderJ/src/main/assets/resources/application/da.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/de.xml b/fBReaderJ/src/main/assets/resources/application/de.xml
similarity index 95%
rename from assets/resources/application/de.xml
rename to fBReaderJ/src/main/assets/resources/application/de.xml
index 3b2e689896e..1304dde69f6 100644
--- a/assets/resources/application/de.xml
+++ b/fBReaderJ/src/main/assets/resources/application/de.xml
@@ -7,6 +7,7 @@
+
@@ -30,6 +31,9 @@
+
+
+
@@ -123,8 +127,8 @@
-
-
+
+
@@ -285,7 +289,7 @@
-
+
@@ -656,10 +660,10 @@
-
-
-
-
+
+
+
+
@@ -676,13 +680,13 @@
-
+
-
-
-
-
+
+
+
+
@@ -724,7 +728,7 @@
-
+
@@ -901,20 +905,20 @@
-
+
-
-
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
@@ -936,8 +940,8 @@
-
-
+
+
@@ -946,7 +950,7 @@
-
+
@@ -955,9 +959,9 @@
-
-
-
+
+
+
@@ -1062,7 +1066,7 @@
-
+
@@ -1117,8 +1121,8 @@
-
-
+
+
diff --git a/assets/resources/application/el.xml b/fBReaderJ/src/main/assets/resources/application/el.xml
similarity index 99%
rename from assets/resources/application/el.xml
rename to fBReaderJ/src/main/assets/resources/application/el.xml
index ca9dfa1f6ca..5ee637a6ea7 100644
--- a/assets/resources/application/el.xml
+++ b/fBReaderJ/src/main/assets/resources/application/el.xml
@@ -23,6 +23,9 @@
+
+
+
@@ -268,7 +271,7 @@
-
+
diff --git a/assets/resources/application/en.xml b/fBReaderJ/src/main/assets/resources/application/en.xml
similarity index 98%
rename from assets/resources/application/en.xml
rename to fBReaderJ/src/main/assets/resources/application/en.xml
index c149042a143..47da29c2b84 100644
--- a/assets/resources/application/en.xml
+++ b/fBReaderJ/src/main/assets/resources/application/en.xml
@@ -23,6 +23,9 @@
+
+
+
@@ -409,8 +412,8 @@
-
-
+
+
@@ -795,11 +798,20 @@
+
+
+
+
+
+
+
+
+
diff --git a/assets/resources/application/es.xml b/fBReaderJ/src/main/assets/resources/application/es.xml
similarity index 99%
rename from assets/resources/application/es.xml
rename to fBReaderJ/src/main/assets/resources/application/es.xml
index 4677ced3527..cc6ceaab6ad 100644
--- a/assets/resources/application/es.xml
+++ b/fBReaderJ/src/main/assets/resources/application/es.xml
@@ -28,6 +28,9 @@
+
+
+
diff --git a/assets/resources/application/eu.xml b/fBReaderJ/src/main/assets/resources/application/eu.xml
similarity index 99%
rename from assets/resources/application/eu.xml
rename to fBReaderJ/src/main/assets/resources/application/eu.xml
index a11b7dcd031..c35fd6d9c3d 100644
--- a/assets/resources/application/eu.xml
+++ b/fBReaderJ/src/main/assets/resources/application/eu.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/fa.xml b/fBReaderJ/src/main/assets/resources/application/fa.xml
similarity index 70%
rename from assets/resources/application/fa.xml
rename to fBReaderJ/src/main/assets/resources/application/fa.xml
index 16418e85788..4f2a52262f4 100644
--- a/assets/resources/application/fa.xml
+++ b/fBReaderJ/src/main/assets/resources/application/fa.xml
@@ -23,22 +23,25 @@
+
+
+
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -61,16 +64,16 @@
-
+
-
-
-
+
+
+
-
+
-
+
@@ -92,8 +95,8 @@
-
-
+
+
@@ -116,10 +119,10 @@
-
-
-
-
+
+
+
+
@@ -139,7 +142,7 @@
-
+
@@ -148,7 +151,7 @@
-
+
@@ -156,22 +159,22 @@
-
-
-
-
+
+
+
+
-
+
-
+
-
+
@@ -207,10 +210,10 @@
-
-
+
+
-
+
@@ -218,7 +221,7 @@
-
+
@@ -255,16 +258,16 @@
-
+
-
-
-
-
+
+
+
+
-
+
@@ -275,18 +278,18 @@
-
+
-
+
-
-
-
-
-
+
+
+
+
+
@@ -307,14 +310,14 @@
-
-
+
+
-
-
-
+
+
+
@@ -326,42 +329,42 @@
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
-
+
+
@@ -372,8 +375,8 @@
-
-
+
+
@@ -391,9 +394,9 @@
-
-
-
+
+
+
@@ -463,9 +466,9 @@
-
-
-
+
+
+
@@ -493,14 +496,14 @@
-
+
-
-
+
+
@@ -602,9 +605,9 @@
-
-
-
+
+
+
@@ -614,45 +617,45 @@
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
+
-
-
-
-
+
+
+
+
@@ -669,16 +672,16 @@
-
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
@@ -717,7 +720,7 @@
-
+
@@ -743,8 +746,8 @@
-
-
+
+
@@ -770,9 +773,9 @@
-
-
-
+
+
+
@@ -781,9 +784,9 @@
-
-
-
+
+
+
@@ -794,25 +797,25 @@
-
+
-
+
-
-
-
-
+
+
+
+
-
+
@@ -821,24 +824,24 @@
-
+
-
+
-
+
-
-
-
-
-
+
+
+
+
+
-
+
@@ -873,7 +876,7 @@
-
+
@@ -883,34 +886,34 @@
-
-
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
+
@@ -926,11 +929,11 @@
-
-
-
-
-
+
+
+
+
+
@@ -944,14 +947,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
@@ -962,7 +965,7 @@
-
+
@@ -979,68 +982,68 @@
-
-
+
+
-
+
-
-
+
+
-
-
-
+
+
+
-
+
-
-
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
-
+
+
+
+
-
+
-
+
-
+
-
+
-
+
@@ -1053,10 +1056,10 @@
-
-
-
-
+
+
+
+
@@ -1081,45 +1084,45 @@
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
-
+
+
diff --git a/assets/resources/application/fr.xml b/fBReaderJ/src/main/assets/resources/application/fr.xml
similarity index 99%
rename from assets/resources/application/fr.xml
rename to fBReaderJ/src/main/assets/resources/application/fr.xml
index 7944961acd1..d9d50a6efa7 100644
--- a/assets/resources/application/fr.xml
+++ b/fBReaderJ/src/main/assets/resources/application/fr.xml
@@ -26,6 +26,9 @@
+
+
+
diff --git a/assets/resources/application/gl.xml b/fBReaderJ/src/main/assets/resources/application/gl.xml
similarity index 99%
rename from assets/resources/application/gl.xml
rename to fBReaderJ/src/main/assets/resources/application/gl.xml
index fa08ea28ac0..a7306aa4600 100644
--- a/assets/resources/application/gl.xml
+++ b/fBReaderJ/src/main/assets/resources/application/gl.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/hu.xml b/fBReaderJ/src/main/assets/resources/application/hu.xml
similarity index 99%
rename from assets/resources/application/hu.xml
rename to fBReaderJ/src/main/assets/resources/application/hu.xml
index f7116402bf0..cf1663e0b26 100644
--- a/assets/resources/application/hu.xml
+++ b/fBReaderJ/src/main/assets/resources/application/hu.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/hy.xml b/fBReaderJ/src/main/assets/resources/application/hy.xml
similarity index 99%
rename from assets/resources/application/hy.xml
rename to fBReaderJ/src/main/assets/resources/application/hy.xml
index c62fbced934..724db329580 100644
--- a/assets/resources/application/hy.xml
+++ b/fBReaderJ/src/main/assets/resources/application/hy.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/it.xml b/fBReaderJ/src/main/assets/resources/application/it.xml
similarity index 99%
rename from assets/resources/application/it.xml
rename to fBReaderJ/src/main/assets/resources/application/it.xml
index d45a6604a43..e789217d966 100644
--- a/assets/resources/application/it.xml
+++ b/fBReaderJ/src/main/assets/resources/application/it.xml
@@ -24,6 +24,9 @@
+
+
+
diff --git a/assets/resources/application/ja.xml b/fBReaderJ/src/main/assets/resources/application/ja.xml
similarity index 99%
rename from assets/resources/application/ja.xml
rename to fBReaderJ/src/main/assets/resources/application/ja.xml
index cca87ace423..9d6ef21243a 100644
--- a/assets/resources/application/ja.xml
+++ b/fBReaderJ/src/main/assets/resources/application/ja.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/ka.xml b/fBReaderJ/src/main/assets/resources/application/ka.xml
similarity index 99%
rename from assets/resources/application/ka.xml
rename to fBReaderJ/src/main/assets/resources/application/ka.xml
index 82164688c46..1efdfc9ae06 100644
--- a/assets/resources/application/ka.xml
+++ b/fBReaderJ/src/main/assets/resources/application/ka.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/nb.xml b/fBReaderJ/src/main/assets/resources/application/nb.xml
similarity index 99%
rename from assets/resources/application/nb.xml
rename to fBReaderJ/src/main/assets/resources/application/nb.xml
index cdd7039e914..e5001ebc273 100644
--- a/assets/resources/application/nb.xml
+++ b/fBReaderJ/src/main/assets/resources/application/nb.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/fBReaderJ/src/main/assets/resources/application/neutral.xml b/fBReaderJ/src/main/assets/resources/application/neutral.xml
new file mode 100644
index 00000000000..1f0f5c5f480
--- /dev/null
+++ b/fBReaderJ/src/main/assets/resources/application/neutral.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/resources/application/nl.xml b/fBReaderJ/src/main/assets/resources/application/nl.xml
similarity index 99%
rename from assets/resources/application/nl.xml
rename to fBReaderJ/src/main/assets/resources/application/nl.xml
index 409ba775307..a6e39dde405 100644
--- a/assets/resources/application/nl.xml
+++ b/fBReaderJ/src/main/assets/resources/application/nl.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/pl.xml b/fBReaderJ/src/main/assets/resources/application/pl.xml
similarity index 99%
rename from assets/resources/application/pl.xml
rename to fBReaderJ/src/main/assets/resources/application/pl.xml
index d6d85bb099c..f506deaf26a 100644
--- a/assets/resources/application/pl.xml
+++ b/fBReaderJ/src/main/assets/resources/application/pl.xml
@@ -23,6 +23,9 @@
+
+
+
@@ -268,7 +271,7 @@
-
+
diff --git a/assets/resources/application/pt.xml b/fBReaderJ/src/main/assets/resources/application/pt.xml
similarity index 99%
rename from assets/resources/application/pt.xml
rename to fBReaderJ/src/main/assets/resources/application/pt.xml
index 2c9d55e7f85..9fd4bab4693 100644
--- a/assets/resources/application/pt.xml
+++ b/fBReaderJ/src/main/assets/resources/application/pt.xml
@@ -24,6 +24,9 @@
+
+
+
diff --git a/assets/resources/application/ro.xml b/fBReaderJ/src/main/assets/resources/application/ro.xml
similarity index 99%
rename from assets/resources/application/ro.xml
rename to fBReaderJ/src/main/assets/resources/application/ro.xml
index cd3c674ce5b..6202b4b6630 100644
--- a/assets/resources/application/ro.xml
+++ b/fBReaderJ/src/main/assets/resources/application/ro.xml
@@ -25,6 +25,9 @@
+
+
+
diff --git a/assets/resources/application/ru.xml b/fBReaderJ/src/main/assets/resources/application/ru.xml
similarity index 99%
rename from assets/resources/application/ru.xml
rename to fBReaderJ/src/main/assets/resources/application/ru.xml
index 75194d4c225..59b3d8d01e3 100644
--- a/assets/resources/application/ru.xml
+++ b/fBReaderJ/src/main/assets/resources/application/ru.xml
@@ -23,6 +23,9 @@
+
+
+
@@ -679,7 +682,7 @@
-
+
diff --git a/assets/resources/application/sr.xml b/fBReaderJ/src/main/assets/resources/application/sr.xml
similarity index 99%
rename from assets/resources/application/sr.xml
rename to fBReaderJ/src/main/assets/resources/application/sr.xml
index 08b46e387c5..023557884f4 100644
--- a/assets/resources/application/sr.xml
+++ b/fBReaderJ/src/main/assets/resources/application/sr.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/th.xml b/fBReaderJ/src/main/assets/resources/application/th.xml
similarity index 99%
rename from assets/resources/application/th.xml
rename to fBReaderJ/src/main/assets/resources/application/th.xml
index 5c696edece0..5e5efb3aea4 100644
--- a/assets/resources/application/th.xml
+++ b/fBReaderJ/src/main/assets/resources/application/th.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/tr.xml b/fBReaderJ/src/main/assets/resources/application/tr.xml
similarity index 99%
rename from assets/resources/application/tr.xml
rename to fBReaderJ/src/main/assets/resources/application/tr.xml
index 0ccdeeffd1a..823e48b8a34 100644
--- a/assets/resources/application/tr.xml
+++ b/fBReaderJ/src/main/assets/resources/application/tr.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/uk.xml b/fBReaderJ/src/main/assets/resources/application/uk.xml
similarity index 99%
rename from assets/resources/application/uk.xml
rename to fBReaderJ/src/main/assets/resources/application/uk.xml
index 0eb2b6dd4c0..2f2778cfb95 100644
--- a/assets/resources/application/uk.xml
+++ b/fBReaderJ/src/main/assets/resources/application/uk.xml
@@ -23,6 +23,9 @@
+
+
+
@@ -268,7 +271,7 @@
-
+
diff --git a/assets/resources/application/vi.xml b/fBReaderJ/src/main/assets/resources/application/vi.xml
similarity index 99%
rename from assets/resources/application/vi.xml
rename to fBReaderJ/src/main/assets/resources/application/vi.xml
index 465310de866..8008c339a24 100644
--- a/assets/resources/application/vi.xml
+++ b/fBReaderJ/src/main/assets/resources/application/vi.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/zh.xml b/fBReaderJ/src/main/assets/resources/application/zh.xml
similarity index 99%
rename from assets/resources/application/zh.xml
rename to fBReaderJ/src/main/assets/resources/application/zh.xml
index fb3d9f992b6..32972c9215e 100644
--- a/assets/resources/application/zh.xml
+++ b/fBReaderJ/src/main/assets/resources/application/zh.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/application/zh_TW.xml b/fBReaderJ/src/main/assets/resources/application/zh_TW.xml
similarity index 99%
rename from assets/resources/application/zh_TW.xml
rename to fBReaderJ/src/main/assets/resources/application/zh_TW.xml
index f33182ee14d..5be657284b9 100644
--- a/assets/resources/application/zh_TW.xml
+++ b/fBReaderJ/src/main/assets/resources/application/zh_TW.xml
@@ -23,6 +23,9 @@
+
+
+
diff --git a/assets/resources/lang.xml b/fBReaderJ/src/main/assets/resources/lang.xml
similarity index 100%
rename from assets/resources/lang.xml
rename to fBReaderJ/src/main/assets/resources/lang.xml
diff --git a/assets/resources/zlibrary/ar.xml b/fBReaderJ/src/main/assets/resources/zlibrary/ar.xml
similarity index 100%
rename from assets/resources/zlibrary/ar.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/ar.xml
diff --git a/assets/resources/zlibrary/be.xml b/fBReaderJ/src/main/assets/resources/zlibrary/be.xml
similarity index 100%
rename from assets/resources/zlibrary/be.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/be.xml
diff --git a/assets/resources/zlibrary/bg.xml b/fBReaderJ/src/main/assets/resources/zlibrary/bg.xml
similarity index 100%
rename from assets/resources/zlibrary/bg.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/bg.xml
diff --git a/assets/resources/zlibrary/ca.xml b/fBReaderJ/src/main/assets/resources/zlibrary/ca.xml
similarity index 100%
rename from assets/resources/zlibrary/ca.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/ca.xml
diff --git a/assets/resources/zlibrary/cs.xml b/fBReaderJ/src/main/assets/resources/zlibrary/cs.xml
similarity index 94%
rename from assets/resources/zlibrary/cs.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/cs.xml
index 4651fd5874d..0d7cfd26a3c 100644
--- a/assets/resources/zlibrary/cs.xml
+++ b/fBReaderJ/src/main/assets/resources/zlibrary/cs.xml
@@ -18,12 +18,12 @@
-
+
-
+
-
+
diff --git a/assets/resources/zlibrary/da.xml b/fBReaderJ/src/main/assets/resources/zlibrary/da.xml
similarity index 100%
rename from assets/resources/zlibrary/da.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/da.xml
diff --git a/assets/resources/zlibrary/de.xml b/fBReaderJ/src/main/assets/resources/zlibrary/de.xml
similarity index 100%
rename from assets/resources/zlibrary/de.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/de.xml
diff --git a/assets/resources/zlibrary/el.xml b/fBReaderJ/src/main/assets/resources/zlibrary/el.xml
similarity index 100%
rename from assets/resources/zlibrary/el.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/el.xml
diff --git a/assets/resources/zlibrary/en.xml b/fBReaderJ/src/main/assets/resources/zlibrary/en.xml
similarity index 100%
rename from assets/resources/zlibrary/en.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/en.xml
diff --git a/assets/resources/zlibrary/es.xml b/fBReaderJ/src/main/assets/resources/zlibrary/es.xml
similarity index 100%
rename from assets/resources/zlibrary/es.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/es.xml
diff --git a/assets/resources/zlibrary/eu.xml b/fBReaderJ/src/main/assets/resources/zlibrary/eu.xml
similarity index 100%
rename from assets/resources/zlibrary/eu.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/eu.xml
diff --git a/assets/resources/zlibrary/fa.xml b/fBReaderJ/src/main/assets/resources/zlibrary/fa.xml
similarity index 84%
rename from assets/resources/zlibrary/fa.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/fa.xml
index 138ef110c28..a0c4b35ce27 100644
--- a/assets/resources/zlibrary/fa.xml
+++ b/fBReaderJ/src/main/assets/resources/zlibrary/fa.xml
@@ -22,7 +22,7 @@
-
+
@@ -32,28 +32,28 @@
-
+
-
+
-
+
-
+
-
+
-
+
@@ -62,7 +62,7 @@
-
+
@@ -70,8 +70,8 @@
-
-
+
+
diff --git a/assets/resources/zlibrary/fr.xml b/fBReaderJ/src/main/assets/resources/zlibrary/fr.xml
similarity index 100%
rename from assets/resources/zlibrary/fr.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/fr.xml
diff --git a/assets/resources/zlibrary/gl.xml b/fBReaderJ/src/main/assets/resources/zlibrary/gl.xml
similarity index 100%
rename from assets/resources/zlibrary/gl.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/gl.xml
diff --git a/assets/resources/zlibrary/hu.xml b/fBReaderJ/src/main/assets/resources/zlibrary/hu.xml
similarity index 100%
rename from assets/resources/zlibrary/hu.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/hu.xml
diff --git a/assets/resources/zlibrary/hy.xml b/fBReaderJ/src/main/assets/resources/zlibrary/hy.xml
similarity index 100%
rename from assets/resources/zlibrary/hy.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/hy.xml
diff --git a/assets/resources/zlibrary/it.xml b/fBReaderJ/src/main/assets/resources/zlibrary/it.xml
similarity index 100%
rename from assets/resources/zlibrary/it.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/it.xml
diff --git a/assets/resources/zlibrary/ja.xml b/fBReaderJ/src/main/assets/resources/zlibrary/ja.xml
similarity index 100%
rename from assets/resources/zlibrary/ja.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/ja.xml
diff --git a/assets/resources/zlibrary/ka.xml b/fBReaderJ/src/main/assets/resources/zlibrary/ka.xml
similarity index 100%
rename from assets/resources/zlibrary/ka.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/ka.xml
diff --git a/assets/resources/zlibrary/nb.xml b/fBReaderJ/src/main/assets/resources/zlibrary/nb.xml
similarity index 100%
rename from assets/resources/zlibrary/nb.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/nb.xml
diff --git a/assets/resources/zlibrary/nl.xml b/fBReaderJ/src/main/assets/resources/zlibrary/nl.xml
similarity index 100%
rename from assets/resources/zlibrary/nl.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/nl.xml
diff --git a/assets/resources/zlibrary/pl.xml b/fBReaderJ/src/main/assets/resources/zlibrary/pl.xml
similarity index 100%
rename from assets/resources/zlibrary/pl.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/pl.xml
diff --git a/assets/resources/zlibrary/pt.xml b/fBReaderJ/src/main/assets/resources/zlibrary/pt.xml
similarity index 100%
rename from assets/resources/zlibrary/pt.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/pt.xml
diff --git a/assets/resources/zlibrary/ro.xml b/fBReaderJ/src/main/assets/resources/zlibrary/ro.xml
similarity index 100%
rename from assets/resources/zlibrary/ro.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/ro.xml
diff --git a/assets/resources/zlibrary/ru.xml b/fBReaderJ/src/main/assets/resources/zlibrary/ru.xml
similarity index 100%
rename from assets/resources/zlibrary/ru.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/ru.xml
diff --git a/assets/resources/zlibrary/sr.xml b/fBReaderJ/src/main/assets/resources/zlibrary/sr.xml
similarity index 100%
rename from assets/resources/zlibrary/sr.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/sr.xml
diff --git a/assets/resources/zlibrary/th.xml b/fBReaderJ/src/main/assets/resources/zlibrary/th.xml
similarity index 100%
rename from assets/resources/zlibrary/th.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/th.xml
diff --git a/assets/resources/zlibrary/tr.xml b/fBReaderJ/src/main/assets/resources/zlibrary/tr.xml
similarity index 100%
rename from assets/resources/zlibrary/tr.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/tr.xml
diff --git a/assets/resources/zlibrary/uk.xml b/fBReaderJ/src/main/assets/resources/zlibrary/uk.xml
similarity index 100%
rename from assets/resources/zlibrary/uk.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/uk.xml
diff --git a/assets/resources/zlibrary/vi.xml b/fBReaderJ/src/main/assets/resources/zlibrary/vi.xml
similarity index 100%
rename from assets/resources/zlibrary/vi.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/vi.xml
diff --git a/assets/resources/zlibrary/zh.xml b/fBReaderJ/src/main/assets/resources/zlibrary/zh.xml
similarity index 100%
rename from assets/resources/zlibrary/zh.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/zh.xml
diff --git a/assets/resources/zlibrary/zh_TW.xml b/fBReaderJ/src/main/assets/resources/zlibrary/zh_TW.xml
similarity index 100%
rename from assets/resources/zlibrary/zh_TW.xml
rename to fBReaderJ/src/main/assets/resources/zlibrary/zh_TW.xml
diff --git a/assets/wallpapers/hardpaper.jpg b/fBReaderJ/src/main/assets/wallpapers/hardpaper.jpg
similarity index 100%
rename from assets/wallpapers/hardpaper.jpg
rename to fBReaderJ/src/main/assets/wallpapers/hardpaper.jpg
diff --git a/assets/wallpapers/leather.jpg b/fBReaderJ/src/main/assets/wallpapers/leather.jpg
similarity index 100%
rename from assets/wallpapers/leather.jpg
rename to fBReaderJ/src/main/assets/wallpapers/leather.jpg
diff --git a/assets/wallpapers/sand.jpg b/fBReaderJ/src/main/assets/wallpapers/sand.jpg
similarity index 100%
rename from assets/wallpapers/sand.jpg
rename to fBReaderJ/src/main/assets/wallpapers/sand.jpg
diff --git a/assets/wallpapers/sepia.jpg b/fBReaderJ/src/main/assets/wallpapers/sepia.jpg
similarity index 100%
rename from assets/wallpapers/sepia.jpg
rename to fBReaderJ/src/main/assets/wallpapers/sepia.jpg
diff --git a/assets/wallpapers/wood.jpg b/fBReaderJ/src/main/assets/wallpapers/wood.jpg
similarity index 100%
rename from assets/wallpapers/wood.jpg
rename to fBReaderJ/src/main/assets/wallpapers/wood.jpg
diff --git a/src/com/paragon/dictionary/fbreader/OpenDictionaryActivity.java b/fBReaderJ/src/main/java/com/paragon/dictionary/fbreader/OpenDictionaryActivity.java
similarity index 100%
rename from src/com/paragon/dictionary/fbreader/OpenDictionaryActivity.java
rename to fBReaderJ/src/main/java/com/paragon/dictionary/fbreader/OpenDictionaryActivity.java
diff --git a/src/com/paragon/dictionary/fbreader/OpenDictionaryFlyout.java b/fBReaderJ/src/main/java/com/paragon/dictionary/fbreader/OpenDictionaryFlyout.java
similarity index 100%
rename from src/com/paragon/dictionary/fbreader/OpenDictionaryFlyout.java
rename to fBReaderJ/src/main/java/com/paragon/dictionary/fbreader/OpenDictionaryFlyout.java
diff --git a/src/org/amse/ys/zip/Decompressor.java b/fBReaderJ/src/main/java/org/amse/ys/zip/Decompressor.java
similarity index 100%
rename from src/org/amse/ys/zip/Decompressor.java
rename to fBReaderJ/src/main/java/org/amse/ys/zip/Decompressor.java
diff --git a/src/org/amse/ys/zip/DeflatingDecompressor.java b/fBReaderJ/src/main/java/org/amse/ys/zip/DeflatingDecompressor.java
similarity index 100%
rename from src/org/amse/ys/zip/DeflatingDecompressor.java
rename to fBReaderJ/src/main/java/org/amse/ys/zip/DeflatingDecompressor.java
diff --git a/src/org/amse/ys/zip/LocalFileHeader.java b/fBReaderJ/src/main/java/org/amse/ys/zip/LocalFileHeader.java
similarity index 100%
rename from src/org/amse/ys/zip/LocalFileHeader.java
rename to fBReaderJ/src/main/java/org/amse/ys/zip/LocalFileHeader.java
diff --git a/src/org/amse/ys/zip/MyBufferedInputStream.java b/fBReaderJ/src/main/java/org/amse/ys/zip/MyBufferedInputStream.java
similarity index 100%
rename from src/org/amse/ys/zip/MyBufferedInputStream.java
rename to fBReaderJ/src/main/java/org/amse/ys/zip/MyBufferedInputStream.java
diff --git a/src/org/amse/ys/zip/NoCompressionDecompressor.java b/fBReaderJ/src/main/java/org/amse/ys/zip/NoCompressionDecompressor.java
similarity index 100%
rename from src/org/amse/ys/zip/NoCompressionDecompressor.java
rename to fBReaderJ/src/main/java/org/amse/ys/zip/NoCompressionDecompressor.java
diff --git a/src/org/amse/ys/zip/ZipException.java b/fBReaderJ/src/main/java/org/amse/ys/zip/ZipException.java
similarity index 100%
rename from src/org/amse/ys/zip/ZipException.java
rename to fBReaderJ/src/main/java/org/amse/ys/zip/ZipException.java
diff --git a/src/org/amse/ys/zip/ZipFile.java b/fBReaderJ/src/main/java/org/amse/ys/zip/ZipFile.java
similarity index 100%
rename from src/org/amse/ys/zip/ZipFile.java
rename to fBReaderJ/src/main/java/org/amse/ys/zip/ZipFile.java
diff --git a/src/org/amse/ys/zip/ZipInputStream.java b/fBReaderJ/src/main/java/org/amse/ys/zip/ZipInputStream.java
similarity index 100%
rename from src/org/amse/ys/zip/ZipInputStream.java
rename to fBReaderJ/src/main/java/org/amse/ys/zip/ZipInputStream.java
diff --git a/src/org/geometerplus/android/fbreader/AppNotifier.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/AppNotifier.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/AppNotifier.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/AppNotifier.java
diff --git a/src/org/geometerplus/android/fbreader/BookmarkEditActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/BookmarkEditActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/BookmarkEditActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/BookmarkEditActivity.java
diff --git a/src/org/geometerplus/android/fbreader/BookmarksActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/BookmarksActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/BookmarksActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/BookmarksActivity.java
diff --git a/src/org/geometerplus/android/fbreader/ButtonsPopupPanel.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ButtonsPopupPanel.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/ButtonsPopupPanel.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ButtonsPopupPanel.java
diff --git a/src/org/geometerplus/android/fbreader/CancelActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/CancelActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/CancelActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/CancelActivity.java
diff --git a/src/org/geometerplus/android/fbreader/DictionaryUtil.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/DictionaryUtil.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/DictionaryUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/DictionaryUtil.java
diff --git a/src/org/geometerplus/android/fbreader/DisplayBookPopupAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/DisplayBookPopupAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/DisplayBookPopupAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/DisplayBookPopupAction.java
diff --git a/src/org/geometerplus/android/fbreader/ExternalFileOpener.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ExternalFileOpener.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/ExternalFileOpener.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ExternalFileOpener.java
diff --git a/src/org/geometerplus/android/fbreader/FBAndroidAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/FBAndroidAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/FBAndroidAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/FBAndroidAction.java
diff --git a/src/org/geometerplus/android/fbreader/FBReader.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/FBReader.java
similarity index 98%
rename from src/org/geometerplus/android/fbreader/FBReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/FBReader.java
index 15deecddc61..bdc021f9b5b 100644
--- a/src/org/geometerplus/android/fbreader/FBReader.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/FBReader.java
@@ -286,6 +286,10 @@ public void run() {
myFBReaderApp.addAction(ActionCode.OPEN_VIDEO, new OpenVideoAction(this, myFBReaderApp));
myFBReaderApp.addAction(ActionCode.SHOW_CANCEL_MENU, new ShowCancelMenuAction(this, myFBReaderApp));
+ myFBReaderApp.addAction(ActionCode.GO_TO_PREFERENCES, new ShowPreferencesAction(this, myFBReaderApp));
+ myFBReaderApp.addAction(ActionCode.GO_TO_LIBRARY, new ShowLibraryAction(this, myFBReaderApp));
+ myFBReaderApp.addAction(ActionCode.GO_TO_NETWORK_LIBRARY, new ShowNetworkLibraryAction(this, myFBReaderApp));
+ myFBReaderApp.addAction(ActionCode.GO_TO_PREVIOUS_BOOK, new GoToPreviousBookAction(this, myFBReaderApp));
myFBReaderApp.addAction(ActionCode.OPEN_START_SCREEN, new StartScreenAction(this, myFBReaderApp));
myFBReaderApp.addAction(ActionCode.SET_SCREEN_ORIENTATION_SYSTEM, new SetScreenOrientationAction(this, myFBReaderApp, ZLibrary.SCREEN_ORIENTATION_SYSTEM));
@@ -352,11 +356,11 @@ protected void onNewIntent(final Intent intent) {
} else if (Intent.ACTION_VIEW.equals(action) || FBReaderIntents.Action.VIEW.equals(action)) {
myOpenBookIntent = intent;
if (myFBReaderApp.Model == null && myFBReaderApp.ExternalBook != null) {
- final ExternalFormatPlugin plugin =
- (ExternalFormatPlugin)myFBReaderApp.ExternalBook.getPluginOrNull();
try {
+ final ExternalFormatPlugin plugin =
+ (ExternalFormatPlugin)myFBReaderApp.ExternalBook.getPlugin();
startActivity(PluginUtil.createIntent(plugin, PluginUtil.ACTION_KILL));
- } catch (ActivityNotFoundException e) {
+ } catch (Exception e) {
e.printStackTrace();
}
}
@@ -595,16 +599,19 @@ protected void onPause() {
unregisterReceiver(mySyncUpdateReceiver);
} catch (IllegalArgumentException e) {
}
+
try {
unregisterReceiver(myBatteryInfoReceiver);
} catch (IllegalArgumentException e) {
- // do nothing, this exception means myBatteryInfoReceiver was not registered
+ // do nothing, this exception means that myBatteryInfoReceiver was not registered
}
+
myFBReaderApp.stopTimer();
if (getZLibrary().DisableButtonLightsOption.getValue()) {
setButtonLight(true);
}
myFBReaderApp.onWindowClosing();
+
super.onPause();
}
diff --git a/src/org/geometerplus/android/fbreader/FBReaderApplication.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/FBReaderApplication.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/FBReaderApplication.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/FBReaderApplication.java
diff --git a/src/org/geometerplus/android/fbreader/FBUtil.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/FBUtil.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/FBUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/FBUtil.java
diff --git a/obsolete/j2me/src/org/zlibrary/ui/j2me/config/ZLJ2MEConfig.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/GoToPreviousBookAction.java
similarity index 50%
rename from obsolete/j2me/src/org/zlibrary/ui/j2me/config/ZLJ2MEConfig.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/GoToPreviousBookAction.java
index e5d74f3ce61..f7445b0d3ac 100644
--- a/obsolete/j2me/src/org/zlibrary/ui/j2me/config/ZLJ2MEConfig.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/GoToPreviousBookAction.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2007-2009 Geometer Plus
+ * Copyright (C) 2007-2014 Geometer Plus
*
* 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
@@ -17,25 +17,24 @@
* 02110-1301, USA.
*/
-package org.geometerplus.zlibrary.ui.j2me.config;
+package org.geometerplus.android.fbreader;
-import org.geometerplus.zlibrary.core.config.ZLConfig;
+import org.geometerplus.fbreader.book.Book;
+import org.geometerplus.fbreader.fbreader.FBReaderApp;
-class ZLJ2MEConfig implements ZLConfig {
- public void removeGroup(String name) {
- // TODO: implement
- }
-
- public String getValue(String group, String name, String defaultValue) {
- // TODO: implement
- return defaultValue;
- }
+import group.pals.android.lib.ui.filechooser.utils.ui.Dlg;
- public void setValue(String group, String name, String value, String category) {
- // TODO: implement
+class GoToPreviousBookAction extends FBAndroidAction {
+ GoToPreviousBookAction(FBReader baseActivity, FBReaderApp fbreader) {
+ super(baseActivity, fbreader);
}
- public void unsetValue(String group, String name) {
- // TODO: implement
+ @Override
+ protected void run(Object ... params) {
+ Book recentBook = Reader.Collection.getRecentBook(1);
+ // TODO: use resource file
+ Dlg.toast(BaseActivity, recentBook == null ?
+ "No previous book" : "Returned to " + recentBook.getTitle(), 1);
+ Reader.openBook(recentBook, null, null, null);
}
}
diff --git a/src/org/geometerplus/android/fbreader/InstallPluginsAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/InstallPluginsAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/InstallPluginsAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/InstallPluginsAction.java
diff --git a/src/org/geometerplus/android/fbreader/MenuData.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/MenuData.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/MenuData.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/MenuData.java
diff --git a/src/org/geometerplus/android/fbreader/NavigationPopup.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/NavigationPopup.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/NavigationPopup.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/NavigationPopup.java
diff --git a/src/org/geometerplus/android/fbreader/NotificationIds.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/NotificationIds.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/NotificationIds.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/NotificationIds.java
diff --git a/src/org/geometerplus/android/fbreader/OpenVideoAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/OpenVideoAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/OpenVideoAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/OpenVideoAction.java
diff --git a/src/org/geometerplus/android/fbreader/OpenWebHelpAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/OpenWebHelpAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/OpenWebHelpAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/OpenWebHelpAction.java
diff --git a/src/org/geometerplus/android/fbreader/OrientationUtil.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/OrientationUtil.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/OrientationUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/OrientationUtil.java
diff --git a/src/org/geometerplus/android/fbreader/PluginListActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/PluginListActivity.java
similarity index 90%
rename from src/org/geometerplus/android/fbreader/PluginListActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/PluginListActivity.java
index a766cc0f794..35f6aea5045 100644
--- a/src/org/geometerplus/android/fbreader/PluginListActivity.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/PluginListActivity.java
@@ -23,6 +23,9 @@
import java.util.LinkedList;
import java.util.List;
+import org.xml.sax.Attributes;
+import org.xml.sax.helpers.DefaultHandler;
+
import android.app.ListActivity;
import android.content.Intent;
import android.content.pm.PackageManager;
@@ -33,8 +36,7 @@
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
import org.geometerplus.zlibrary.core.resources.ZLResource;
-import org.geometerplus.zlibrary.core.xml.ZLStringMap;
-import org.geometerplus.zlibrary.core.xml.ZLXMLReaderAdapter;
+import org.geometerplus.zlibrary.core.util.XmlUtil;
import org.geometerplus.zlibrary.ui.android.R;
import org.geometerplus.android.util.PackageUtil;
@@ -62,7 +64,7 @@ private static class Plugin {
}
}
- private class Reader extends ZLXMLReaderAdapter {
+ private class Reader extends DefaultHandler {
final PackageManager myPackageManager = getPackageManager();
final List myPlugins;
@@ -71,16 +73,11 @@ private class Reader extends ZLXMLReaderAdapter {
}
@Override
- public boolean dontCacheAttributeValues() {
- return true;
- }
-
- @Override
- public boolean startElementHandler(String tag, ZLStringMap attributes) {
- if ("plugin".equals(tag)) {
+ public void startElement(String uri, String localName, String qName, Attributes attributes) {
+ if ("plugin".equals(localName)) {
try {
if (Integer.valueOf(attributes.getValue("min-api")) > Build.VERSION.SDK_INT) {
- return false;
+ return;
}
} catch (Throwable t) {
// ignore
@@ -93,7 +90,6 @@ public boolean startElementHandler(String tag, ZLStringMap attributes) {
myPlugins.add(new Plugin(id, packageName));
}
}
- return false;
}
}
@@ -101,7 +97,10 @@ private class PluginListAdapter extends BaseAdapter implements AdapterView.OnIte
private final List myPlugins = new LinkedList();
PluginListAdapter() {
- new Reader(myPlugins).readQuietly(ZLFile.createFileByPath("default/plugins.xml"));
+ XmlUtil.parseQuietly(
+ ZLFile.createFileByPath("default/plugins.xml"),
+ new Reader(myPlugins)
+ );
}
public final int getCount() {
diff --git a/src/org/geometerplus/android/fbreader/PopupPanel.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/PopupPanel.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/PopupPanel.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/PopupPanel.java
diff --git a/src/org/geometerplus/android/fbreader/PopupWindow.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/PopupWindow.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/PopupWindow.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/PopupWindow.java
diff --git a/src/org/geometerplus/android/fbreader/ProcessHyperlinkAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ProcessHyperlinkAction.java
similarity index 98%
rename from src/org/geometerplus/android/fbreader/ProcessHyperlinkAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ProcessHyperlinkAction.java
index e9db968ae81..7558d869e93 100644
--- a/src/org/geometerplus/android/fbreader/ProcessHyperlinkAction.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ProcessHyperlinkAction.java
@@ -74,7 +74,7 @@ protected void run(Object ... params) {
try {
final Intent intent = new Intent();
intent.setClass(BaseActivity, ImageViewActivity.class);
- intent.setData(Uri.parse(url));
+ intent.putExtra(ImageViewActivity.URL_KEY, url);
intent.putExtra(
ImageViewActivity.BACKGROUND_COLOR_KEY,
Reader.ImageOptions.ImageViewBackground.getValue().intValue()
diff --git a/src/org/geometerplus/android/fbreader/RunPluginAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/RunPluginAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/RunPluginAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/RunPluginAction.java
diff --git a/src/org/geometerplus/android/fbreader/SearchAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SearchAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/SearchAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SearchAction.java
diff --git a/src/org/geometerplus/android/fbreader/SelectionBookmarkAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SelectionBookmarkAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/SelectionBookmarkAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SelectionBookmarkAction.java
diff --git a/src/org/geometerplus/android/fbreader/SelectionCopyAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SelectionCopyAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/SelectionCopyAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SelectionCopyAction.java
diff --git a/src/org/geometerplus/android/fbreader/SelectionHidePanelAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SelectionHidePanelAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/SelectionHidePanelAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SelectionHidePanelAction.java
diff --git a/src/org/geometerplus/android/fbreader/SelectionPopup.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SelectionPopup.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/SelectionPopup.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SelectionPopup.java
diff --git a/src/org/geometerplus/android/fbreader/SelectionShareAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SelectionShareAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/SelectionShareAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SelectionShareAction.java
diff --git a/src/org/geometerplus/android/fbreader/SelectionShowPanelAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SelectionShowPanelAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/SelectionShowPanelAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SelectionShowPanelAction.java
diff --git a/src/org/geometerplus/android/fbreader/SelectionTranslateAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SelectionTranslateAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/SelectionTranslateAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SelectionTranslateAction.java
diff --git a/src/org/geometerplus/android/fbreader/SetOrientationAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SetOrientationAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/SetOrientationAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/SetOrientationAction.java
diff --git a/src/org/geometerplus/android/fbreader/ShareBookAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShareBookAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/ShareBookAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShareBookAction.java
diff --git a/src/org/geometerplus/android/fbreader/ShowBookInfoAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowBookInfoAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/ShowBookInfoAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowBookInfoAction.java
diff --git a/src/org/geometerplus/android/fbreader/ShowBookmarksAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowBookmarksAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/ShowBookmarksAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowBookmarksAction.java
diff --git a/src/org/geometerplus/android/fbreader/ShowCancelMenuAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowCancelMenuAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/ShowCancelMenuAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowCancelMenuAction.java
diff --git a/src/org/geometerplus/android/fbreader/ShowLibraryAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowLibraryAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/ShowLibraryAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowLibraryAction.java
diff --git a/src/org/geometerplus/android/fbreader/ShowMenuAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowMenuAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/ShowMenuAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowMenuAction.java
diff --git a/src/org/geometerplus/android/fbreader/ShowNavigationAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowNavigationAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/ShowNavigationAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowNavigationAction.java
diff --git a/src/org/geometerplus/android/fbreader/ShowNetworkLibraryAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowNetworkLibraryAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/ShowNetworkLibraryAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowNetworkLibraryAction.java
diff --git a/src/org/geometerplus/android/fbreader/ShowPreferencesAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowPreferencesAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/ShowPreferencesAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowPreferencesAction.java
diff --git a/src/org/geometerplus/android/fbreader/ShowTOCAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowTOCAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/ShowTOCAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ShowTOCAction.java
diff --git a/src/org/geometerplus/android/fbreader/StartScreenAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/StartScreenAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/StartScreenAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/StartScreenAction.java
diff --git a/src/org/geometerplus/android/fbreader/TOCActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/TOCActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/TOCActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/TOCActivity.java
diff --git a/src/org/geometerplus/android/fbreader/TextSearchPopup.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/TextSearchPopup.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/TextSearchPopup.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/TextSearchPopup.java
diff --git a/src/org/geometerplus/android/fbreader/ZLTreeAdapter.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ZLTreeAdapter.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/ZLTreeAdapter.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/ZLTreeAdapter.java
diff --git a/src/org/geometerplus/android/fbreader/api/Api.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/Api.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/Api.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/Api.java
diff --git a/src/org/geometerplus/android/fbreader/api/ApiClientImplementation.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/ApiClientImplementation.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/ApiClientImplementation.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/ApiClientImplementation.java
diff --git a/src/org/geometerplus/android/fbreader/api/ApiException.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/ApiException.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/ApiException.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/ApiException.java
diff --git a/src/org/geometerplus/android/fbreader/api/ApiListener.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/ApiListener.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/ApiListener.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/ApiListener.java
diff --git a/src/org/geometerplus/android/fbreader/api/ApiMethods.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/ApiMethods.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/ApiMethods.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/ApiMethods.java
diff --git a/src/org/geometerplus/android/fbreader/api/ApiObject.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/ApiObject.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/ApiObject.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/ApiObject.java
diff --git a/src/org/geometerplus/android/fbreader/api/ApiServerImplementation.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/ApiServerImplementation.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/ApiServerImplementation.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/ApiServerImplementation.java
diff --git a/src/org/geometerplus/android/fbreader/api/ApiService.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/ApiService.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/ApiService.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/ApiService.java
diff --git a/src/org/geometerplus/android/fbreader/api/FBReaderIntents.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/FBReaderIntents.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/FBReaderIntents.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/FBReaderIntents.java
diff --git a/src/org/geometerplus/android/fbreader/api/MenuNode.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/MenuNode.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/MenuNode.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/MenuNode.java
diff --git a/src/org/geometerplus/android/fbreader/api/PluginApi.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/PluginApi.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/PluginApi.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/PluginApi.java
diff --git a/src/org/geometerplus/android/fbreader/api/TextPosition.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/TextPosition.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/api/TextPosition.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/api/TextPosition.java
diff --git a/src/org/geometerplus/android/fbreader/config/ConfigService.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/config/ConfigService.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/config/ConfigService.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/config/ConfigService.java
diff --git a/src/org/geometerplus/android/fbreader/config/ConfigShadow.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/config/ConfigShadow.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/config/ConfigShadow.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/config/ConfigShadow.java
diff --git a/src/org/geometerplus/android/fbreader/config/SQLiteConfig.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/config/SQLiteConfig.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/config/SQLiteConfig.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/config/SQLiteConfig.java
diff --git a/src/org/geometerplus/android/fbreader/covers/CoverCache.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/covers/CoverCache.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/covers/CoverCache.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/covers/CoverCache.java
diff --git a/src/org/geometerplus/android/fbreader/covers/CoverHolder.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/covers/CoverHolder.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/covers/CoverHolder.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/covers/CoverHolder.java
diff --git a/src/org/geometerplus/android/fbreader/covers/CoverManager.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/covers/CoverManager.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/covers/CoverManager.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/covers/CoverManager.java
diff --git a/src/org/geometerplus/android/fbreader/crash/FixBooksDirectoryActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/crash/FixBooksDirectoryActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/crash/FixBooksDirectoryActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/crash/FixBooksDirectoryActivity.java
diff --git a/src/org/geometerplus/android/fbreader/crash/MissingNativeLibraryActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/crash/MissingNativeLibraryActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/crash/MissingNativeLibraryActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/crash/MissingNativeLibraryActivity.java
diff --git a/src/org/geometerplus/android/fbreader/error/BookReadingErrorActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/error/BookReadingErrorActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/error/BookReadingErrorActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/error/BookReadingErrorActivity.java
diff --git a/src/org/geometerplus/android/fbreader/formatPlugin/PluginUtil.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/formatPlugin/PluginUtil.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/formatPlugin/PluginUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/formatPlugin/PluginUtil.java
diff --git a/src/org/geometerplus/android/fbreader/httpd/DataServer.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/httpd/DataServer.java
similarity index 67%
rename from src/org/geometerplus/android/fbreader/httpd/DataServer.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/httpd/DataServer.java
index ca402e77ad1..7df7b0c73a2 100644
--- a/src/org/geometerplus/android/fbreader/httpd/DataServer.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/httpd/DataServer.java
@@ -19,23 +19,29 @@
package org.geometerplus.android.fbreader.httpd;
-import java.io.InputStream;
-import java.io.IOException;
+import java.io.*;
import java.util.Map;
import fi.iki.elonen.NanoHTTPD;
+import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
+
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
-import org.geometerplus.zlibrary.core.image.ZLFileImageProxy;
-import org.geometerplus.zlibrary.core.image.ZLImage;
+import org.geometerplus.zlibrary.core.image.*;
import org.geometerplus.zlibrary.core.util.MimeType;
import org.geometerplus.zlibrary.core.util.SliceInputStream;
+import org.geometerplus.zlibrary.ui.android.image.ZLBitmapImage;
import org.geometerplus.fbreader.book.BookUtil;
+import org.geometerplus.fbreader.formats.PluginImage;
public class DataServer extends NanoHTTPD {
- DataServer(int port) {
+ private final DataService myService;
+
+ DataServer(DataService service, int port) {
super(port);
+ myService = service;
}
@Override
@@ -55,16 +61,60 @@ private Response serveCover(String uri, Method method, Map header
if (image instanceof ZLFileImageProxy) {
final ZLFileImageProxy proxy = (ZLFileImageProxy)image;
proxy.synchronize();
- final InputStream stream = proxy.getRealImage().inputStream();
+ final ZLStreamImage realImage = proxy.getRealImage();
+ if (realImage == null) {
+ return notFound(uri);
+ }
+ InputStream stream = realImage.inputStream();
+ if (stream == null) {
+ return notFound(uri);
+ }
+ final BitmapFactory.Options options = new BitmapFactory.Options();
+ options.inJustDecodeBounds = true;
+ try {
+ BitmapFactory.decodeStream(stream, null, options);
+ } catch (Exception e) {
+ return notFound(uri);
+ }
+ if (options.outWidth <= 0 || options.outHeight <= 0) {
+ return notFound(uri);
+ }
+ stream.close();
+ stream = realImage.inputStream();
if (stream == null) {
return notFound(uri);
}
- return new Response(Response.Status.OK, MimeType.IMAGE_PNG.toString(), stream);
- } else /* TODO: process PluginImage & null */ {
+ final Response res =
+ new Response(Response.Status.OK, MimeType.IMAGE_PNG.toString(), stream);
+ res.addHeader("X-Width", String.valueOf(options.outWidth));
+ res.addHeader("X-Height", String.valueOf(options.outHeight));
+ return res;
+ } else if (image instanceof PluginImage) {
+ final PluginImage pluginImage = (PluginImage)image;
+ if (pluginImage.isSynchronized()) {
+ try {
+ final Bitmap bitmap =
+ ((ZLBitmapImage)pluginImage.getRealImage()).getBitmap();
+ final ByteArrayOutputStream os = new ByteArrayOutputStream();
+ bitmap.compress(Bitmap.CompressFormat.JPEG, 85, os);
+ final InputStream is = new ByteArrayInputStream(os.toByteArray());
+ final Response res =
+ new Response(Response.Status.OK, MimeType.IMAGE_JPEG.toString(), is);
+ res.addHeader("X-Width", String.valueOf(bitmap.getWidth()));
+ res.addHeader("X-Height", String.valueOf(bitmap.getHeight()));
+ return res;
+ } catch (Throwable t) {
+ return noContent(uri);
+ }
+ } else {
+ myService.ImageSynchronizer.synchronize(pluginImage, null);
+ return noContent(uri);
+ }
+ } else {
return notFound(uri);
}
- } catch (Exception e) {
- return forbidden(uri, e);
+ } catch (Throwable t) {
+ return forbidden(uri, t);
}
}
@@ -152,6 +202,14 @@ private Response notFound(String uri) {
);
}
+ private Response noContent(String uri) {
+ return new Response(
+ Response.Status.NO_CONTENT,
+ MimeType.TEXT_HTML.toString(),
+ "
No content: " + uri + "
"
+ );
+ }
+
private Response forbidden(String uri, Throwable t) {
t.printStackTrace();
return new Response(
diff --git a/src/org/geometerplus/android/fbreader/httpd/DataService.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/httpd/DataService.java
similarity index 90%
rename from src/org/geometerplus/android/fbreader/httpd/DataService.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/httpd/DataService.java
index 41f68398e3c..180bae22bf6 100644
--- a/src/org/geometerplus/android/fbreader/httpd/DataService.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/httpd/DataService.java
@@ -26,7 +26,11 @@
import android.os.IBinder;
import android.os.RemoteException;
+import org.geometerplus.android.fbreader.util.AndroidImageSynchronizer;
+
public class DataService extends Service {
+ final AndroidImageSynchronizer ImageSynchronizer = new AndroidImageSynchronizer(this);
+
public static class Connection implements ServiceConnection {
private DataInterface myDataInterface;
@@ -56,7 +60,7 @@ public void onCreate() {
public void run () {
for (int port = 12000; port < 12500; ++port) {
try {
- myServer = new DataServer(port);
+ myServer = new DataServer(DataService.this, port);
myServer.start();
myPort = port;
break;
@@ -80,6 +84,7 @@ public void run () {
}
}).start();
}
+ ImageSynchronizer.clear();
super.onDestroy();
}
diff --git a/src/org/geometerplus/android/fbreader/httpd/DataUtil.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/httpd/DataUtil.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/httpd/DataUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/httpd/DataUtil.java
diff --git a/src/org/geometerplus/android/fbreader/image/ImageViewActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/image/ImageViewActivity.java
similarity index 95%
rename from src/org/geometerplus/android/fbreader/image/ImageViewActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/image/ImageViewActivity.java
index 6203aadd9e9..708b6b047ca 100644
--- a/src/org/geometerplus/android/fbreader/image/ImageViewActivity.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/image/ImageViewActivity.java
@@ -22,7 +22,6 @@
import android.app.Activity;
import android.content.Intent;
import android.graphics.*;
-import android.net.Uri;
import android.os.Bundle;
import android.util.FloatMath;
import android.view.*;
@@ -37,7 +36,8 @@
import org.geometerplus.android.fbreader.OrientationUtil;
public class ImageViewActivity extends Activity {
- public static final String BACKGROUND_COLOR_KEY = "bgColor";
+ public static final String URL_KEY = "fbreader.imageview.url";
+ public static final String BACKGROUND_COLOR_KEY = "fbreader.imageview.background";
private Bitmap myBitmap;
private ZLColor myBgColor;
@@ -66,9 +66,10 @@ protected void onCreate(Bundle icicle) {
intent.getIntExtra(BACKGROUND_COLOR_KEY, new ZLColor(127, 127, 127).intValue())
);
- final Uri uri = intent.getData();
- if (ZLFileImage.SCHEME.equals(uri.getScheme())) {
- final ZLFileImage image = ZLFileImage.byUrlPath(uri.getPath());
+ final String url = intent.getStringExtra(URL_KEY);
+ final String prefix = ZLFileImage.SCHEME + "://";
+ if (url != null && url.startsWith(prefix)) {
+ final ZLFileImage image = ZLFileImage.byUrlPath(url.substring(prefix.length()));
if (image == null) {
// TODO: error message (?)
finish();
diff --git a/src/org/geometerplus/android/fbreader/library/BookInfoActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/library/BookInfoActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/library/BookInfoActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/library/BookInfoActivity.java
diff --git a/src/org/geometerplus/android/fbreader/library/LibraryActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/library/LibraryActivity.java
similarity index 95%
rename from src/org/geometerplus/android/fbreader/library/LibraryActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/library/LibraryActivity.java
index 9b89e38eaa9..8c019105061 100644
--- a/src/org/geometerplus/android/fbreader/library/LibraryActivity.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/library/LibraryActivity.java
@@ -24,6 +24,7 @@
import android.app.AlertDialog;
import android.app.SearchManager;
import android.content.*;
+import android.os.Build;
import android.os.Bundle;
import android.view.*;
import android.widget.AdapterView;
@@ -114,11 +115,15 @@ public boolean isTreeSelected(FBTree tree) {
@Override
protected void onListItemClick(ListView listView, View view, int position, long rowId) {
final LibraryTree tree = (LibraryTree)getListAdapter().getItem(position);
- final Book book = tree.getBook();
- if (book != null) {
- showBookInfo(book);
+ if (tree instanceof ExternalViewTree) {
+ runOrInstallExternalView();
} else {
- openTree(tree);
+ final Book book = tree.getBook();
+ if (book != null) {
+ showBookInfo(book);
+ } else {
+ openTree(tree);
+ }
}
}
@@ -172,6 +177,7 @@ private interface OptionsItemId {
int UploadAgain = 2;
int TryAgain = 3;
int DeleteAll = 4;
+ int ExternalView = 5;
}
@Override
@@ -202,7 +208,7 @@ private void createBookContextMenu(ContextMenu menu, Book book) {
} else {
menu.add(0, ContextItemId.MarkAsRead, 0, resource.getResource("markAsRead").getValue());
}
- if (BookUtil.canRemoveBookFile(book)) {
+ if (myCollection.canRemoveBook(book, true)) {
menu.add(0, ContextItemId.DeleteBook, 0, resource.getResource("deleteBook").getValue());
}
if (labels.contains(Book.SYNC_DELETED_LABEL)) {
@@ -288,6 +294,9 @@ public boolean onCreateOptionsMenu(Menu menu) {
addMenuItem(menu, OptionsItemId.UploadAgain, "uploadAgain", -1);
addMenuItem(menu, OptionsItemId.TryAgain, "tryAgain", -1);
addMenuItem(menu, OptionsItemId.DeleteAll, "deleteAll", -1);
+ if (Build.VERSION.SDK_INT >= 9) {
+ addMenuItem(menu, OptionsItemId.ExternalView, "bookshelfView", -1);
+ }
return true;
}
@@ -362,11 +371,23 @@ public boolean onMenuItemClick(MenuItem item) {
}
tryToDeleteBooks(books);
}
+ case OptionsItemId.ExternalView:
+ runOrInstallExternalView();
+ return true;
default:
return true;
}
}
+ private void runOrInstallExternalView() {
+ try {
+ startActivity(new Intent(FBReaderIntents.Action.EXTERNAL_LIBRARY));
+ finish();
+ } catch (ActivityNotFoundException e) {
+ PackageUtil.installFromMarket(this, "org.fbreader.plugin.library");
+ }
+ }
+
//
// Book deletion
//
diff --git a/src/org/geometerplus/android/fbreader/library/LibrarySearchActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/library/LibrarySearchActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/library/LibrarySearchActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/library/LibrarySearchActivity.java
diff --git a/src/org/geometerplus/android/fbreader/library/LibraryTreeAdapter.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/library/LibraryTreeAdapter.java
similarity index 98%
rename from src/org/geometerplus/android/fbreader/library/LibraryTreeAdapter.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/library/LibraryTreeAdapter.java
index 193d8174faa..a614f5cfb79 100644
--- a/src/org/geometerplus/android/fbreader/library/LibraryTreeAdapter.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/library/LibraryTreeAdapter.java
@@ -95,6 +95,8 @@ public View getView(int position, View convertView, final ViewGroup parent) {
private int getCoverResourceId(LibraryTree tree) {
if (tree.getBook() != null) {
return R.drawable.ic_list_library_book;
+ } else if (tree instanceof ExternalViewTree) {
+ return R.drawable.plugin_bookshelf;
} else if (tree instanceof FavoritesTree) {
return R.drawable.ic_list_library_favorites;
} else if (tree instanceof RecentBooksTree || tree instanceof SyncTree) {
diff --git a/src/org/geometerplus/android/fbreader/libraryService/BookCollectionShadow.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/libraryService/BookCollectionShadow.java
similarity index 69%
rename from src/org/geometerplus/android/fbreader/libraryService/BookCollectionShadow.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/libraryService/BookCollectionShadow.java
index 93756684e84..cda3589d2be 100644
--- a/src/org/geometerplus/android/fbreader/libraryService/BookCollectionShadow.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/libraryService/BookCollectionShadow.java
@@ -63,21 +63,25 @@ public void onReceive(Context context, Intent intent) {
}
};
- public synchronized void bindToService(Context context, Runnable onBindAction) {
+ public synchronized boolean bindToService(Context context, Runnable onBindAction) {
if (myInterface != null && myContext == context) {
if (onBindAction != null) {
Config.Instance().runOnConnect(onBindAction);
}
+ return true;
} else {
if (onBindAction != null) {
myOnBindActions.add(onBindAction);
}
- context.bindService(
+ final boolean result = context.bindService(
FBReaderIntents.internalIntent(FBReaderIntents.Action.LIBRARY_SERVICE),
this,
LibraryService.BIND_AUTO_CREATE
);
- myContext = context;
+ if (result) {
+ myContext = context;
+ }
+ return result;
}
}
@@ -131,15 +135,14 @@ public synchronized Status status() {
}
}
- public synchronized List books(BookQuery query) {
- if (myInterface == null) {
- return Collections.emptyList();
- }
- try {
- return SerializerUtil.deserializeBookList(myInterface.books(SerializerUtil.serialize(query)));
- } catch (RemoteException e) {
- return Collections.emptyList();
- }
+ public List books(final BookQuery query) {
+ return listCall(new ListCallable() {
+ public List call() throws RemoteException {
+ return SerializerUtil.deserializeBookList(
+ myInterface.books(SerializerUtil.serialize(query))
+ );
+ }
+ });
}
public synchronized boolean hasBooks(Filter filter) {
@@ -153,15 +156,20 @@ public synchronized boolean hasBooks(Filter filter) {
}
}
- public synchronized List recentBooks() {
- if (myInterface == null) {
- return Collections.emptyList();
- }
- try {
- return SerializerUtil.deserializeBookList(myInterface.recentBooks());
- } catch (RemoteException e) {
- return Collections.emptyList();
- }
+ public List recentlyAddedBooks(final int count) {
+ return listCall(new ListCallable() {
+ public List call() throws RemoteException {
+ return SerializerUtil.deserializeBookList(myInterface.recentlyAddedBooks(count));
+ }
+ });
+ }
+
+ public List recentlyOpenedBooks(final int count) {
+ return listCall(new ListCallable() {
+ public List call() throws RemoteException {
+ return SerializerUtil.deserializeBookList(myInterface.recentlyOpenedBooks(count));
+ }
+ });
}
public synchronized Book getRecentBook(int index) {
@@ -220,36 +228,30 @@ public synchronized Book getBookByHash(String hash) {
}
}
- public synchronized List authors() {
- if (myInterface == null) {
- return Collections.emptyList();
- }
- try {
- final List strings = myInterface.authors();
- final List authors = new ArrayList(strings.size());
- for (String s : strings) {
- authors.add(Util.stringToAuthor(s));
+ public List authors() {
+ return listCall(new ListCallable() {
+ public List call() throws RemoteException {
+ final List strings = myInterface.authors();
+ final List authors = new ArrayList(strings.size());
+ for (String s : strings) {
+ authors.add(Util.stringToAuthor(s));
+ }
+ return authors;
}
- return authors;
- } catch (RemoteException e) {
- return Collections.emptyList();
- }
+ });
}
- public synchronized List tags() {
- if (myInterface == null) {
- return Collections.emptyList();
- }
- try {
- final List strings = myInterface.tags();
- final List tags = new ArrayList(strings.size());
- for (String s : strings) {
- tags.add(Util.stringToTag(s));
+ public List tags() {
+ return listCall(new ListCallable() {
+ public List call() throws RemoteException {
+ final List strings = myInterface.tags();
+ final List tags = new ArrayList(strings.size());
+ for (String s : strings) {
+ tags.add(Util.stringToTag(s));
+ }
+ return tags;
}
- return tags;
- } catch (RemoteException e) {
- return Collections.emptyList();
- }
+ });
}
public synchronized boolean hasSeries() {
@@ -262,45 +264,47 @@ public synchronized boolean hasSeries() {
return false;
}
- public synchronized List series() {
- if (myInterface == null) {
- return Collections.emptyList();
- }
- try {
- return myInterface.series();
- } catch (RemoteException e) {
- return Collections.emptyList();
- }
+ public List series() {
+ return listCall(new ListCallable() {
+ public List call() throws RemoteException {
+ return myInterface.series();
+ }
+ });
}
- public synchronized List titles(BookQuery query) {
- if (myInterface == null) {
- return Collections.emptyList();
- }
- try {
- return myInterface.titles(SerializerUtil.serialize(query));
- } catch (RemoteException e) {
- return Collections.emptyList();
- }
+ public List titles(final BookQuery query) {
+ return listCall(new ListCallable() {
+ public List call() throws RemoteException {
+ return myInterface.titles(SerializerUtil.serialize(query));
+ }
+ });
+ }
+
+ public List firstTitleLetters() {
+ return listCall(new ListCallable() {
+ public List call() throws RemoteException {
+ return myInterface.firstTitleLetters();
+ }
+ });
}
- public synchronized List firstTitleLetters() {
+ public synchronized boolean saveBook(Book book) {
if (myInterface == null) {
- return Collections.emptyList();
+ return false;
}
try {
- return myInterface.firstTitleLetters();
+ return myInterface.saveBook(SerializerUtil.serialize(book));
} catch (RemoteException e) {
- return Collections.emptyList();
+ return false;
}
}
- public synchronized boolean saveBook(Book book) {
+ public synchronized boolean canRemoveBook(Book book, boolean deleteFromDisk) {
if (myInterface == null) {
return false;
}
try {
- return myInterface.saveBook(SerializerUtil.serialize(book));
+ return myInterface.canRemoveBook(SerializerUtil.serialize(book), deleteFromDisk);
} catch (RemoteException e) {
return false;
}
@@ -315,23 +319,30 @@ public synchronized void removeBook(Book book, boolean deleteFromDisk) {
}
}
- public synchronized void addBookToRecentList(Book book) {
+ public synchronized void addToRecentlyOpened(Book book) {
if (myInterface != null) {
try {
- myInterface.addBookToRecentList(SerializerUtil.serialize(book));
+ myInterface.addToRecentlyOpened(SerializerUtil.serialize(book));
} catch (RemoteException e) {
}
}
}
- public synchronized List labels() {
+ public synchronized void removeFromRecentlyOpened(Book book) {
if (myInterface != null) {
try {
- return myInterface.labels();
+ myInterface.removeFromRecentlyOpened(SerializerUtil.serialize(book));
} catch (RemoteException e) {
}
}
- return Collections.emptyList();
+ }
+
+ public List labels() {
+ return listCall(new ListCallable() {
+ public List call() throws RemoteException {
+ return myInterface.labels();
+ }
+ });
}
public String getHash(Book book, boolean force) {
@@ -430,19 +441,28 @@ public String getCoverUrl(Book book) {
}
@Override
- public synchronized List bookmarks(BookmarkQuery query) {
+ public String getDescription(Book book) {
if (myInterface == null) {
- return Collections.emptyList();
+ return null;
}
try {
- return SerializerUtil.deserializeBookmarkList(
- myInterface.bookmarks(SerializerUtil.serialize(query))
- );
+ return myInterface.getDescription(SerializerUtil.serialize(book));
} catch (RemoteException e) {
- return Collections.emptyList();
+ return null;
}
}
+ @Override
+ public List bookmarks(final BookmarkQuery query) {
+ return listCall(new ListCallable() {
+ public List call() throws RemoteException {
+ return SerializerUtil.deserializeBookmarkList(
+ myInterface.bookmarks(SerializerUtil.serialize(query))
+ );
+ }
+ });
+ }
+
public synchronized void saveBookmark(Bookmark bookmark) {
if (myInterface != null) {
try {
@@ -474,15 +494,12 @@ public synchronized HighlightingStyle getHighlightingStyle(int styleId) {
}
}
- public synchronized List highlightingStyles() {
- if (myInterface == null) {
- return Collections.emptyList();
- }
- try {
- return SerializerUtil.deserializeStyleList(myInterface.highlightingStyles());
- } catch (RemoteException e) {
- return Collections.emptyList();
- }
+ public List highlightingStyles() {
+ return listCall(new ListCallable() {
+ public List call() throws RemoteException {
+ return SerializerUtil.deserializeStyleList(myInterface.highlightingStyles());
+ }
+ });
}
public synchronized void saveHighlightingStyle(HighlightingStyle style) {
@@ -505,6 +522,48 @@ public synchronized void rescan(String path) {
}
}
+ public List formats() {
+ return listCall(new ListCallable() {
+ public List call() throws RemoteException {
+ final List serialized = myInterface.formats();
+ final List formats =
+ new ArrayList(serialized.size());
+ for (String s : serialized) {
+ formats.add(Util.stringToFormatDescriptor(s));
+ }
+ return formats;
+ }
+ });
+ }
+
+ public synchronized boolean setActiveFormats(List formats) {
+ if (myInterface != null) {
+ try {
+ return myInterface.setActiveFormats(formats);
+ } catch (RemoteException e) {
+ }
+ }
+ return false;
+ }
+
+ private interface ListCallable {
+ List call() throws RemoteException;
+ }
+
+ private synchronized List listCall(ListCallable callable) {
+ if (myInterface == null) {
+ return Collections.emptyList();
+ }
+ try {
+ return callable.call();
+ } catch (Exception e) {
+ return Collections.emptyList();
+ } catch (Throwable e) {
+ // TODO: report problem
+ return Collections.emptyList();
+ }
+ }
+
// method from ServiceConnection interface
public synchronized void onServiceConnected(ComponentName name, IBinder service) {
myInterface = LibraryInterface.Stub.asInterface(service);
diff --git a/src/org/geometerplus/android/fbreader/libraryService/LibraryService.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/libraryService/LibraryService.java
similarity index 90%
rename from src/org/geometerplus/android/fbreader/libraryService/LibraryService.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/libraryService/LibraryService.java
index 47059924a13..33510a7a094 100644
--- a/src/org/geometerplus/android/fbreader/libraryService/LibraryService.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/libraryService/LibraryService.java
@@ -181,7 +181,15 @@ public boolean hasBooks(String query) {
}
public List recentBooks() {
- return SerializerUtil.serializeBookList(myCollection.recentBooks());
+ return recentlyOpenedBooks(12);
+ }
+
+ public List recentlyOpenedBooks(int count) {
+ return SerializerUtil.serializeBookList(myCollection.recentlyOpenedBooks(count));
+ }
+
+ public List recentlyAddedBooks(int count) {
+ return SerializerUtil.serializeBookList(myCollection.recentlyAddedBooks(count));
}
public String getRecentBook(int index) {
@@ -242,12 +250,20 @@ public boolean saveBook(String book) {
return myCollection.saveBook(SerializerUtil.deserializeBook(book));
}
+ public boolean canRemoveBook(String book, boolean deleteFromDisk) {
+ return myCollection.canRemoveBook(SerializerUtil.deserializeBook(book), deleteFromDisk);
+ }
+
public void removeBook(String book, boolean deleteFromDisk) {
myCollection.removeBook(SerializerUtil.deserializeBook(book), deleteFromDisk);
}
- public void addBookToRecentList(String book) {
- myCollection.addBookToRecentList(SerializerUtil.deserializeBook(book));
+ public void addToRecentlyOpened(String book) {
+ myCollection.addToRecentlyOpened(SerializerUtil.deserializeBook(book));
+ }
+
+ public void removeFromRecentlyOpened(String book) {
+ myCollection.removeFromRecentlyOpened(SerializerUtil.deserializeBook(book));
}
public List labels() {
@@ -268,14 +284,26 @@ public void storePosition(long bookId, PositionWithTimestamp pos) {
));
}
+ @Override
public boolean isHyperlinkVisited(String book, String linkId) {
return myCollection.isHyperlinkVisited(SerializerUtil.deserializeBook(book), linkId);
}
+ @Override
public void markHyperlinkAsVisited(String book, String linkId) {
myCollection.markHyperlinkAsVisited(SerializerUtil.deserializeBook(book), linkId);
}
+ @Override
+ public String getCoverUrl(String path) {
+ return DataUtil.buildUrl(DataConnection, "cover", path);
+ }
+
+ @Override
+ public String getDescription(String book) {
+ return BookUtil.getAnnotation(SerializerUtil.deserializeBook(book));
+ }
+
@Override
public Bitmap getCover(final String bookString, final int maxWidth, final int maxHeight, boolean[] delayed) {
delayed[0] = false;
@@ -333,10 +361,6 @@ public void run() {
return null;
}
- public String getCoverUrl(String path) {
- return DataUtil.buildUrl(DataConnection, "cover", path);
- }
-
private Bitmap getResizedBitmap(Bitmap bitmap, int maxWidth, int maxHeight) {
if (maxWidth <= 0 || maxHeight <= 0) {
return null;
@@ -401,6 +425,24 @@ public String getHash(String book, boolean force) {
public void setHash(String book, String hash) {
myCollection.setHash(SerializerUtil.deserializeBook(book), hash);
}
+
+ public List formats() {
+ final List descriptors = myCollection.formats();
+ final List serialized = new ArrayList(descriptors.size());
+ for (IBookCollection.FormatDescriptor d : descriptors) {
+ serialized.add(Util.formatDescriptorToString(d));
+ }
+ return serialized;
+ }
+
+ public boolean setActiveFormats(List formatIds) {
+ if (myCollection.setActiveFormats(formatIds)) {
+ reset(true);
+ return true;
+ } else {
+ return false;
+ }
+ }
}
private volatile LibraryImplementation myLibrary;
diff --git a/src/org/geometerplus/android/fbreader/libraryService/PositionWithTimestamp.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/libraryService/PositionWithTimestamp.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/libraryService/PositionWithTimestamp.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/libraryService/PositionWithTimestamp.java
diff --git a/src/org/geometerplus/android/fbreader/libraryService/SQLiteBooksDatabase.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/libraryService/SQLiteBooksDatabase.java
similarity index 92%
rename from src/org/geometerplus/android/fbreader/libraryService/SQLiteBooksDatabase.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/libraryService/SQLiteBooksDatabase.java
index 8c0d8551f6b..817ac4c360b 100644
--- a/src/org/geometerplus/android/fbreader/libraryService/SQLiteBooksDatabase.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/libraryService/SQLiteBooksDatabase.java
@@ -29,7 +29,6 @@
import org.geometerplus.zlibrary.core.options.Config;
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
-import org.geometerplus.zlibrary.core.options.ZLStringOption;
import org.geometerplus.zlibrary.core.options.ZLIntegerOption;
import org.geometerplus.zlibrary.core.util.RationalNumber;
import org.geometerplus.zlibrary.core.util.ZLColor;
@@ -76,7 +75,7 @@ protected void executeAsTransaction(Runnable actions) {
private void migrate() {
final int version = myDatabase.getVersion();
- final int currentVersion = 29;
+ final int currentVersion = 33;
if (version >= currentVersion) {
return;
}
@@ -142,6 +141,14 @@ private void migrate() {
updateTables27();
case 28:
updateTables28();
+ case 29:
+ updateTables29();
+ case 30:
+ updateTables30();
+ case 31:
+ updateTables31();
+ case 32:
+ updateTables32();
}
myDatabase.setTransactionSuccessful();
myDatabase.setVersion(currentVersion);
@@ -150,6 +157,30 @@ private void migrate() {
myDatabase.execSQL("VACUUM");
}
+ @Override
+ protected String getOptionValue(String name) {
+ final Cursor cursor = myDatabase.rawQuery(
+ "SELECT value FROM Options WHERE name=?", new String[] { name }
+ );
+ try {
+ return cursor.moveToNext() ? cursor.getString(0) : null;
+ } finally {
+ cursor.close();
+ }
+ }
+
+ @Override
+ protected void setOptionValue(String name, String value) {
+ final SQLiteStatement statement = get(
+ "INSERT OR REPLACE INTO Options (name,value) VALUES (?,?)"
+ );
+ synchronized (statement) {
+ SQLiteUtil.bindString(statement, 1, name);
+ SQLiteUtil.bindString(statement, 2, value);
+ statement.execute();
+ }
+ }
+
@Override
protected Book loadBook(long bookId) {
Book book = null;
@@ -725,25 +756,36 @@ protected Collection loadFileInfos(long fileId) {
return infos;
}
- protected void saveRecentBookIds(final List ids) {
+ @Override
+ protected void addBookHistoryEvent(long bookId, int event) {
final SQLiteStatement statement = get(
- "INSERT OR IGNORE INTO RecentBooks (book_id) VALUES (?)"
+ "INSERT INTO BookHistory (book_id,timestamp,event) VALUES (?,?,?)"
);
- executeAsTransaction(new Runnable() {
- public void run() {
- myDatabase.delete("RecentBooks", null, null);
- for (long id : ids) {
- statement.bindLong(1, id);
- statement.execute();
- }
- }
- });
+ synchronized (statement) {
+ statement.bindLong(1, bookId);
+ statement.bindLong(2, System.currentTimeMillis());
+ statement.bindLong(3, event);
+ statement.executeInsert();
+ }
+ }
+
+ @Override
+ protected void removeBookHistoryEvents(long bookId, int event) {
+ final SQLiteStatement statement = get(
+ "DELETE FROM BookHistory WHERE book_id=? and event=?"
+ );
+ synchronized (statement) {
+ statement.bindLong(1, bookId);
+ statement.bindLong(2, event);
+ statement.executeInsert();
+ }
}
@Override
- protected List loadRecentBookIds() {
+ protected List loadRecentBookIds(int event, int limit) {
final Cursor cursor = myDatabase.rawQuery(
- "SELECT book_id FROM RecentBooks ORDER BY book_index", null
+ "SELECT book_id FROM BookHistory WHERE event=? GROUP BY book_id ORDER BY timestamp DESC LIMIT ?",
+ new String[] { String.valueOf(event), String.valueOf(limit) }
);
final LinkedList ids = new LinkedList();
while (cursor.moveToNext()) {
@@ -757,11 +799,12 @@ protected List loadRecentBookIds() {
protected void setLabel(long bookId, String label) {
myDatabase.execSQL("INSERT OR IGNORE INTO Labels (name) VALUES (?)", new Object[] { label });
final SQLiteStatement statement = get(
- "INSERT OR IGNORE INTO BookLabel(label_id,book_id)" +
- " SELECT label_id,? FROM Labels WHERE name=?"
+ "INSERT OR IGNORE INTO BookLabel(label_id,book_id,timestamp)" +
+ " SELECT label_id,?,? FROM Labels WHERE name=?"
);
statement.bindLong(1, bookId);
- statement.bindString(2, label);
+ statement.bindLong(2, System.currentTimeMillis());
+ statement.bindString(3, label);
statement.execute();
}
@@ -1054,6 +1097,7 @@ protected List bookIdsByHash(String hash) {
@Override
protected void deleteBook(long bookId) {
myDatabase.beginTransaction();
+ myDatabase.execSQL("DELETE FROM BookHistory WHERE book_id=" + bookId);
myDatabase.execSQL("DELETE FROM BookHash WHERE book_id=" + bookId);
myDatabase.execSQL("DELETE FROM BookAuthor WHERE book_id=" + bookId);
myDatabase.execSQL("DELETE FROM BookLabel WHERE book_id=" + bookId);
@@ -1063,7 +1107,6 @@ protected void deleteBook(long bookId) {
myDatabase.execSQL("DELETE FROM BookTag WHERE book_id=" + bookId);
myDatabase.execSQL("DELETE FROM BookUid WHERE book_id=" + bookId);
myDatabase.execSQL("DELETE FROM Bookmarks WHERE book_id=" + bookId);
- myDatabase.execSQL("DELETE FROM RecentBooks WHERE book_id=" + bookId);
myDatabase.execSQL("DELETE FROM VisitedHyperlinks WHERE book_id=" + bookId);
myDatabase.execSQL("DELETE FROM Books WHERE book_id=" + bookId);
myDatabase.setTransactionSuccessful();
@@ -1165,26 +1208,6 @@ private void updateTables4() {
"CREATE TABLE IF NOT EXISTS RecentBooks(" +
"book_index INTEGER PRIMARY KEY," +
"book_id INTEGER REFERENCES Books(book_id))");
- final ArrayList ids = new ArrayList();
-
- final SQLiteStatement statement = myDatabase.compileStatement(
- "SELECT book_id FROM Books WHERE file_name = ?"
- );
-
- for (int i = 0; i < 20; ++i) {
- final ZLStringOption option = new ZLStringOption("LastOpenedBooks", "Book" + i, "");
- final String fileName = option.getValue();
- option.setValue("");
- try {
- statement.bindString(1, fileName);
- final long bookId = statement.simpleQueryForLong();
- if (bookId != -1) {
- ids.add(bookId);
- }
- } catch (SQLException e) {
- }
- }
- saveRecentBookIds(ids);
}
private void updateTables5() {
@@ -1477,12 +1500,12 @@ private void updateTables25() {
}
private void updateTables26() {
- myDatabase.execSQL("DROP TABLE IF EXISTS BookSynchronizationInfo");
myDatabase.execSQL(
"CREATE TABLE IF NOT EXISTS BookHash(" +
"book_id INTEGER PRIMARY KEY REFERENCES Books(book_id)," +
"timestamp INTEGER NOT NULL," +
- "hash TEXT(40) NOT NULL)");
+ "hash TEXT(40) NOT NULL)"
+ );
}
private void updateTables27() {
@@ -1493,6 +1516,76 @@ private void updateTables28() {
myDatabase.execSQL("ALTER TABLE HighlightingStyle ADD COLUMN fg_color INTEGER NOT NULL DEFAULT -1");
}
+ private void updateTables29() {
+ myDatabase.execSQL("DROP TABLE IF EXISTS BookHistory");
+ myDatabase.execSQL(
+ "CREATE TABLE IF NOT EXISTS BookHistory(" +
+ "book_id INTEGER REFERENCES Books(book_id)," +
+ "timestamp INTEGER NOT NULL," +
+ "event INTEGER NOT NULL)"
+ );
+
+ Cursor cursor = myDatabase.rawQuery(
+ "SELECT book_id FROM RecentBooks ORDER BY book_index", null
+ );
+ SQLiteStatement insert = myDatabase.compileStatement(
+ "INSERT OR IGNORE INTO BookHistory(book_id,timestamp,event) VALUES (?,?,?)"
+ );
+ insert.bindLong(3, HistoryEvent.Opened);
+ int count = -1;
+ while (cursor.moveToNext()) {
+ insert.bindLong(1, cursor.getLong(0));
+ insert.bindLong(2, count);
+ try {
+ insert.executeInsert();
+ } catch (Throwable t) {
+ // ignore
+ }
+ --count;
+ }
+ cursor.close();
+
+ cursor = myDatabase.rawQuery(
+ "SELECT book_id FROM Books ORDER BY book_id DESC", null
+ );
+ insert = myDatabase.compileStatement(
+ "INSERT OR IGNORE INTO BookHistory(book_id,timestamp,event) VALUES (?,?,?)"
+ );
+ insert.bindLong(3, HistoryEvent.Added);
+ while (cursor.moveToNext()) {
+ insert.bindLong(1, cursor.getLong(0));
+ insert.bindLong(2, count);
+ try {
+ insert.executeInsert();
+ } catch (Throwable t) {
+ // ignore
+ }
+ --count;
+ }
+ cursor.close();
+
+ cursor = myDatabase.rawQuery(
+ "SELECT book_id,timestamp,event FROM BookHistory", null
+ );
+ while (cursor.moveToNext()) {
+ System.err.println("HISTORY RECORD: " + cursor.getLong(0) + " : " + cursor.getLong(1) + " : " + cursor.getLong(2));
+ }
+ cursor.close();
+ }
+
+ private void updateTables30() {
+ myDatabase.execSQL("DROP TABLE IF EXISTS RecentBooks");
+ }
+
+ private void updateTables31() {
+ myDatabase.execSQL("ALTER TABLE BookLabel ADD COLUMN timestamp INTEGER NOT NULL DEFAULT -1");
+ myDatabase.execSQL("ALTER TABLE BookLabel ADD COLUMN comment TEXT DEFAULT NULL");
+ }
+
+ private void updateTables32() {
+ myDatabase.execSQL("CREATE TABLE IF NOT EXISTS Options(name TEXT PRIMARY KEY, value TEXT)");
+ }
+
private SQLiteStatement get(String sql) {
SQLiteStatement statement = myStatements.get(sql);
if (statement == null) {
diff --git a/src/org/geometerplus/android/fbreader/libraryService/Util.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/libraryService/Util.java
similarity index 55%
rename from src/org/geometerplus/android/fbreader/libraryService/Util.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/libraryService/Util.java
index ac53ff1e020..44d84cd46b1 100644
--- a/src/org/geometerplus/android/fbreader/libraryService/Util.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/libraryService/Util.java
@@ -19,21 +19,24 @@
package org.geometerplus.android.fbreader.libraryService;
-import org.geometerplus.fbreader.book.Author;
-import org.geometerplus.fbreader.book.Tag;
+import org.geometerplus.fbreader.book.*;
abstract class Util {
static String authorToString(Author author) {
- return new StringBuilder(author.DisplayName).append('\000').append(author.SortKey).toString();
+ return author.DisplayName + "\000" + author.SortKey;
}
static Author stringToAuthor(String string) {
+ if (string == null) {
+ return Author.NULL;
+ }
+
final String[] split = string.split("\000");
- if (split.length == 2) {
- return new Author(split[0], split[1]);
- } else {
+ if (split.length != 2) {
return Author.NULL;
}
+
+ return new Author(split[0], split[1]);
}
static String tagToString(Tag tag) {
@@ -41,11 +44,36 @@ static String tagToString(Tag tag) {
}
static Tag stringToTag(String string) {
+ if (string == null) {
+ return Tag.NULL;
+ }
+
final String[] split = string.split("\000");
- if (split.length > 0) {
- return Tag.getTag(split);
- } else {
+ if (split.length == 0) {
return Tag.NULL;
}
+
+ return Tag.getTag(split);
+ }
+
+ static String formatDescriptorToString(IBookCollection.FormatDescriptor descriptor) {
+ return descriptor.Id + "\000" + descriptor.Name + "\000" + (descriptor.IsActive ? 1 : 0);
+ }
+
+ static IBookCollection.FormatDescriptor stringToFormatDescriptor(String string) {
+ if (string == null) {
+ throw new IllegalArgumentException();
+ }
+
+ final String[] split = string.split("\000");
+ if (split.length != 3) {
+ throw new IllegalArgumentException();
+ }
+
+ final IBookCollection.FormatDescriptor descriptor = new IBookCollection.FormatDescriptor();
+ descriptor.Id = split[0];
+ descriptor.Name = split[1];
+ descriptor.IsActive = "1".equals(split[2]);
+ return descriptor;
}
}
diff --git a/src/org/geometerplus/android/fbreader/network/AddCatalogMenuActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/AddCatalogMenuActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/AddCatalogMenuActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/AddCatalogMenuActivity.java
diff --git a/src/org/geometerplus/android/fbreader/network/AddCustomCatalogActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/AddCustomCatalogActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/AddCustomCatalogActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/AddCustomCatalogActivity.java
diff --git a/src/org/geometerplus/android/fbreader/network/AuthenticationActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/AuthenticationActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/AuthenticationActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/AuthenticationActivity.java
diff --git a/src/org/geometerplus/android/fbreader/network/AuthorisationMenuActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/AuthorisationMenuActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/AuthorisationMenuActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/AuthorisationMenuActivity.java
diff --git a/src/org/geometerplus/android/fbreader/network/BookDownloader.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/BookDownloader.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/BookDownloader.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/BookDownloader.java
diff --git a/src/org/geometerplus/android/fbreader/network/BookDownloaderService.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/BookDownloaderService.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/BookDownloaderService.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/BookDownloaderService.java
diff --git a/src/org/geometerplus/android/fbreader/network/BookDownloaderServiceConnection.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/BookDownloaderServiceConnection.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/BookDownloaderServiceConnection.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/BookDownloaderServiceConnection.java
diff --git a/src/org/geometerplus/android/fbreader/network/BuyBooksActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/BuyBooksActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/BuyBooksActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/BuyBooksActivity.java
diff --git a/src/org/geometerplus/android/fbreader/network/CatalogManagerActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/CatalogManagerActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/CatalogManagerActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/CatalogManagerActivity.java
diff --git a/src/org/geometerplus/android/fbreader/network/ListenerCallback.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/ListenerCallback.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/ListenerCallback.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/ListenerCallback.java
diff --git a/src/org/geometerplus/android/fbreader/network/MenuActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/MenuActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/MenuActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/MenuActivity.java
diff --git a/src/org/geometerplus/android/fbreader/network/NetworkBookInfoActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/NetworkBookInfoActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/NetworkBookInfoActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/NetworkBookInfoActivity.java
diff --git a/src/org/geometerplus/android/fbreader/network/NetworkLibraryActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/NetworkLibraryActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/NetworkLibraryActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/NetworkLibraryActivity.java
diff --git a/src/org/geometerplus/android/fbreader/network/NetworkLibraryAdapter.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/NetworkLibraryAdapter.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/NetworkLibraryAdapter.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/NetworkLibraryAdapter.java
diff --git a/src/org/geometerplus/android/fbreader/network/NetworkLibraryPrimaryActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/NetworkLibraryPrimaryActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/NetworkLibraryPrimaryActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/NetworkLibraryPrimaryActivity.java
diff --git a/src/org/geometerplus/android/fbreader/network/NetworkLibrarySecondaryActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/NetworkLibrarySecondaryActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/NetworkLibrarySecondaryActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/NetworkLibrarySecondaryActivity.java
diff --git a/src/org/geometerplus/android/fbreader/network/NetworkSearchActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/NetworkSearchActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/NetworkSearchActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/NetworkSearchActivity.java
diff --git a/src/org/geometerplus/android/fbreader/network/SQLiteNetworkDatabase.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/SQLiteNetworkDatabase.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/SQLiteNetworkDatabase.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/SQLiteNetworkDatabase.java
diff --git a/src/org/geometerplus/android/fbreader/network/TopupMenuActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/TopupMenuActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/TopupMenuActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/TopupMenuActivity.java
diff --git a/src/org/geometerplus/android/fbreader/network/UserRegistrationConstants.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/UserRegistrationConstants.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/UserRegistrationConstants.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/UserRegistrationConstants.java
diff --git a/src/org/geometerplus/android/fbreader/network/Util.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/Util.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/Util.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/Util.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/Action.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/Action.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/Action.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/Action.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/ActionCode.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/ActionCode.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/ActionCode.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/ActionCode.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/AddCustomCatalogAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/AddCustomCatalogAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/AddCustomCatalogAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/AddCustomCatalogAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/BookAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/BookAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/BookAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/BookAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/BuyBasketBooksAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/BuyBasketBooksAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/BuyBasketBooksAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/BuyBasketBooksAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/CatalogAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/CatalogAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/CatalogAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/CatalogAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/ClearBasketAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/ClearBasketAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/ClearBasketAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/ClearBasketAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/DisableCatalogAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/DisableCatalogAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/DisableCatalogAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/DisableCatalogAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/EditCustomCatalogAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/EditCustomCatalogAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/EditCustomCatalogAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/EditCustomCatalogAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/ManageCatalogsAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/ManageCatalogsAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/ManageCatalogsAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/ManageCatalogsAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/NetworkBookActions.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/NetworkBookActions.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/NetworkBookActions.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/NetworkBookActions.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/OpenCatalogAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/OpenCatalogAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/OpenCatalogAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/OpenCatalogAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/OpenInBrowserAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/OpenInBrowserAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/OpenInBrowserAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/OpenInBrowserAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/OpenRootAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/OpenRootAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/OpenRootAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/OpenRootAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/RefreshRootCatalogAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/RefreshRootCatalogAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/RefreshRootCatalogAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/RefreshRootCatalogAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/ReloadCatalogAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/ReloadCatalogAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/ReloadCatalogAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/ReloadCatalogAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/RemoveCustomCatalogAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/RemoveCustomCatalogAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/RemoveCustomCatalogAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/RemoveCustomCatalogAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/RootAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/RootAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/RootAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/RootAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/RunSearchAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/RunSearchAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/RunSearchAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/RunSearchAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/ShowBookInfoAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/ShowBookInfoAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/ShowBookInfoAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/ShowBookInfoAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/SignInAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/SignInAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/SignInAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/SignInAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/SignOutAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/SignOutAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/SignOutAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/SignOutAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/SignUpAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/SignUpAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/SignUpAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/SignUpAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/action/TopupAction.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/TopupAction.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/action/TopupAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/action/TopupAction.java
diff --git a/src/org/geometerplus/android/fbreader/network/auth/ActivityNetworkContext.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/auth/ActivityNetworkContext.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/auth/ActivityNetworkContext.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/auth/ActivityNetworkContext.java
diff --git a/src/org/geometerplus/android/fbreader/network/auth/AndroidNetworkContext.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/auth/AndroidNetworkContext.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/auth/AndroidNetworkContext.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/auth/AndroidNetworkContext.java
diff --git a/src/org/geometerplus/android/fbreader/network/auth/ServiceNetworkContext.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/auth/ServiceNetworkContext.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/auth/ServiceNetworkContext.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/auth/ServiceNetworkContext.java
diff --git a/src/org/geometerplus/android/fbreader/network/auth/WebAuthorisationScreen.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/auth/WebAuthorisationScreen.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/network/auth/WebAuthorisationScreen.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/network/auth/WebAuthorisationScreen.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/AnimationSpeedPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/AnimationSpeedPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/AnimationSpeedPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/AnimationSpeedPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/BatteryLevelToTurnScreenOffPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/BatteryLevelToTurnScreenOffPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/BatteryLevelToTurnScreenOffPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/BatteryLevelToTurnScreenOffPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ColorPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ColorPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ColorPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ColorPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/DictionaryPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/DictionaryPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/DictionaryPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/DictionaryPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/EditBookInfoActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/EditBookInfoActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/EditBookInfoActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/EditBookInfoActivity.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/FontPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/FontPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/FontPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/FontPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/FontStylePreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/FontStylePreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/FontStylePreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/FontStylePreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/InfoPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/InfoPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/InfoPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/InfoPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/LanguagePreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/LanguagePreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/LanguagePreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/LanguagePreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/PreferenceActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/PreferenceActivity.java
similarity index 98%
rename from src/org/geometerplus/android/fbreader/preferences/PreferenceActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/PreferenceActivity.java
index 15aa32f8ce0..0ec50180a88 100644
--- a/src/org/geometerplus/android/fbreader/preferences/PreferenceActivity.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/PreferenceActivity.java
@@ -716,17 +716,21 @@ protected void onDialogClosed(boolean result) {
cancelMenuScreen.addOption(cancelMenuHelper.ShowNetworkLibraryItemOption, "networkLibrary");
cancelMenuScreen.addOption(cancelMenuHelper.ShowPreviousBookItemOption, "previousBook");
cancelMenuScreen.addOption(cancelMenuHelper.ShowPositionItemsOption, "positions");
- final String[] backKeyActions =
- { ActionCode.EXIT, ActionCode.SHOW_CANCEL_MENU };
+ final String[] backKeyAndBackKeyLongPressActions = {
+ ActionCode.SHOW_CANCEL_MENU,
+ ActionCode.GO_TO_PREFERENCES,
+ ActionCode.GO_TO_LIBRARY,
+ ActionCode.GO_TO_NETWORK_LIBRARY,
+ ActionCode.GO_TO_PREVIOUS_BOOK,
+ ActionCode.EXIT,
+ FBReaderApp.NoAction };
cancelMenuScreen.addPreference(new ZLStringChoicePreference(
this, cancelMenuScreen.Resource.getResource("backKeyAction"),
- keyBindings.getOption(KeyEvent.KEYCODE_BACK, false), backKeyActions
+ keyBindings.getOption(KeyEvent.KEYCODE_BACK, false), backKeyAndBackKeyLongPressActions
));
- final String[] backKeyLongPressActions =
- { ActionCode.EXIT, ActionCode.SHOW_CANCEL_MENU, FBReaderApp.NoAction };
cancelMenuScreen.addPreference(new ZLStringChoicePreference(
this, cancelMenuScreen.Resource.getResource("backKeyLongPressAction"),
- keyBindings.getOption(KeyEvent.KEYCODE_BACK, true), backKeyLongPressActions
+ keyBindings.getOption(KeyEvent.KEYCODE_BACK, true), backKeyAndBackKeyLongPressActions
));
final Screen tipsScreen = createPreferenceScreen("tips");
diff --git a/src/org/geometerplus/android/fbreader/preferences/PreferenceSet.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/PreferenceSet.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/PreferenceSet.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/PreferenceSet.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ReloadablePreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ReloadablePreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ReloadablePreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ReloadablePreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/StringPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/StringPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/StringPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/StringPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ThirdPartyLibrariesPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ThirdPartyLibrariesPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ThirdPartyLibrariesPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ThirdPartyLibrariesPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/UrlPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/UrlPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/UrlPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/UrlPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLBoolean3Preference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLBoolean3Preference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ZLBoolean3Preference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLBoolean3Preference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLBooleanPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLBooleanPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ZLBooleanPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLBooleanPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLCheckBoxPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLCheckBoxPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ZLCheckBoxPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLCheckBoxPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLChoicePreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLChoicePreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ZLChoicePreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLChoicePreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLColorPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLColorPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ZLColorPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLColorPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLEnumPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLEnumPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ZLEnumPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLEnumPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLIntegerChoicePreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLIntegerChoicePreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ZLIntegerChoicePreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLIntegerChoicePreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLIntegerRangePreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLIntegerRangePreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ZLIntegerRangePreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLIntegerRangePreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLPreferenceActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLPreferenceActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ZLPreferenceActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLPreferenceActivity.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLStringChoicePreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLStringChoicePreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ZLStringChoicePreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLStringChoicePreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLStringListOptionPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLStringListOptionPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ZLStringListOptionPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLStringListOptionPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLStringListPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLStringListPreference.java
similarity index 80%
rename from src/org/geometerplus/android/fbreader/preferences/ZLStringListPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLStringListPreference.java
index 5061bfd5001..29f8c04500e 100644
--- a/src/org/geometerplus/android/fbreader/preferences/ZLStringListPreference.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLStringListPreference.java
@@ -52,8 +52,20 @@ protected final void setList(String[] values) {
protected final void setLists(String[] values, String[] texts) {
assert(values.length == texts.length);
- setEntries(texts);
+
setEntryValues(values);
+
+ // It appears that setEntries() DOES NOT perform any formatting on the char sequences
+ // http://developer.android.com/reference/android/preference/ListPreference.html#setEntries(java.lang.CharSequence[])
+ final String[] entries = new String[texts.length];
+ for (int i = 0; i < texts.length; ++i) {
+ try {
+ entries[i] = String.format(texts[i]);
+ } catch (Exception e) {
+ entries[i] = texts[i];
+ }
+ }
+ setEntries(entries);
}
protected final boolean setInitialValue(String value) {
@@ -70,15 +82,12 @@ protected final boolean setInitialValue(String value) {
}
}
setValueIndex(index);
- setSummary(getEntry());
return found;
}
@Override
- protected void onDialogClosed(boolean result) {
- super.onDialogClosed(result);
- if (result) {
- setSummary(getEntry());
- }
+ public CharSequence getSummary() {
+ // standard getSummary() calls extra String.format(), that causes exceptions in some cases
+ return getEntry();
}
}
diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLStringPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLStringPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/ZLStringPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/ZLStringPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/background/BackgroundPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/background/BackgroundPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/background/BackgroundPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/background/BackgroundPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/background/Chooser.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/background/Chooser.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/background/Chooser.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/background/Chooser.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/background/PredefinedImages.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/background/PredefinedImages.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/background/PredefinedImages.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/background/PredefinedImages.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserCollection.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserCollection.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserCollection.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserCollection.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserMultiPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserMultiPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserMultiPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserMultiPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserPreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserPreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserPreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserPreference.java
diff --git a/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserSinglePreference.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserSinglePreference.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserSinglePreference.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserSinglePreference.java
diff --git a/src/org/geometerplus/android/fbreader/style/EditStyleActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/style/EditStyleActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/style/EditStyleActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/style/EditStyleActivity.java
diff --git a/src/org/geometerplus/android/fbreader/style/StyleListActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/style/StyleListActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/style/StyleListActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/style/StyleListActivity.java
diff --git a/src/org/geometerplus/android/fbreader/sync/MissingBookActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/sync/MissingBookActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/sync/MissingBookActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/sync/MissingBookActivity.java
diff --git a/src/org/geometerplus/android/fbreader/sync/SyncNetworkContext.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/sync/SyncNetworkContext.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/sync/SyncNetworkContext.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/sync/SyncNetworkContext.java
diff --git a/src/org/geometerplus/android/fbreader/sync/SyncOperations.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/sync/SyncOperations.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/sync/SyncOperations.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/sync/SyncOperations.java
diff --git a/src/org/geometerplus/android/fbreader/sync/SyncService.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/sync/SyncService.java
similarity index 99%
rename from src/org/geometerplus/android/fbreader/sync/SyncService.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/sync/SyncService.java
index b3e872f1cf0..d1c2fd8f0f0 100644
--- a/src/org/geometerplus/android/fbreader/sync/SyncService.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/sync/SyncService.java
@@ -370,9 +370,6 @@ private Status uploadBookToServer(Book book) {
private Status uploadBookToServerInternal(Book book) {
final File file = book.File.getPhysicalFile().javaFile();
- if (file.length() > 30 * 1024 * 1024) {
- return Status.Failure;
- }
final String hash = myCollection.getHash(book, false);
final boolean force = book.labels().contains(Book.SYNC_TOSYNC_LABEL);
if (hash == null) {
@@ -384,6 +381,9 @@ private Status uploadBookToServerInternal(Book book) {
} else if (!force && book.labels().contains(Book.SYNC_FAILURE_LABEL)) {
return Status.FailedPreviuousTime;
}
+ if (file.length() > 50 * 1024 * 1024) {
+ return Status.Failure;
+ }
initHashTables();
diff --git a/src/org/geometerplus/android/fbreader/sync/SynchronizationDisabledException.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/sync/SynchronizationDisabledException.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/sync/SynchronizationDisabledException.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/sync/SynchronizationDisabledException.java
diff --git a/src/org/geometerplus/android/fbreader/tips/TipsActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/tips/TipsActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/tips/TipsActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/tips/TipsActivity.java
diff --git a/src/org/geometerplus/android/fbreader/tree/TreeActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/tree/TreeActivity.java
similarity index 99%
rename from src/org/geometerplus/android/fbreader/tree/TreeActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/tree/TreeActivity.java
index 78137addd66..01014075682 100644
--- a/src/org/geometerplus/android/fbreader/tree/TreeActivity.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/tree/TreeActivity.java
@@ -108,7 +108,7 @@ public boolean onKeyDown(int keyCode, KeyEvent event) {
parent = getTreeByKey(myHistory.remove(myHistory.size() - 1));
}
}
- if (parent == null) {
+ if (parent == null && myCurrentTree != null) {
parent = myCurrentTree.Parent;
}
if (parent != null && !isTreeInvisible(parent)) {
diff --git a/src/org/geometerplus/android/fbreader/tree/TreeAdapter.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/tree/TreeAdapter.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/tree/TreeAdapter.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/tree/TreeAdapter.java
diff --git a/src/org/geometerplus/android/fbreader/util/AndroidImageSynchronizer.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/util/AndroidImageSynchronizer.java
similarity index 99%
rename from src/org/geometerplus/android/fbreader/util/AndroidImageSynchronizer.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/util/AndroidImageSynchronizer.java
index f08454861ac..65d9c9e6fc6 100644
--- a/src/org/geometerplus/android/fbreader/util/AndroidImageSynchronizer.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/util/AndroidImageSynchronizer.java
@@ -48,7 +48,7 @@ private static final class Connection implements ServiceConnection {
synchronized void runOrAddAction(Runnable action) {
if (Reader != null) {
- action.run();
+ new Thread(action).start();
} else {
myPostActions.add(action);
}
diff --git a/src/org/geometerplus/android/fbreader/util/SimpleDialogActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/fbreader/util/SimpleDialogActivity.java
similarity index 100%
rename from src/org/geometerplus/android/fbreader/util/SimpleDialogActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/fbreader/util/SimpleDialogActivity.java
diff --git a/src/org/geometerplus/android/util/BitmapCache.java b/fBReaderJ/src/main/java/org/geometerplus/android/util/BitmapCache.java
similarity index 100%
rename from src/org/geometerplus/android/util/BitmapCache.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/util/BitmapCache.java
diff --git a/src/org/geometerplus/android/util/DeviceType.java b/fBReaderJ/src/main/java/org/geometerplus/android/util/DeviceType.java
similarity index 100%
rename from src/org/geometerplus/android/util/DeviceType.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/util/DeviceType.java
diff --git a/src/org/geometerplus/android/util/EditAuthorsDialogActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/util/EditAuthorsDialogActivity.java
similarity index 100%
rename from src/org/geometerplus/android/util/EditAuthorsDialogActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/util/EditAuthorsDialogActivity.java
diff --git a/src/org/geometerplus/android/util/EditListDialogActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/util/EditListDialogActivity.java
similarity index 100%
rename from src/org/geometerplus/android/util/EditListDialogActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/util/EditListDialogActivity.java
diff --git a/src/org/geometerplus/android/util/EditTagsDialogActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/util/EditTagsDialogActivity.java
similarity index 100%
rename from src/org/geometerplus/android/util/EditTagsDialogActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/util/EditTagsDialogActivity.java
diff --git a/src/org/geometerplus/android/util/FileChooserUtil.java b/fBReaderJ/src/main/java/org/geometerplus/android/util/FileChooserUtil.java
similarity index 100%
rename from src/org/geometerplus/android/util/FileChooserUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/util/FileChooserUtil.java
diff --git a/src/org/geometerplus/android/util/FolderListDialogActivity.java b/fBReaderJ/src/main/java/org/geometerplus/android/util/FolderListDialogActivity.java
similarity index 100%
rename from src/org/geometerplus/android/util/FolderListDialogActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/util/FolderListDialogActivity.java
diff --git a/src/org/geometerplus/android/util/PackageUtil.java b/fBReaderJ/src/main/java/org/geometerplus/android/util/PackageUtil.java
similarity index 100%
rename from src/org/geometerplus/android/util/PackageUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/util/PackageUtil.java
diff --git a/src/org/geometerplus/android/util/SQLiteUtil.java b/fBReaderJ/src/main/java/org/geometerplus/android/util/SQLiteUtil.java
similarity index 100%
rename from src/org/geometerplus/android/util/SQLiteUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/util/SQLiteUtil.java
diff --git a/src/org/geometerplus/android/util/SearchDialogUtil.java b/fBReaderJ/src/main/java/org/geometerplus/android/util/SearchDialogUtil.java
similarity index 100%
rename from src/org/geometerplus/android/util/SearchDialogUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/util/SearchDialogUtil.java
diff --git a/src/org/geometerplus/android/util/UIUtil.java b/fBReaderJ/src/main/java/org/geometerplus/android/util/UIUtil.java
similarity index 100%
rename from src/org/geometerplus/android/util/UIUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/util/UIUtil.java
diff --git a/src/org/geometerplus/android/util/ViewUtil.java b/fBReaderJ/src/main/java/org/geometerplus/android/util/ViewUtil.java
similarity index 100%
rename from src/org/geometerplus/android/util/ViewUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/util/ViewUtil.java
diff --git a/src/org/geometerplus/android/util/eink/EInkUtil.java b/fBReaderJ/src/main/java/org/geometerplus/android/util/eink/EInkUtil.java
similarity index 100%
rename from src/org/geometerplus/android/util/eink/EInkUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/util/eink/EInkUtil.java
diff --git a/src/org/geometerplus/android/util/eink/Nook2Util.java b/fBReaderJ/src/main/java/org/geometerplus/android/util/eink/Nook2Util.java
similarity index 100%
rename from src/org/geometerplus/android/util/eink/Nook2Util.java
rename to fBReaderJ/src/main/java/org/geometerplus/android/util/eink/Nook2Util.java
diff --git a/src/org/geometerplus/fbreader/Paths.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/Paths.java
similarity index 100%
rename from src/org/geometerplus/fbreader/Paths.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/Paths.java
diff --git a/src/org/geometerplus/fbreader/book/AbstractBookCollection.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/AbstractBookCollection.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/AbstractBookCollection.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/AbstractBookCollection.java
diff --git a/src/org/geometerplus/fbreader/book/AbstractSerializer.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/AbstractSerializer.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/AbstractSerializer.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/AbstractSerializer.java
diff --git a/src/org/geometerplus/fbreader/book/Author.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/Author.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/Author.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/Author.java
diff --git a/src/org/geometerplus/fbreader/book/Book.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/Book.java
similarity index 94%
rename from src/org/geometerplus/fbreader/book/Book.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/Book.java
index 4f4561f1451..b1f4a43ae0a 100644
--- a/src/org/geometerplus/fbreader/book/Book.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/Book.java
@@ -27,10 +27,11 @@
import org.geometerplus.zlibrary.core.util.RationalNumber;
import org.geometerplus.fbreader.bookmodel.BookReadingException;
+import org.geometerplus.fbreader.formats.PluginCollection;
import org.geometerplus.fbreader.formats.FormatPlugin;
import org.geometerplus.fbreader.sort.TitledEntity;
-public class Book extends TitledEntity {
+public class Book extends TitledEntity {
public static final String FAVORITE_LABEL = "favorite";
public static final String READ_LABEL = "read";
public static final String SYNCHRONISED_LABEL = "sync-success";
@@ -67,13 +68,12 @@ public class Book extends TitledEntity {
myIsSaved = true;
}
- Book(ZLFile file) throws BookReadingException {
+ Book(ZLFile file, FormatPlugin plugin) throws BookReadingException {
super(null);
if (file == null) {
throw new IllegalArgumentException("Creating book with no file");
}
myId = -1;
- final FormatPlugin plugin = BookUtil.getPlugin(file);
File = plugin.realBookFile(file);
readMetainfo(plugin);
myIsSaved = false;
@@ -156,25 +156,25 @@ public void updateFrom(Book book) {
public void reloadInfoFromFile() {
try {
- readMetainfo();
+ readMetainfo(getPlugin());
} catch (BookReadingException e) {
// ignore
}
}
public FormatPlugin getPlugin() throws BookReadingException {
- return BookUtil.getPlugin(File);
- }
-
- public FormatPlugin getPluginOrNull() {
- return BookUtil.getPluginOrNull(File);
+ final FormatPlugin plugin = PluginCollection.Instance().getPlugin(File);
+ if (plugin == null) {
+ throw new BookReadingException("pluginNotFound", File);
+ }
+ return plugin;
}
void readMetainfo() throws BookReadingException {
readMetainfo(getPlugin());
}
- private void readMetainfo(FormatPlugin plugin) throws BookReadingException {
+ void readMetainfo(FormatPlugin plugin) throws BookReadingException {
myEncoding = null;
myLanguage = null;
setTitle(null);
@@ -208,11 +208,8 @@ void loadLists(BooksDatabase database) {
myIsSaved = true;
if (myUids == null || myUids.isEmpty()) {
try {
- final FormatPlugin plugin = getPlugin();
- if (plugin != null) {
- plugin.readUids(this);
- save(database, false);
- }
+ getPlugin().readUids(this);
+ save(database, false);
} catch (BookReadingException e) {
}
}
@@ -506,6 +503,7 @@ boolean save(final BooksDatabase database, boolean force) {
return false;
}
+ final boolean[] result = new boolean[] { true };
database.executeAsTransaction(new Runnable() {
public void run() {
if (myId >= 0) {
@@ -513,11 +511,16 @@ public void run() {
database.updateBookInfo(myId, fileInfos.getId(File), myEncoding, myLanguage, getTitle());
} else {
myId = database.insertBookInfo(File, myEncoding, myLanguage, getTitle());
- if (myId != -1 && myVisitedHyperlinks != null) {
+ if (myId == -1) {
+ result[0] = false;
+ return;
+ }
+ if (myVisitedHyperlinks != null) {
for (String linkId : myVisitedHyperlinks) {
database.addVisitedHyperlink(myId, linkId);
}
}
+ database.addBookHistoryEvent(myId, BooksDatabase.HistoryEvent.Added);
}
long index = 0;
@@ -551,8 +554,12 @@ public void run() {
}
});
- myIsSaved = true;
- return true;
+ if (result[0]) {
+ myIsSaved = true;
+ return true;
+ } else {
+ return false;
+ }
}
private Set myVisitedHyperlinks;
diff --git a/src/org/geometerplus/fbreader/book/BookCollection.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookCollection.java
similarity index 84%
rename from src/org/geometerplus/fbreader/book/BookCollection.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookCollection.java
index e768b0c374a..d485761ac99 100644
--- a/src/org/geometerplus/fbreader/book/BookCollection.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookCollection.java
@@ -22,9 +22,9 @@
import java.io.File;
import java.util.*;
-import org.geometerplus.zlibrary.core.filesystem.ZLFile;
-import org.geometerplus.zlibrary.core.filesystem.ZLPhysicalFile;
+import org.geometerplus.zlibrary.core.filesystem.*;
import org.geometerplus.zlibrary.core.image.ZLImage;
+import org.geometerplus.zlibrary.core.util.MiscUtil;
import org.geometerplus.zlibrary.text.view.ZLTextFixedPosition;
import org.geometerplus.zlibrary.text.view.ZLTextPosition;
@@ -37,6 +37,7 @@ public class BookCollection extends AbstractBookCollection {
private final BooksDatabase myDatabase;
public final List BookDirectories;
+ private Set myActiveFormats;
private final Map myBooksByFile =
Collections.synchronizedMap(new LinkedHashMap());
@@ -54,6 +55,11 @@ public class BookCollection extends AbstractBookCollection {
public BookCollection(BooksDatabase db, List bookDirectories) {
myDatabase = db;
BookDirectories = Collections.unmodifiableList(new ArrayList(bookDirectories));
+
+ final String formats = db.getOptionValue("formats");
+ if (formats != null) {
+ myActiveFormats = new HashSet(Arrays.asList(formats.split("\000")));
+ }
}
public int size() {
@@ -64,13 +70,16 @@ public Book getBookByFile(ZLFile bookFile) {
if (bookFile == null) {
return null;
}
+
final FormatPlugin plugin = PluginCollection.Instance().getPlugin(bookFile);
- if (plugin == null) {
- return null;
- }
- if (!(plugin instanceof BuiltinFormatPlugin) && bookFile != bookFile.getPhysicalFile()) {
+ if (plugin == null || !isFormatActive(plugin)) {
return null;
}
+
+ return getBookByFile(bookFile, plugin);
+ }
+
+ private Book getBookByFile(ZLFile bookFile, final FormatPlugin plugin) {
try {
bookFile = plugin.realBookFile(bookFile);
} catch (BookReadingException e) {
@@ -110,9 +119,9 @@ public Book getBookByFile(ZLFile bookFile) {
try {
if (book == null) {
- book = new Book(bookFile);
+ book = new Book(bookFile, plugin);
} else {
- book.readMetainfo();
+ book.readMetainfo(plugin);
}
} catch (BookReadingException e) {
return null;
@@ -129,7 +138,7 @@ public Book getBookById(long id) {
}
book = myDatabase.loadBook(id);
- if (book == null || book.File == null || !book.File.exists()) {
+ if (book == null || book.File == null || !book.File.exists() || !isBookFormatActive(book)) {
return null;
}
book.loadLists(myDatabase);
@@ -233,10 +242,6 @@ public void removeBook(Book book, boolean deleteFromDisk) {
myDuplicateResolver.removeFile(book.File);
myBooksById.remove(book.getId());
- final List ids = myDatabase.loadRecentBookIds();
- if (ids.remove(book.getId())) {
- myDatabase.saveRecentBookIds(ids);
- }
if (deleteFromDisk) {
book.File.getPhysicalFile().delete();
}
@@ -245,11 +250,34 @@ public void removeBook(Book book, boolean deleteFromDisk) {
fireBookEvent(BookEvent.Removed, book);
}
+ public boolean canRemoveBook(Book book, boolean deleteFromDisk) {
+ if (deleteFromDisk) {
+ ZLFile file = book.File;
+ if (file.getPhysicalFile() == null) {
+ return false;
+ }
+ while (file instanceof ZLArchiveEntryFile) {
+ file = file.getParent();
+ if (file.children().size() != 1) {
+ return false;
+ }
+ }
+ return true;
+ } else {
+ // TODO: implement
+ return false;
+ }
+ }
+
public Status status() {
return myStatus;
}
public List books(BookQuery query) {
+ if (query == null) {
+ return Collections.emptyList();
+ }
+
final List allBooks;
synchronized (myBooksByFile) {
//allBooks = new ArrayList(new LinkedHashSet(myBooksByFile.values()));
@@ -301,8 +329,12 @@ public List titles(BookQuery query) {
return titles;
}
- public List recentBooks() {
- return books(myDatabase.loadRecentBookIds());
+ public List recentlyAddedBooks(int count) {
+ return books(myDatabase.loadRecentBookIds(BooksDatabase.HistoryEvent.Added, count));
+ }
+
+ public List recentlyOpenedBooks(int count) {
+ return books(myDatabase.loadRecentBookIds(BooksDatabase.HistoryEvent.Opened, count));
}
private List books(List ids) {
@@ -398,22 +430,20 @@ public List firstTitleLetters() {
}
public Book getRecentBook(int index) {
- final List recentIds = myDatabase.loadRecentBookIds();
+ final List recentIds = myDatabase.loadRecentBookIds(BooksDatabase.HistoryEvent.Opened, index + 1);
return recentIds.size() > index ? getBookById(recentIds.get(index)) : null;
}
- public void addBookToRecentList(Book book) {
- final List ids = myDatabase.loadRecentBookIds();
- final Long bookId = book.getId();
- ids.remove(bookId);
- ids.add(0, bookId);
- if (ids.size() > 12) {
- ids.remove(12);
- }
- myDatabase.saveRecentBookIds(ids);
+ public void addToRecentlyOpened(Book book) {
+ myDatabase.addBookHistoryEvent(book.getId(), BooksDatabase.HistoryEvent.Opened);
fireBookEvent(BookEvent.Opened, book);
}
+ public void removeFromRecentlyOpened(Book book) {
+ myDatabase.removeBookHistoryEvents(book.getId(), BooksDatabase.HistoryEvent.Opened);
+ fireBookEvent(BookEvent.Updated, book);
+ }
+
private void setStatus(Status status) {
myStatus = status;
fireBuildEvent(status);
@@ -502,14 +532,9 @@ private void build() {
// Step 0: get database books marked as "existing"
final FileInfoSet fileInfos = new FileInfoSet(myDatabase);
final Map savedBooksByFileId = myDatabase.loadBooks(fileInfos, true);
- final Map savedBooksByBookId = new HashMap();
- for (Book b : savedBooksByFileId.values()) {
- savedBooksByBookId.put(b.getId(), b);
- }
// Step 1: check if files corresponding to "existing" books really exists;
// add books to library if yes (and reload book info if needed);
- // remove from recent/favorites list if no;
// collect newly "orphaned" books
final Set orphanedBooks = new HashSet();
final Set physicalFiles = new HashSet();
@@ -518,9 +543,18 @@ private void build() {
final ZLPhysicalFile file = book.File.getPhysicalFile();
if (file != null) {
physicalFiles.add(file);
- }
- if (file != book.File && file != null && file.getPath().endsWith(".epub")) {
- continue;
+
+ // yes, we do add the file to physicalFiles set
+ // for not testing it again later,
+ // but we do not store the book
+ if (!isBookFormatActive(book)) {
+ continue;
+ }
+
+ // a hack to skip obsolete *.epub:*.opf entries
+ if (file != book.File && file.getPath().endsWith(".epub")) {
+ continue;
+ }
}
if (book.File.exists()) {
boolean doAdd = true;
@@ -628,6 +662,11 @@ private void collectBooks(
return;
}
+ final FormatPlugin plugin = PluginCollection.Instance().getPlugin(file);
+ if (plugin != null && !isFormatActive(plugin)) {
+ return;
+ }
+
try {
final Book book = orphanedBooksByFileId.get(fileId);
if (book != null) {
@@ -641,7 +680,7 @@ private void collectBooks(
// ignore
}
- final Book book = getBookByFile(file);
+ final Book book = getBookByFile(file, plugin);
if (book != null) {
newBooks.add(book);
} else if (file.isArchive()) {
@@ -667,6 +706,12 @@ public String getCoverUrl(Book book) {
return null;
}
+ @Override
+ public String getDescription(Book book) {
+ // not implemented in non-shadow collection
+ return null;
+ }
+
public List bookmarks(BookmarkQuery query) {
return myDatabase.loadBookmarks(query);
}
@@ -774,4 +819,40 @@ public void setHash(Book book, String hash) {
// ignore
}
}
+
+ public List formats() {
+ final List plugins = PluginCollection.Instance().plugins();
+ final List descriptors = new ArrayList(plugins.size());
+ for (FormatPlugin p : plugins) {
+ final FormatDescriptor d = new FormatDescriptor();
+ d.Id = p.supportedFileType();
+ d.Name = p.name();
+ d.IsActive = myActiveFormats == null || myActiveFormats.contains(d.Id);
+ descriptors.add(d);
+ }
+ return descriptors;
+ }
+
+ public boolean setActiveFormats(List formatIds) {
+ final Set activeFormats = new HashSet(formatIds);
+ if (activeFormats.equals(myActiveFormats)) {
+ return false;
+ }
+
+ myActiveFormats = activeFormats;
+ myDatabase.setOptionValue("formats", MiscUtil.join(formatIds, "\000"));
+ return true;
+ }
+
+ private boolean isFormatActive(FormatPlugin plugin) {
+ return myActiveFormats == null || myActiveFormats.contains(plugin.supportedFileType());
+ }
+
+ private boolean isBookFormatActive(Book book) {
+ try {
+ return isFormatActive(book.getPlugin());
+ } catch (BookReadingException e) {
+ return false;
+ }
+ }
}
diff --git a/src/org/geometerplus/fbreader/book/BookEvent.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookEvent.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/BookEvent.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookEvent.java
diff --git a/src/org/geometerplus/fbreader/book/BookMergeHelper.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookMergeHelper.java
similarity index 98%
rename from src/org/geometerplus/fbreader/book/BookMergeHelper.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookMergeHelper.java
index 0d8cd43c787..22b33688aab 100644
--- a/src/org/geometerplus/fbreader/book/BookMergeHelper.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookMergeHelper.java
@@ -55,7 +55,7 @@ private boolean mergeMetainfo(Book base, Book duplicate) {
}
final Book vanilla;
try {
- vanilla = new Book(base.File);
+ vanilla = new Book(base.File, base.getPlugin());
} catch (BookReadingException e) {
return false;
}
diff --git a/src/org/geometerplus/fbreader/book/BookQuery.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookQuery.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/BookQuery.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookQuery.java
diff --git a/src/org/geometerplus/fbreader/book/BookUtil.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookUtil.java
similarity index 82%
rename from src/org/geometerplus/fbreader/book/BookUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookUtil.java
index fb37b2b5349..8c2175e5c6e 100644
--- a/src/org/geometerplus/fbreader/book/BookUtil.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookUtil.java
@@ -38,18 +38,6 @@ public abstract class BookUtil {
private static final WeakHashMap> ourCovers =
new WeakHashMap>();
- static FormatPlugin getPluginOrNull(ZLFile file) {
- return PluginCollection.Instance().getPlugin(file);
- }
-
- static FormatPlugin getPlugin(ZLFile file) throws BookReadingException {
- final FormatPlugin plugin = PluginCollection.Instance().getPlugin(file);
- if (plugin == null) {
- throw new BookReadingException("pluginNotFound", file);
- }
- return plugin;
- }
-
public static ZLImage getCover(Book book) {
if (book == null) {
return null;
@@ -71,8 +59,8 @@ public static ZLImage getCover(ZLFile file) {
}
ZLImage image = null;
try {
- image = getPlugin(file).readCover(file);
- } catch (BookReadingException e) {
+ image = PluginCollection.Instance().getPlugin(file).readCover(file);
+ } catch (Exception e) {
// ignore
}
ourCovers.put(file, image != null ? new WeakReference(image) : NULL_IMAGE);
@@ -107,20 +95,6 @@ public static ZLResourceFile getHelpFile() {
return ZLResourceFile.createResourceFile("data/intro/intro-en.epub");
}
- public static boolean canRemoveBookFile(Book book) {
- ZLFile file = book.File;
- if (file.getPhysicalFile() == null) {
- return false;
- }
- while (file instanceof ZLArchiveEntryFile) {
- file = file.getParent();
- if (file.children().size() != 1) {
- return false;
- }
- }
- return true;
- }
-
public static UID createUid(ZLFile file, String algorithm) {
InputStream stream = null;
diff --git a/src/org/geometerplus/fbreader/book/Bookmark.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/Bookmark.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/Bookmark.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/Bookmark.java
diff --git a/src/org/geometerplus/fbreader/book/BookmarkQuery.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookmarkQuery.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/BookmarkQuery.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BookmarkQuery.java
diff --git a/src/org/geometerplus/fbreader/book/BooksDatabase.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BooksDatabase.java
similarity index 93%
rename from src/org/geometerplus/fbreader/book/BooksDatabase.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BooksDatabase.java
index a7175513591..57fbf081c70 100644
--- a/src/org/geometerplus/fbreader/book/BooksDatabase.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/BooksDatabase.java
@@ -29,6 +29,11 @@
import org.geometerplus.zlibrary.text.view.ZLTextPosition;
public abstract class BooksDatabase {
+ protected interface HistoryEvent {
+ int Added = 0;
+ int Opened = 1;
+ }
+
public static final class NotAvailable extends Exception {
}
@@ -89,8 +94,9 @@ protected FileInfo createFileInfo(long id, String name, FileInfo parent) {
protected abstract void removeFileInfo(long fileId);
protected abstract void saveFileInfo(FileInfo fileInfo);
- protected abstract List loadRecentBookIds();
- protected abstract void saveRecentBookIds(final List ids);
+ protected abstract void addBookHistoryEvent(long bookId, int event);
+ protected abstract void removeBookHistoryEvents(long bookId, int event);
+ protected abstract List loadRecentBookIds(int event, int limit);
protected abstract void setLabel(long bookId, String label);
protected abstract void removeLabel(long bookId, String label);
@@ -138,4 +144,7 @@ protected HighlightingStyle createStyle(int id, String name, int bgColor, int fg
protected abstract String getHash(long bookId, long lastModified) throws NotAvailable;
protected abstract void setHash(long bookId, String hash) throws NotAvailable;
protected abstract List bookIdsByHash(String hash);
+
+ protected abstract String getOptionValue(String name);
+ protected abstract void setOptionValue(String name, String value);
}
diff --git a/src/org/geometerplus/fbreader/book/DuplicateResolver.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/DuplicateResolver.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/DuplicateResolver.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/DuplicateResolver.java
diff --git a/src/org/geometerplus/fbreader/book/FileInfo.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/FileInfo.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/FileInfo.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/FileInfo.java
diff --git a/src/org/geometerplus/fbreader/book/FileInfoSet.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/FileInfoSet.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/FileInfoSet.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/FileInfoSet.java
diff --git a/src/org/geometerplus/fbreader/book/Filter.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/Filter.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/Filter.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/Filter.java
diff --git a/src/org/geometerplus/fbreader/book/HighlightingStyle.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/HighlightingStyle.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/HighlightingStyle.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/HighlightingStyle.java
diff --git a/src/org/geometerplus/fbreader/book/IBookCollection.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/IBookCollection.java
similarity index 84%
rename from src/org/geometerplus/fbreader/book/IBookCollection.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/IBookCollection.java
index e33d6b447ea..9310e8af3ed 100644
--- a/src/org/geometerplus/fbreader/book/IBookCollection.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/IBookCollection.java
@@ -56,9 +56,11 @@ public interface Listener {
boolean hasBooks(Filter filter);
List titles(BookQuery query);
- List recentBooks();
+ List recentlyOpenedBooks(int count);
+ List recentlyAddedBooks(int count);
Book getRecentBook(int index);
- void addBookToRecentList(Book book);
+ void addToRecentlyOpened(Book book);
+ void removeFromRecentlyOpened(Book book);
Book getBookByFile(String path);
Book getBookByFile(ZLFile file);
@@ -74,6 +76,7 @@ public interface Listener {
List firstTitleLetters();
boolean saveBook(Book book);
+ boolean canRemoveBook(Book book, boolean deleteFromDisk);
void removeBook(Book book, boolean deleteFromDisk);
String getHash(Book book, boolean force);
@@ -87,6 +90,7 @@ public interface Listener {
ZLImage getCover(Book book, int maxWidth, int maxHeight);
String getCoverUrl(Book book);
+ String getDescription(Book book);
List bookmarks(BookmarkQuery query);
void saveBookmark(Bookmark bookmark);
@@ -96,5 +100,14 @@ public interface Listener {
List highlightingStyles();
void saveHighlightingStyle(HighlightingStyle style);
+ public class FormatDescriptor {
+ public String Id;
+ public String Name;
+ public boolean IsActive;
+ }
+ List formats();
+ // returns true iff active format set is changed
+ boolean setActiveFormats(List formatIds);
+
void rescan(String path);
}
diff --git a/src/org/geometerplus/fbreader/book/SerializerUtil.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/SerializerUtil.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/SerializerUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/SerializerUtil.java
diff --git a/src/org/geometerplus/fbreader/book/Series.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/Series.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/Series.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/Series.java
diff --git a/src/org/geometerplus/fbreader/book/SeriesInfo.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/SeriesInfo.java
similarity index 86%
rename from src/org/geometerplus/fbreader/book/SeriesInfo.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/SeriesInfo.java
index 5575c09e480..88f8f82c1ad 100644
--- a/src/org/geometerplus/fbreader/book/SeriesInfo.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/SeriesInfo.java
@@ -23,7 +23,7 @@
import org.geometerplus.zlibrary.core.util.MiscUtil;
-public final class SeriesInfo {
+public final class SeriesInfo implements Comparable {
public static SeriesInfo createSeriesInfo(String title, String index) {
if (title == null) {
return null;
@@ -63,4 +63,11 @@ public boolean equals(Object other) {
public int hashCode() {
return 23 * MiscUtil.hashCode(Series) + 31 * MiscUtil.hashCode(Index);
}
+
+ @Override
+ public int compareTo(SeriesInfo other) {
+ final BigDecimal i0 = Index != null ? Index : BigDecimal.ZERO;
+ final BigDecimal i1 = other.Index != null ? other.Index : BigDecimal.ZERO;
+ return i0.compareTo(i1);
+ }
}
diff --git a/src/org/geometerplus/fbreader/book/Tag.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/Tag.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/Tag.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/Tag.java
diff --git a/src/org/geometerplus/fbreader/book/UID.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/UID.java
similarity index 100%
rename from src/org/geometerplus/fbreader/book/UID.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/UID.java
diff --git a/src/org/geometerplus/fbreader/book/XMLSerializer.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/XMLSerializer.java
similarity index 96%
rename from src/org/geometerplus/fbreader/book/XMLSerializer.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/book/XMLSerializer.java
index 241878cf3ff..d2b93c0324d 100644
--- a/src/org/geometerplus/fbreader/book/XMLSerializer.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/book/XMLSerializer.java
@@ -35,9 +35,13 @@
import org.geometerplus.zlibrary.text.view.ZLTextPosition;
class XMLSerializer extends AbstractSerializer {
+ private StringBuilder builder() {
+ return new StringBuilder("");
+ }
+
@Override
public String serialize(BookQuery query) {
- final StringBuilder buffer = new StringBuilder();
+ final StringBuilder buffer = builder();
appendTag(buffer, "query", false,
"limit", String.valueOf(query.Limit),
"page", String.valueOf(query.Page)
@@ -136,7 +140,7 @@ public BookQuery deserializeBookQuery(String xml) {
@Override
public String serialize(BookmarkQuery query) {
- final StringBuilder buffer = new StringBuilder();
+ final StringBuilder buffer = builder();
appendTag(buffer, "query", false,
"visible", String.valueOf(query.Visible),
"limit", String.valueOf(query.Limit),
@@ -164,7 +168,7 @@ public BookmarkQuery deserializeBookmarkQuery(String xml) {
@Override
public String serialize(Book book) {
- final StringBuilder buffer = new StringBuilder();
+ final StringBuilder buffer = builder();
serialize(buffer, book);
return buffer.toString();
}
@@ -262,7 +266,7 @@ public Book deserializeBook(String xml) {
@Override
public String serialize(Bookmark bookmark) {
- final StringBuilder buffer = new StringBuilder();
+ final StringBuilder buffer = builder();
appendTag(
buffer, "bookmark", false,
"id", String.valueOf(bookmark.getId()),
@@ -325,7 +329,7 @@ public Bookmark deserializeBookmark(String xml) {
@Override
public String serialize(HighlightingStyle style) {
- final StringBuilder buffer = new StringBuilder();
+ final StringBuilder buffer = builder();
final ZLColor bgColor = style.getBackgroundColor();
final ZLColor fgColor = style.getForegroundColor();
appendTag(buffer, "style", true,
@@ -441,23 +445,41 @@ private static void appendTagWithContent(StringBuilder buffer, String tag, Objec
}
}
- private static String escapeForXml(String data) {
- if (data.indexOf('&') != -1) {
- data = data.replaceAll("&", "&");
- }
- if (data.indexOf('<') != -1) {
- data = data.replaceAll("<", "<");
- }
- if (data.indexOf('>') != -1) {
- data = data.replaceAll(">", ">");
- }
- if (data.indexOf('\'') != -1) {
- data = data.replaceAll("'", "'");
- }
- if (data.indexOf('"') != -1) {
- data = data.replaceAll("\"", """);
+ private static CharSequence escapeForXml(String data) {
+ final StringBuilder buffer = new StringBuilder();
+
+ final int len = data.length();
+ for (int i = 0; i < len; ++i) {
+ final char ch = data.charAt(i);
+ switch (ch) {
+ case '\u0009':
+ buffer.append(ch);
+ break;
+ default:
+ if ((ch >= '\u0020' && ch <= '\uD7FF') ||
+ (ch >= '\u0E00' && ch <= '\uFFFD')) {
+ buffer.append(ch);
+ }
+ break;
+ case '&':
+ buffer.append("&");
+ break;
+ case '<':
+ buffer.append("<");
+ break;
+ case '>':
+ buffer.append(">");
+ break;
+ case '"':
+ buffer.append(""");
+ break;
+ case '\'':
+ buffer.append("'");
+ break;
+ }
}
- return data;
+
+ return buffer;
}
private static void clear(StringBuilder buffer) {
diff --git a/src/org/geometerplus/fbreader/bookmodel/BookModel.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/BookModel.java
similarity index 94%
rename from src/org/geometerplus/fbreader/bookmodel/BookModel.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/BookModel.java
index 25580afbee3..eea023535df 100644
--- a/src/org/geometerplus/fbreader/bookmodel/BookModel.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/BookModel.java
@@ -33,8 +33,6 @@ public abstract class BookModel {
public static BookModel createModel(Book book) throws BookReadingException {
final FormatPlugin plugin = book.getPlugin();
- System.err.println("using plugin: " + plugin.supportedFileType() + "/" + plugin.type());
-
if (plugin instanceof BuiltinFormatPlugin) {
final BookModel model = new NativeBookModel(book);
((BuiltinFormatPlugin)plugin).readModel(model);
@@ -42,7 +40,7 @@ public static BookModel createModel(Book book) throws BookReadingException {
}
throw new BookReadingException(
- "unknownPluginType", null, new String[] { plugin.type().toString() }
+ "unknownPluginType", null, new String[] { String.valueOf(plugin) }
);
}
diff --git a/src/org/geometerplus/fbreader/bookmodel/BookModelImpl.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/BookModelImpl.java
similarity index 100%
rename from src/org/geometerplus/fbreader/bookmodel/BookModelImpl.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/BookModelImpl.java
diff --git a/src/org/geometerplus/fbreader/bookmodel/BookReadingException.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/BookReadingException.java
similarity index 100%
rename from src/org/geometerplus/fbreader/bookmodel/BookReadingException.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/BookReadingException.java
diff --git a/src/org/geometerplus/fbreader/bookmodel/FBHyperlinkType.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/FBHyperlinkType.java
similarity index 100%
rename from src/org/geometerplus/fbreader/bookmodel/FBHyperlinkType.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/FBHyperlinkType.java
diff --git a/src/org/geometerplus/fbreader/bookmodel/FBTextKind.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/FBTextKind.java
similarity index 100%
rename from src/org/geometerplus/fbreader/bookmodel/FBTextKind.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/FBTextKind.java
diff --git a/src/org/geometerplus/fbreader/bookmodel/NativeBookModel.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/NativeBookModel.java
similarity index 100%
rename from src/org/geometerplus/fbreader/bookmodel/NativeBookModel.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/NativeBookModel.java
diff --git a/src/org/geometerplus/fbreader/bookmodel/TOCTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/TOCTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/bookmodel/TOCTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/bookmodel/TOCTree.java
diff --git a/src/org/geometerplus/fbreader/fbreader/ActionCode.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/ActionCode.java
similarity index 94%
rename from src/org/geometerplus/fbreader/fbreader/ActionCode.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/ActionCode.java
index 836f10ded16..10ad4e8450b 100644
--- a/src/org/geometerplus/fbreader/fbreader/ActionCode.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/ActionCode.java
@@ -56,6 +56,10 @@ public interface ActionCode {
String GO_BACK = "goBack";
String EXIT = "exit";
String SHOW_CANCEL_MENU = "cancelMenu";
+ String GO_TO_PREFERENCES = "goToPreferences";
+ String GO_TO_LIBRARY = "goToLibrary";
+ String GO_TO_NETWORK_LIBRARY = "goToNetworkLibrary";
+ String GO_TO_PREVIOUS_BOOK = "goToPreviousBook";
String SET_SCREEN_ORIENTATION_SYSTEM = "screenOrientationSystem";
String SET_SCREEN_ORIENTATION_SENSOR = "screenOrientationSensor";
diff --git a/src/org/geometerplus/fbreader/fbreader/BookElement.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/BookElement.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/BookElement.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/BookElement.java
diff --git a/src/org/geometerplus/fbreader/fbreader/BookElementManager.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/BookElementManager.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/BookElementManager.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/BookElementManager.java
diff --git a/src/org/geometerplus/fbreader/fbreader/BookmarkHighlighting.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/BookmarkHighlighting.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/BookmarkHighlighting.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/BookmarkHighlighting.java
diff --git a/src/org/geometerplus/fbreader/fbreader/ChangeFontSizeAction.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/ChangeFontSizeAction.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/ChangeFontSizeAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/ChangeFontSizeAction.java
diff --git a/src/org/geometerplus/fbreader/fbreader/ClearFindResultsAction.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/ClearFindResultsAction.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/ClearFindResultsAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/ClearFindResultsAction.java
diff --git a/src/org/geometerplus/fbreader/fbreader/ExitAction.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/ExitAction.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/ExitAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/ExitAction.java
diff --git a/src/org/geometerplus/fbreader/fbreader/FBAction.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/FBAction.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/FBAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/FBAction.java
diff --git a/src/org/geometerplus/fbreader/fbreader/FBReaderApp.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/FBReaderApp.java
similarity index 99%
rename from src/org/geometerplus/fbreader/fbreader/FBReaderApp.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/FBReaderApp.java
index e135c4dd9a2..3d570187d9a 100644
--- a/src/org/geometerplus/fbreader/fbreader/FBReaderApp.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/FBReaderApp.java
@@ -304,7 +304,12 @@ private synchronized void openBookInternal(Book book, Bookmark bookmark, boolean
System.gc();
System.gc();
- final FormatPlugin plugin = book.getPluginOrNull();
+ FormatPlugin plugin = null;
+ try {
+ plugin = book.getPlugin();
+ } catch (BookReadingException e) {
+ // ignore
+ }
if (plugin instanceof ExternalFormatPlugin) {
ExternalBook = book;
final Bookmark bm;
@@ -333,7 +338,7 @@ private synchronized void openBookInternal(Book book, Bookmark bookmark, boolean
} else {
gotoBookmark(bookmark, false);
}
- Collection.addBookToRecentList(book);
+ Collection.addToRecentlyOpened(book);
final StringBuilder title = new StringBuilder(book.getTitle());
if (!book.authors().isEmpty()) {
boolean first = true;
diff --git a/src/org/geometerplus/fbreader/fbreader/FBView.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/FBView.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/FBView.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/FBView.java
diff --git a/src/org/geometerplus/fbreader/fbreader/FindNextAction.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/FindNextAction.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/FindNextAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/FindNextAction.java
diff --git a/src/org/geometerplus/fbreader/fbreader/FindPreviousAction.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/FindPreviousAction.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/FindPreviousAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/FindPreviousAction.java
diff --git a/src/org/geometerplus/fbreader/fbreader/MoveCursorAction.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/MoveCursorAction.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/MoveCursorAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/MoveCursorAction.java
diff --git a/src/org/geometerplus/fbreader/fbreader/SelectionClearAction.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/SelectionClearAction.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/SelectionClearAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/SelectionClearAction.java
diff --git a/src/org/geometerplus/fbreader/fbreader/SwitchProfileAction.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/SwitchProfileAction.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/SwitchProfileAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/SwitchProfileAction.java
diff --git a/src/org/geometerplus/fbreader/fbreader/TapZoneMap.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/TapZoneMap.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/TapZoneMap.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/TapZoneMap.java
diff --git a/src/org/geometerplus/fbreader/fbreader/TextBuildTraverser.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/TextBuildTraverser.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/TextBuildTraverser.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/TextBuildTraverser.java
diff --git a/src/org/geometerplus/fbreader/fbreader/TurnPageAction.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/TurnPageAction.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/TurnPageAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/TurnPageAction.java
diff --git a/src/org/geometerplus/fbreader/fbreader/VolumeKeyTurnPageAction.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/VolumeKeyTurnPageAction.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/VolumeKeyTurnPageAction.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/VolumeKeyTurnPageAction.java
diff --git a/src/org/geometerplus/fbreader/fbreader/WallpapersUtil.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/WallpapersUtil.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/WallpapersUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/WallpapersUtil.java
diff --git a/src/org/geometerplus/fbreader/fbreader/WordCountTraverser.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/WordCountTraverser.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/WordCountTraverser.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/WordCountTraverser.java
diff --git a/src/org/geometerplus/fbreader/fbreader/options/CancelMenuHelper.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/CancelMenuHelper.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/options/CancelMenuHelper.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/CancelMenuHelper.java
diff --git a/src/org/geometerplus/fbreader/fbreader/options/ColorProfile.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/ColorProfile.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/options/ColorProfile.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/ColorProfile.java
diff --git a/src/org/geometerplus/fbreader/fbreader/options/EInkOptions.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/EInkOptions.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/options/EInkOptions.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/EInkOptions.java
diff --git a/src/org/geometerplus/fbreader/fbreader/options/FooterOptions.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/FooterOptions.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/options/FooterOptions.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/FooterOptions.java
diff --git a/src/org/geometerplus/fbreader/fbreader/options/ImageOptions.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/ImageOptions.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/options/ImageOptions.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/ImageOptions.java
diff --git a/src/org/geometerplus/fbreader/fbreader/options/MiscOptions.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/MiscOptions.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/options/MiscOptions.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/MiscOptions.java
diff --git a/src/org/geometerplus/fbreader/fbreader/options/PageTurningOptions.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/PageTurningOptions.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/options/PageTurningOptions.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/PageTurningOptions.java
diff --git a/src/org/geometerplus/fbreader/fbreader/options/SyncOptions.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/SyncOptions.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/options/SyncOptions.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/SyncOptions.java
diff --git a/src/org/geometerplus/fbreader/fbreader/options/ViewOptions.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/ViewOptions.java
similarity index 100%
rename from src/org/geometerplus/fbreader/fbreader/options/ViewOptions.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/fbreader/options/ViewOptions.java
diff --git a/src/org/geometerplus/fbreader/formats/BuiltinFormatPlugin.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/BuiltinFormatPlugin.java
similarity index 100%
rename from src/org/geometerplus/fbreader/formats/BuiltinFormatPlugin.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/BuiltinFormatPlugin.java
diff --git a/src/org/geometerplus/fbreader/formats/CBZPlugin.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/ComicBookPlugin.java
similarity index 87%
rename from src/org/geometerplus/fbreader/formats/CBZPlugin.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/ComicBookPlugin.java
index b7bda3dfe91..b2bb9244c4a 100644
--- a/src/org/geometerplus/fbreader/formats/CBZPlugin.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/ComicBookPlugin.java
@@ -21,14 +21,14 @@
import org.geometerplus.fbreader.book.Book;
-public class CBZPlugin extends ExternalFormatPlugin {
- public CBZPlugin() {
+public class ComicBookPlugin extends ExternalFormatPlugin {
+ public ComicBookPlugin() {
super("CBZ");
}
@Override
public String packageName() {
- return "org.geometerplus.fbreader.plugin.cbz";
+ return "org.geometerplus.fbreader.plugin.comicbook";
}
@Override
diff --git a/src/org/geometerplus/fbreader/formats/DjVuPlugin.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/DjVuPlugin.java
similarity index 100%
rename from src/org/geometerplus/fbreader/formats/DjVuPlugin.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/DjVuPlugin.java
diff --git a/src/org/geometerplus/fbreader/formats/ExternalFormatPlugin.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/ExternalFormatPlugin.java
similarity index 92%
rename from src/org/geometerplus/fbreader/formats/ExternalFormatPlugin.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/ExternalFormatPlugin.java
index aacdf80f0b4..4515b255631 100644
--- a/src/org/geometerplus/fbreader/formats/ExternalFormatPlugin.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/ExternalFormatPlugin.java
@@ -31,8 +31,8 @@ protected ExternalFormatPlugin(String fileType) {
}
@Override
- public Type type() {
- return Type.EXTERNAL;
+ public int priority() {
+ return 10;
}
public abstract String packageName();
@@ -62,4 +62,9 @@ public void readUids(Book book) {
book.addUid(BookUtil.createUid(book.File, "SHA-256"));
}
}
+
+ @Override
+ public String toString() {
+ return "ExternalFormatPlugin [" + supportedFileType() + "]";
+ }
}
diff --git a/src/org/geometerplus/fbreader/formats/FormatPlugin.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/FormatPlugin.java
similarity index 88%
rename from src/org/geometerplus/fbreader/formats/FormatPlugin.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/FormatPlugin.java
index aa7a0376fd4..ec75a022b1c 100644
--- a/src/org/geometerplus/fbreader/formats/FormatPlugin.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/FormatPlugin.java
@@ -26,6 +26,7 @@
import org.geometerplus.zlibrary.core.encodings.EncodingCollection;
import org.geometerplus.zlibrary.core.filesystem.ZLFile;
import org.geometerplus.zlibrary.core.image.ZLImage;
+import org.geometerplus.zlibrary.core.resources.ZLResource;
import org.geometerplus.fbreader.book.Book;
import org.geometerplus.fbreader.bookmodel.BookReadingException;
@@ -41,6 +42,10 @@ public final String supportedFileType() {
return myFileType;
}
+ public final String name() {
+ return ZLResource.resource("format").getResource(myFileType).getValue();
+ }
+
public ZLFile realBookFile(ZLFile file) throws BookReadingException {
return file;
}
@@ -53,12 +58,8 @@ public List readEncryptionInfos(Book book) {
public abstract ZLImage readCover(ZLFile file);
public abstract String readAnnotation(ZLFile file);
- public enum Type {
- ANY,
- BUILTIN,
- EXTERNAL;
- };
- public abstract Type type();
+ /* lesser is higher: 0 for ePub/fb2, 5 for other native, 10 for external */
+ public abstract int priority();
public abstract EncodingCollection supportedEncodings();
}
diff --git a/src/org/geometerplus/fbreader/formats/NativeFormatPlugin.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/NativeFormatPlugin.java
similarity index 99%
rename from src/org/geometerplus/fbreader/formats/NativeFormatPlugin.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/NativeFormatPlugin.java
index 4a000b7b152..8833cc74852 100644
--- a/src/org/geometerplus/fbreader/formats/NativeFormatPlugin.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/NativeFormatPlugin.java
@@ -134,8 +134,8 @@ public String readAnnotation(ZLFile file) {
protected native String readAnnotationInternal(ZLFile file);
@Override
- public Type type() {
- return Type.BUILTIN;
+ public int priority() {
+ return 5;
}
@Override
diff --git a/src/org/geometerplus/fbreader/formats/PDFPlugin.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/PDFPlugin.java
similarity index 100%
rename from src/org/geometerplus/fbreader/formats/PDFPlugin.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/PDFPlugin.java
diff --git a/src/org/geometerplus/fbreader/formats/PluginCollection.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/PluginCollection.java
similarity index 84%
rename from src/org/geometerplus/fbreader/formats/PluginCollection.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/PluginCollection.java
index ac47127bea7..8b37dffaf63 100644
--- a/src/org/geometerplus/fbreader/formats/PluginCollection.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/PluginCollection.java
@@ -61,7 +61,7 @@ private PluginCollection() {
if (Build.VERSION.SDK_INT >= 8) {
myExternalPlugins.add(new DjVuPlugin());
myExternalPlugins.add(new PDFPlugin());
- myExternalPlugins.add(new CBZPlugin());
+ myExternalPlugins.add(new ComicBookPlugin());
}
}
@@ -92,6 +92,22 @@ public FormatPlugin getPlugin(FileType fileType) {
return null;
}
+ public List plugins() {
+ final ArrayList all = new ArrayList();
+ all.addAll(myBuiltinPlugins);
+ all.addAll(myExternalPlugins);
+ Collections.sort(all, new Comparator() {
+ public int compare(FormatPlugin p0, FormatPlugin p1) {
+ final int diff = p0.priority() - p1.priority();
+ if (diff != 0) {
+ return diff;
+ }
+ return p0.supportedFileType().compareTo(p1.supportedFileType());
+ }
+ });
+ return all;
+ }
+
private native NativeFormatPlugin[] nativePlugins();
private native void free();
diff --git a/src/org/geometerplus/fbreader/formats/PluginImage.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/PluginImage.java
similarity index 100%
rename from src/org/geometerplus/fbreader/formats/PluginImage.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/PluginImage.java
diff --git a/src/org/geometerplus/fbreader/formats/fb2/FB2AnnotationReader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/fb2/FB2AnnotationReader.java
similarity index 100%
rename from src/org/geometerplus/fbreader/formats/fb2/FB2AnnotationReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/fb2/FB2AnnotationReader.java
diff --git a/src/org/geometerplus/fbreader/formats/fb2/FB2NativePlugin.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/fb2/FB2NativePlugin.java
similarity index 97%
rename from src/org/geometerplus/fbreader/formats/fb2/FB2NativePlugin.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/fb2/FB2NativePlugin.java
index 1987d99e61f..a87503faf36 100644
--- a/src/org/geometerplus/fbreader/formats/fb2/FB2NativePlugin.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/fb2/FB2NativePlugin.java
@@ -81,4 +81,9 @@ public void detectLanguageAndEncoding(Book book) {
public String readAnnotation(ZLFile file) {
return new FB2AnnotationReader().readAnnotation(file);
}
+
+ @Override
+ public int priority() {
+ return 0;
+ }
}
diff --git a/src/org/geometerplus/fbreader/formats/oeb/ContainerFileReader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/oeb/ContainerFileReader.java
similarity index 100%
rename from src/org/geometerplus/fbreader/formats/oeb/ContainerFileReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/oeb/ContainerFileReader.java
diff --git a/src/org/geometerplus/fbreader/formats/oeb/OEBAnnotationReader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/oeb/OEBAnnotationReader.java
similarity index 100%
rename from src/org/geometerplus/fbreader/formats/oeb/OEBAnnotationReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/oeb/OEBAnnotationReader.java
diff --git a/src/org/geometerplus/fbreader/formats/oeb/OEBNativePlugin.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/oeb/OEBNativePlugin.java
similarity index 98%
rename from src/org/geometerplus/fbreader/formats/oeb/OEBNativePlugin.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/oeb/OEBNativePlugin.java
index a28b65cf344..c8db24752b4 100644
--- a/src/org/geometerplus/fbreader/formats/oeb/OEBNativePlugin.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/formats/oeb/OEBNativePlugin.java
@@ -98,4 +98,9 @@ private ZLFile getOpfFile(ZLFile oebFile) throws BookReadingException {
}
throw new BookReadingException("opfFileNotFound", oebFile);
}
+
+ @Override
+ public int priority() {
+ return 0;
+ }
}
diff --git a/src/org/geometerplus/fbreader/library/AuthorListTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/AuthorListTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/AuthorListTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/AuthorListTree.java
diff --git a/src/org/geometerplus/fbreader/library/AuthorTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/AuthorTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/AuthorTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/AuthorTree.java
diff --git a/src/org/geometerplus/fbreader/library/BookInSeriesTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/BookInSeriesTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/BookInSeriesTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/BookInSeriesTree.java
diff --git a/src/org/geometerplus/fbreader/library/BookTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/BookTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/BookTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/BookTree.java
diff --git a/src/org/geometerplus/fbreader/library/BookWithAuthorsTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/BookWithAuthorsTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/BookWithAuthorsTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/BookWithAuthorsTree.java
diff --git a/obsolete/j2me/src/java/util/zip/ZipEntry.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/ExternalViewTree.java
similarity index 56%
rename from obsolete/j2me/src/java/util/zip/ZipEntry.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/ExternalViewTree.java
index 3d56459d73f..af0e9b588f9 100644
--- a/obsolete/j2me/src/java/util/zip/ZipEntry.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/ExternalViewTree.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2007-2009 Geometer Plus
+ * Copyright (C) 2010-2014 Geometer Plus
*
* 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
@@ -17,11 +17,30 @@
* 02110-1301, USA.
*/
-package java.util.zip;
+package org.geometerplus.fbreader.library;
-public class ZipEntry {
+import org.geometerplus.zlibrary.core.resources.ZLResource;
+
+public class ExternalViewTree extends LibraryTree {
+ private final ZLResource myResource;
+
+ ExternalViewTree(RootTree parent) {
+ super(parent);
+ myResource = resource().getResource(ROOT_EXTERNAL_VIEW);
+ }
+
+ @Override
public String getName() {
- // TODO: implement
- return null;
+ return myResource.getValue();
+ }
+
+ @Override
+ protected String getStringId() {
+ return ROOT_EXTERNAL_VIEW;
+ }
+
+ @Override
+ public String getSummary() {
+ return myResource.getResource("summary").getValue();
}
}
diff --git a/src/org/geometerplus/fbreader/library/FavoritesTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/FavoritesTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/FavoritesTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/FavoritesTree.java
diff --git a/src/org/geometerplus/fbreader/library/FileFirstLevelTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/FileFirstLevelTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/FileFirstLevelTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/FileFirstLevelTree.java
diff --git a/src/org/geometerplus/fbreader/library/FileTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/FileTree.java
similarity index 98%
rename from src/org/geometerplus/fbreader/library/FileTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/FileTree.java
index 209e288f937..1bd1bd7ee70 100644
--- a/src/org/geometerplus/fbreader/library/FileTree.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/FileTree.java
@@ -146,7 +146,7 @@ public void waitForOpening() {
final TreeSet set = new TreeSet(ourFileComparator);
for (ZLFile file : myFile.children()) {
if (file.isDirectory() || file.isArchive() ||
- PluginCollection.Instance().getPlugin(file) != null) {
+ Collection.getBookByFile(file) != null) {
set.add(file);
}
}
diff --git a/src/org/geometerplus/fbreader/library/FilteredTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/FilteredTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/FilteredTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/FilteredTree.java
diff --git a/src/org/geometerplus/fbreader/library/FirstLevelTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/FirstLevelTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/FirstLevelTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/FirstLevelTree.java
diff --git a/src/org/geometerplus/fbreader/library/LibraryTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/LibraryTree.java
similarity index 98%
rename from src/org/geometerplus/fbreader/library/LibraryTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/LibraryTree.java
index ecbcd4d42f0..a66987559a1 100644
--- a/src/org/geometerplus/fbreader/library/LibraryTree.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/LibraryTree.java
@@ -33,6 +33,7 @@ public static ZLResource resource() {
public final IBookCollection Collection;
+ static final String ROOT_EXTERNAL_VIEW = "bookshelfView";
static final String ROOT_FOUND = "found";
static final String ROOT_FAVORITES = "favorites";
static final String ROOT_RECENT = "recent";
diff --git a/src/org/geometerplus/fbreader/library/RecentBooksTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/RecentBooksTree.java
similarity index 95%
rename from src/org/geometerplus/fbreader/library/RecentBooksTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/RecentBooksTree.java
index 35912ae9e3b..b340fe4a3d8 100644
--- a/src/org/geometerplus/fbreader/library/RecentBooksTree.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/RecentBooksTree.java
@@ -34,7 +34,7 @@ public Status getOpeningStatus() {
@Override
public void waitForOpening() {
clear();
- for (Book book : Collection.recentBooks()) {
+ for (Book book : Collection.recentlyOpenedBooks(12)) {
new BookWithAuthorsTree(this, book);
}
}
diff --git a/src/org/geometerplus/fbreader/library/RootTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/RootTree.java
similarity index 87%
rename from src/org/geometerplus/fbreader/library/RootTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/RootTree.java
index 3fd66a88ddd..4d606912c9d 100644
--- a/src/org/geometerplus/fbreader/library/RootTree.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/RootTree.java
@@ -19,13 +19,17 @@
package org.geometerplus.fbreader.library;
+import java.util.List;
+
import org.geometerplus.fbreader.book.IBookCollection;
import org.geometerplus.fbreader.fbreader.options.SyncOptions;
+import org.geometerplus.fbreader.tree.FBTree;
public class RootTree extends LibraryTree {
public RootTree(IBookCollection collection) {
super(collection);
+ //new ExternalViewTree(this);
new FavoritesTree(this);
new RecentBooksTree(this);
new AuthorListTree(this);
@@ -54,7 +58,14 @@ public SearchResultsTree getSearchResultsTree() {
}
public SearchResultsTree createSearchResultsTree(String pattern) {
- return new SearchResultsTree(this, LibraryTree.ROOT_FOUND, pattern);
+ final int position;
+ final List children = subtrees();
+ if (children.isEmpty()) {
+ position = 0;
+ } else {
+ position = children.get(0) instanceof ExternalViewTree ? 1 : 0;
+ }
+ return new SearchResultsTree(this, LibraryTree.ROOT_FOUND, pattern, position);
}
@Override
diff --git a/src/org/geometerplus/fbreader/library/SearchResultsTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/SearchResultsTree.java
similarity index 92%
rename from src/org/geometerplus/fbreader/library/SearchResultsTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/SearchResultsTree.java
index e7af8ff553e..d0529fc1610 100644
--- a/src/org/geometerplus/fbreader/library/SearchResultsTree.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/SearchResultsTree.java
@@ -28,8 +28,8 @@ public class SearchResultsTree extends FilteredTree {
private final String myId;
private final ZLResource myResource;
- SearchResultsTree(RootTree root, String id, String pattern) {
- super(root, new Filter.ByPattern(pattern), 0);
+ SearchResultsTree(RootTree root, String id, String pattern, int position) {
+ super(root, new Filter.ByPattern(pattern), position);
myId = id;
myResource = resource().getResource(myId);
Pattern = pattern != null ? pattern : "";
diff --git a/src/org/geometerplus/fbreader/library/SeriesListTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/SeriesListTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/SeriesListTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/SeriesListTree.java
diff --git a/src/org/geometerplus/fbreader/library/SeriesTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/SeriesTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/SeriesTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/SeriesTree.java
diff --git a/src/org/geometerplus/fbreader/library/SyncLabelTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/SyncLabelTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/SyncLabelTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/SyncLabelTree.java
diff --git a/src/org/geometerplus/fbreader/library/SyncTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/SyncTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/SyncTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/SyncTree.java
diff --git a/src/org/geometerplus/fbreader/library/TagListTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/TagListTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/TagListTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/TagListTree.java
diff --git a/src/org/geometerplus/fbreader/library/TagTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/TagTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/TagTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/TagTree.java
diff --git a/src/org/geometerplus/fbreader/library/TitleListTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/TitleListTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/TitleListTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/TitleListTree.java
diff --git a/src/org/geometerplus/fbreader/library/TitleTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/library/TitleTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/library/TitleTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/library/TitleTree.java
diff --git a/src/org/geometerplus/fbreader/network/AbstractNetworkLink.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/AbstractNetworkLink.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/AbstractNetworkLink.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/AbstractNetworkLink.java
diff --git a/src/org/geometerplus/fbreader/network/AllCatalogsSearchItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/AllCatalogsSearchItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/AllCatalogsSearchItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/AllCatalogsSearchItem.java
diff --git a/src/org/geometerplus/fbreader/network/AlreadyPurchasedException.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/AlreadyPurchasedException.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/AlreadyPurchasedException.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/AlreadyPurchasedException.java
diff --git a/src/org/geometerplus/fbreader/network/Base64EncodedImage.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/Base64EncodedImage.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/Base64EncodedImage.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/Base64EncodedImage.java
diff --git a/src/org/geometerplus/fbreader/network/BasketItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/BasketItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/BasketItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/BasketItem.java
diff --git a/src/org/geometerplus/fbreader/network/HtmlUtil.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/HtmlUtil.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/HtmlUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/HtmlUtil.java
diff --git a/src/org/geometerplus/fbreader/network/ICustomNetworkLink.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/ICustomNetworkLink.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/ICustomNetworkLink.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/ICustomNetworkLink.java
diff --git a/src/org/geometerplus/fbreader/network/INetworkLink.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/INetworkLink.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/INetworkLink.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/INetworkLink.java
diff --git a/src/org/geometerplus/fbreader/network/IPredefinedNetworkLink.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/IPredefinedNetworkLink.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/IPredefinedNetworkLink.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/IPredefinedNetworkLink.java
diff --git a/src/org/geometerplus/fbreader/network/ISyncNetworkLink.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/ISyncNetworkLink.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/ISyncNetworkLink.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/ISyncNetworkLink.java
diff --git a/src/org/geometerplus/fbreader/network/NetworkBookItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkBookItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/NetworkBookItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkBookItem.java
diff --git a/src/org/geometerplus/fbreader/network/NetworkBookItemComparator.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkBookItemComparator.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/NetworkBookItemComparator.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkBookItemComparator.java
diff --git a/src/org/geometerplus/fbreader/network/NetworkCatalogItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkCatalogItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/NetworkCatalogItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkCatalogItem.java
diff --git a/src/org/geometerplus/fbreader/network/NetworkDatabase.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkDatabase.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/NetworkDatabase.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkDatabase.java
diff --git a/src/org/geometerplus/fbreader/network/NetworkException.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkException.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/NetworkException.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkException.java
diff --git a/src/org/geometerplus/fbreader/network/NetworkImage.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkImage.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/NetworkImage.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkImage.java
diff --git a/src/org/geometerplus/fbreader/network/NetworkItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/NetworkItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkItem.java
diff --git a/src/org/geometerplus/fbreader/network/NetworkLibrary.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkLibrary.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/NetworkLibrary.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkLibrary.java
diff --git a/src/org/geometerplus/fbreader/network/NetworkOperationData.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkOperationData.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/NetworkOperationData.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkOperationData.java
diff --git a/src/org/geometerplus/fbreader/network/NetworkTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/NetworkTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkTree.java
diff --git a/src/org/geometerplus/fbreader/network/NetworkURLCatalogItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkURLCatalogItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/NetworkURLCatalogItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/NetworkURLCatalogItem.java
diff --git a/src/org/geometerplus/fbreader/network/RecentCatalogItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/RecentCatalogItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/RecentCatalogItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/RecentCatalogItem.java
diff --git a/src/org/geometerplus/fbreader/network/RecentCatalogListItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/RecentCatalogListItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/RecentCatalogListItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/RecentCatalogListItem.java
diff --git a/src/org/geometerplus/fbreader/network/SearchItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/SearchItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/SearchItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/SearchItem.java
diff --git a/src/org/geometerplus/fbreader/network/SingleCatalogSearchItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/SingleCatalogSearchItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/SingleCatalogSearchItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/SingleCatalogSearchItem.java
diff --git a/src/org/geometerplus/fbreader/network/TopUpItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/TopUpItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/TopUpItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/TopUpItem.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMAuthor.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMAuthor.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMAuthor.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMAuthor.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMCategory.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMCategory.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMCategory.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMCategory.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMCommonAttributes.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMCommonAttributes.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMCommonAttributes.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMCommonAttributes.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMConstants.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMConstants.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMConstants.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMConstants.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMContributor.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMContributor.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMContributor.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMContributor.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMDateConstruct.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMDateConstruct.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMDateConstruct.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMDateConstruct.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMEntry.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMEntry.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMEntry.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMEntry.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMFeedHandler.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMFeedHandler.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMFeedHandler.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMFeedHandler.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMFeedMetadata.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMFeedMetadata.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMFeedMetadata.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMFeedMetadata.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMGenerator.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMGenerator.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMGenerator.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMGenerator.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMIcon.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMIcon.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMIcon.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMIcon.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMId.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMId.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMId.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMId.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMLink.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMLink.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMLink.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMLink.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMLogo.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMLogo.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMLogo.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMLogo.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMPersonConstruct.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMPersonConstruct.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMPersonConstruct.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMPersonConstruct.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMPublished.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMPublished.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMPublished.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMPublished.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMUpdated.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMUpdated.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/ATOMUpdated.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMUpdated.java
diff --git a/src/org/geometerplus/fbreader/network/atom/ATOMXMLReader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMXMLReader.java
similarity index 98%
rename from src/org/geometerplus/fbreader/network/atom/ATOMXMLReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMXMLReader.java
index f8dba42181b..1e075d4dcf1 100644
--- a/src/org/geometerplus/fbreader/network/atom/ATOMXMLReader.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/ATOMXMLReader.java
@@ -522,8 +522,12 @@ public boolean endElementHandler(String ns, String tag, String bufferContent) {
case FE_UPDATED:
if (ns == XMLNamespaces.Atom && tag == TAG_UPDATED) {
// FIXME:uri can be lost:buffer will be truncated, if there are extension tags inside the tag
- if (ATOMDateConstruct.parse(bufferContent, myUpdated)) {
- myEntry.Updated = myUpdated;
+ try {
+ if (ATOMDateConstruct.parse(bufferContent, myUpdated)) {
+ myEntry.Updated = myUpdated;
+ }
+ } catch (Exception e) {
+ // this ATOMDateConstruct.parse() throws OOB exception time to time
}
myUpdated = null;
myState = F_ENTRY;
diff --git a/src/org/geometerplus/fbreader/network/atom/AbstractATOMFeedHandler.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/AbstractATOMFeedHandler.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/AbstractATOMFeedHandler.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/AbstractATOMFeedHandler.java
diff --git a/src/org/geometerplus/fbreader/network/atom/FormattedBuffer.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/FormattedBuffer.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/atom/FormattedBuffer.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/atom/FormattedBuffer.java
diff --git a/src/org/geometerplus/fbreader/network/authentication/NetworkAuthenticationManager.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/NetworkAuthenticationManager.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/authentication/NetworkAuthenticationManager.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/NetworkAuthenticationManager.java
diff --git a/src/org/geometerplus/fbreader/network/authentication/litres/LitResAuthenticationManager.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResAuthenticationManager.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/authentication/litres/LitResAuthenticationManager.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResAuthenticationManager.java
diff --git a/src/org/geometerplus/fbreader/network/authentication/litres/LitResAuthenticationXMLReader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResAuthenticationXMLReader.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/authentication/litres/LitResAuthenticationXMLReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResAuthenticationXMLReader.java
diff --git a/src/org/geometerplus/fbreader/network/authentication/litres/LitResBookshelfItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResBookshelfItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/authentication/litres/LitResBookshelfItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResBookshelfItem.java
diff --git a/src/org/geometerplus/fbreader/network/authentication/litres/LitResGenre.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResGenre.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/authentication/litres/LitResGenre.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResGenre.java
diff --git a/src/org/geometerplus/fbreader/network/authentication/litres/LitResGenreMap.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResGenreMap.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/authentication/litres/LitResGenreMap.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResGenreMap.java
diff --git a/src/org/geometerplus/fbreader/network/authentication/litres/LitResLoginXMLReader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResLoginXMLReader.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/authentication/litres/LitResLoginXMLReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResLoginXMLReader.java
diff --git a/src/org/geometerplus/fbreader/network/authentication/litres/LitResNetworkRequest.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResNetworkRequest.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/authentication/litres/LitResNetworkRequest.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResNetworkRequest.java
diff --git a/src/org/geometerplus/fbreader/network/authentication/litres/LitResPasswordRecoveryXMLReader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResPasswordRecoveryXMLReader.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/authentication/litres/LitResPasswordRecoveryXMLReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResPasswordRecoveryXMLReader.java
diff --git a/src/org/geometerplus/fbreader/network/authentication/litres/LitResPurchaseXMLReader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResPurchaseXMLReader.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/authentication/litres/LitResPurchaseXMLReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResPurchaseXMLReader.java
diff --git a/src/org/geometerplus/fbreader/network/authentication/litres/LitResRecommendationsItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResRecommendationsItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/authentication/litres/LitResRecommendationsItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResRecommendationsItem.java
diff --git a/src/org/geometerplus/fbreader/network/authentication/litres/LitResUtil.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResUtil.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/authentication/litres/LitResUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResUtil.java
diff --git a/src/org/geometerplus/fbreader/network/authentication/litres/LitResXMLReader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResXMLReader.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/authentication/litres/LitResXMLReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/authentication/litres/LitResXMLReader.java
diff --git a/src/org/geometerplus/fbreader/network/opds/AbstractOPDSFeedHandler.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/AbstractOPDSFeedHandler.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/AbstractOPDSFeedHandler.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/AbstractOPDSFeedHandler.java
diff --git a/src/org/geometerplus/fbreader/network/opds/DCDate.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/DCDate.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/DCDate.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/DCDate.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSBasketItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSBasketItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSBasketItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSBasketItem.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSBookItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSBookItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSBookItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSBookItem.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSCatalogInfoHandler.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSCatalogInfoHandler.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSCatalogInfoHandler.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSCatalogInfoHandler.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSCatalogItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSCatalogItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSCatalogItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSCatalogItem.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSConstants.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSConstants.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSConstants.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSConstants.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSCustomNetworkLink.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSCustomNetworkLink.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSCustomNetworkLink.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSCustomNetworkLink.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSEntry.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSEntry.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSEntry.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSEntry.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSFeedHandler.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSFeedHandler.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSFeedHandler.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSFeedHandler.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSFeedMetadata.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSFeedMetadata.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSFeedMetadata.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSFeedMetadata.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSLink.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSLink.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSLink.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSLink.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSLinkReader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSLinkReader.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSLinkReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSLinkReader.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSLinkXMLReader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSLinkXMLReader.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSLinkXMLReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSLinkXMLReader.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSNetworkLink.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSNetworkLink.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSNetworkLink.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSNetworkLink.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSPredefinedNetworkLink.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSPredefinedNetworkLink.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSPredefinedNetworkLink.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSPredefinedNetworkLink.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSSyncNetworkLink.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSSyncNetworkLink.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSSyncNetworkLink.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSSyncNetworkLink.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OPDSXMLReader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSXMLReader.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OPDSXMLReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OPDSXMLReader.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OpenSearchDescription.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OpenSearchDescription.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OpenSearchDescription.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OpenSearchDescription.java
diff --git a/src/org/geometerplus/fbreader/network/opds/OpenSearchXMLReader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OpenSearchXMLReader.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/OpenSearchXMLReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/OpenSearchXMLReader.java
diff --git a/src/org/geometerplus/fbreader/network/opds/RelationAlias.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/RelationAlias.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/RelationAlias.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/RelationAlias.java
diff --git a/src/org/geometerplus/fbreader/network/opds/SimpleOPDSFeedHandler.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/SimpleOPDSFeedHandler.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/SimpleOPDSFeedHandler.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/SimpleOPDSFeedHandler.java
diff --git a/src/org/geometerplus/fbreader/network/opds/URLRewritingRule.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/URLRewritingRule.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/opds/URLRewritingRule.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/opds/URLRewritingRule.java
diff --git a/src/org/geometerplus/fbreader/network/rss/AbstractRSSChannelHandler.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/AbstractRSSChannelHandler.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/rss/AbstractRSSChannelHandler.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/AbstractRSSChannelHandler.java
diff --git a/src/org/geometerplus/fbreader/network/rss/RSSAuthor.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSAuthor.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/rss/RSSAuthor.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSAuthor.java
diff --git a/src/org/geometerplus/fbreader/network/rss/RSSBookItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSBookItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/rss/RSSBookItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSBookItem.java
diff --git a/src/org/geometerplus/fbreader/network/rss/RSSCatalogItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSCatalogItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/rss/RSSCatalogItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSCatalogItem.java
diff --git a/src/org/geometerplus/fbreader/network/rss/RSSCategory.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSCategory.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/rss/RSSCategory.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSCategory.java
diff --git a/src/org/geometerplus/fbreader/network/rss/RSSChannelHandler.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSChannelHandler.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/rss/RSSChannelHandler.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSChannelHandler.java
diff --git a/src/org/geometerplus/fbreader/network/rss/RSSChannelMetadata.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSChannelMetadata.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/rss/RSSChannelMetadata.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSChannelMetadata.java
diff --git a/src/org/geometerplus/fbreader/network/rss/RSSId.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSId.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/rss/RSSId.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSId.java
diff --git a/src/org/geometerplus/fbreader/network/rss/RSSItem.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSItem.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/rss/RSSItem.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSItem.java
diff --git a/src/org/geometerplus/fbreader/network/rss/RSSLink.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSLink.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/rss/RSSLink.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSLink.java
diff --git a/src/org/geometerplus/fbreader/network/rss/RSSNetworkLink.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSNetworkLink.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/rss/RSSNetworkLink.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSNetworkLink.java
diff --git a/src/org/geometerplus/fbreader/network/rss/RSSXMLReader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSXMLReader.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/rss/RSSXMLReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/rss/RSSXMLReader.java
diff --git a/src/org/geometerplus/fbreader/network/sync/SyncData.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/sync/SyncData.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/sync/SyncData.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/sync/SyncData.java
diff --git a/src/org/geometerplus/fbreader/network/sync/SyncUtil.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/sync/SyncUtil.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/sync/SyncUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/sync/SyncUtil.java
diff --git a/src/org/geometerplus/fbreader/network/tree/AddCustomCatalogItemTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/AddCustomCatalogItemTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/AddCustomCatalogItemTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/AddCustomCatalogItemTree.java
diff --git a/src/org/geometerplus/fbreader/network/tree/BasketCatalogTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/BasketCatalogTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/BasketCatalogTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/BasketCatalogTree.java
diff --git a/src/org/geometerplus/fbreader/network/tree/CatalogExpander.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/CatalogExpander.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/CatalogExpander.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/CatalogExpander.java
diff --git a/src/org/geometerplus/fbreader/network/tree/ManageCatalogsItemTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/ManageCatalogsItemTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/ManageCatalogsItemTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/ManageCatalogsItemTree.java
diff --git a/src/org/geometerplus/fbreader/network/tree/NetworkAuthorTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/NetworkAuthorTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/NetworkAuthorTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/NetworkAuthorTree.java
diff --git a/src/org/geometerplus/fbreader/network/tree/NetworkBookTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/NetworkBookTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/NetworkBookTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/NetworkBookTree.java
diff --git a/src/org/geometerplus/fbreader/network/tree/NetworkCatalogRootTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/NetworkCatalogRootTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/NetworkCatalogRootTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/NetworkCatalogRootTree.java
diff --git a/src/org/geometerplus/fbreader/network/tree/NetworkCatalogTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/NetworkCatalogTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/NetworkCatalogTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/NetworkCatalogTree.java
diff --git a/src/org/geometerplus/fbreader/network/tree/NetworkItemsLoader.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/NetworkItemsLoader.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/NetworkItemsLoader.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/NetworkItemsLoader.java
diff --git a/src/org/geometerplus/fbreader/network/tree/NetworkSeriesTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/NetworkSeriesTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/NetworkSeriesTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/NetworkSeriesTree.java
diff --git a/src/org/geometerplus/fbreader/network/tree/NetworkTreeFactory.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/NetworkTreeFactory.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/NetworkTreeFactory.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/NetworkTreeFactory.java
diff --git a/src/org/geometerplus/fbreader/network/tree/RecentCatalogListTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/RecentCatalogListTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/RecentCatalogListTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/RecentCatalogListTree.java
diff --git a/src/org/geometerplus/fbreader/network/tree/RootTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/RootTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/RootTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/RootTree.java
diff --git a/src/org/geometerplus/fbreader/network/tree/SearchCatalogTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/SearchCatalogTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/SearchCatalogTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/SearchCatalogTree.java
diff --git a/src/org/geometerplus/fbreader/network/tree/Searcher.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/Searcher.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/Searcher.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/Searcher.java
diff --git a/src/org/geometerplus/fbreader/network/tree/TopUpTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/TopUpTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/tree/TopUpTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/tree/TopUpTree.java
diff --git a/src/org/geometerplus/fbreader/network/urlInfo/BookBuyUrlInfo.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/BookBuyUrlInfo.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/urlInfo/BookBuyUrlInfo.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/BookBuyUrlInfo.java
diff --git a/src/org/geometerplus/fbreader/network/urlInfo/BookUrlInfo.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/BookUrlInfo.java
similarity index 97%
rename from src/org/geometerplus/fbreader/network/urlInfo/BookUrlInfo.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/BookUrlInfo.java
index f8c21e8dd9b..597c3456b19 100644
--- a/src/org/geometerplus/fbreader/network/urlInfo/BookUrlInfo.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/BookUrlInfo.java
@@ -86,6 +86,13 @@ public static String makeBookFileName(String url, MimeType mime, Type resolvedRe
path.delete(0, 4);
}
path.insert(0, File.separator);
+
+ final int port = uri.getPort();
+ if (port != -1) {
+ path.append("_").append(port);
+ path.insert(0, File.separator);
+ }
+
if (resolvedReferenceType == Type.BookDemo) {
path.insert(0, "Demos");
path.insert(0, File.separator);
diff --git a/src/org/geometerplus/fbreader/network/urlInfo/DecoratedBookUrlInfo.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/DecoratedBookUrlInfo.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/urlInfo/DecoratedBookUrlInfo.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/DecoratedBookUrlInfo.java
diff --git a/src/org/geometerplus/fbreader/network/urlInfo/RelatedUrlInfo.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/RelatedUrlInfo.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/urlInfo/RelatedUrlInfo.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/RelatedUrlInfo.java
diff --git a/src/org/geometerplus/fbreader/network/urlInfo/UrlInfo.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/UrlInfo.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/urlInfo/UrlInfo.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/UrlInfo.java
diff --git a/src/org/geometerplus/fbreader/network/urlInfo/UrlInfoCollection.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/UrlInfoCollection.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/urlInfo/UrlInfoCollection.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/UrlInfoCollection.java
diff --git a/src/org/geometerplus/fbreader/network/urlInfo/UrlInfoWithDate.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/UrlInfoWithDate.java
similarity index 100%
rename from src/org/geometerplus/fbreader/network/urlInfo/UrlInfoWithDate.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/network/urlInfo/UrlInfoWithDate.java
diff --git a/src/org/geometerplus/fbreader/sort/TitledEntity.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/sort/TitledEntity.java
similarity index 95%
rename from src/org/geometerplus/fbreader/sort/TitledEntity.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/sort/TitledEntity.java
index 75050634120..698405da92d 100644
--- a/src/org/geometerplus/fbreader/sort/TitledEntity.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/fbreader/sort/TitledEntity.java
@@ -26,7 +26,7 @@
import android.annotation.TargetApi;
import android.os.Build;
-public abstract class TitledEntity {
+public abstract class TitledEntity> implements Comparable {
private String myTitle;
private String mySortKey;
@@ -64,6 +64,11 @@ public String getSortKey() {
return mySortKey;
}
+ @Override
+ public int compareTo(T other) {
+ return getSortKey().compareTo(other.getSortKey());
+ }
+
private final static Map ARTICLES = new HashMap();
// English articles
private final static String[] EN_ARTICLES = new String[] {
diff --git a/src/org/geometerplus/fbreader/tips/Tip.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/tips/Tip.java
similarity index 100%
rename from src/org/geometerplus/fbreader/tips/Tip.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/tips/Tip.java
diff --git a/src/org/geometerplus/fbreader/tips/TipsFeedHandler.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/tips/TipsFeedHandler.java
similarity index 100%
rename from src/org/geometerplus/fbreader/tips/TipsFeedHandler.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/tips/TipsFeedHandler.java
diff --git a/src/org/geometerplus/fbreader/tips/TipsManager.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/tips/TipsManager.java
similarity index 100%
rename from src/org/geometerplus/fbreader/tips/TipsManager.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/tips/TipsManager.java
diff --git a/src/org/geometerplus/fbreader/tree/FBTree.java b/fBReaderJ/src/main/java/org/geometerplus/fbreader/tree/FBTree.java
similarity index 100%
rename from src/org/geometerplus/fbreader/tree/FBTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/fbreader/tree/FBTree.java
diff --git a/src/org/geometerplus/zlibrary/core/application/ZLApplication.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/application/ZLApplication.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/application/ZLApplication.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/application/ZLApplication.java
diff --git a/src/org/geometerplus/zlibrary/core/application/ZLApplicationWindow.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/application/ZLApplicationWindow.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/application/ZLApplicationWindow.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/application/ZLApplicationWindow.java
diff --git a/src/org/geometerplus/zlibrary/core/application/ZLKeyBindings.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/application/ZLKeyBindings.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/application/ZLKeyBindings.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/application/ZLKeyBindings.java
diff --git a/src/org/geometerplus/zlibrary/core/constants/XMLNamespaces.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/constants/XMLNamespaces.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/constants/XMLNamespaces.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/constants/XMLNamespaces.java
diff --git a/src/org/geometerplus/zlibrary/core/drm/EncryptionMethod.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/drm/EncryptionMethod.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/drm/EncryptionMethod.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/drm/EncryptionMethod.java
diff --git a/src/org/geometerplus/zlibrary/core/drm/FileEncryptionInfo.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/drm/FileEncryptionInfo.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/drm/FileEncryptionInfo.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/drm/FileEncryptionInfo.java
diff --git a/src/org/geometerplus/zlibrary/core/drm/embedding/EmbeddingInputStream.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/drm/embedding/EmbeddingInputStream.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/drm/embedding/EmbeddingInputStream.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/drm/embedding/EmbeddingInputStream.java
diff --git a/src/org/geometerplus/zlibrary/core/encodings/AutoEncodingCollection.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/encodings/AutoEncodingCollection.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/encodings/AutoEncodingCollection.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/encodings/AutoEncodingCollection.java
diff --git a/src/org/geometerplus/zlibrary/core/encodings/Encoding.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/encodings/Encoding.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/encodings/Encoding.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/encodings/Encoding.java
diff --git a/src/org/geometerplus/zlibrary/core/encodings/EncodingCollection.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/encodings/EncodingCollection.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/encodings/EncodingCollection.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/encodings/EncodingCollection.java
diff --git a/src/org/geometerplus/zlibrary/core/encodings/EncodingConverter.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/encodings/EncodingConverter.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/encodings/EncodingConverter.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/encodings/EncodingConverter.java
diff --git a/src/org/geometerplus/zlibrary/core/encodings/FilteredEncodingCollection.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/encodings/FilteredEncodingCollection.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/encodings/FilteredEncodingCollection.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/encodings/FilteredEncodingCollection.java
diff --git a/src/org/geometerplus/zlibrary/core/encodings/JavaEncodingCollection.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/encodings/JavaEncodingCollection.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/encodings/JavaEncodingCollection.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/encodings/JavaEncodingCollection.java
diff --git a/src/org/geometerplus/zlibrary/core/filesystem/ZLArchiveEntryFile.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/ZLArchiveEntryFile.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filesystem/ZLArchiveEntryFile.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/ZLArchiveEntryFile.java
diff --git a/src/org/geometerplus/zlibrary/core/filesystem/ZLFile.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/ZLFile.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filesystem/ZLFile.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/ZLFile.java
diff --git a/src/org/geometerplus/zlibrary/core/filesystem/ZLPhysicalFile.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/ZLPhysicalFile.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filesystem/ZLPhysicalFile.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/ZLPhysicalFile.java
diff --git a/src/org/geometerplus/zlibrary/core/filesystem/ZLResourceFile.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/ZLResourceFile.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filesystem/ZLResourceFile.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/ZLResourceFile.java
diff --git a/src/org/geometerplus/zlibrary/core/filesystem/ZLZipEntryFile.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/ZLZipEntryFile.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filesystem/ZLZipEntryFile.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/ZLZipEntryFile.java
diff --git a/src/org/geometerplus/zlibrary/core/filesystem/tar/ZLTarEntryFile.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/tar/ZLTarEntryFile.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filesystem/tar/ZLTarEntryFile.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/tar/ZLTarEntryFile.java
diff --git a/src/org/geometerplus/zlibrary/core/filesystem/tar/ZLTarHeader.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/tar/ZLTarHeader.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filesystem/tar/ZLTarHeader.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/tar/ZLTarHeader.java
diff --git a/src/org/geometerplus/zlibrary/core/filesystem/tar/ZLTarInputStream.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/tar/ZLTarInputStream.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filesystem/tar/ZLTarInputStream.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filesystem/tar/ZLTarInputStream.java
diff --git a/src/org/geometerplus/zlibrary/core/filetypes/FileType.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileType.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filetypes/FileType.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileType.java
diff --git a/src/org/geometerplus/zlibrary/core/filetypes/FileTypeCBZ.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeCBZ.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filetypes/FileTypeCBZ.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeCBZ.java
diff --git a/src/org/geometerplus/zlibrary/core/filetypes/FileTypeCollection.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeCollection.java
similarity index 94%
rename from src/org/geometerplus/zlibrary/core/filetypes/FileTypeCollection.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeCollection.java
index 05acfe5f817..96fa7ca829c 100644
--- a/src/org/geometerplus/zlibrary/core/filetypes/FileTypeCollection.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeCollection.java
@@ -34,13 +34,13 @@ private FileTypeCollection() {
addType(new FileTypeEpub());
addType(new FileTypeMobipocket());
addType(new FileTypeHtml());
- addType(new SimpleFileType("plain text", "txt", MimeType.TYPES_TXT));
+ addType(new SimpleFileType("txt", "txt", MimeType.TYPES_TXT));
addType(new SimpleFileType("RTF", "rtf", MimeType.TYPES_RTF));
addType(new SimpleFileType("PDF", "pdf", MimeType.TYPES_PDF));
addType(new FileTypeDjVu());
addType(new FileTypeCBZ());
addType(new SimpleFileType("ZIP archive", "zip", Collections.singletonList(MimeType.APP_ZIP)));
- addType(new SimpleFileType("MS Word document", "doc", MimeType.TYPES_DOC));
+ addType(new SimpleFileType("msdoc", "doc", MimeType.TYPES_DOC));
}
private void addType(FileType type) {
diff --git a/src/org/geometerplus/zlibrary/core/filetypes/FileTypeDjVu.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeDjVu.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filetypes/FileTypeDjVu.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeDjVu.java
diff --git a/src/org/geometerplus/zlibrary/core/filetypes/FileTypeEpub.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeEpub.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filetypes/FileTypeEpub.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeEpub.java
diff --git a/src/org/geometerplus/zlibrary/core/filetypes/FileTypeFB2.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeFB2.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filetypes/FileTypeFB2.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeFB2.java
diff --git a/src/org/geometerplus/zlibrary/core/filetypes/FileTypeHtml.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeHtml.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filetypes/FileTypeHtml.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeHtml.java
diff --git a/src/org/geometerplus/zlibrary/core/filetypes/FileTypeMobipocket.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeMobipocket.java
similarity index 97%
rename from src/org/geometerplus/zlibrary/core/filetypes/FileTypeMobipocket.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeMobipocket.java
index c6a71d571c3..b889fd86a1f 100644
--- a/src/org/geometerplus/zlibrary/core/filetypes/FileTypeMobipocket.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypeMobipocket.java
@@ -27,7 +27,7 @@
class FileTypeMobipocket extends FileTypePalm {
FileTypeMobipocket() {
- super("Mobipocket", "BOOKMOBI");
+ super("mobi", "BOOKMOBI");
}
@Override
diff --git a/src/org/geometerplus/zlibrary/core/filetypes/FileTypePalm.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypePalm.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filetypes/FileTypePalm.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/FileTypePalm.java
diff --git a/src/org/geometerplus/zlibrary/core/filetypes/SimpleFileType.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/SimpleFileType.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/filetypes/SimpleFileType.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/filetypes/SimpleFileType.java
diff --git a/src/org/geometerplus/zlibrary/core/fonts/FileInfo.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/fonts/FileInfo.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/fonts/FileInfo.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/fonts/FileInfo.java
diff --git a/src/org/geometerplus/zlibrary/core/fonts/FontEntry.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/fonts/FontEntry.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/fonts/FontEntry.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/fonts/FontEntry.java
diff --git a/src/org/geometerplus/zlibrary/core/fonts/FontManager.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/fonts/FontManager.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/fonts/FontManager.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/fonts/FontManager.java
diff --git a/src/org/geometerplus/zlibrary/core/image/ZLBase64EncodedImage.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLBase64EncodedImage.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/image/ZLBase64EncodedImage.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLBase64EncodedImage.java
diff --git a/src/org/geometerplus/zlibrary/core/image/ZLFileImage.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLFileImage.java
similarity index 79%
rename from src/org/geometerplus/zlibrary/core/image/ZLFileImage.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLFileImage.java
index 5c46882cfcc..ac1be0182dc 100644
--- a/src/org/geometerplus/zlibrary/core/image/ZLFileImage.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLFileImage.java
@@ -88,6 +88,22 @@ public String getURI() {
return result;
}
+ private InputStream baseInputStream() throws IOException {
+ if (myOffsets.length == 1) {
+ final int offset = myOffsets[0];
+ final int length = myLengths[0];
+ return new SliceInputStream(myFile.getInputStream(), offset, length != 0 ? length : Integer.MAX_VALUE);
+ } else {
+ final InputStream[] streams = new InputStream[myOffsets.length];
+ for (int i = 0; i < myOffsets.length; ++i) {
+ final int offset = myOffsets[i];
+ final int length = myLengths[i];
+ streams[i] = new SliceInputStream(myFile.getInputStream(), offset, length != 0 ? length : Integer.MAX_VALUE);
+ }
+ return new MergedInputStream(streams);
+ }
+ }
+
@Override
public InputStream inputStream() {
try {
@@ -95,26 +111,16 @@ public InputStream inputStream() {
return null;
}
- final InputStream stream;
- if (myOffsets.length == 1) {
- final int offset = myOffsets[0];
- final int length = myLengths[0];
- stream = new SliceInputStream(myFile.getInputStream(), offset, length != 0 ? length : Integer.MAX_VALUE);
- } else {
- final InputStream[] streams = new InputStream[myOffsets.length];
- for (int i = 0; i < myOffsets.length; ++i) {
- final int offset = myOffsets[i];
- final int length = myLengths[i];
- streams[i] = new SliceInputStream(myFile.getInputStream(), offset, length != 0 ? length : Integer.MAX_VALUE);
- }
- stream = new MergedInputStream(streams);
- }
+ InputStream stream = baseInputStream();
if (ENCODING_NONE.equals(myEncoding)) {
return stream;
} else if (ENCODING_HEX.equals(myEncoding)) {
return new HexInputStream(stream);
} else if (ENCODING_BASE64.equals(myEncoding)) {
- return new Base64InputStream(stream);
+ stream = new Base64InputStream(stream);
+ final int len = (int)stream.skip(stream.available());
+ stream.close();
+ return new SliceInputStream(new Base64InputStream(baseInputStream()), 0, len);
} else {
System.err.println("unsupported encoding: " + myEncoding);
return null;
diff --git a/src/org/geometerplus/zlibrary/core/image/ZLFileImageProxy.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLFileImageProxy.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/image/ZLFileImageProxy.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLFileImageProxy.java
diff --git a/src/org/geometerplus/zlibrary/core/image/ZLImage.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLImage.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/image/ZLImage.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLImage.java
diff --git a/src/org/geometerplus/zlibrary/core/image/ZLImageData.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLImageData.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/image/ZLImageData.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLImageData.java
diff --git a/src/org/geometerplus/zlibrary/core/image/ZLImageManager.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLImageManager.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/image/ZLImageManager.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLImageManager.java
diff --git a/src/org/geometerplus/zlibrary/core/image/ZLImageProxy.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLImageProxy.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/image/ZLImageProxy.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLImageProxy.java
diff --git a/src/org/geometerplus/zlibrary/core/image/ZLImageSelfSynchronizableProxy.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLImageSelfSynchronizableProxy.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/image/ZLImageSelfSynchronizableProxy.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLImageSelfSynchronizableProxy.java
diff --git a/src/org/geometerplus/zlibrary/core/image/ZLStreamImage.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLStreamImage.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/image/ZLStreamImage.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/image/ZLStreamImage.java
diff --git a/src/org/geometerplus/zlibrary/core/language/Language.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/language/Language.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/language/Language.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/language/Language.java
diff --git a/src/org/geometerplus/zlibrary/core/language/ZLLanguageUtil.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/language/ZLLanguageUtil.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/language/ZLLanguageUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/language/ZLLanguageUtil.java
diff --git a/src/org/geometerplus/zlibrary/core/library/ZLibrary.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/library/ZLibrary.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/library/ZLibrary.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/library/ZLibrary.java
diff --git a/src/org/geometerplus/zlibrary/core/money/Money.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/money/Money.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/money/Money.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/money/Money.java
diff --git a/src/org/geometerplus/zlibrary/core/money/MoneyException.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/money/MoneyException.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/money/MoneyException.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/money/MoneyException.java
diff --git a/src/org/geometerplus/zlibrary/core/network/BearerAuthenticationException.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/BearerAuthenticationException.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/network/BearerAuthenticationException.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/BearerAuthenticationException.java
diff --git a/src/org/geometerplus/zlibrary/core/network/CookieDatabase.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/CookieDatabase.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/network/CookieDatabase.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/CookieDatabase.java
diff --git a/src/org/geometerplus/zlibrary/core/network/JsonRequest.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/JsonRequest.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/network/JsonRequest.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/JsonRequest.java
diff --git a/src/org/geometerplus/zlibrary/core/network/JsonRequest2.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/JsonRequest2.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/network/JsonRequest2.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/JsonRequest2.java
diff --git a/src/org/geometerplus/zlibrary/core/network/QuietNetworkContext.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/QuietNetworkContext.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/network/QuietNetworkContext.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/QuietNetworkContext.java
diff --git a/src/org/geometerplus/zlibrary/core/network/ZLNetworkAuthenticationException.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/ZLNetworkAuthenticationException.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/network/ZLNetworkAuthenticationException.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/ZLNetworkAuthenticationException.java
diff --git a/src/org/geometerplus/zlibrary/core/network/ZLNetworkContext.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/ZLNetworkContext.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/network/ZLNetworkContext.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/ZLNetworkContext.java
diff --git a/src/org/geometerplus/zlibrary/core/network/ZLNetworkException.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/ZLNetworkException.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/network/ZLNetworkException.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/ZLNetworkException.java
diff --git a/src/org/geometerplus/zlibrary/core/network/ZLNetworkManager.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/ZLNetworkManager.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/network/ZLNetworkManager.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/ZLNetworkManager.java
diff --git a/src/org/geometerplus/zlibrary/core/network/ZLNetworkRequest.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/ZLNetworkRequest.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/network/ZLNetworkRequest.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/network/ZLNetworkRequest.java
diff --git a/src/org/geometerplus/zlibrary/core/options/Config.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/Config.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/options/Config.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/Config.java
diff --git a/src/org/geometerplus/zlibrary/core/options/StringPair.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/StringPair.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/options/StringPair.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/StringPair.java
diff --git a/src/org/geometerplus/zlibrary/core/options/ZLBoolean3Option.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLBoolean3Option.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/options/ZLBoolean3Option.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLBoolean3Option.java
diff --git a/src/org/geometerplus/zlibrary/core/options/ZLBooleanOption.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLBooleanOption.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/options/ZLBooleanOption.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLBooleanOption.java
diff --git a/src/org/geometerplus/zlibrary/core/options/ZLColorOption.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLColorOption.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/options/ZLColorOption.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLColorOption.java
diff --git a/src/org/geometerplus/zlibrary/core/options/ZLEnumOption.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLEnumOption.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/options/ZLEnumOption.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLEnumOption.java
diff --git a/src/org/geometerplus/zlibrary/core/options/ZLIntegerOption.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLIntegerOption.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/options/ZLIntegerOption.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLIntegerOption.java
diff --git a/src/org/geometerplus/zlibrary/core/options/ZLIntegerRangeOption.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLIntegerRangeOption.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/options/ZLIntegerRangeOption.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLIntegerRangeOption.java
diff --git a/src/org/geometerplus/zlibrary/core/options/ZLOption.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLOption.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/options/ZLOption.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLOption.java
diff --git a/src/org/geometerplus/zlibrary/core/options/ZLStringListOption.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLStringListOption.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/options/ZLStringListOption.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLStringListOption.java
diff --git a/src/org/geometerplus/zlibrary/core/options/ZLStringOption.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLStringOption.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/options/ZLStringOption.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/options/ZLStringOption.java
diff --git a/src/org/geometerplus/zlibrary/core/resources/ZLMissingResource.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/resources/ZLMissingResource.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/resources/ZLMissingResource.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/resources/ZLMissingResource.java
diff --git a/src/org/geometerplus/zlibrary/core/resources/ZLResource.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/resources/ZLResource.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/resources/ZLResource.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/resources/ZLResource.java
diff --git a/src/org/geometerplus/zlibrary/core/resources/ZLTreeResource.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/resources/ZLTreeResource.java
similarity index 98%
rename from src/org/geometerplus/zlibrary/core/resources/ZLTreeResource.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/resources/ZLTreeResource.java
index 20835bb79a6..d60485def0c 100644
--- a/src/org/geometerplus/zlibrary/core/resources/ZLTreeResource.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/resources/ZLTreeResource.java
@@ -175,6 +175,7 @@ private static void loadData(ResourceTreeReader reader, String fileName) {
reader.readDocument(ourRoot, ZLResourceFile.createResourceFile("resources/zlibrary/" + fileName));
reader.readDocument(ourRoot, ZLResourceFile.createResourceFile("resources/application/" + fileName));
reader.readDocument(ourRoot, ZLResourceFile.createResourceFile("resources/lang.xml"));
+ reader.readDocument(ourRoot, ZLResourceFile.createResourceFile("resources/application/neutral.xml"));
}
private static void loadData() {
diff --git a/src/org/geometerplus/zlibrary/core/tree/ZLTree.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/tree/ZLTree.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/tree/ZLTree.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/tree/ZLTree.java
diff --git a/src/org/geometerplus/zlibrary/core/util/Base64InputStream.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/Base64InputStream.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/Base64InputStream.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/Base64InputStream.java
diff --git a/src/org/geometerplus/zlibrary/core/util/HexInputStream.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/HexInputStream.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/HexInputStream.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/HexInputStream.java
diff --git a/src/org/geometerplus/zlibrary/core/util/InputStreamHolder.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/InputStreamHolder.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/InputStreamHolder.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/InputStreamHolder.java
diff --git a/src/org/geometerplus/zlibrary/core/util/InputStreamWithOffset.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/InputStreamWithOffset.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/InputStreamWithOffset.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/InputStreamWithOffset.java
diff --git a/src/org/geometerplus/zlibrary/core/util/MergedInputStream.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/MergedInputStream.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/MergedInputStream.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/MergedInputStream.java
diff --git a/src/org/geometerplus/zlibrary/core/util/MimeType.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/MimeType.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/MimeType.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/MimeType.java
diff --git a/src/org/geometerplus/zlibrary/core/util/MiscUtil.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/MiscUtil.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/MiscUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/MiscUtil.java
diff --git a/src/org/geometerplus/zlibrary/core/util/RationalNumber.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/RationalNumber.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/RationalNumber.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/RationalNumber.java
diff --git a/src/org/geometerplus/zlibrary/core/util/SliceInputStream.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/SliceInputStream.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/SliceInputStream.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/SliceInputStream.java
diff --git a/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/XmlUtil.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/XmlUtil.java
new file mode 100644
index 00000000000..f971f3e7646
--- /dev/null
+++ b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/XmlUtil.java
@@ -0,0 +1,18 @@
+package org.geometerplus.zlibrary.core.util;
+
+import org.xml.sax.helpers.DefaultHandler;
+import android.util.Xml;
+
+import org.geometerplus.zlibrary.core.filesystem.ZLFile;
+
+public abstract class XmlUtil {
+ public static boolean parseQuietly(ZLFile file, DefaultHandler handler) {
+ try {
+ Xml.parse(file.getInputStream(), Xml.Encoding.UTF_8, handler);
+ return true;
+ } catch (Exception e) {
+ e.printStackTrace();
+ return false;
+ }
+ }
+}
diff --git a/src/org/geometerplus/zlibrary/core/util/ZLArrayUtils.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLArrayUtils.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/ZLArrayUtils.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLArrayUtils.java
diff --git a/src/org/geometerplus/zlibrary/core/util/ZLBoolean3.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLBoolean3.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/ZLBoolean3.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLBoolean3.java
diff --git a/src/org/geometerplus/zlibrary/core/util/ZLColor.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLColor.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/ZLColor.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLColor.java
diff --git a/src/org/geometerplus/zlibrary/core/util/ZLNetworkUtil.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLNetworkUtil.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/ZLNetworkUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLNetworkUtil.java
diff --git a/src/org/geometerplus/zlibrary/core/util/ZLSearchPattern.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLSearchPattern.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/ZLSearchPattern.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLSearchPattern.java
diff --git a/src/org/geometerplus/zlibrary/core/util/ZLSearchUtil.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLSearchUtil.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/ZLSearchUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLSearchUtil.java
diff --git a/src/org/geometerplus/zlibrary/core/util/ZLTTFInfo.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLTTFInfo.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/ZLTTFInfo.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLTTFInfo.java
diff --git a/src/org/geometerplus/zlibrary/core/util/ZLTTFInfoDetector.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLTTFInfoDetector.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/util/ZLTTFInfoDetector.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/util/ZLTTFInfoDetector.java
diff --git a/src/org/geometerplus/zlibrary/core/view/DummyPaintContext.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/view/DummyPaintContext.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/view/DummyPaintContext.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/view/DummyPaintContext.java
diff --git a/src/org/geometerplus/zlibrary/core/view/ZLPaintContext.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/view/ZLPaintContext.java
similarity index 98%
rename from src/org/geometerplus/zlibrary/core/view/ZLPaintContext.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/view/ZLPaintContext.java
index a29ef529e1d..ed4f73f76bb 100644
--- a/src/org/geometerplus/zlibrary/core/view/ZLPaintContext.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/view/ZLPaintContext.java
@@ -177,6 +177,11 @@ public boolean equals(Object other) {
final Size s = (Size)other;
return Width == s.Width && Height == s.Height;
}
+
+ @Override
+ public String toString() {
+ return "ZLPaintContext.Size[" + Width + "x" + Height + "]";
+ }
}
public static enum ScalingType {
OriginalSize,
diff --git a/src/org/geometerplus/zlibrary/core/view/ZLView.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/view/ZLView.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/view/ZLView.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/view/ZLView.java
diff --git a/src/org/geometerplus/zlibrary/core/view/ZLViewEnums.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/view/ZLViewEnums.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/view/ZLViewEnums.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/view/ZLViewEnums.java
diff --git a/src/org/geometerplus/zlibrary/core/view/ZLViewWidget.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/view/ZLViewWidget.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/view/ZLViewWidget.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/view/ZLViewWidget.java
diff --git a/src/org/geometerplus/zlibrary/core/xml/ZLDTDParser.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/xml/ZLDTDParser.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/xml/ZLDTDParser.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/xml/ZLDTDParser.java
diff --git a/src/org/geometerplus/zlibrary/core/xml/ZLMutableString.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/xml/ZLMutableString.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/xml/ZLMutableString.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/xml/ZLMutableString.java
diff --git a/src/org/geometerplus/zlibrary/core/xml/ZLStringMap.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/xml/ZLStringMap.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/xml/ZLStringMap.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/xml/ZLStringMap.java
diff --git a/src/org/geometerplus/zlibrary/core/xml/ZLXMLParser.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/xml/ZLXMLParser.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/xml/ZLXMLParser.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/xml/ZLXMLParser.java
diff --git a/src/org/geometerplus/zlibrary/core/xml/ZLXMLProcessor.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/xml/ZLXMLProcessor.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/xml/ZLXMLProcessor.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/xml/ZLXMLProcessor.java
diff --git a/src/org/geometerplus/zlibrary/core/xml/ZLXMLReader.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/xml/ZLXMLReader.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/xml/ZLXMLReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/xml/ZLXMLReader.java
diff --git a/src/org/geometerplus/zlibrary/core/xml/ZLXMLReaderAdapter.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/xml/ZLXMLReaderAdapter.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/core/xml/ZLXMLReaderAdapter.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/core/xml/ZLXMLReaderAdapter.java
diff --git a/src/org/geometerplus/zlibrary/text/hyphenation/ZLTextHyphenationInfo.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/hyphenation/ZLTextHyphenationInfo.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/hyphenation/ZLTextHyphenationInfo.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/hyphenation/ZLTextHyphenationInfo.java
diff --git a/src/org/geometerplus/zlibrary/text/hyphenation/ZLTextHyphenationReader.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/hyphenation/ZLTextHyphenationReader.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/hyphenation/ZLTextHyphenationReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/hyphenation/ZLTextHyphenationReader.java
diff --git a/src/org/geometerplus/zlibrary/text/hyphenation/ZLTextHyphenator.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/hyphenation/ZLTextHyphenator.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/hyphenation/ZLTextHyphenator.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/hyphenation/ZLTextHyphenator.java
diff --git a/src/org/geometerplus/zlibrary/text/hyphenation/ZLTextTeXHyphenationPattern.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/hyphenation/ZLTextTeXHyphenationPattern.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/hyphenation/ZLTextTeXHyphenationPattern.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/hyphenation/ZLTextTeXHyphenationPattern.java
diff --git a/src/org/geometerplus/zlibrary/text/hyphenation/ZLTextTeXHyphenator.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/hyphenation/ZLTextTeXHyphenator.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/hyphenation/ZLTextTeXHyphenator.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/hyphenation/ZLTextTeXHyphenator.java
diff --git a/src/org/geometerplus/zlibrary/text/model/CachedCharStorage.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/CachedCharStorage.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/CachedCharStorage.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/CachedCharStorage.java
diff --git a/src/org/geometerplus/zlibrary/text/model/CachedCharStorageBase.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/CachedCharStorageBase.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/CachedCharStorageBase.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/CachedCharStorageBase.java
diff --git a/src/org/geometerplus/zlibrary/text/model/CachedCharStorageException.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/CachedCharStorageException.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/CachedCharStorageException.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/CachedCharStorageException.java
diff --git a/src/org/geometerplus/zlibrary/text/model/CachedCharStorageRO.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/CachedCharStorageRO.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/CachedCharStorageRO.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/CachedCharStorageRO.java
diff --git a/src/org/geometerplus/zlibrary/text/model/CharStorage.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/CharStorage.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/CharStorage.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/CharStorage.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ExtensionEntry.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ExtensionEntry.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ExtensionEntry.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ExtensionEntry.java
diff --git a/src/org/geometerplus/zlibrary/text/model/SimpleCharStorage.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/SimpleCharStorage.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/SimpleCharStorage.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/SimpleCharStorage.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLImageEntry.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLImageEntry.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLImageEntry.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLImageEntry.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLTextAlignmentType.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextAlignmentType.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLTextAlignmentType.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextAlignmentType.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLTextCSSStyleEntry.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextCSSStyleEntry.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLTextCSSStyleEntry.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextCSSStyleEntry.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLTextMark.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextMark.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLTextMark.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextMark.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLTextMetrics.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextMetrics.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLTextMetrics.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextMetrics.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLTextModel.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextModel.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLTextModel.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextModel.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLTextNativeModel.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextNativeModel.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLTextNativeModel.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextNativeModel.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLTextOtherStyleEntry.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextOtherStyleEntry.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLTextOtherStyleEntry.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextOtherStyleEntry.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLTextParagraph.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextParagraph.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLTextParagraph.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextParagraph.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLTextParagraphImpl.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextParagraphImpl.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLTextParagraphImpl.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextParagraphImpl.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLTextPlainModel.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextPlainModel.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLTextPlainModel.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextPlainModel.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLTextSpecialParagraphImpl.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextSpecialParagraphImpl.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLTextSpecialParagraphImpl.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextSpecialParagraphImpl.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLTextStyleEntry.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextStyleEntry.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLTextStyleEntry.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextStyleEntry.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLTextWritableModel.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextWritableModel.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLTextWritableModel.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextWritableModel.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLTextWritablePlainModel.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextWritablePlainModel.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLTextWritablePlainModel.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLTextWritablePlainModel.java
diff --git a/src/org/geometerplus/zlibrary/text/model/ZLVideoEntry.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLVideoEntry.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/model/ZLVideoEntry.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/model/ZLVideoEntry.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ExtensionElement.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ExtensionElement.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ExtensionElement.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ExtensionElement.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ExtensionElementManager.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ExtensionElementManager.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ExtensionElementManager.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ExtensionElementManager.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ExtensionRegionSoul.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ExtensionRegionSoul.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ExtensionRegionSoul.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ExtensionRegionSoul.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ModelDumper.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ModelDumper.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ModelDumper.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ModelDumper.java
diff --git a/src/org/geometerplus/zlibrary/text/view/PaintStateEnum.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/PaintStateEnum.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/PaintStateEnum.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/PaintStateEnum.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextControlElement.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextControlElement.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextControlElement.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextControlElement.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextElement.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextElement.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextElement.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextElement.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextElementArea.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextElementArea.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextElementArea.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextElementArea.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextElementAreaVector.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextElementAreaVector.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextElementAreaVector.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextElementAreaVector.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextFixedHSpaceElement.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextFixedHSpaceElement.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextFixedHSpaceElement.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextFixedHSpaceElement.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextFixedPosition.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextFixedPosition.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextFixedPosition.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextFixedPosition.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextHighlighting.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextHighlighting.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextHighlighting.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextHighlighting.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextHorizontalConvexHull.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextHorizontalConvexHull.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextHorizontalConvexHull.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextHorizontalConvexHull.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextHyperlink.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextHyperlink.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextHyperlink.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextHyperlink.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextHyperlinkControlElement.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextHyperlinkControlElement.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextHyperlinkControlElement.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextHyperlinkControlElement.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextHyperlinkRegionSoul.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextHyperlinkRegionSoul.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextHyperlinkRegionSoul.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextHyperlinkRegionSoul.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextImageElement.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextImageElement.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextImageElement.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextImageElement.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextImageRegionSoul.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextImageRegionSoul.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextImageRegionSoul.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextImageRegionSoul.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextLineInfo.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextLineInfo.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextLineInfo.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextLineInfo.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextManualHighlighting.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextManualHighlighting.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextManualHighlighting.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextManualHighlighting.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextPage.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextPage.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextPage.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextPage.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextParagraphCursor.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextParagraphCursor.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextParagraphCursor.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextParagraphCursor.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextParagraphCursorCache.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextParagraphCursorCache.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextParagraphCursorCache.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextParagraphCursorCache.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextPosition.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextPosition.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextPosition.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextPosition.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextRegion.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextRegion.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextRegion.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextRegion.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextSelection.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextSelection.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextSelection.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextSelection.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextSelectionCursor.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextSelectionCursor.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextSelectionCursor.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextSelectionCursor.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextSimpleHighlighting.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextSimpleHighlighting.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextSimpleHighlighting.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextSimpleHighlighting.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextStyle.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextStyle.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextStyle.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextStyle.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextStyleElement.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextStyleElement.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextStyleElement.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextStyleElement.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextTraverser.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextTraverser.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextTraverser.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextTraverser.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextVideoElement.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextVideoElement.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextVideoElement.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextVideoElement.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextVideoRegionSoul.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextVideoRegionSoul.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextVideoRegionSoul.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextVideoRegionSoul.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextView.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextView.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextView.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextView.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextViewBase.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextViewBase.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextViewBase.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextViewBase.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextWord.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextWord.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextWord.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextWord.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextWordCursor.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextWordCursor.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextWordCursor.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextWordCursor.java
diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextWordRegionSoul.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextWordRegionSoul.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/ZLTextWordRegionSoul.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/ZLTextWordRegionSoul.java
diff --git a/src/org/geometerplus/zlibrary/text/view/style/SimpleCSSReader.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/SimpleCSSReader.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/style/SimpleCSSReader.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/SimpleCSSReader.java
diff --git a/src/org/geometerplus/zlibrary/text/view/style/ZLTextBaseStyle.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/ZLTextBaseStyle.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/style/ZLTextBaseStyle.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/ZLTextBaseStyle.java
diff --git a/src/org/geometerplus/zlibrary/text/view/style/ZLTextDecoratedStyle.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/ZLTextDecoratedStyle.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/style/ZLTextDecoratedStyle.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/ZLTextDecoratedStyle.java
diff --git a/src/org/geometerplus/zlibrary/text/view/style/ZLTextExplicitlyDecoratedStyle.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/ZLTextExplicitlyDecoratedStyle.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/style/ZLTextExplicitlyDecoratedStyle.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/ZLTextExplicitlyDecoratedStyle.java
diff --git a/src/org/geometerplus/zlibrary/text/view/style/ZLTextNGStyle.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/ZLTextNGStyle.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/style/ZLTextNGStyle.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/ZLTextNGStyle.java
diff --git a/src/org/geometerplus/zlibrary/text/view/style/ZLTextNGStyleDescription.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/ZLTextNGStyleDescription.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/text/view/style/ZLTextNGStyleDescription.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/ZLTextNGStyleDescription.java
diff --git a/src/org/geometerplus/zlibrary/text/view/style/ZLTextStyleCollection.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/ZLTextStyleCollection.java
similarity index 81%
rename from src/org/geometerplus/zlibrary/text/view/style/ZLTextStyleCollection.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/ZLTextStyleCollection.java
index d9470cf0fff..e5ec6b25868 100644
--- a/src/org/geometerplus/zlibrary/text/view/style/ZLTextStyleCollection.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/text/view/style/ZLTextStyleCollection.java
@@ -21,8 +21,11 @@
import java.util.*;
+import org.xml.sax.Attributes;
+import org.xml.sax.helpers.DefaultHandler;
+
import org.geometerplus.zlibrary.core.filesystem.ZLResourceFile;
-import org.geometerplus.zlibrary.core.xml.*;
+import org.geometerplus.zlibrary.core.util.XmlUtil;
import org.geometerplus.zlibrary.text.model.ZLTextAlignmentType;
public class ZLTextStyleCollection {
@@ -41,7 +44,10 @@ public ZLTextStyleCollection(String screen) {
for (Map.Entry entry : descriptions.entrySet()) {
myDescriptionMap[entry.getKey() & 0xFF] = entry.getValue();
}
- new TextStyleReader().readQuietly(ZLResourceFile.createResourceFile("default/styles.xml"));
+ XmlUtil.parseQuietly(
+ ZLResourceFile.createResourceFile("default/styles.xml"),
+ new TextStyleReader()
+ );
}
public ZLTextBaseStyle getBaseStyle() {
@@ -56,13 +62,8 @@ public ZLTextNGStyleDescription getDescription(byte kind) {
return myDescriptionMap[kind & 0xFF];
}
- private class TextStyleReader extends ZLXMLReaderAdapter {
- @Override
- public boolean dontCacheAttributeValues() {
- return true;
- }
-
- private int intValue(ZLStringMap attributes, String name, int defaultValue) {
+ private class TextStyleReader extends DefaultHandler {
+ private int intValue(Attributes attributes, String name, int defaultValue) {
final String value = attributes.getValue(name);
if (value != null) {
try {
@@ -74,15 +75,14 @@ private int intValue(ZLStringMap attributes, String name, int defaultValue) {
}
@Override
- public boolean startElementHandler(String tag, ZLStringMap attributes) {
- if ("base".equals(tag) && Screen.equals(attributes.getValue("screen"))) {
+ public void startElement(String uri, String localName, String qName, Attributes attributes) {
+ if ("base".equals(localName) && Screen.equals(attributes.getValue("screen"))) {
myBaseStyle = new ZLTextBaseStyle(
Screen,
attributes.getValue("family"),
intValue(attributes, "fontSize", 0)
);
}
- return false;
}
}
}
diff --git a/src/org/geometerplus/zlibrary/ui/android/error/BugReportActivity.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/error/BugReportActivity.java
similarity index 94%
rename from src/org/geometerplus/zlibrary/ui/android/error/BugReportActivity.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/error/BugReportActivity.java
index d20a7af51c1..500ea3d27fb 100644
--- a/src/org/geometerplus/zlibrary/ui/android/error/BugReportActivity.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/error/BugReportActivity.java
@@ -49,7 +49,7 @@ public void onCreate(Bundle icicle) {
reportTextView.setLongClickable(false);
final String versionName = new ErrorUtil(this).getVersionName();
- reportTextView.append("FBReader " + versionName + " has been crached, sorry. You can help to fix this bug by sending the report below to FBReader developers. The report will be sent by e-mail. Thank you in advance!\n\n");
+ reportTextView.append("FBReader " + versionName + " has been crached. You can send the report to developers.\n\n");
reportTextView.append(reportText);
findViewById(R.id.send_report).setOnClickListener(
diff --git a/src/org/geometerplus/zlibrary/ui/android/error/ErrorKeys.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/error/ErrorKeys.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/error/ErrorKeys.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/error/ErrorKeys.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/error/ErrorUtil.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/error/ErrorUtil.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/error/ErrorUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/error/ErrorUtil.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/image/BitmapImageData.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/image/BitmapImageData.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/image/BitmapImageData.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/image/BitmapImageData.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/image/InputStreamImageData.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/image/InputStreamImageData.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/image/InputStreamImageData.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/image/InputStreamImageData.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/image/ZLAndroidImageData.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/image/ZLAndroidImageData.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/image/ZLAndroidImageData.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/image/ZLAndroidImageData.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/image/ZLAndroidImageLoader.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/image/ZLAndroidImageLoader.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/image/ZLAndroidImageLoader.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/image/ZLAndroidImageLoader.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/image/ZLAndroidImageManager.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/image/ZLAndroidImageManager.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/image/ZLAndroidImageManager.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/image/ZLAndroidImageManager.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/image/ZLBitmapImage.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/image/ZLBitmapImage.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/image/ZLBitmapImage.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/image/ZLBitmapImage.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/library/UncaughtExceptionHandler.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/library/UncaughtExceptionHandler.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/library/UncaughtExceptionHandler.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/library/UncaughtExceptionHandler.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/library/ZLAndroidApplication.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/library/ZLAndroidApplication.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/library/ZLAndroidApplication.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/library/ZLAndroidApplication.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/library/ZLAndroidLibrary.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/library/ZLAndroidLibrary.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/library/ZLAndroidLibrary.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/library/ZLAndroidLibrary.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/network/SQLiteCookieDatabase.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/network/SQLiteCookieDatabase.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/network/SQLiteCookieDatabase.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/network/SQLiteCookieDatabase.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/util/ZLAndroidColorUtil.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/util/ZLAndroidColorUtil.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/util/ZLAndroidColorUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/util/ZLAndroidColorUtil.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/view/AndroidFontUtil.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/AndroidFontUtil.java
similarity index 92%
rename from src/org/geometerplus/zlibrary/ui/android/view/AndroidFontUtil.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/AndroidFontUtil.java
index 4eeb84edc8e..99ae766db11 100644
--- a/src/org/geometerplus/zlibrary/ui/android/view/AndroidFontUtil.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/AndroidFontUtil.java
@@ -22,6 +22,9 @@
import java.util.*;
import java.io.*;
+import org.xml.sax.Attributes;
+import org.xml.sax.helpers.DefaultHandler;
+
import android.content.res.AssetManager;
import android.graphics.Typeface;
@@ -29,8 +32,7 @@
import org.geometerplus.zlibrary.core.fonts.FileInfo;
import org.geometerplus.zlibrary.core.fonts.FontEntry;
import org.geometerplus.zlibrary.core.util.ZLTTFInfoDetector;
-import org.geometerplus.zlibrary.core.xml.ZLStringMap;
-import org.geometerplus.zlibrary.core.xml.ZLXMLReaderAdapter;
+import org.geometerplus.zlibrary.core.util.XmlUtil;
import org.geometerplus.zlibrary.ui.android.library.ZLAndroidLibrary;
@@ -45,20 +47,22 @@ public final class AndroidFontUtil {
private static Map getFontAssetMap() {
if (ourFontAssetMap == null) {
ourFontAssetMap = new HashMap();
- new ZLXMLReaderAdapter() {
- @Override
- public boolean startElementHandler(String tag, ZLStringMap attributes) {
- if ("font".equals(tag)) {
- ourFontAssetMap.put(attributes.getValue("family"), new String[] {
- "fonts/" + attributes.getValue("regular"),
- "fonts/" + attributes.getValue("bold"),
- "fonts/" + attributes.getValue("italic"),
- "fonts/" + attributes.getValue("boldItalic")
- });
+ XmlUtil.parseQuietly(
+ ZLFile.createFileByPath("fonts/fonts.xml"),
+ new DefaultHandler() {
+ @Override
+ public void startElement(String uri, String localName, String qName, Attributes attributes) {
+ if ("font".equals(localName)) {
+ ourFontAssetMap.put(attributes.getValue("family"), new String[] {
+ "fonts/" + attributes.getValue("regular"),
+ "fonts/" + attributes.getValue("bold"),
+ "fonts/" + attributes.getValue("italic"),
+ "fonts/" + attributes.getValue("boldItalic")
+ });
+ }
}
- return false;
}
- }.readQuietly(ZLFile.createFileByPath("fonts/fonts.xml"));
+ );
}
return ourFontAssetMap;
}
diff --git a/src/org/geometerplus/zlibrary/ui/android/view/AnimationProvider.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/AnimationProvider.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/view/AnimationProvider.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/AnimationProvider.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/view/BitmapManager.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/BitmapManager.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/view/BitmapManager.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/BitmapManager.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/view/CurlAnimationProvider.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/CurlAnimationProvider.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/view/CurlAnimationProvider.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/CurlAnimationProvider.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/view/NoneAnimationProvider.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/NoneAnimationProvider.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/view/NoneAnimationProvider.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/NoneAnimationProvider.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/view/ShiftAnimationProvider.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/ShiftAnimationProvider.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/view/ShiftAnimationProvider.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/ShiftAnimationProvider.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/view/SimpleAnimationProvider.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/SimpleAnimationProvider.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/view/SimpleAnimationProvider.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/SimpleAnimationProvider.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/view/SlideAnimationProvider.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/SlideAnimationProvider.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/view/SlideAnimationProvider.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/SlideAnimationProvider.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/view/SlideOldStyleAnimationProvider.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/SlideOldStyleAnimationProvider.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/view/SlideOldStyleAnimationProvider.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/SlideOldStyleAnimationProvider.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/view/ZLAndroidPaintContext.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/ZLAndroidPaintContext.java
similarity index 100%
rename from src/org/geometerplus/zlibrary/ui/android/view/ZLAndroidPaintContext.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/ZLAndroidPaintContext.java
diff --git a/src/org/geometerplus/zlibrary/ui/android/view/ZLAndroidWidget.java b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/ZLAndroidWidget.java
similarity index 97%
rename from src/org/geometerplus/zlibrary/ui/android/view/ZLAndroidWidget.java
rename to fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/ZLAndroidWidget.java
index 7f921bc201a..6aacbd0799d 100644
--- a/src/org/geometerplus/zlibrary/ui/android/view/ZLAndroidWidget.java
+++ b/fBReaderJ/src/main/java/org/geometerplus/zlibrary/ui/android/view/ZLAndroidWidget.java
@@ -447,7 +447,13 @@ public boolean onKeyDown(int keyCode, KeyEvent event) {
bindings.hasBinding(keyCode, false)) {
if (myKeyUnderTracking != -1) {
if (myKeyUnderTracking == keyCode) {
- return true;
+ final boolean longPress = System.currentTimeMillis() >
+ myTrackingStartTime + ViewConfiguration.getLongPressTimeout()/3;
+ if(longPress) {
+ application.runActionByKey(keyCode, longPress);
+ myKeyUnderTracking = -1;
+ }
+ return longPress;
} else {
myKeyUnderTracking = -1;
}
@@ -468,9 +474,7 @@ public boolean onKeyDown(int keyCode, KeyEvent event) {
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (myKeyUnderTracking != -1) {
if (myKeyUnderTracking == keyCode) {
- final boolean longPress = System.currentTimeMillis() >
- myTrackingStartTime + ViewConfiguration.getLongPressTimeout();
- ZLApplication.Instance().runActionByKey(keyCode, longPress);
+ ZLApplication.Instance().runActionByKey(keyCode, false);
}
myKeyUnderTracking = -1;
return true;
diff --git a/src/org/vimgadgets/linebreak/LineBreaker.java b/fBReaderJ/src/main/java/org/vimgadgets/linebreak/LineBreaker.java
similarity index 100%
rename from src/org/vimgadgets/linebreak/LineBreaker.java
rename to fBReaderJ/src/main/java/org/vimgadgets/linebreak/LineBreaker.java
diff --git a/jni/Android.mk b/fBReaderJ/src/main/jni/Android.mk
similarity index 100%
rename from jni/Android.mk
rename to fBReaderJ/src/main/jni/Android.mk
diff --git a/jni/Application.mk b/fBReaderJ/src/main/jni/Application.mk
similarity index 100%
rename from jni/Application.mk
rename to fBReaderJ/src/main/jni/Application.mk
diff --git a/jni/DeflatingDecompressor/DeflatingDecompressor.cpp b/fBReaderJ/src/main/jni/DeflatingDecompressor/DeflatingDecompressor.cpp
similarity index 100%
rename from jni/DeflatingDecompressor/DeflatingDecompressor.cpp
rename to fBReaderJ/src/main/jni/DeflatingDecompressor/DeflatingDecompressor.cpp
diff --git a/jni/LineBreak/LineBreaker.cpp b/fBReaderJ/src/main/jni/LineBreak/LineBreaker.cpp
similarity index 100%
rename from jni/LineBreak/LineBreaker.cpp
rename to fBReaderJ/src/main/jni/LineBreak/LineBreaker.cpp
diff --git a/jni/LineBreak/liblinebreak-2.0/AUTHORS b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/AUTHORS
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/AUTHORS
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/AUTHORS
diff --git a/jni/LineBreak/liblinebreak-2.0/ChangeLog b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/ChangeLog
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/ChangeLog
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/ChangeLog
diff --git a/jni/LineBreak/liblinebreak-2.0/Doxyfile b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/Doxyfile
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/Doxyfile
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/Doxyfile
diff --git a/jni/LineBreak/liblinebreak-2.0/LICENCE b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/LICENCE
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/LICENCE
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/LICENCE
diff --git a/jni/LineBreak/liblinebreak-2.0/LineBreak1.sed b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/LineBreak1.sed
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/LineBreak1.sed
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/LineBreak1.sed
diff --git a/jni/LineBreak/liblinebreak-2.0/LineBreak2.sed b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/LineBreak2.sed
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/LineBreak2.sed
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/LineBreak2.sed
diff --git a/jni/LineBreak/liblinebreak-2.0/Makefile.am b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/Makefile.am
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/Makefile.am
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/Makefile.am
diff --git a/jni/LineBreak/liblinebreak-2.0/Makefile.gcc b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/Makefile.gcc
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/Makefile.gcc
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/Makefile.gcc
diff --git a/jni/LineBreak/liblinebreak-2.0/Makefile.in b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/Makefile.in
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/Makefile.in
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/Makefile.in
diff --git a/jni/LineBreak/liblinebreak-2.0/Makefile.msvc b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/Makefile.msvc
similarity index 95%
rename from jni/LineBreak/liblinebreak-2.0/Makefile.msvc
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/Makefile.msvc
index 5f3ddea6724..3125faf1260 100644
--- a/jni/LineBreak/liblinebreak-2.0/Makefile.msvc
+++ b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/Makefile.msvc
@@ -1,173 +1,173 @@
-# Makefile for Microsoft Visual C++ and NMAKE
-
-!IF "$(CFG)" == ""
-CFG=linebreak - Win32 Debug
-!MESSAGE No configuration specified. Defaulting to linebreak - Win32 Debug.
-!ENDIF
-
-!IF "$(CFG)" != "linebreak - Win32 Release" && "$(CFG)" != "linebreak - Win32 Debug"
-!MESSAGE Invalid configuration "$(CFG)" specified.
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f Makefile.msvc CFG="linebreak - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "linebreak - Win32 Release" (based on "Win32 (x86) Static Library")
-!MESSAGE "linebreak - Win32 Debug" (based on "Win32 (x86) Static Library")
-!MESSAGE
-!ERROR An invalid configuration is specified.
-!ENDIF
-
-!IF "$(OS)" == "Windows_NT"
-NULL=
-!ELSE
-NULL=nul
-!ENDIF
-
-CPP=cl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "linebreak - Win32 Release"
-
-OUTDIR=.\Release
-INTDIR=.\Release
-# Begin Custom Macros
-OutDir=.\Release
-# End Custom Macros
-
-ALL : "$(OUTDIR)\linebreak.lib"
-
-
-CLEAN :
- -@erase "$(INTDIR)\linebreak.obj"
- -@erase "$(INTDIR)\linebreakdata.obj"
- -@erase "$(INTDIR)\linebreakdef.obj"
- -@erase "$(INTDIR)\vc*.idb"
- -@erase "$(OUTDIR)\linebreak.lib"
-
-"$(OUTDIR)" :
- if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
-
-CPP_PROJ=/nologo /ML /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
-BSC32=bscmake.exe
-BSC32_FLAGS=/nologo /o"$(OUTDIR)\linebreak.bsc"
-BSC32_SBRS= \
-
-LIB32=link.exe -lib
-LIB32_FLAGS=/nologo /out:"$(OUTDIR)\linebreak.lib"
-LIB32_OBJS= \
- "$(INTDIR)\linebreak.obj" \
- "$(INTDIR)\linebreakdata.obj" \
- "$(INTDIR)\linebreakdef.obj"
-
-"$(OUTDIR)\linebreak.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
- $(LIB32) @<<
- $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
-<<
-
-!ELSEIF "$(CFG)" == "linebreak - Win32 Debug"
-
-OUTDIR=.\Debug
-INTDIR=.\Debug
-# Begin Custom Macros
-OutDir=.\Debug
-# End Custom Macros
-
-ALL : "$(OUTDIR)\linebreak.lib"
-
-
-CLEAN :
- -@erase "$(INTDIR)\linebreak.obj"
- -@erase "$(INTDIR)\linebreakdata.obj"
- -@erase "$(INTDIR)\linebreakdef.obj"
- -@erase "$(INTDIR)\vc*.idb"
- -@erase "$(INTDIR)\vc*.pdb"
- -@erase "$(OUTDIR)\linebreak.lib"
-
-"$(OUTDIR)" :
- if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
-
-CPP_PROJ=/nologo /MLd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c
-BSC32=bscmake.exe
-BSC32_FLAGS=/nologo /o"$(OUTDIR)\linebreak.bsc"
-BSC32_SBRS= \
-
-LIB32=link.exe -lib
-LIB32_FLAGS=/nologo /out:"$(OUTDIR)\linebreak.lib"
-LIB32_OBJS= \
- "$(INTDIR)\linebreak.obj" \
- "$(INTDIR)\linebreakdata.obj" \
- "$(INTDIR)\linebreakdef.obj"
-
-"$(OUTDIR)\linebreak.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
- $(LIB32) @<<
- $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
-<<
-
-!ENDIF
-
-.c{$(INTDIR)}.obj::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.cpp{$(INTDIR)}.obj::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.cxx{$(INTDIR)}.obj::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.c{$(INTDIR)}.sbr::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.cpp{$(INTDIR)}.sbr::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.cxx{$(INTDIR)}.sbr::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-
-.\linebreak.c : \
- ".\linebreak.h"\
- ".\linebreakdef.h"\
-
-.\linebreakdata.c : \
- ".\linebreak.h"\
- ".\linebreakdef.h"\
-
-.\linebreakdef.c : \
- ".\linebreak.h"\
- ".\linebreakdef.h"\
-
-
-!IF "$(CFG)" == "linebreak - Win32 Release" || "$(CFG)" == "linebreak - Win32 Debug"
-SOURCE=.\linebreak.c
-
-"$(INTDIR)\linebreak.obj" : $(SOURCE) "$(INTDIR)"
-
-
-SOURCE=.\linebreakdata.c
-
-"$(INTDIR)\linebreakdata.obj" : $(SOURCE) "$(INTDIR)"
-
-
-SOURCE=.\linebreakdef.c
-
-"$(INTDIR)\linebreakdef.obj" : $(SOURCE) "$(INTDIR)"
-
-
-
-!ENDIF
-
+# Makefile for Microsoft Visual C++ and NMAKE
+
+!IF "$(CFG)" == ""
+CFG=linebreak - Win32 Debug
+!MESSAGE No configuration specified. Defaulting to linebreak - Win32 Debug.
+!ENDIF
+
+!IF "$(CFG)" != "linebreak - Win32 Release" && "$(CFG)" != "linebreak - Win32 Debug"
+!MESSAGE Invalid configuration "$(CFG)" specified.
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f Makefile.msvc CFG="linebreak - Win32 Debug"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "linebreak - Win32 Release" (based on "Win32 (x86) Static Library")
+!MESSAGE "linebreak - Win32 Debug" (based on "Win32 (x86) Static Library")
+!MESSAGE
+!ERROR An invalid configuration is specified.
+!ENDIF
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+CPP=cl.exe
+RSC=rc.exe
+
+!IF "$(CFG)" == "linebreak - Win32 Release"
+
+OUTDIR=.\Release
+INTDIR=.\Release
+# Begin Custom Macros
+OutDir=.\Release
+# End Custom Macros
+
+ALL : "$(OUTDIR)\linebreak.lib"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\linebreak.obj"
+ -@erase "$(INTDIR)\linebreakdata.obj"
+ -@erase "$(INTDIR)\linebreakdef.obj"
+ -@erase "$(INTDIR)\vc*.idb"
+ -@erase "$(OUTDIR)\linebreak.lib"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP_PROJ=/nologo /ML /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\linebreak.bsc"
+BSC32_SBRS= \
+
+LIB32=link.exe -lib
+LIB32_FLAGS=/nologo /out:"$(OUTDIR)\linebreak.lib"
+LIB32_OBJS= \
+ "$(INTDIR)\linebreak.obj" \
+ "$(INTDIR)\linebreakdata.obj" \
+ "$(INTDIR)\linebreakdef.obj"
+
+"$(OUTDIR)\linebreak.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
+ $(LIB32) @<<
+ $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
+<<
+
+!ELSEIF "$(CFG)" == "linebreak - Win32 Debug"
+
+OUTDIR=.\Debug
+INTDIR=.\Debug
+# Begin Custom Macros
+OutDir=.\Debug
+# End Custom Macros
+
+ALL : "$(OUTDIR)\linebreak.lib"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\linebreak.obj"
+ -@erase "$(INTDIR)\linebreakdata.obj"
+ -@erase "$(INTDIR)\linebreakdef.obj"
+ -@erase "$(INTDIR)\vc*.idb"
+ -@erase "$(INTDIR)\vc*.pdb"
+ -@erase "$(OUTDIR)\linebreak.lib"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP_PROJ=/nologo /MLd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\linebreak.bsc"
+BSC32_SBRS= \
+
+LIB32=link.exe -lib
+LIB32_FLAGS=/nologo /out:"$(OUTDIR)\linebreak.lib"
+LIB32_OBJS= \
+ "$(INTDIR)\linebreak.obj" \
+ "$(INTDIR)\linebreakdata.obj" \
+ "$(INTDIR)\linebreakdef.obj"
+
+"$(OUTDIR)\linebreak.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
+ $(LIB32) @<<
+ $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
+<<
+
+!ENDIF
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+
+.\linebreak.c : \
+ ".\linebreak.h"\
+ ".\linebreakdef.h"\
+
+.\linebreakdata.c : \
+ ".\linebreak.h"\
+ ".\linebreakdef.h"\
+
+.\linebreakdef.c : \
+ ".\linebreak.h"\
+ ".\linebreakdef.h"\
+
+
+!IF "$(CFG)" == "linebreak - Win32 Release" || "$(CFG)" == "linebreak - Win32 Debug"
+SOURCE=.\linebreak.c
+
+"$(INTDIR)\linebreak.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\linebreakdata.c
+
+"$(INTDIR)\linebreakdata.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\linebreakdef.c
+
+"$(INTDIR)\linebreakdef.obj" : $(SOURCE) "$(INTDIR)"
+
+
+
+!ENDIF
+
diff --git a/jni/LineBreak/liblinebreak-2.0/NEWS b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/NEWS
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/NEWS
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/NEWS
diff --git a/jni/LineBreak/liblinebreak-2.0/README b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/README
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/README
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/README
diff --git a/jni/LineBreak/liblinebreak-2.0/aclocal.m4 b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/aclocal.m4
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/aclocal.m4
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/aclocal.m4
diff --git a/jni/LineBreak/liblinebreak-2.0/config.guess b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/config.guess
old mode 100755
new mode 100644
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/config.guess
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/config.guess
diff --git a/jni/LineBreak/liblinebreak-2.0/config.h.in b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/config.h.in
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/config.h.in
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/config.h.in
diff --git a/jni/LineBreak/liblinebreak-2.0/config.sub b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/config.sub
old mode 100755
new mode 100644
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/config.sub
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/config.sub
diff --git a/jni/LineBreak/liblinebreak-2.0/configure b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/configure
old mode 100755
new mode 100644
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/configure
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/configure
diff --git a/jni/LineBreak/liblinebreak-2.0/configure.ac b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/configure.ac
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/configure.ac
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/configure.ac
diff --git a/jni/LineBreak/liblinebreak-2.0/depcomp b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/depcomp
old mode 100755
new mode 100644
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/depcomp
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/depcomp
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/annotated.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/annotated.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/annotated.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/annotated.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/classes.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/classes.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/classes.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/classes.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/doxygen.css b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/doxygen.css
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/doxygen.css
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/doxygen.css
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/doxygen.png b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/doxygen.png
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/doxygen.png
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/doxygen.png
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/files.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/files.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/files.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/files.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/functions.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/functions.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/functions.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/functions.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/functions_vars.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/functions_vars.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/functions_vars.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/functions_vars.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/globals.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/globals.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/globals.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/globals.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/globals_defs.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/globals_defs.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/globals_defs.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/globals_defs.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/globals_enum.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/globals_enum.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/globals_enum.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/globals_enum.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/globals_eval.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/globals_eval.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/globals_eval.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/globals_eval.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/globals_func.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/globals_func.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/globals_func.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/globals_func.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/globals_type.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/globals_type.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/globals_type.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/globals_type.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/globals_vars.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/globals_vars.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/globals_vars.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/globals_vars.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/index.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/index.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/index.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/index.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8c.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8c.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8c.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8c.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8h-source.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8h-source.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8h-source.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8h-source.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8h.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8h.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8h.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8h.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8h_source.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8h_source.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8h_source.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreak_8h_source.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdata_8c.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdata_8c.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdata_8c.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdata_8c.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8c.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8c.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8c.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8c.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8h-source.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8h-source.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8h-source.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8h-source.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8h.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8h.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8h.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8h.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8h_source.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8h_source.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8h_source.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/linebreakdef_8h_source.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/structLineBreakProperties.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/structLineBreakProperties.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/structLineBreakProperties.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/structLineBreakProperties.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/structLineBreakPropertiesIndex.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/structLineBreakPropertiesIndex.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/structLineBreakPropertiesIndex.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/structLineBreakPropertiesIndex.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/structLineBreakPropertiesLang.html b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/structLineBreakPropertiesLang.html
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/structLineBreakPropertiesLang.html
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/structLineBreakPropertiesLang.html
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/tab_b.gif b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/tab_b.gif
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/tab_b.gif
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/tab_b.gif
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/tab_l.gif b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/tab_l.gif
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/tab_l.gif
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/tab_l.gif
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/tab_r.gif b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/tab_r.gif
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/tab_r.gif
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/tab_r.gif
diff --git a/jni/LineBreak/liblinebreak-2.0/doc/html/tabs.css b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/tabs.css
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/doc/html/tabs.css
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/doc/html/tabs.css
diff --git a/jni/LineBreak/liblinebreak-2.0/install-sh b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/install-sh
old mode 100755
new mode 100644
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/install-sh
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/install-sh
diff --git a/jni/LineBreak/liblinebreak-2.0/linebreak.c b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreak.c
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/linebreak.c
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreak.c
diff --git a/jni/LineBreak/liblinebreak-2.0/linebreak.h b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreak.h
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/linebreak.h
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreak.h
diff --git a/jni/LineBreak/liblinebreak-2.0/linebreakdata.c b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreakdata.c
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/linebreakdata.c
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreakdata.c
diff --git a/jni/LineBreak/liblinebreak-2.0/linebreakdata1.tmpl b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreakdata1.tmpl
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/linebreakdata1.tmpl
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreakdata1.tmpl
diff --git a/jni/LineBreak/liblinebreak-2.0/linebreakdata2.tmpl b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreakdata2.tmpl
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/linebreakdata2.tmpl
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreakdata2.tmpl
diff --git a/jni/LineBreak/liblinebreak-2.0/linebreakdata3.tmpl b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreakdata3.tmpl
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/linebreakdata3.tmpl
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreakdata3.tmpl
diff --git a/jni/LineBreak/liblinebreak-2.0/linebreakdef.c b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreakdef.c
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/linebreakdef.c
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreakdef.c
diff --git a/jni/LineBreak/liblinebreak-2.0/linebreakdef.h b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreakdef.h
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/linebreakdef.h
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/linebreakdef.h
diff --git a/jni/LineBreak/liblinebreak-2.0/ltmain.sh b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/ltmain.sh
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/ltmain.sh
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/ltmain.sh
diff --git a/jni/LineBreak/liblinebreak-2.0/missing b/fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/missing
old mode 100755
new mode 100644
similarity index 100%
rename from jni/LineBreak/liblinebreak-2.0/missing
rename to fBReaderJ/src/main/jni/LineBreak/liblinebreak-2.0/missing
diff --git a/jni/NativeFormats/JavaNativeFormatPlugin.cpp b/fBReaderJ/src/main/jni/NativeFormats/JavaNativeFormatPlugin.cpp
similarity index 100%
rename from jni/NativeFormats/JavaNativeFormatPlugin.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/JavaNativeFormatPlugin.cpp
diff --git a/jni/NativeFormats/JavaPluginCollection.cpp b/fBReaderJ/src/main/jni/NativeFormats/JavaPluginCollection.cpp
similarity index 100%
rename from jni/NativeFormats/JavaPluginCollection.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/JavaPluginCollection.cpp
diff --git a/jni/NativeFormats/fbreader/src/bookmodel/BookModel.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/bookmodel/BookModel.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/bookmodel/BookModel.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/bookmodel/BookModel.cpp
diff --git a/jni/NativeFormats/fbreader/src/bookmodel/BookModel.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/bookmodel/BookModel.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/bookmodel/BookModel.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/bookmodel/BookModel.h
diff --git a/jni/NativeFormats/fbreader/src/bookmodel/BookReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/bookmodel/BookReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/bookmodel/BookReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/bookmodel/BookReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/bookmodel/BookReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/bookmodel/BookReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/bookmodel/BookReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/bookmodel/BookReader.h
diff --git a/jni/NativeFormats/fbreader/src/bookmodel/FBHyperlinkType.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/bookmodel/FBHyperlinkType.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/bookmodel/FBHyperlinkType.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/bookmodel/FBHyperlinkType.h
diff --git a/jni/NativeFormats/fbreader/src/bookmodel/FBTextKind.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/bookmodel/FBTextKind.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/bookmodel/FBTextKind.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/bookmodel/FBTextKind.h
diff --git a/jni/NativeFormats/fbreader/src/formats/EncodedTextReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/EncodedTextReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/EncodedTextReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/EncodedTextReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/EncodedTextReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/EncodedTextReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/EncodedTextReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/EncodedTextReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/FormatPlugin.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/FormatPlugin.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/FormatPlugin.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/FormatPlugin.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/FormatPlugin.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/FormatPlugin.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/FormatPlugin.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/FormatPlugin.h
diff --git a/jni/NativeFormats/fbreader/src/formats/PluginCollection.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/PluginCollection.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/PluginCollection.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/PluginCollection.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/css/CSSInputStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/CSSInputStream.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/css/CSSInputStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/CSSInputStream.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/css/CSSInputStream.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/CSSInputStream.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/css/CSSInputStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/CSSInputStream.h
diff --git a/jni/NativeFormats/fbreader/src/formats/css/CSSSelector.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/CSSSelector.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/css/CSSSelector.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/CSSSelector.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/css/CSSSelector.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/CSSSelector.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/css/CSSSelector.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/CSSSelector.h
diff --git a/jni/NativeFormats/fbreader/src/formats/css/StringInputStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StringInputStream.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/css/StringInputStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StringInputStream.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/css/StringInputStream.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StringInputStream.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/css/StringInputStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StringInputStream.h
diff --git a/jni/NativeFormats/fbreader/src/formats/css/StyleSheetParser.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StyleSheetParser.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/css/StyleSheetParser.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StyleSheetParser.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/css/StyleSheetParser.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StyleSheetParser.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/css/StyleSheetParser.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StyleSheetParser.h
diff --git a/jni/NativeFormats/fbreader/src/formats/css/StyleSheetTable.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StyleSheetTable.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/css/StyleSheetTable.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StyleSheetTable.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/css/StyleSheetTable.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StyleSheetTable.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/css/StyleSheetTable.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StyleSheetTable.h
diff --git a/jni/NativeFormats/fbreader/src/formats/css/StyleSheetUtil.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StyleSheetUtil.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/css/StyleSheetUtil.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StyleSheetUtil.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/css/StyleSheetUtil.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StyleSheetUtil.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/css/StyleSheetUtil.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/css/StyleSheetUtil.h
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/DocBookReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocBookReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/DocBookReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocBookReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/DocBookReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocBookReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/DocBookReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocBookReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/DocFloatImageReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocFloatImageReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/DocFloatImageReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocFloatImageReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/DocFloatImageReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocFloatImageReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/DocFloatImageReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocFloatImageReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/DocInlineImageReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocInlineImageReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/DocInlineImageReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocInlineImageReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/DocInlineImageReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocInlineImageReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/DocInlineImageReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocInlineImageReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/DocMetaInfoReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocMetaInfoReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/DocMetaInfoReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocMetaInfoReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/DocMetaInfoReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocMetaInfoReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/DocMetaInfoReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocMetaInfoReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/DocPlugin.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocPlugin.cpp
similarity index 80%
rename from jni/NativeFormats/fbreader/src/formats/doc/DocPlugin.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocPlugin.cpp
index 8b45697aa50..056da2eb35a 100644
--- a/jni/NativeFormats/fbreader/src/formats/doc/DocPlugin.cpp
+++ b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocPlugin.cpp
@@ -27,6 +27,7 @@
#include "DocMetaInfoReader.h"
#include "DocBookReader.h"
#include "DocStreams.h"
+#include "../rtf/RtfPlugin.h"
#include "../../bookmodel/BookModel.h"
#include "../../library/Book.h"
@@ -36,12 +37,23 @@ DocPlugin::DocPlugin() {
DocPlugin::~DocPlugin() {
}
+static bool isRtf(const Book &book) {
+ shared_ptr stream = book.file().inputStream();
+ if (stream.isNull() || !stream->open()) {
+ return false;
+ }
+ char buffer[6] = { 0 };
+ stream->read(buffer, 5);
+ static const std::string RTF_BYTES = "{\\rtf";
+ return RTF_BYTES == buffer;
+}
+
bool DocPlugin::providesMetainfo() const {
return true;
}
const std::string DocPlugin::supportedFileType() const {
- return "MS Word document";
+ return "msdoc";
}
bool DocPlugin::acceptsFile(const ZLFile &file) const {
@@ -49,6 +61,10 @@ bool DocPlugin::acceptsFile(const ZLFile &file) const {
}
bool DocPlugin::readMetainfo(Book &book) const {
+ if (::isRtf(book)) {
+ return RtfPlugin().readMetainfo(book);
+ }
+
if (!DocMetaInfoReader(book).readMetainfo()) {
return false;
}
@@ -71,5 +87,9 @@ bool DocPlugin::readLanguageAndEncoding(Book &/*book*/) const {
}
bool DocPlugin::readModel(BookModel &model) const {
+ if (::isRtf(*model.book())) {
+ return RtfPlugin().readModel(model);
+ }
+
return DocBookReader(model, model.book()->encoding()).readBook();
}
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/DocPlugin.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocPlugin.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/DocPlugin.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocPlugin.h
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/DocStreams.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocStreams.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/DocStreams.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocStreams.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/DocStreams.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocStreams.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/DocStreams.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/DocStreams.h
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/OleMainStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleMainStream.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/OleMainStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleMainStream.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/OleMainStream.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleMainStream.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/OleMainStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleMainStream.h
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/OleStorage.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStorage.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/OleStorage.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStorage.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/OleStorage.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStorage.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/OleStorage.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStorage.h
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/OleStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStream.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/OleStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStream.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/OleStream.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStream.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/OleStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStream.h
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/OleStreamParser.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStreamParser.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/OleStreamParser.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStreamParser.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/OleStreamParser.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStreamParser.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/OleStreamParser.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStreamParser.h
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/OleStreamReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStreamReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/OleStreamReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStreamReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/OleStreamReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStreamReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/OleStreamReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleStreamReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/OleUtil.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleUtil.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/OleUtil.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleUtil.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/doc/OleUtil.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleUtil.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/doc/OleUtil.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/doc/OleUtil.h
diff --git a/jni/NativeFormats/fbreader/src/formats/fb2/FB2BookReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2BookReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/fb2/FB2BookReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2BookReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/fb2/FB2BookReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2BookReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/fb2/FB2BookReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2BookReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/fb2/FB2CoverReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2CoverReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/fb2/FB2CoverReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2CoverReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/fb2/FB2CoverReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2CoverReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/fb2/FB2CoverReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2CoverReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/fb2/FB2MetaInfoReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2MetaInfoReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/fb2/FB2MetaInfoReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2MetaInfoReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/fb2/FB2MetaInfoReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2MetaInfoReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/fb2/FB2MetaInfoReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2MetaInfoReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/fb2/FB2Plugin.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2Plugin.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/fb2/FB2Plugin.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2Plugin.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/fb2/FB2Plugin.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2Plugin.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/fb2/FB2Plugin.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2Plugin.h
diff --git a/jni/NativeFormats/fbreader/src/formats/fb2/FB2Reader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2Reader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/fb2/FB2Reader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2Reader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/fb2/FB2Reader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2Reader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/fb2/FB2Reader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2Reader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/fb2/FB2TagManager.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2TagManager.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/fb2/FB2TagManager.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2TagManager.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/fb2/FB2TagManager.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2TagManager.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/fb2/FB2TagManager.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2TagManager.h
diff --git a/jni/NativeFormats/fbreader/src/formats/fb2/FB2UidReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2UidReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/fb2/FB2UidReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2UidReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/fb2/FB2UidReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2UidReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/fb2/FB2UidReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/fb2/FB2UidReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/html/HtmlBookReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlBookReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/html/HtmlBookReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlBookReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/html/HtmlBookReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlBookReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/html/HtmlBookReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlBookReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/html/HtmlDescriptionReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlDescriptionReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/html/HtmlDescriptionReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlDescriptionReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/html/HtmlDescriptionReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlDescriptionReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/html/HtmlDescriptionReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlDescriptionReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/html/HtmlEntityCollection.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlEntityCollection.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/html/HtmlEntityCollection.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlEntityCollection.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/html/HtmlEntityCollection.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlEntityCollection.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/html/HtmlEntityCollection.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlEntityCollection.h
diff --git a/jni/NativeFormats/fbreader/src/formats/html/HtmlPlugin.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlPlugin.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/html/HtmlPlugin.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlPlugin.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/html/HtmlPlugin.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlPlugin.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/html/HtmlPlugin.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlPlugin.h
diff --git a/jni/NativeFormats/fbreader/src/formats/html/HtmlReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/html/HtmlReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/html/HtmlReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/html/HtmlReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/html/HtmlReaderStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlReaderStream.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/html/HtmlReaderStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlReaderStream.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/html/HtmlReaderStream.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlReaderStream.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/html/HtmlReaderStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlReaderStream.h
diff --git a/jni/NativeFormats/fbreader/src/formats/html/HtmlTagActions.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlTagActions.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/html/HtmlTagActions.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/html/HtmlTagActions.h
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/NCXReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/NCXReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/NCXReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/NCXReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/NCXReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/NCXReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/NCXReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/NCXReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBBookReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBBookReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBBookReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBBookReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBBookReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBBookReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBBookReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBBookReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBCoverReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBCoverReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBCoverReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBCoverReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBCoverReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBCoverReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBCoverReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBCoverReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBEncryptionReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBEncryptionReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBEncryptionReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBEncryptionReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBEncryptionReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBEncryptionReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBEncryptionReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBEncryptionReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBMetaInfoReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBMetaInfoReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBMetaInfoReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBMetaInfoReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBMetaInfoReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBMetaInfoReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBMetaInfoReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBMetaInfoReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBPlugin.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBPlugin.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBPlugin.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBPlugin.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBPlugin.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBPlugin.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBPlugin.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBPlugin.h
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBSimpleIdReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBSimpleIdReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBSimpleIdReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBSimpleIdReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBSimpleIdReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBSimpleIdReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBSimpleIdReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBSimpleIdReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBTextStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBTextStream.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBTextStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBTextStream.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBTextStream.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBTextStream.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBTextStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBTextStream.h
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBUidReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBUidReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBUidReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBUidReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OEBUidReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBUidReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OEBUidReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OEBUidReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OPFReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OPFReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OPFReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OPFReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/OPFReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OPFReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/OPFReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/OPFReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/XHTMLImageFinder.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/XHTMLImageFinder.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/XHTMLImageFinder.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/XHTMLImageFinder.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/oeb/XHTMLImageFinder.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/XHTMLImageFinder.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/oeb/XHTMLImageFinder.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/oeb/XHTMLImageFinder.h
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/BitReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/BitReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/BitReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/BitReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/BitReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/BitReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/BitReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/BitReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/DocDecompressor.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/DocDecompressor.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/DocDecompressor.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/DocDecompressor.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/DocDecompressor.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/DocDecompressor.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/DocDecompressor.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/DocDecompressor.h
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/HtmlMetainfoReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/HtmlMetainfoReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/HtmlMetainfoReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/HtmlMetainfoReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/HtmlMetainfoReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/HtmlMetainfoReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/HtmlMetainfoReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/HtmlMetainfoReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/HuffDecompressor.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/HuffDecompressor.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/HuffDecompressor.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/HuffDecompressor.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/HuffDecompressor.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/HuffDecompressor.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/HuffDecompressor.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/HuffDecompressor.h
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/MobipocketHtmlBookReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/MobipocketHtmlBookReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/MobipocketHtmlBookReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/MobipocketHtmlBookReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/MobipocketHtmlBookReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/MobipocketHtmlBookReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/MobipocketHtmlBookReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/MobipocketHtmlBookReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/MobipocketPlugin.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/MobipocketPlugin.cpp
similarity index 99%
rename from jni/NativeFormats/fbreader/src/formats/pdb/MobipocketPlugin.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/MobipocketPlugin.cpp
index 05e7492c8ed..37e5b8a88ae 100644
--- a/jni/NativeFormats/fbreader/src/formats/pdb/MobipocketPlugin.cpp
+++ b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/MobipocketPlugin.cpp
@@ -35,7 +35,7 @@
#include "../../bookmodel/BookModel.h"
const std::string MobipocketPlugin::supportedFileType() const {
- return "Mobipocket";
+ return "mobi";
}
//bool MobipocketPlugin::acceptsFile(const ZLFile &file) const {
// return PdbPlugin::fileType(file) == "BOOKMOBI";
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocLikePlugin.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocLikePlugin.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/PalmDocLikePlugin.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocLikePlugin.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocLikeStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocLikeStream.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/PalmDocLikeStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocLikeStream.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocLikeStream.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocLikeStream.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/PalmDocLikeStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocLikeStream.h
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocStream.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/PalmDocStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocStream.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocStream.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocStream.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/PalmDocStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PalmDocStream.h
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/PdbPlugin.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PdbPlugin.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/PdbPlugin.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PdbPlugin.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/PdbPlugin.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PdbPlugin.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/PdbPlugin.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PdbPlugin.h
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/PdbReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PdbReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/PdbReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PdbReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/PdbReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PdbReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/PdbReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PdbReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/PdbStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PdbStream.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/PdbStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PdbStream.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/PdbStream.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PdbStream.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/PdbStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/PdbStream.h
diff --git a/jni/NativeFormats/fbreader/src/formats/pdb/SimplePdbPlugin.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/SimplePdbPlugin.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/pdb/SimplePdbPlugin.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/pdb/SimplePdbPlugin.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/rtf/RtfBookReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfBookReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/rtf/RtfBookReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfBookReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/rtf/RtfBookReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfBookReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/rtf/RtfBookReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfBookReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/rtf/RtfDescriptionReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfDescriptionReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/rtf/RtfDescriptionReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfDescriptionReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/rtf/RtfDescriptionReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfDescriptionReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/rtf/RtfDescriptionReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfDescriptionReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/rtf/RtfPlugin.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfPlugin.cpp
similarity index 86%
rename from jni/NativeFormats/fbreader/src/formats/rtf/RtfPlugin.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfPlugin.cpp
index 6b65b44c90d..9b3a633e4db 100644
--- a/jni/NativeFormats/fbreader/src/formats/rtf/RtfPlugin.cpp
+++ b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfPlugin.cpp
@@ -34,23 +34,16 @@ bool RtfPlugin::providesMetainfo() const {
}
const std::string RtfPlugin::supportedFileType() const {
- return "rtf";
+ return "RTF";
}
bool RtfPlugin::readMetainfo(Book &book) const {
+ readLanguageAndEncoding(book);
+
if (!RtfDescriptionReader(book).readDocument(book.file())) {
return false;
}
- if (book.encoding().empty()) {
- book.setEncoding(ZLEncodingConverter::UTF8);
- } else if (book.language().empty()) {
- shared_ptr stream = new RtfReaderStream(book.file(), 50000);
- if (!stream.isNull()) {
- detectLanguage(book, *stream, book.encoding());
- }
- }
-
return true;
}
@@ -64,5 +57,19 @@ bool RtfPlugin::readModel(BookModel &model) const {
}
bool RtfPlugin::readLanguageAndEncoding(Book &book) const {
+ if (book.encoding().empty()) {
+ shared_ptr stream = new RtfReaderStream(book.file(), 50000);
+ if (!stream.isNull()) {
+ detectEncodingAndLanguage(book, *stream);
+ }
+ if (book.encoding().empty()) {
+ book.setEncoding(ZLEncodingConverter::UTF8);
+ }
+ } else if (book.language().empty()) {
+ shared_ptr stream = new RtfReaderStream(book.file(), 50000);
+ if (!stream.isNull()) {
+ detectLanguage(book, *stream, book.encoding());
+ }
+ }
return true;
}
diff --git a/jni/NativeFormats/fbreader/src/formats/rtf/RtfPlugin.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfPlugin.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/rtf/RtfPlugin.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfPlugin.h
diff --git a/jni/NativeFormats/fbreader/src/formats/rtf/RtfReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/rtf/RtfReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/rtf/RtfReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/rtf/RtfReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/rtf/RtfReaderStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfReaderStream.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/rtf/RtfReaderStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfReaderStream.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/rtf/RtfReaderStream.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfReaderStream.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/rtf/RtfReaderStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/rtf/RtfReaderStream.h
diff --git a/jni/NativeFormats/fbreader/src/formats/txt/PlainTextFormat.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/PlainTextFormat.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/txt/PlainTextFormat.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/PlainTextFormat.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/txt/PlainTextFormat.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/PlainTextFormat.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/txt/PlainTextFormat.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/PlainTextFormat.h
diff --git a/jni/NativeFormats/fbreader/src/formats/txt/TxtBookReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/TxtBookReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/txt/TxtBookReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/TxtBookReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/txt/TxtBookReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/TxtBookReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/txt/TxtBookReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/TxtBookReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/txt/TxtPlugin.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/TxtPlugin.cpp
similarity index 98%
rename from jni/NativeFormats/fbreader/src/formats/txt/TxtPlugin.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/TxtPlugin.cpp
index 40bf265a2fe..0146b95c07e 100644
--- a/jni/NativeFormats/fbreader/src/formats/txt/TxtPlugin.cpp
+++ b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/TxtPlugin.cpp
@@ -35,7 +35,7 @@ bool TxtPlugin::providesMetainfo() const {
}
const std::string TxtPlugin::supportedFileType() const {
- return "plain text";
+ return "txt";
}
bool TxtPlugin::readMetainfo(Book &/*book*/) const {
diff --git a/jni/NativeFormats/fbreader/src/formats/txt/TxtPlugin.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/TxtPlugin.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/txt/TxtPlugin.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/TxtPlugin.h
diff --git a/jni/NativeFormats/fbreader/src/formats/txt/TxtReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/TxtReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/txt/TxtReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/TxtReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/txt/TxtReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/TxtReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/txt/TxtReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/txt/TxtReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/util/EntityFilesCollector.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/EntityFilesCollector.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/util/EntityFilesCollector.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/EntityFilesCollector.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/util/EntityFilesCollector.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/EntityFilesCollector.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/util/EntityFilesCollector.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/EntityFilesCollector.h
diff --git a/jni/NativeFormats/fbreader/src/formats/util/MergedStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/MergedStream.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/util/MergedStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/MergedStream.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/util/MergedStream.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/MergedStream.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/util/MergedStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/MergedStream.h
diff --git a/jni/NativeFormats/fbreader/src/formats/util/MiscUtil.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/MiscUtil.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/util/MiscUtil.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/MiscUtil.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/util/MiscUtil.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/MiscUtil.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/util/MiscUtil.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/MiscUtil.h
diff --git a/jni/NativeFormats/fbreader/src/formats/util/XMLTextStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/XMLTextStream.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/util/XMLTextStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/XMLTextStream.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/util/XMLTextStream.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/XMLTextStream.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/util/XMLTextStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/util/XMLTextStream.h
diff --git a/jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLReader.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLReader.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLReader.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLReader.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLReader.h
diff --git a/jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLTagInfo.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLTagInfo.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLTagInfo.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLTagInfo.cpp
diff --git a/jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLTagInfo.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLTagInfo.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLTagInfo.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/formats/xhtml/XHTMLTagInfo.h
diff --git a/jni/NativeFormats/fbreader/src/library/Author.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Author.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/library/Author.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Author.cpp
diff --git a/jni/NativeFormats/fbreader/src/library/Author.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Author.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/library/Author.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Author.h
diff --git a/jni/NativeFormats/fbreader/src/library/Book.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Book.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/library/Book.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Book.cpp
diff --git a/jni/NativeFormats/fbreader/src/library/Book.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Book.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/library/Book.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Book.h
diff --git a/jni/NativeFormats/fbreader/src/library/Comparators.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Comparators.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/library/Comparators.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Comparators.cpp
diff --git a/jni/NativeFormats/fbreader/src/library/Library.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Library.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/library/Library.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Library.cpp
diff --git a/jni/NativeFormats/fbreader/src/library/Library.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Library.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/library/Library.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Library.h
diff --git a/jni/NativeFormats/fbreader/src/library/Lists.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Lists.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/library/Lists.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Lists.h
diff --git a/jni/NativeFormats/fbreader/src/library/Tag.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Tag.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/library/Tag.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Tag.cpp
diff --git a/jni/NativeFormats/fbreader/src/library/Tag.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Tag.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/library/Tag.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/Tag.h
diff --git a/jni/NativeFormats/fbreader/src/library/UID.cpp b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/UID.cpp
similarity index 100%
rename from jni/NativeFormats/fbreader/src/library/UID.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/UID.cpp
diff --git a/jni/NativeFormats/fbreader/src/library/UID.h b/fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/UID.h
similarity index 100%
rename from jni/NativeFormats/fbreader/src/library/UID.h
rename to fBReaderJ/src/main/jni/NativeFormats/fbreader/src/library/UID.h
diff --git a/jni/NativeFormats/main.cpp b/fBReaderJ/src/main/jni/NativeFormats/main.cpp
similarity index 100%
rename from jni/NativeFormats/main.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/main.cpp
diff --git a/jni/NativeFormats/util/AndroidUtil.cpp b/fBReaderJ/src/main/jni/NativeFormats/util/AndroidUtil.cpp
similarity index 100%
rename from jni/NativeFormats/util/AndroidUtil.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/util/AndroidUtil.cpp
diff --git a/jni/NativeFormats/util/AndroidUtil.h b/fBReaderJ/src/main/jni/NativeFormats/util/AndroidUtil.h
similarity index 100%
rename from jni/NativeFormats/util/AndroidUtil.h
rename to fBReaderJ/src/main/jni/NativeFormats/util/AndroidUtil.h
diff --git a/jni/NativeFormats/util/JniEnvelope.cpp b/fBReaderJ/src/main/jni/NativeFormats/util/JniEnvelope.cpp
similarity index 100%
rename from jni/NativeFormats/util/JniEnvelope.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/util/JniEnvelope.cpp
diff --git a/jni/NativeFormats/util/JniEnvelope.h b/fBReaderJ/src/main/jni/NativeFormats/util/JniEnvelope.h
similarity index 100%
rename from jni/NativeFormats/util/JniEnvelope.h
rename to fBReaderJ/src/main/jni/NativeFormats/util/JniEnvelope.h
diff --git a/jni/NativeFormats/zlibrary/core/src/constants/ZLXMLNamespace.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/constants/ZLXMLNamespace.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/constants/ZLXMLNamespace.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/constants/ZLXMLNamespace.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/constants/ZLXMLNamespace.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/constants/ZLXMLNamespace.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/constants/ZLXMLNamespace.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/constants/ZLXMLNamespace.h
diff --git a/jni/NativeFormats/zlibrary/core/src/drm/FileEncryptionInfo.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/drm/FileEncryptionInfo.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/drm/FileEncryptionInfo.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/drm/FileEncryptionInfo.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/drm/FileEncryptionInfo.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/drm/FileEncryptionInfo.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/drm/FileEncryptionInfo.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/drm/FileEncryptionInfo.h
diff --git a/jni/NativeFormats/zlibrary/core/src/encoding/DummyEncodingConverter.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/DummyEncodingConverter.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/encoding/DummyEncodingConverter.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/DummyEncodingConverter.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/encoding/DummyEncodingConverter.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/DummyEncodingConverter.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/encoding/DummyEncodingConverter.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/DummyEncodingConverter.h
diff --git a/jni/NativeFormats/zlibrary/core/src/encoding/JavaEncodingConverter.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/JavaEncodingConverter.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/encoding/JavaEncodingConverter.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/JavaEncodingConverter.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/encoding/JavaEncodingConverter.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/JavaEncodingConverter.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/encoding/JavaEncodingConverter.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/JavaEncodingConverter.h
diff --git a/jni/NativeFormats/zlibrary/core/src/encoding/Utf16EncodingConverters.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/Utf16EncodingConverters.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/encoding/Utf16EncodingConverters.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/Utf16EncodingConverters.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/encoding/Utf16EncodingConverters.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/Utf16EncodingConverters.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/encoding/Utf16EncodingConverters.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/Utf16EncodingConverters.h
diff --git a/jni/NativeFormats/zlibrary/core/src/encoding/Utf8EncodingConverter.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/Utf8EncodingConverter.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/encoding/Utf8EncodingConverter.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/Utf8EncodingConverter.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/encoding/Utf8EncodingConverter.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/Utf8EncodingConverter.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/encoding/Utf8EncodingConverter.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/Utf8EncodingConverter.h
diff --git a/jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingCollection.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingCollection.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingCollection.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingCollection.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingConverter.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingConverter.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingConverter.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingConverter.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingConverter.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingConverter.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingConverter.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingConverter.h
diff --git a/jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingConverterProvider.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingConverterProvider.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingConverterProvider.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/encoding/ZLEncodingConverterProvider.h
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/ZLDir.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLDir.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/ZLDir.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLDir.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/ZLDir.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLDir.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/ZLDir.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLDir.h
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFSDir.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFSDir.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/ZLFSDir.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFSDir.h
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFSManager.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFSManager.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/ZLFSManager.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFSManager.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFSManager.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFSManager.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/ZLFSManager.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFSManager.h
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFile.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFile.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/ZLFile.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFile.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFile.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFile.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/ZLFile.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFile.h
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFileInfo.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFileInfo.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/ZLFileInfo.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLFileInfo.h
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/ZLInputStream.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLInputStream.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/ZLInputStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLInputStream.h
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/ZLInputStreamDecorator.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLInputStreamDecorator.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/ZLInputStreamDecorator.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLInputStreamDecorator.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/ZLOutputStream.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLOutputStream.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/ZLOutputStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/ZLOutputStream.h
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLGzipInputStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLGzipInputStream.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLGzipInputStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLGzipInputStream.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZDecompressor.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZDecompressor.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZDecompressor.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZDecompressor.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZDecompressor.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZDecompressor.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZDecompressor.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZDecompressor.h
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZip.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZip.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZip.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZip.h
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipDir.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipDir.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipDir.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipDir.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipEntryCache.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipEntryCache.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipEntryCache.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipEntryCache.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipHeader.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipHeader.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipHeader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipHeader.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipHeader.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipHeader.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipHeader.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipHeader.h
diff --git a/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipInputStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipInputStream.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipInputStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/filesystem/zip/ZLZipInputStream.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/image/ZLFileImage.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/image/ZLFileImage.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/image/ZLFileImage.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/image/ZLFileImage.h
diff --git a/jni/NativeFormats/zlibrary/core/src/image/ZLImage.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/image/ZLImage.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/image/ZLImage.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/image/ZLImage.h
diff --git a/jni/NativeFormats/zlibrary/core/src/image/ZLStreamImage.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/image/ZLStreamImage.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/image/ZLStreamImage.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/image/ZLStreamImage.h
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLCharSequence.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLCharSequence.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLCharSequence.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLCharSequence.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLCharSequence.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLCharSequence.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLCharSequence.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLCharSequence.h
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageDetector.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageDetector.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLLanguageDetector.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageDetector.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageDetector.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageDetector.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLLanguageDetector.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageDetector.h
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageList.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageList.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLLanguageList.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageList.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageList.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageList.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLLanguageList.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageList.h
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageMatcher.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageMatcher.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLLanguageMatcher.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageMatcher.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageMatcher.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageMatcher.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLLanguageMatcher.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLLanguageMatcher.h
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLStatistics.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatistics.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLStatistics.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatistics.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLStatistics.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatistics.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLStatistics.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatistics.h
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsGenerator.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsGenerator.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsGenerator.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsGenerator.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsGenerator.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsGenerator.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsGenerator.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsGenerator.h
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsItem.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsItem.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsItem.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsItem.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsItem.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsItem.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsItem.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsItem.h
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsXMLReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsXMLReader.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsXMLReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsXMLReader.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsXMLReader.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsXMLReader.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsXMLReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/language/ZLStatisticsXMLReader.h
diff --git a/jni/NativeFormats/zlibrary/core/src/library/ZLibrary.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/library/ZLibrary.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/library/ZLibrary.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/library/ZLibrary.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/library/ZLibrary.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/library/ZLibrary.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/library/ZLibrary.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/library/ZLibrary.h
diff --git a/jni/NativeFormats/zlibrary/core/src/logger/ZLLogger.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/logger/ZLLogger.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/logger/ZLLogger.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/logger/ZLLogger.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/logger/ZLLogger.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/logger/ZLLogger.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/logger/ZLLogger.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/logger/ZLLogger.h
diff --git a/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSDir.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSDir.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSDir.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSDir.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSDir.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSDir.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSDir.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSDir.h
diff --git a/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSManager.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSManager.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSManager.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSManager.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSManager.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSManager.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSManager.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFSManager.h
diff --git a/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileInputStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileInputStream.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileInputStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileInputStream.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileInputStream.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileInputStream.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileInputStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileInputStream.h
diff --git a/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileOutputStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileOutputStream.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileOutputStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileOutputStream.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileOutputStream.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileOutputStream.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileOutputStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/filesystem/ZLUnixFileOutputStream.h
diff --git a/jni/NativeFormats/zlibrary/core/src/unix/library/ZLUnixLibrary.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/library/ZLUnixLibrary.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/unix/library/ZLUnixLibrary.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/library/ZLUnixLibrary.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/unix/library/ZLibraryImplementation.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/library/ZLibraryImplementation.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/unix/library/ZLibraryImplementation.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/unix/library/ZLibraryImplementation.h
diff --git a/jni/NativeFormats/zlibrary/core/src/util/ZLBoolean3.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLBoolean3.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/util/ZLBoolean3.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLBoolean3.h
diff --git a/jni/NativeFormats/zlibrary/core/src/util/ZLFileUtil.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLFileUtil.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/util/ZLFileUtil.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLFileUtil.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/util/ZLFileUtil.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLFileUtil.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/util/ZLFileUtil.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLFileUtil.h
diff --git a/jni/NativeFormats/zlibrary/core/src/util/ZLLanguageUtil.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLLanguageUtil.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/util/ZLLanguageUtil.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLLanguageUtil.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/util/ZLLanguageUtil.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLLanguageUtil.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/util/ZLLanguageUtil.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLLanguageUtil.h
diff --git a/jni/NativeFormats/zlibrary/core/src/util/ZLStringUtil.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLStringUtil.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/util/ZLStringUtil.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLStringUtil.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/util/ZLStringUtil.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLStringUtil.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/util/ZLStringUtil.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLStringUtil.h
diff --git a/jni/NativeFormats/zlibrary/core/src/util/ZLUnicodeUtil.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLUnicodeUtil.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/util/ZLUnicodeUtil.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLUnicodeUtil.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/util/ZLUnicodeUtil.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLUnicodeUtil.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/util/ZLUnicodeUtil.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/ZLUnicodeUtil.h
diff --git a/jni/NativeFormats/zlibrary/core/src/util/shared_ptr.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/shared_ptr.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/util/shared_ptr.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/util/shared_ptr.h
diff --git a/jni/NativeFormats/zlibrary/core/src/xml/ZLAsynchronousInputStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/ZLAsynchronousInputStream.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/xml/ZLAsynchronousInputStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/ZLAsynchronousInputStream.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/xml/ZLAsynchronousInputStream.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/ZLAsynchronousInputStream.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/xml/ZLAsynchronousInputStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/ZLAsynchronousInputStream.h
diff --git a/jni/NativeFormats/zlibrary/core/src/xml/ZLPlainAsynchronousInputStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/ZLPlainAsynchronousInputStream.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/xml/ZLPlainAsynchronousInputStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/ZLPlainAsynchronousInputStream.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/xml/ZLPlainAsynchronousInputStream.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/ZLPlainAsynchronousInputStream.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/xml/ZLPlainAsynchronousInputStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/ZLPlainAsynchronousInputStream.h
diff --git a/jni/NativeFormats/zlibrary/core/src/xml/ZLXMLReader.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/ZLXMLReader.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/xml/ZLXMLReader.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/ZLXMLReader.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/xml/ZLXMLReader.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/ZLXMLReader.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/xml/ZLXMLReader.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/ZLXMLReader.h
diff --git a/jni/NativeFormats/zlibrary/core/src/xml/expat/ZLXMLReaderInternal.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/expat/ZLXMLReaderInternal.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/xml/expat/ZLXMLReaderInternal.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/expat/ZLXMLReaderInternal.cpp
diff --git a/jni/NativeFormats/zlibrary/core/src/xml/expat/ZLXMLReaderInternal.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/expat/ZLXMLReaderInternal.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/core/src/xml/expat/ZLXMLReaderInternal.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/core/src/xml/expat/ZLXMLReaderInternal.h
diff --git a/jni/NativeFormats/zlibrary/text/src/fonts/FontManager.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/fonts/FontManager.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/fonts/FontManager.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/fonts/FontManager.cpp
diff --git a/jni/NativeFormats/zlibrary/text/src/fonts/FontManager.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/fonts/FontManager.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/fonts/FontManager.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/fonts/FontManager.h
diff --git a/jni/NativeFormats/zlibrary/text/src/fonts/FontMap.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/fonts/FontMap.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/fonts/FontMap.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/fonts/FontMap.cpp
diff --git a/jni/NativeFormats/zlibrary/text/src/fonts/FontMap.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/fonts/FontMap.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/fonts/FontMap.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/fonts/FontMap.h
diff --git a/jni/NativeFormats/zlibrary/text/src/model/ZLCachedMemoryAllocator.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLCachedMemoryAllocator.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/model/ZLCachedMemoryAllocator.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLCachedMemoryAllocator.cpp
diff --git a/jni/NativeFormats/zlibrary/text/src/model/ZLCachedMemoryAllocator.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLCachedMemoryAllocator.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/model/ZLCachedMemoryAllocator.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLCachedMemoryAllocator.h
diff --git a/jni/NativeFormats/zlibrary/text/src/model/ZLHyperlinkType.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLHyperlinkType.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/model/ZLHyperlinkType.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLHyperlinkType.h
diff --git a/jni/NativeFormats/zlibrary/text/src/model/ZLTextAlignmentType.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextAlignmentType.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/model/ZLTextAlignmentType.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextAlignmentType.h
diff --git a/jni/NativeFormats/zlibrary/text/src/model/ZLTextKind.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextKind.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/model/ZLTextKind.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextKind.h
diff --git a/jni/NativeFormats/zlibrary/text/src/model/ZLTextModel.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextModel.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/model/ZLTextModel.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextModel.cpp
diff --git a/jni/NativeFormats/zlibrary/text/src/model/ZLTextModel.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextModel.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/model/ZLTextModel.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextModel.h
diff --git a/jni/NativeFormats/zlibrary/text/src/model/ZLTextParagraph.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextParagraph.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/model/ZLTextParagraph.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextParagraph.cpp
diff --git a/jni/NativeFormats/zlibrary/text/src/model/ZLTextParagraph.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextParagraph.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/model/ZLTextParagraph.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextParagraph.h
diff --git a/jni/NativeFormats/zlibrary/text/src/model/ZLTextStyleEntry.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextStyleEntry.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/model/ZLTextStyleEntry.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextStyleEntry.cpp
diff --git a/jni/NativeFormats/zlibrary/text/src/model/ZLTextStyleEntry.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextStyleEntry.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/model/ZLTextStyleEntry.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLTextStyleEntry.h
diff --git a/jni/NativeFormats/zlibrary/text/src/model/ZLVideoEntry.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLVideoEntry.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/model/ZLVideoEntry.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLVideoEntry.cpp
diff --git a/jni/NativeFormats/zlibrary/text/src/model/ZLVideoEntry.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLVideoEntry.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/text/src/model/ZLVideoEntry.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/text/src/model/ZLVideoEntry.h
diff --git a/jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaFSDir.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaFSDir.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaFSDir.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaFSDir.cpp
diff --git a/jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaFSDir.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaFSDir.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaFSDir.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaFSDir.h
diff --git a/jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaInputStream.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaInputStream.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaInputStream.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaInputStream.cpp
diff --git a/jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaInputStream.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaInputStream.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaInputStream.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/ui/src/android/filesystem/JavaInputStream.h
diff --git a/jni/NativeFormats/zlibrary/ui/src/android/filesystem/ZLAndroidFSManager.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/ui/src/android/filesystem/ZLAndroidFSManager.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/ui/src/android/filesystem/ZLAndroidFSManager.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/ui/src/android/filesystem/ZLAndroidFSManager.cpp
diff --git a/jni/NativeFormats/zlibrary/ui/src/android/filesystem/ZLAndroidFSManager.h b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/ui/src/android/filesystem/ZLAndroidFSManager.h
similarity index 100%
rename from jni/NativeFormats/zlibrary/ui/src/android/filesystem/ZLAndroidFSManager.h
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/ui/src/android/filesystem/ZLAndroidFSManager.h
diff --git a/jni/NativeFormats/zlibrary/ui/src/android/library/ZLAndroidLibraryImplementation.cpp b/fBReaderJ/src/main/jni/NativeFormats/zlibrary/ui/src/android/library/ZLAndroidLibraryImplementation.cpp
similarity index 100%
rename from jni/NativeFormats/zlibrary/ui/src/android/library/ZLAndroidLibraryImplementation.cpp
rename to fBReaderJ/src/main/jni/NativeFormats/zlibrary/ui/src/android/library/ZLAndroidLibraryImplementation.cpp
diff --git a/jni/expat-2.0.1/COPYING b/fBReaderJ/src/main/jni/expat-2.0.1/COPYING
similarity index 100%
rename from jni/expat-2.0.1/COPYING
rename to fBReaderJ/src/main/jni/expat-2.0.1/COPYING
diff --git a/jni/expat-2.0.1/Changes b/fBReaderJ/src/main/jni/expat-2.0.1/Changes
similarity index 100%
rename from jni/expat-2.0.1/Changes
rename to fBReaderJ/src/main/jni/expat-2.0.1/Changes
diff --git a/jni/expat-2.0.1/MANIFEST b/fBReaderJ/src/main/jni/expat-2.0.1/MANIFEST
similarity index 100%
rename from jni/expat-2.0.1/MANIFEST
rename to fBReaderJ/src/main/jni/expat-2.0.1/MANIFEST
diff --git a/jni/expat-2.0.1/Makefile.in b/fBReaderJ/src/main/jni/expat-2.0.1/Makefile.in
similarity index 100%
rename from jni/expat-2.0.1/Makefile.in
rename to fBReaderJ/src/main/jni/expat-2.0.1/Makefile.in
diff --git a/jni/expat-2.0.1/README b/fBReaderJ/src/main/jni/expat-2.0.1/README
similarity index 100%
rename from jni/expat-2.0.1/README
rename to fBReaderJ/src/main/jni/expat-2.0.1/README
diff --git a/jni/expat-2.0.1/amiga/Makefile b/fBReaderJ/src/main/jni/expat-2.0.1/amiga/Makefile
similarity index 100%
rename from jni/expat-2.0.1/amiga/Makefile
rename to fBReaderJ/src/main/jni/expat-2.0.1/amiga/Makefile
diff --git a/jni/expat-2.0.1/amiga/expat.xml b/fBReaderJ/src/main/jni/expat-2.0.1/amiga/expat.xml
similarity index 99%
rename from jni/expat-2.0.1/amiga/expat.xml
rename to fBReaderJ/src/main/jni/expat-2.0.1/amiga/expat.xml
index d6aeae2e3ab..0bb93dc2089 100644
--- a/jni/expat-2.0.1/amiga/expat.xml
+++ b/fBReaderJ/src/main/jni/expat-2.0.1/amiga/expat.xml
@@ -1,4 +1,4 @@
-
+
diff --git a/jni/expat-2.0.1/amiga/expat_lib.c b/fBReaderJ/src/main/jni/expat-2.0.1/amiga/expat_lib.c
similarity index 100%
rename from jni/expat-2.0.1/amiga/expat_lib.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/amiga/expat_lib.c
diff --git a/jni/expat-2.0.1/amiga/expat_vectors.c b/fBReaderJ/src/main/jni/expat-2.0.1/amiga/expat_vectors.c
similarity index 100%
rename from jni/expat-2.0.1/amiga/expat_vectors.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/amiga/expat_vectors.c
diff --git a/jni/expat-2.0.1/amiga/include/inline4/expat.h b/fBReaderJ/src/main/jni/expat-2.0.1/amiga/include/inline4/expat.h
similarity index 100%
rename from jni/expat-2.0.1/amiga/include/inline4/expat.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/amiga/include/inline4/expat.h
diff --git a/jni/expat-2.0.1/amiga/include/interfaces/expat.h b/fBReaderJ/src/main/jni/expat-2.0.1/amiga/include/interfaces/expat.h
similarity index 100%
rename from jni/expat-2.0.1/amiga/include/interfaces/expat.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/amiga/include/interfaces/expat.h
diff --git a/jni/expat-2.0.1/amiga/include/libraries/expat.h b/fBReaderJ/src/main/jni/expat-2.0.1/amiga/include/libraries/expat.h
similarity index 100%
rename from jni/expat-2.0.1/amiga/include/libraries/expat.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/amiga/include/libraries/expat.h
diff --git a/jni/expat-2.0.1/amiga/include/proto/expat.h b/fBReaderJ/src/main/jni/expat-2.0.1/amiga/include/proto/expat.h
similarity index 100%
rename from jni/expat-2.0.1/amiga/include/proto/expat.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/amiga/include/proto/expat.h
diff --git a/jni/expat-2.0.1/amiga/launch.c b/fBReaderJ/src/main/jni/expat-2.0.1/amiga/launch.c
similarity index 100%
rename from jni/expat-2.0.1/amiga/launch.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/amiga/launch.c
diff --git a/jni/expat-2.0.1/amiga/stdlib.c b/fBReaderJ/src/main/jni/expat-2.0.1/amiga/stdlib.c
similarity index 100%
rename from jni/expat-2.0.1/amiga/stdlib.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/amiga/stdlib.c
diff --git a/jni/expat-2.0.1/bcb5/all_projects.bpg b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/all_projects.bpg
similarity index 100%
rename from jni/expat-2.0.1/bcb5/all_projects.bpg
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/all_projects.bpg
diff --git a/jni/expat-2.0.1/bcb5/elements.bpf b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/elements.bpf
similarity index 100%
rename from jni/expat-2.0.1/bcb5/elements.bpf
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/elements.bpf
diff --git a/jni/expat-2.0.1/bcb5/elements.bpr b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/elements.bpr
similarity index 100%
rename from jni/expat-2.0.1/bcb5/elements.bpr
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/elements.bpr
diff --git a/jni/expat-2.0.1/bcb5/elements.mak b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/elements.mak
similarity index 100%
rename from jni/expat-2.0.1/bcb5/elements.mak
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/elements.mak
diff --git a/jni/expat-2.0.1/bcb5/expat.bpf b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expat.bpf
similarity index 100%
rename from jni/expat-2.0.1/bcb5/expat.bpf
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expat.bpf
diff --git a/jni/expat-2.0.1/bcb5/expat.bpr b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expat.bpr
similarity index 100%
rename from jni/expat-2.0.1/bcb5/expat.bpr
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expat.bpr
diff --git a/jni/expat-2.0.1/bcb5/expat.mak b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expat.mak
similarity index 100%
rename from jni/expat-2.0.1/bcb5/expat.mak
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expat.mak
diff --git a/jni/expat-2.0.1/bcb5/expat_static.bpf b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expat_static.bpf
similarity index 100%
rename from jni/expat-2.0.1/bcb5/expat_static.bpf
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expat_static.bpf
diff --git a/jni/expat-2.0.1/bcb5/expat_static.bpr b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expat_static.bpr
similarity index 100%
rename from jni/expat-2.0.1/bcb5/expat_static.bpr
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expat_static.bpr
diff --git a/jni/expat-2.0.1/bcb5/expat_static.mak b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expat_static.mak
similarity index 100%
rename from jni/expat-2.0.1/bcb5/expat_static.mak
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expat_static.mak
diff --git a/jni/expat-2.0.1/bcb5/expatw.bpf b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expatw.bpf
similarity index 100%
rename from jni/expat-2.0.1/bcb5/expatw.bpf
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expatw.bpf
diff --git a/jni/expat-2.0.1/bcb5/expatw.bpr b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expatw.bpr
similarity index 100%
rename from jni/expat-2.0.1/bcb5/expatw.bpr
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expatw.bpr
diff --git a/jni/expat-2.0.1/bcb5/expatw.mak b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expatw.mak
similarity index 100%
rename from jni/expat-2.0.1/bcb5/expatw.mak
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expatw.mak
diff --git a/jni/expat-2.0.1/bcb5/expatw_static.bpf b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expatw_static.bpf
similarity index 100%
rename from jni/expat-2.0.1/bcb5/expatw_static.bpf
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expatw_static.bpf
diff --git a/jni/expat-2.0.1/bcb5/expatw_static.bpr b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expatw_static.bpr
similarity index 100%
rename from jni/expat-2.0.1/bcb5/expatw_static.bpr
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expatw_static.bpr
diff --git a/jni/expat-2.0.1/bcb5/expatw_static.mak b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expatw_static.mak
similarity index 100%
rename from jni/expat-2.0.1/bcb5/expatw_static.mak
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/expatw_static.mak
diff --git a/jni/expat-2.0.1/bcb5/libexpat_mtd.def b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/libexpat_mtd.def
similarity index 100%
rename from jni/expat-2.0.1/bcb5/libexpat_mtd.def
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/libexpat_mtd.def
diff --git a/jni/expat-2.0.1/bcb5/libexpatw_mtd.def b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/libexpatw_mtd.def
similarity index 100%
rename from jni/expat-2.0.1/bcb5/libexpatw_mtd.def
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/libexpatw_mtd.def
diff --git a/jni/expat-2.0.1/bcb5/makefile.mak b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/makefile.mak
similarity index 100%
rename from jni/expat-2.0.1/bcb5/makefile.mak
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/makefile.mak
diff --git a/jni/expat-2.0.1/bcb5/outline.bpf b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/outline.bpf
similarity index 100%
rename from jni/expat-2.0.1/bcb5/outline.bpf
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/outline.bpf
diff --git a/jni/expat-2.0.1/bcb5/outline.bpr b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/outline.bpr
similarity index 100%
rename from jni/expat-2.0.1/bcb5/outline.bpr
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/outline.bpr
diff --git a/jni/expat-2.0.1/bcb5/outline.mak b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/outline.mak
similarity index 100%
rename from jni/expat-2.0.1/bcb5/outline.mak
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/outline.mak
diff --git a/jni/expat-2.0.1/bcb5/setup.bat b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/setup.bat
similarity index 100%
rename from jni/expat-2.0.1/bcb5/setup.bat
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/setup.bat
diff --git a/jni/expat-2.0.1/bcb5/xmlwf.bpf b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/xmlwf.bpf
similarity index 100%
rename from jni/expat-2.0.1/bcb5/xmlwf.bpf
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/xmlwf.bpf
diff --git a/jni/expat-2.0.1/bcb5/xmlwf.bpr b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/xmlwf.bpr
similarity index 100%
rename from jni/expat-2.0.1/bcb5/xmlwf.bpr
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/xmlwf.bpr
diff --git a/jni/expat-2.0.1/bcb5/xmlwf.mak b/fBReaderJ/src/main/jni/expat-2.0.1/bcb5/xmlwf.mak
similarity index 100%
rename from jni/expat-2.0.1/bcb5/xmlwf.mak
rename to fBReaderJ/src/main/jni/expat-2.0.1/bcb5/xmlwf.mak
diff --git a/jni/expat-2.0.1/configure b/fBReaderJ/src/main/jni/expat-2.0.1/configure
similarity index 100%
rename from jni/expat-2.0.1/configure
rename to fBReaderJ/src/main/jni/expat-2.0.1/configure
diff --git a/jni/expat-2.0.1/configure.in b/fBReaderJ/src/main/jni/expat-2.0.1/configure.in
similarity index 100%
rename from jni/expat-2.0.1/configure.in
rename to fBReaderJ/src/main/jni/expat-2.0.1/configure.in
diff --git a/jni/expat-2.0.1/conftools/PrintPath b/fBReaderJ/src/main/jni/expat-2.0.1/conftools/PrintPath
similarity index 100%
rename from jni/expat-2.0.1/conftools/PrintPath
rename to fBReaderJ/src/main/jni/expat-2.0.1/conftools/PrintPath
diff --git a/jni/expat-2.0.1/conftools/ac_c_bigendian_cross.m4 b/fBReaderJ/src/main/jni/expat-2.0.1/conftools/ac_c_bigendian_cross.m4
similarity index 100%
rename from jni/expat-2.0.1/conftools/ac_c_bigendian_cross.m4
rename to fBReaderJ/src/main/jni/expat-2.0.1/conftools/ac_c_bigendian_cross.m4
diff --git a/jni/expat-2.0.1/conftools/config.guess b/fBReaderJ/src/main/jni/expat-2.0.1/conftools/config.guess
similarity index 100%
rename from jni/expat-2.0.1/conftools/config.guess
rename to fBReaderJ/src/main/jni/expat-2.0.1/conftools/config.guess
diff --git a/jni/expat-2.0.1/conftools/config.sub b/fBReaderJ/src/main/jni/expat-2.0.1/conftools/config.sub
similarity index 100%
rename from jni/expat-2.0.1/conftools/config.sub
rename to fBReaderJ/src/main/jni/expat-2.0.1/conftools/config.sub
diff --git a/jni/expat-2.0.1/conftools/expat.m4 b/fBReaderJ/src/main/jni/expat-2.0.1/conftools/expat.m4
similarity index 100%
rename from jni/expat-2.0.1/conftools/expat.m4
rename to fBReaderJ/src/main/jni/expat-2.0.1/conftools/expat.m4
diff --git a/jni/expat-2.0.1/conftools/get-version.sh b/fBReaderJ/src/main/jni/expat-2.0.1/conftools/get-version.sh
similarity index 100%
rename from jni/expat-2.0.1/conftools/get-version.sh
rename to fBReaderJ/src/main/jni/expat-2.0.1/conftools/get-version.sh
diff --git a/jni/expat-2.0.1/conftools/install-sh b/fBReaderJ/src/main/jni/expat-2.0.1/conftools/install-sh
similarity index 100%
rename from jni/expat-2.0.1/conftools/install-sh
rename to fBReaderJ/src/main/jni/expat-2.0.1/conftools/install-sh
diff --git a/jni/expat-2.0.1/conftools/libtool.m4 b/fBReaderJ/src/main/jni/expat-2.0.1/conftools/libtool.m4
similarity index 100%
rename from jni/expat-2.0.1/conftools/libtool.m4
rename to fBReaderJ/src/main/jni/expat-2.0.1/conftools/libtool.m4
diff --git a/jni/expat-2.0.1/conftools/ltmain.sh b/fBReaderJ/src/main/jni/expat-2.0.1/conftools/ltmain.sh
similarity index 100%
rename from jni/expat-2.0.1/conftools/ltmain.sh
rename to fBReaderJ/src/main/jni/expat-2.0.1/conftools/ltmain.sh
diff --git a/jni/expat-2.0.1/conftools/mkinstalldirs b/fBReaderJ/src/main/jni/expat-2.0.1/conftools/mkinstalldirs
similarity index 100%
rename from jni/expat-2.0.1/conftools/mkinstalldirs
rename to fBReaderJ/src/main/jni/expat-2.0.1/conftools/mkinstalldirs
diff --git a/jni/expat-2.0.1/doc/expat.png b/fBReaderJ/src/main/jni/expat-2.0.1/doc/expat.png
similarity index 100%
rename from jni/expat-2.0.1/doc/expat.png
rename to fBReaderJ/src/main/jni/expat-2.0.1/doc/expat.png
diff --git a/jni/expat-2.0.1/doc/reference.html b/fBReaderJ/src/main/jni/expat-2.0.1/doc/reference.html
similarity index 100%
rename from jni/expat-2.0.1/doc/reference.html
rename to fBReaderJ/src/main/jni/expat-2.0.1/doc/reference.html
diff --git a/jni/expat-2.0.1/doc/style.css b/fBReaderJ/src/main/jni/expat-2.0.1/doc/style.css
similarity index 100%
rename from jni/expat-2.0.1/doc/style.css
rename to fBReaderJ/src/main/jni/expat-2.0.1/doc/style.css
diff --git a/jni/expat-2.0.1/doc/valid-xhtml10.png b/fBReaderJ/src/main/jni/expat-2.0.1/doc/valid-xhtml10.png
similarity index 100%
rename from jni/expat-2.0.1/doc/valid-xhtml10.png
rename to fBReaderJ/src/main/jni/expat-2.0.1/doc/valid-xhtml10.png
diff --git a/jni/expat-2.0.1/doc/xmlwf.1 b/fBReaderJ/src/main/jni/expat-2.0.1/doc/xmlwf.1
similarity index 100%
rename from jni/expat-2.0.1/doc/xmlwf.1
rename to fBReaderJ/src/main/jni/expat-2.0.1/doc/xmlwf.1
diff --git a/jni/expat-2.0.1/doc/xmlwf.sgml b/fBReaderJ/src/main/jni/expat-2.0.1/doc/xmlwf.sgml
similarity index 100%
rename from jni/expat-2.0.1/doc/xmlwf.sgml
rename to fBReaderJ/src/main/jni/expat-2.0.1/doc/xmlwf.sgml
diff --git a/jni/expat-2.0.1/examples/elements.c b/fBReaderJ/src/main/jni/expat-2.0.1/examples/elements.c
similarity index 100%
rename from jni/expat-2.0.1/examples/elements.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/examples/elements.c
diff --git a/jni/expat-2.0.1/examples/elements.dsp b/fBReaderJ/src/main/jni/expat-2.0.1/examples/elements.dsp
similarity index 100%
rename from jni/expat-2.0.1/examples/elements.dsp
rename to fBReaderJ/src/main/jni/expat-2.0.1/examples/elements.dsp
diff --git a/jni/expat-2.0.1/examples/outline.c b/fBReaderJ/src/main/jni/expat-2.0.1/examples/outline.c
similarity index 100%
rename from jni/expat-2.0.1/examples/outline.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/examples/outline.c
diff --git a/jni/expat-2.0.1/examples/outline.dsp b/fBReaderJ/src/main/jni/expat-2.0.1/examples/outline.dsp
similarity index 100%
rename from jni/expat-2.0.1/examples/outline.dsp
rename to fBReaderJ/src/main/jni/expat-2.0.1/examples/outline.dsp
diff --git a/jni/expat-2.0.1/expat.dsw b/fBReaderJ/src/main/jni/expat-2.0.1/expat.dsw
similarity index 100%
rename from jni/expat-2.0.1/expat.dsw
rename to fBReaderJ/src/main/jni/expat-2.0.1/expat.dsw
diff --git a/jni/expat-2.0.1/expat_config.h b/fBReaderJ/src/main/jni/expat-2.0.1/expat_config.h
similarity index 100%
rename from jni/expat-2.0.1/expat_config.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/expat_config.h
diff --git a/jni/expat-2.0.1/expat_config.h.in b/fBReaderJ/src/main/jni/expat-2.0.1/expat_config.h.in
similarity index 100%
rename from jni/expat-2.0.1/expat_config.h.in
rename to fBReaderJ/src/main/jni/expat-2.0.1/expat_config.h.in
diff --git a/jni/expat-2.0.1/lib/Makefile.MPW b/fBReaderJ/src/main/jni/expat-2.0.1/lib/Makefile.MPW
similarity index 100%
rename from jni/expat-2.0.1/lib/Makefile.MPW
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/Makefile.MPW
diff --git a/jni/expat-2.0.1/lib/amigaconfig.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/amigaconfig.h
similarity index 100%
rename from jni/expat-2.0.1/lib/amigaconfig.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/amigaconfig.h
diff --git a/jni/expat-2.0.1/lib/ascii.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/ascii.h
similarity index 100%
rename from jni/expat-2.0.1/lib/ascii.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/ascii.h
diff --git a/jni/expat-2.0.1/lib/asciitab.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/asciitab.h
similarity index 100%
rename from jni/expat-2.0.1/lib/asciitab.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/asciitab.h
diff --git a/jni/expat-2.0.1/lib/expat.dsp b/fBReaderJ/src/main/jni/expat-2.0.1/lib/expat.dsp
similarity index 100%
rename from jni/expat-2.0.1/lib/expat.dsp
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/expat.dsp
diff --git a/jni/expat-2.0.1/lib/expat.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/expat.h
similarity index 100%
rename from jni/expat-2.0.1/lib/expat.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/expat.h
diff --git a/jni/expat-2.0.1/lib/expat_external.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/expat_external.h
similarity index 100%
rename from jni/expat-2.0.1/lib/expat_external.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/expat_external.h
diff --git a/jni/expat-2.0.1/lib/expat_static.dsp b/fBReaderJ/src/main/jni/expat-2.0.1/lib/expat_static.dsp
similarity index 100%
rename from jni/expat-2.0.1/lib/expat_static.dsp
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/expat_static.dsp
diff --git a/jni/expat-2.0.1/lib/expatw.dsp b/fBReaderJ/src/main/jni/expat-2.0.1/lib/expatw.dsp
similarity index 100%
rename from jni/expat-2.0.1/lib/expatw.dsp
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/expatw.dsp
diff --git a/jni/expat-2.0.1/lib/expatw_static.dsp b/fBReaderJ/src/main/jni/expat-2.0.1/lib/expatw_static.dsp
similarity index 100%
rename from jni/expat-2.0.1/lib/expatw_static.dsp
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/expatw_static.dsp
diff --git a/jni/expat-2.0.1/lib/iasciitab.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/iasciitab.h
similarity index 100%
rename from jni/expat-2.0.1/lib/iasciitab.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/iasciitab.h
diff --git a/jni/expat-2.0.1/lib/internal.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/internal.h
similarity index 100%
rename from jni/expat-2.0.1/lib/internal.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/internal.h
diff --git a/jni/expat-2.0.1/lib/latin1tab.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/latin1tab.h
similarity index 100%
rename from jni/expat-2.0.1/lib/latin1tab.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/latin1tab.h
diff --git a/jni/expat-2.0.1/lib/libexpat.def b/fBReaderJ/src/main/jni/expat-2.0.1/lib/libexpat.def
similarity index 100%
rename from jni/expat-2.0.1/lib/libexpat.def
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/libexpat.def
diff --git a/jni/expat-2.0.1/lib/libexpatw.def b/fBReaderJ/src/main/jni/expat-2.0.1/lib/libexpatw.def
similarity index 100%
rename from jni/expat-2.0.1/lib/libexpatw.def
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/libexpatw.def
diff --git a/jni/expat-2.0.1/lib/macconfig.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/macconfig.h
similarity index 100%
rename from jni/expat-2.0.1/lib/macconfig.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/macconfig.h
diff --git a/jni/expat-2.0.1/lib/nametab.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/nametab.h
similarity index 100%
rename from jni/expat-2.0.1/lib/nametab.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/nametab.h
diff --git a/jni/expat-2.0.1/lib/utf8tab.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/utf8tab.h
similarity index 100%
rename from jni/expat-2.0.1/lib/utf8tab.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/utf8tab.h
diff --git a/jni/expat-2.0.1/lib/winconfig.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/winconfig.h
similarity index 100%
rename from jni/expat-2.0.1/lib/winconfig.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/winconfig.h
diff --git a/jni/expat-2.0.1/lib/xmlparse.c b/fBReaderJ/src/main/jni/expat-2.0.1/lib/xmlparse.c
similarity index 100%
rename from jni/expat-2.0.1/lib/xmlparse.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/xmlparse.c
diff --git a/jni/expat-2.0.1/lib/xmlrole.c b/fBReaderJ/src/main/jni/expat-2.0.1/lib/xmlrole.c
similarity index 100%
rename from jni/expat-2.0.1/lib/xmlrole.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/xmlrole.c
diff --git a/jni/expat-2.0.1/lib/xmlrole.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/xmlrole.h
similarity index 100%
rename from jni/expat-2.0.1/lib/xmlrole.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/xmlrole.h
diff --git a/jni/expat-2.0.1/lib/xmltok.c b/fBReaderJ/src/main/jni/expat-2.0.1/lib/xmltok.c
similarity index 100%
rename from jni/expat-2.0.1/lib/xmltok.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/xmltok.c
diff --git a/jni/expat-2.0.1/lib/xmltok.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/xmltok.h
similarity index 100%
rename from jni/expat-2.0.1/lib/xmltok.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/xmltok.h
diff --git a/jni/expat-2.0.1/lib/xmltok_impl.c b/fBReaderJ/src/main/jni/expat-2.0.1/lib/xmltok_impl.c
similarity index 100%
rename from jni/expat-2.0.1/lib/xmltok_impl.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/xmltok_impl.c
diff --git a/jni/expat-2.0.1/lib/xmltok_impl.h b/fBReaderJ/src/main/jni/expat-2.0.1/lib/xmltok_impl.h
similarity index 100%
rename from jni/expat-2.0.1/lib/xmltok_impl.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/xmltok_impl.h
diff --git a/jni/expat-2.0.1/lib/xmltok_ns.c b/fBReaderJ/src/main/jni/expat-2.0.1/lib/xmltok_ns.c
similarity index 100%
rename from jni/expat-2.0.1/lib/xmltok_ns.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/lib/xmltok_ns.c
diff --git a/jni/expat-2.0.1/tests/benchmark/benchmark.c b/fBReaderJ/src/main/jni/expat-2.0.1/tests/benchmark/benchmark.c
similarity index 100%
rename from jni/expat-2.0.1/tests/benchmark/benchmark.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/tests/benchmark/benchmark.c
diff --git a/jni/expat-2.0.1/tests/benchmark/benchmark.dsp b/fBReaderJ/src/main/jni/expat-2.0.1/tests/benchmark/benchmark.dsp
similarity index 100%
rename from jni/expat-2.0.1/tests/benchmark/benchmark.dsp
rename to fBReaderJ/src/main/jni/expat-2.0.1/tests/benchmark/benchmark.dsp
diff --git a/jni/expat-2.0.1/tests/benchmark/benchmark.dsw b/fBReaderJ/src/main/jni/expat-2.0.1/tests/benchmark/benchmark.dsw
similarity index 100%
rename from jni/expat-2.0.1/tests/benchmark/benchmark.dsw
rename to fBReaderJ/src/main/jni/expat-2.0.1/tests/benchmark/benchmark.dsw
diff --git a/jni/expat-2.0.1/tests/chardata.c b/fBReaderJ/src/main/jni/expat-2.0.1/tests/chardata.c
similarity index 100%
rename from jni/expat-2.0.1/tests/chardata.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/tests/chardata.c
diff --git a/jni/expat-2.0.1/tests/chardata.h b/fBReaderJ/src/main/jni/expat-2.0.1/tests/chardata.h
similarity index 100%
rename from jni/expat-2.0.1/tests/chardata.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/tests/chardata.h
diff --git a/jni/expat-2.0.1/tests/minicheck.c b/fBReaderJ/src/main/jni/expat-2.0.1/tests/minicheck.c
similarity index 100%
rename from jni/expat-2.0.1/tests/minicheck.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/tests/minicheck.c
diff --git a/jni/expat-2.0.1/tests/minicheck.h b/fBReaderJ/src/main/jni/expat-2.0.1/tests/minicheck.h
similarity index 100%
rename from jni/expat-2.0.1/tests/minicheck.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/tests/minicheck.h
diff --git a/jni/expat-2.0.1/tests/runtests.c b/fBReaderJ/src/main/jni/expat-2.0.1/tests/runtests.c
similarity index 100%
rename from jni/expat-2.0.1/tests/runtests.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/tests/runtests.c
diff --git a/jni/expat-2.0.1/tests/runtestspp.cpp b/fBReaderJ/src/main/jni/expat-2.0.1/tests/runtestspp.cpp
similarity index 100%
rename from jni/expat-2.0.1/tests/runtestspp.cpp
rename to fBReaderJ/src/main/jni/expat-2.0.1/tests/runtestspp.cpp
diff --git a/jni/expat-2.0.1/tests/xmltest.sh b/fBReaderJ/src/main/jni/expat-2.0.1/tests/xmltest.sh
similarity index 100%
rename from jni/expat-2.0.1/tests/xmltest.sh
rename to fBReaderJ/src/main/jni/expat-2.0.1/tests/xmltest.sh
diff --git a/jni/expat-2.0.1/vms/README.vms b/fBReaderJ/src/main/jni/expat-2.0.1/vms/README.vms
similarity index 100%
rename from jni/expat-2.0.1/vms/README.vms
rename to fBReaderJ/src/main/jni/expat-2.0.1/vms/README.vms
diff --git a/jni/expat-2.0.1/vms/descrip.mms b/fBReaderJ/src/main/jni/expat-2.0.1/vms/descrip.mms
similarity index 100%
rename from jni/expat-2.0.1/vms/descrip.mms
rename to fBReaderJ/src/main/jni/expat-2.0.1/vms/descrip.mms
diff --git a/jni/expat-2.0.1/vms/expat_config.h b/fBReaderJ/src/main/jni/expat-2.0.1/vms/expat_config.h
similarity index 100%
rename from jni/expat-2.0.1/vms/expat_config.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/vms/expat_config.h
diff --git a/jni/expat-2.0.1/win32/expat.iss b/fBReaderJ/src/main/jni/expat-2.0.1/win32/expat.iss
similarity index 100%
rename from jni/expat-2.0.1/win32/expat.iss
rename to fBReaderJ/src/main/jni/expat-2.0.1/win32/expat.iss
diff --git a/jni/expat-2.0.1/xmlwf/codepage.c b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/codepage.c
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/codepage.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/codepage.c
diff --git a/jni/expat-2.0.1/xmlwf/codepage.h b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/codepage.h
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/codepage.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/codepage.h
diff --git a/jni/expat-2.0.1/xmlwf/ct.c b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/ct.c
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/ct.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/ct.c
diff --git a/jni/expat-2.0.1/xmlwf/filemap.h b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/filemap.h
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/filemap.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/filemap.h
diff --git a/jni/expat-2.0.1/xmlwf/readfilemap.c b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/readfilemap.c
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/readfilemap.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/readfilemap.c
diff --git a/jni/expat-2.0.1/xmlwf/unixfilemap.c b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/unixfilemap.c
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/unixfilemap.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/unixfilemap.c
diff --git a/jni/expat-2.0.1/xmlwf/win32filemap.c b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/win32filemap.c
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/win32filemap.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/win32filemap.c
diff --git a/jni/expat-2.0.1/xmlwf/xmlfile.c b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlfile.c
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/xmlfile.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlfile.c
diff --git a/jni/expat-2.0.1/xmlwf/xmlfile.h b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlfile.h
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/xmlfile.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlfile.h
diff --git a/jni/expat-2.0.1/xmlwf/xmlmime.c b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlmime.c
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/xmlmime.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlmime.c
diff --git a/jni/expat-2.0.1/xmlwf/xmlmime.h b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlmime.h
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/xmlmime.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlmime.h
diff --git a/jni/expat-2.0.1/xmlwf/xmltchar.h b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmltchar.h
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/xmltchar.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmltchar.h
diff --git a/jni/expat-2.0.1/xmlwf/xmlurl.h b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlurl.h
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/xmlurl.h
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlurl.h
diff --git a/jni/expat-2.0.1/xmlwf/xmlwf.c b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlwf.c
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/xmlwf.c
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlwf.c
diff --git a/jni/expat-2.0.1/xmlwf/xmlwf.dsp b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlwf.dsp
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/xmlwf.dsp
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlwf.dsp
diff --git a/jni/expat-2.0.1/xmlwf/xmlwin32url.cxx b/fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlwin32url.cxx
similarity index 100%
rename from jni/expat-2.0.1/xmlwf/xmlwin32url.cxx
rename to fBReaderJ/src/main/jni/expat-2.0.1/xmlwf/xmlwin32url.cxx
diff --git a/res/drawable-hdpi/fbreader.png b/fBReaderJ/src/main/res/drawable-hdpi/fbreader.png
similarity index 100%
rename from res/drawable-hdpi/fbreader.png
rename to fBReaderJ/src/main/res/drawable-hdpi/fbreader.png
diff --git a/res/drawable-hdpi/fbreader_bw.png b/fBReaderJ/src/main/res/drawable-hdpi/fbreader_bw.png
similarity index 100%
rename from res/drawable-hdpi/fbreader_bw.png
rename to fBReaderJ/src/main/res/drawable-hdpi/fbreader_bw.png
diff --git a/res/drawable-hdpi/ic_menu_add.png b/fBReaderJ/src/main/res/drawable-hdpi/ic_menu_add.png
similarity index 100%
rename from res/drawable-hdpi/ic_menu_add.png
rename to fBReaderJ/src/main/res/drawable-hdpi/ic_menu_add.png
diff --git a/res/drawable-hdpi/ic_menu_bookmarks.png b/fBReaderJ/src/main/res/drawable-hdpi/ic_menu_bookmarks.png
similarity index 100%
rename from res/drawable-hdpi/ic_menu_bookmarks.png
rename to fBReaderJ/src/main/res/drawable-hdpi/ic_menu_bookmarks.png
diff --git a/res/drawable-hdpi/ic_menu_day.png b/fBReaderJ/src/main/res/drawable-hdpi/ic_menu_day.png
similarity index 100%
rename from res/drawable-hdpi/ic_menu_day.png
rename to fBReaderJ/src/main/res/drawable-hdpi/ic_menu_day.png
diff --git a/res/drawable-hdpi/ic_menu_filter.png b/fBReaderJ/src/main/res/drawable-hdpi/ic_menu_filter.png
similarity index 100%
rename from res/drawable-hdpi/ic_menu_filter.png
rename to fBReaderJ/src/main/res/drawable-hdpi/ic_menu_filter.png
diff --git a/res/drawable-hdpi/ic_menu_library.png b/fBReaderJ/src/main/res/drawable-hdpi/ic_menu_library.png
similarity index 100%
rename from res/drawable-hdpi/ic_menu_library.png
rename to fBReaderJ/src/main/res/drawable-hdpi/ic_menu_library.png
diff --git a/res/drawable-hdpi/ic_menu_networklibrary.png b/fBReaderJ/src/main/res/drawable-hdpi/ic_menu_networklibrary.png
similarity index 100%
rename from res/drawable-hdpi/ic_menu_networklibrary.png
rename to fBReaderJ/src/main/res/drawable-hdpi/ic_menu_networklibrary.png
diff --git a/res/drawable-hdpi/ic_menu_night.png b/fBReaderJ/src/main/res/drawable-hdpi/ic_menu_night.png
similarity index 100%
rename from res/drawable-hdpi/ic_menu_night.png
rename to fBReaderJ/src/main/res/drawable-hdpi/ic_menu_night.png
diff --git a/res/drawable-hdpi/ic_menu_refresh.png b/fBReaderJ/src/main/res/drawable-hdpi/ic_menu_refresh.png
similarity index 100%
rename from res/drawable-hdpi/ic_menu_refresh.png
rename to fBReaderJ/src/main/res/drawable-hdpi/ic_menu_refresh.png
diff --git a/res/drawable-hdpi/ic_menu_search.png b/fBReaderJ/src/main/res/drawable-hdpi/ic_menu_search.png
similarity index 100%
rename from res/drawable-hdpi/ic_menu_search.png
rename to fBReaderJ/src/main/res/drawable-hdpi/ic_menu_search.png
diff --git a/res/drawable-hdpi/ic_menu_toc.png b/fBReaderJ/src/main/res/drawable-hdpi/ic_menu_toc.png
similarity index 100%
rename from res/drawable-hdpi/ic_menu_toc.png
rename to fBReaderJ/src/main/res/drawable-hdpi/ic_menu_toc.png
diff --git a/res/drawable-ldpi/fbreader.png b/fBReaderJ/src/main/res/drawable-ldpi/fbreader.png
similarity index 100%
rename from res/drawable-ldpi/fbreader.png
rename to fBReaderJ/src/main/res/drawable-ldpi/fbreader.png
diff --git a/res/drawable-ldpi/fbreader_bw.png b/fBReaderJ/src/main/res/drawable-ldpi/fbreader_bw.png
similarity index 100%
rename from res/drawable-ldpi/fbreader_bw.png
rename to fBReaderJ/src/main/res/drawable-ldpi/fbreader_bw.png
diff --git a/res/drawable-mdpi/fbreader.png b/fBReaderJ/src/main/res/drawable-mdpi/fbreader.png
similarity index 100%
rename from res/drawable-mdpi/fbreader.png
rename to fBReaderJ/src/main/res/drawable-mdpi/fbreader.png
diff --git a/res/drawable-mdpi/fbreader_bw.png b/fBReaderJ/src/main/res/drawable-mdpi/fbreader_bw.png
similarity index 100%
rename from res/drawable-mdpi/fbreader_bw.png
rename to fBReaderJ/src/main/res/drawable-mdpi/fbreader_bw.png
diff --git a/res/drawable-xhdpi/fbreader.png b/fBReaderJ/src/main/res/drawable-xhdpi/fbreader.png
similarity index 100%
rename from res/drawable-xhdpi/fbreader.png
rename to fBReaderJ/src/main/res/drawable-xhdpi/fbreader.png
diff --git a/res/drawable-xhdpi/fbreader_bw.png b/fBReaderJ/src/main/res/drawable-xhdpi/fbreader_bw.png
similarity index 100%
rename from res/drawable-xhdpi/fbreader_bw.png
rename to fBReaderJ/src/main/res/drawable-xhdpi/fbreader_bw.png
diff --git a/res/drawable-xxhdpi/fbreader.png b/fBReaderJ/src/main/res/drawable-xxhdpi/fbreader.png
similarity index 100%
rename from res/drawable-xxhdpi/fbreader.png
rename to fBReaderJ/src/main/res/drawable-xxhdpi/fbreader.png
diff --git a/res/drawable-xxhdpi/fbreader_bw.png b/fBReaderJ/src/main/res/drawable-xxhdpi/fbreader_bw.png
similarity index 100%
rename from res/drawable-xxhdpi/fbreader_bw.png
rename to fBReaderJ/src/main/res/drawable-xxhdpi/fbreader_bw.png
diff --git a/res/drawable/drag_icon.png b/fBReaderJ/src/main/res/drawable/drag_icon.png
similarity index 100%
rename from res/drawable/drag_icon.png
rename to fBReaderJ/src/main/res/drawable/drag_icon.png
diff --git a/res/drawable/dropdown.xml b/fBReaderJ/src/main/res/drawable/dropdown.xml
similarity index 100%
rename from res/drawable/dropdown.xml
rename to fBReaderJ/src/main/res/drawable/dropdown.xml
diff --git a/res/drawable/dropdown_normal.png b/fBReaderJ/src/main/res/drawable/dropdown_normal.png
similarity index 100%
rename from res/drawable/dropdown_normal.png
rename to fBReaderJ/src/main/res/drawable/dropdown_normal.png
diff --git a/res/drawable/dropdown_pressed.png b/fBReaderJ/src/main/res/drawable/dropdown_pressed.png
similarity index 100%
rename from res/drawable/dropdown_pressed.png
rename to fBReaderJ/src/main/res/drawable/dropdown_pressed.png
diff --git a/res/drawable/dropdown_selected.png b/fBReaderJ/src/main/res/drawable/dropdown_selected.png
similarity index 100%
rename from res/drawable/dropdown_selected.png
rename to fBReaderJ/src/main/res/drawable/dropdown_selected.png
diff --git a/res/drawable/ic_list_buy.png b/fBReaderJ/src/main/res/drawable/ic_list_buy.png
similarity index 100%
rename from res/drawable/ic_list_buy.png
rename to fBReaderJ/src/main/res/drawable/ic_list_buy.png
diff --git a/res/drawable/ic_list_download.png b/fBReaderJ/src/main/res/drawable/ic_list_download.png
similarity index 100%
rename from res/drawable/ic_list_download.png
rename to fBReaderJ/src/main/res/drawable/ic_list_download.png
diff --git a/res/drawable/ic_list_downloading.png b/fBReaderJ/src/main/res/drawable/ic_list_downloading.png
similarity index 100%
rename from res/drawable/ic_list_downloading.png
rename to fBReaderJ/src/main/res/drawable/ic_list_downloading.png
diff --git a/res/drawable/ic_list_flag.png b/fBReaderJ/src/main/res/drawable/ic_list_flag.png
similarity index 100%
rename from res/drawable/ic_list_flag.png
rename to fBReaderJ/src/main/res/drawable/ic_list_flag.png
diff --git a/res/drawable/ic_list_group_closed.png b/fBReaderJ/src/main/res/drawable/ic_list_group_closed.png
similarity index 100%
rename from res/drawable/ic_list_group_closed.png
rename to fBReaderJ/src/main/res/drawable/ic_list_group_closed.png
diff --git a/res/drawable/ic_list_group_empty.png b/fBReaderJ/src/main/res/drawable/ic_list_group_empty.png
similarity index 100%
rename from res/drawable/ic_list_group_empty.png
rename to fBReaderJ/src/main/res/drawable/ic_list_group_empty.png
diff --git a/res/drawable/ic_list_group_open.png b/fBReaderJ/src/main/res/drawable/ic_list_group_open.png
similarity index 100%
rename from res/drawable/ic_list_group_open.png
rename to fBReaderJ/src/main/res/drawable/ic_list_group_open.png
diff --git a/res/drawable/ic_list_library_author.png b/fBReaderJ/src/main/res/drawable/ic_list_library_author.png
similarity index 100%
rename from res/drawable/ic_list_library_author.png
rename to fBReaderJ/src/main/res/drawable/ic_list_library_author.png
diff --git a/res/drawable/ic_list_library_authors.png b/fBReaderJ/src/main/res/drawable/ic_list_library_authors.png
similarity index 100%
rename from res/drawable/ic_list_library_authors.png
rename to fBReaderJ/src/main/res/drawable/ic_list_library_authors.png
diff --git a/res/drawable/ic_list_library_basket.png b/fBReaderJ/src/main/res/drawable/ic_list_library_basket.png
similarity index 100%
rename from res/drawable/ic_list_library_basket.png
rename to fBReaderJ/src/main/res/drawable/ic_list_library_basket.png
diff --git a/res/drawable/ic_list_library_book.png b/fBReaderJ/src/main/res/drawable/ic_list_library_book.png
similarity index 100%
rename from res/drawable/ic_list_library_book.png
rename to fBReaderJ/src/main/res/drawable/ic_list_library_book.png
diff --git a/res/drawable/ic_list_library_books.png b/fBReaderJ/src/main/res/drawable/ic_list_library_books.png
similarity index 100%
rename from res/drawable/ic_list_library_books.png
rename to fBReaderJ/src/main/res/drawable/ic_list_library_books.png
diff --git a/res/drawable/ic_list_library_favorites.png b/fBReaderJ/src/main/res/drawable/ic_list_library_favorites.png
similarity index 100%
rename from res/drawable/ic_list_library_favorites.png
rename to fBReaderJ/src/main/res/drawable/ic_list_library_favorites.png
diff --git a/res/drawable/ic_list_library_folder.png b/fBReaderJ/src/main/res/drawable/ic_list_library_folder.png
similarity index 100%
rename from res/drawable/ic_list_library_folder.png
rename to fBReaderJ/src/main/res/drawable/ic_list_library_folder.png
diff --git a/res/drawable/ic_list_library_permission_denied.png b/fBReaderJ/src/main/res/drawable/ic_list_library_permission_denied.png
similarity index 100%
rename from res/drawable/ic_list_library_permission_denied.png
rename to fBReaderJ/src/main/res/drawable/ic_list_library_permission_denied.png
diff --git a/res/drawable/ic_list_library_recent.png b/fBReaderJ/src/main/res/drawable/ic_list_library_recent.png
similarity index 100%
rename from res/drawable/ic_list_library_recent.png
rename to fBReaderJ/src/main/res/drawable/ic_list_library_recent.png
diff --git a/res/drawable/ic_list_library_search.png b/fBReaderJ/src/main/res/drawable/ic_list_library_search.png
similarity index 100%
rename from res/drawable/ic_list_library_search.png
rename to fBReaderJ/src/main/res/drawable/ic_list_library_search.png
diff --git a/res/drawable/ic_list_library_tag.png b/fBReaderJ/src/main/res/drawable/ic_list_library_tag.png
similarity index 100%
rename from res/drawable/ic_list_library_tag.png
rename to fBReaderJ/src/main/res/drawable/ic_list_library_tag.png
diff --git a/res/drawable/ic_list_library_tags.png b/fBReaderJ/src/main/res/drawable/ic_list_library_tags.png
similarity index 100%
rename from res/drawable/ic_list_library_tags.png
rename to fBReaderJ/src/main/res/drawable/ic_list_library_tags.png
diff --git a/res/drawable/ic_list_library_zip.png b/fBReaderJ/src/main/res/drawable/ic_list_library_zip.png
similarity index 100%
rename from res/drawable/ic_list_library_zip.png
rename to fBReaderJ/src/main/res/drawable/ic_list_library_zip.png
diff --git a/res/drawable/ic_list_plus.png b/fBReaderJ/src/main/res/drawable/ic_list_plus.png
similarity index 100%
rename from res/drawable/ic_list_plus.png
rename to fBReaderJ/src/main/res/drawable/ic_list_plus.png
diff --git a/res/drawable/ic_menu_add.png b/fBReaderJ/src/main/res/drawable/ic_menu_add.png
similarity index 100%
rename from res/drawable/ic_menu_add.png
rename to fBReaderJ/src/main/res/drawable/ic_menu_add.png
diff --git a/res/drawable/ic_menu_bookmarks.png b/fBReaderJ/src/main/res/drawable/ic_menu_bookmarks.png
similarity index 100%
rename from res/drawable/ic_menu_bookmarks.png
rename to fBReaderJ/src/main/res/drawable/ic_menu_bookmarks.png
diff --git a/res/drawable/ic_menu_day.png b/fBReaderJ/src/main/res/drawable/ic_menu_day.png
similarity index 100%
rename from res/drawable/ic_menu_day.png
rename to fBReaderJ/src/main/res/drawable/ic_menu_day.png
diff --git a/res/drawable/ic_menu_filter.png b/fBReaderJ/src/main/res/drawable/ic_menu_filter.png
similarity index 100%
rename from res/drawable/ic_menu_filter.png
rename to fBReaderJ/src/main/res/drawable/ic_menu_filter.png
diff --git a/res/drawable/ic_menu_library.png b/fBReaderJ/src/main/res/drawable/ic_menu_library.png
similarity index 100%
rename from res/drawable/ic_menu_library.png
rename to fBReaderJ/src/main/res/drawable/ic_menu_library.png
diff --git a/res/drawable/ic_menu_networklibrary.png b/fBReaderJ/src/main/res/drawable/ic_menu_networklibrary.png
similarity index 100%
rename from res/drawable/ic_menu_networklibrary.png
rename to fBReaderJ/src/main/res/drawable/ic_menu_networklibrary.png
diff --git a/res/drawable/ic_menu_night.png b/fBReaderJ/src/main/res/drawable/ic_menu_night.png
similarity index 100%
rename from res/drawable/ic_menu_night.png
rename to fBReaderJ/src/main/res/drawable/ic_menu_night.png
diff --git a/res/drawable/ic_menu_refresh.png b/fBReaderJ/src/main/res/drawable/ic_menu_refresh.png
similarity index 100%
rename from res/drawable/ic_menu_refresh.png
rename to fBReaderJ/src/main/res/drawable/ic_menu_refresh.png
diff --git a/res/drawable/ic_menu_search.png b/fBReaderJ/src/main/res/drawable/ic_menu_search.png
similarity index 100%
rename from res/drawable/ic_menu_search.png
rename to fBReaderJ/src/main/res/drawable/ic_menu_search.png
diff --git a/res/drawable/ic_menu_toc.png b/fBReaderJ/src/main/res/drawable/ic_menu_toc.png
similarity index 100%
rename from res/drawable/ic_menu_toc.png
rename to fBReaderJ/src/main/res/drawable/ic_menu_toc.png
diff --git a/res/drawable/link.xml b/fBReaderJ/src/main/res/drawable/link.xml
similarity index 100%
rename from res/drawable/link.xml
rename to fBReaderJ/src/main/res/drawable/link.xml
diff --git a/res/drawable/link_default.9.png b/fBReaderJ/src/main/res/drawable/link_default.9.png
similarity index 100%
rename from res/drawable/link_default.9.png
rename to fBReaderJ/src/main/res/drawable/link_default.9.png
diff --git a/res/drawable/link_pressed.9.png b/fBReaderJ/src/main/res/drawable/link_pressed.9.png
similarity index 100%
rename from res/drawable/link_pressed.9.png
rename to fBReaderJ/src/main/res/drawable/link_pressed.9.png
diff --git a/res/drawable/link_selected.9.png b/fBReaderJ/src/main/res/drawable/link_selected.9.png
similarity index 100%
rename from res/drawable/link_selected.9.png
rename to fBReaderJ/src/main/res/drawable/link_selected.9.png
diff --git a/res/drawable/plugin_bookshelf.png b/fBReaderJ/src/main/res/drawable/plugin_bookshelf.png
similarity index 100%
rename from res/drawable/plugin_bookshelf.png
rename to fBReaderJ/src/main/res/drawable/plugin_bookshelf.png
diff --git a/res/drawable/plugin_calibre_server_integration.png b/fBReaderJ/src/main/res/drawable/plugin_calibre_server_integration.png
similarity index 100%
rename from res/drawable/plugin_calibre_server_integration.png
rename to fBReaderJ/src/main/res/drawable/plugin_calibre_server_integration.png
diff --git a/res/drawable/plugin_djvu.png b/fBReaderJ/src/main/res/drawable/plugin_djvu.png
similarity index 100%
rename from res/drawable/plugin_djvu.png
rename to fBReaderJ/src/main/res/drawable/plugin_djvu.png
diff --git a/res/drawable/plugin_litres.png b/fBReaderJ/src/main/res/drawable/plugin_litres.png
similarity index 100%
rename from res/drawable/plugin_litres.png
rename to fBReaderJ/src/main/res/drawable/plugin_litres.png
diff --git a/res/drawable/plugin_pdf.png b/fBReaderJ/src/main/res/drawable/plugin_pdf.png
similarity index 100%
rename from res/drawable/plugin_pdf.png
rename to fBReaderJ/src/main/res/drawable/plugin_pdf.png
diff --git a/res/drawable/plugin_tts_plus.png b/fBReaderJ/src/main/res/drawable/plugin_tts_plus.png
similarity index 100%
rename from res/drawable/plugin_tts_plus.png
rename to fBReaderJ/src/main/res/drawable/plugin_tts_plus.png
diff --git a/res/drawable/selection_bookmark.xml b/fBReaderJ/src/main/res/drawable/selection_bookmark.xml
similarity index 100%
rename from res/drawable/selection_bookmark.xml
rename to fBReaderJ/src/main/res/drawable/selection_bookmark.xml
diff --git a/res/drawable/selection_bookmark_active.png b/fBReaderJ/src/main/res/drawable/selection_bookmark_active.png
similarity index 100%
rename from res/drawable/selection_bookmark_active.png
rename to fBReaderJ/src/main/res/drawable/selection_bookmark_active.png
diff --git a/res/drawable/selection_bookmark_default.png b/fBReaderJ/src/main/res/drawable/selection_bookmark_default.png
similarity index 100%
rename from res/drawable/selection_bookmark_default.png
rename to fBReaderJ/src/main/res/drawable/selection_bookmark_default.png
diff --git a/res/drawable/selection_close.xml b/fBReaderJ/src/main/res/drawable/selection_close.xml
similarity index 100%
rename from res/drawable/selection_close.xml
rename to fBReaderJ/src/main/res/drawable/selection_close.xml
diff --git a/res/drawable/selection_close_active.png b/fBReaderJ/src/main/res/drawable/selection_close_active.png
similarity index 100%
rename from res/drawable/selection_close_active.png
rename to fBReaderJ/src/main/res/drawable/selection_close_active.png
diff --git a/res/drawable/selection_close_default.png b/fBReaderJ/src/main/res/drawable/selection_close_default.png
similarity index 100%
rename from res/drawable/selection_close_default.png
rename to fBReaderJ/src/main/res/drawable/selection_close_default.png
diff --git a/res/drawable/selection_copy.xml b/fBReaderJ/src/main/res/drawable/selection_copy.xml
similarity index 100%
rename from res/drawable/selection_copy.xml
rename to fBReaderJ/src/main/res/drawable/selection_copy.xml
diff --git a/res/drawable/selection_copy_active.png b/fBReaderJ/src/main/res/drawable/selection_copy_active.png
similarity index 100%
rename from res/drawable/selection_copy_active.png
rename to fBReaderJ/src/main/res/drawable/selection_copy_active.png
diff --git a/res/drawable/selection_copy_default.png b/fBReaderJ/src/main/res/drawable/selection_copy_default.png
similarity index 100%
rename from res/drawable/selection_copy_default.png
rename to fBReaderJ/src/main/res/drawable/selection_copy_default.png
diff --git a/res/drawable/selection_share.xml b/fBReaderJ/src/main/res/drawable/selection_share.xml
similarity index 100%
rename from res/drawable/selection_share.xml
rename to fBReaderJ/src/main/res/drawable/selection_share.xml
diff --git a/res/drawable/selection_share_active.png b/fBReaderJ/src/main/res/drawable/selection_share_active.png
similarity index 100%
rename from res/drawable/selection_share_active.png
rename to fBReaderJ/src/main/res/drawable/selection_share_active.png
diff --git a/res/drawable/selection_share_default.png b/fBReaderJ/src/main/res/drawable/selection_share_default.png
similarity index 100%
rename from res/drawable/selection_share_default.png
rename to fBReaderJ/src/main/res/drawable/selection_share_default.png
diff --git a/res/drawable/selection_translate.xml b/fBReaderJ/src/main/res/drawable/selection_translate.xml
similarity index 100%
rename from res/drawable/selection_translate.xml
rename to fBReaderJ/src/main/res/drawable/selection_translate.xml
diff --git a/res/drawable/selection_translate_active.png b/fBReaderJ/src/main/res/drawable/selection_translate_active.png
similarity index 100%
rename from res/drawable/selection_translate_active.png
rename to fBReaderJ/src/main/res/drawable/selection_translate_active.png
diff --git a/res/drawable/selection_translate_default.png b/fBReaderJ/src/main/res/drawable/selection_translate_default.png
similarity index 100%
rename from res/drawable/selection_translate_default.png
rename to fBReaderJ/src/main/res/drawable/selection_translate_default.png
diff --git a/res/drawable/text_search_close.xml b/fBReaderJ/src/main/res/drawable/text_search_close.xml
similarity index 100%
rename from res/drawable/text_search_close.xml
rename to fBReaderJ/src/main/res/drawable/text_search_close.xml
diff --git a/res/drawable/text_search_close_active.png b/fBReaderJ/src/main/res/drawable/text_search_close_active.png
similarity index 100%
rename from res/drawable/text_search_close_active.png
rename to fBReaderJ/src/main/res/drawable/text_search_close_active.png
diff --git a/res/drawable/text_search_close_default.png b/fBReaderJ/src/main/res/drawable/text_search_close_default.png
similarity index 100%
rename from res/drawable/text_search_close_default.png
rename to fBReaderJ/src/main/res/drawable/text_search_close_default.png
diff --git a/res/drawable/text_search_next.xml b/fBReaderJ/src/main/res/drawable/text_search_next.xml
similarity index 100%
rename from res/drawable/text_search_next.xml
rename to fBReaderJ/src/main/res/drawable/text_search_next.xml
diff --git a/res/drawable/text_search_next_active.png b/fBReaderJ/src/main/res/drawable/text_search_next_active.png
similarity index 100%
rename from res/drawable/text_search_next_active.png
rename to fBReaderJ/src/main/res/drawable/text_search_next_active.png
diff --git a/res/drawable/text_search_next_default.png b/fBReaderJ/src/main/res/drawable/text_search_next_default.png
similarity index 100%
rename from res/drawable/text_search_next_default.png
rename to fBReaderJ/src/main/res/drawable/text_search_next_default.png
diff --git a/res/drawable/text_search_next_disabled.png b/fBReaderJ/src/main/res/drawable/text_search_next_disabled.png
similarity index 100%
rename from res/drawable/text_search_next_disabled.png
rename to fBReaderJ/src/main/res/drawable/text_search_next_disabled.png
diff --git a/res/drawable/text_search_previous.xml b/fBReaderJ/src/main/res/drawable/text_search_previous.xml
similarity index 100%
rename from res/drawable/text_search_previous.xml
rename to fBReaderJ/src/main/res/drawable/text_search_previous.xml
diff --git a/res/drawable/text_search_previous_active.png b/fBReaderJ/src/main/res/drawable/text_search_previous_active.png
similarity index 100%
rename from res/drawable/text_search_previous_active.png
rename to fBReaderJ/src/main/res/drawable/text_search_previous_active.png
diff --git a/res/drawable/text_search_previous_default.png b/fBReaderJ/src/main/res/drawable/text_search_previous_default.png
similarity index 100%
rename from res/drawable/text_search_previous_default.png
rename to fBReaderJ/src/main/res/drawable/text_search_previous_default.png
diff --git a/res/drawable/text_search_previous_disabled.png b/fBReaderJ/src/main/res/drawable/text_search_previous_disabled.png
similarity index 100%
rename from res/drawable/text_search_previous_disabled.png
rename to fBReaderJ/src/main/res/drawable/text_search_previous_disabled.png
diff --git a/res/layout-large/book_popup.xml b/fBReaderJ/src/main/res/layout-large/book_popup.xml
similarity index 100%
rename from res/layout-large/book_popup.xml
rename to fBReaderJ/src/main/res/layout-large/book_popup.xml
diff --git a/res/layout-large/book_popup_night.xml b/fBReaderJ/src/main/res/layout-large/book_popup_night.xml
similarity index 100%
rename from res/layout-large/book_popup_night.xml
rename to fBReaderJ/src/main/res/layout-large/book_popup_night.xml
diff --git a/res/layout/add_custom_catalog.xml b/fBReaderJ/src/main/res/layout/add_custom_catalog.xml
similarity index 100%
rename from res/layout/add_custom_catalog.xml
rename to fBReaderJ/src/main/res/layout/add_custom_catalog.xml
diff --git a/res/layout/animation_speed_dialog.xml b/fBReaderJ/src/main/res/layout/animation_speed_dialog.xml
similarity index 100%
rename from res/layout/animation_speed_dialog.xml
rename to fBReaderJ/src/main/res/layout/animation_speed_dialog.xml
diff --git a/res/layout/authentication.xml b/fBReaderJ/src/main/res/layout/authentication.xml
similarity index 100%
rename from res/layout/authentication.xml
rename to fBReaderJ/src/main/res/layout/authentication.xml
diff --git a/res/layout/background_chooser_item.xml b/fBReaderJ/src/main/res/layout/background_chooser_item.xml
similarity index 100%
rename from res/layout/background_chooser_item.xml
rename to fBReaderJ/src/main/res/layout/background_chooser_item.xml
diff --git a/res/layout/background_predefined_item.xml b/fBReaderJ/src/main/res/layout/background_predefined_item.xml
similarity index 100%
rename from res/layout/background_predefined_item.xml
rename to fBReaderJ/src/main/res/layout/background_predefined_item.xml
diff --git a/res/layout/background_preference.xml b/fBReaderJ/src/main/res/layout/background_preference.xml
similarity index 100%
rename from res/layout/background_preference.xml
rename to fBReaderJ/src/main/res/layout/background_preference.xml
diff --git a/res/layout/book_info.xml b/fBReaderJ/src/main/res/layout/book_info.xml
similarity index 100%
rename from res/layout/book_info.xml
rename to fBReaderJ/src/main/res/layout/book_info.xml
diff --git a/res/layout/book_info_pair.xml b/fBReaderJ/src/main/res/layout/book_info_pair.xml
similarity index 100%
rename from res/layout/book_info_pair.xml
rename to fBReaderJ/src/main/res/layout/book_info_pair.xml
diff --git a/res/layout/book_popup.xml b/fBReaderJ/src/main/res/layout/book_popup.xml
similarity index 100%
rename from res/layout/book_popup.xml
rename to fBReaderJ/src/main/res/layout/book_popup.xml
diff --git a/res/layout/book_popup_night.xml b/fBReaderJ/src/main/res/layout/book_popup_night.xml
similarity index 100%
rename from res/layout/book_popup_night.xml
rename to fBReaderJ/src/main/res/layout/book_popup_night.xml
diff --git a/res/layout/bookmark_item.xml b/fBReaderJ/src/main/res/layout/bookmark_item.xml
similarity index 100%
rename from res/layout/bookmark_item.xml
rename to fBReaderJ/src/main/res/layout/bookmark_item.xml
diff --git a/res/layout/bookmarks.xml b/fBReaderJ/src/main/res/layout/bookmarks.xml
similarity index 100%
rename from res/layout/bookmarks.xml
rename to fBReaderJ/src/main/res/layout/bookmarks.xml
diff --git a/res/layout/books_directory_fix.xml b/fBReaderJ/src/main/res/layout/books_directory_fix.xml
similarity index 100%
rename from res/layout/books_directory_fix.xml
rename to fBReaderJ/src/main/res/layout/books_directory_fix.xml
diff --git a/res/layout/bug_report_view.xml b/fBReaderJ/src/main/res/layout/bug_report_view.xml
similarity index 100%
rename from res/layout/bug_report_view.xml
rename to fBReaderJ/src/main/res/layout/bug_report_view.xml
diff --git a/res/layout/cancel_item.xml b/fBReaderJ/src/main/res/layout/cancel_item.xml
similarity index 100%
rename from res/layout/cancel_item.xml
rename to fBReaderJ/src/main/res/layout/cancel_item.xml
diff --git a/res/layout/catalog_manager_item.xml b/fBReaderJ/src/main/res/layout/catalog_manager_item.xml
similarity index 100%
rename from res/layout/catalog_manager_item.xml
rename to fBReaderJ/src/main/res/layout/catalog_manager_item.xml
diff --git a/res/layout/catalog_manager_section_head.xml b/fBReaderJ/src/main/res/layout/catalog_manager_section_head.xml
similarity index 100%
rename from res/layout/catalog_manager_section_head.xml
rename to fBReaderJ/src/main/res/layout/catalog_manager_section_head.xml
diff --git a/res/layout/catalog_manager_view.xml b/fBReaderJ/src/main/res/layout/catalog_manager_view.xml
similarity index 100%
rename from res/layout/catalog_manager_view.xml
rename to fBReaderJ/src/main/res/layout/catalog_manager_view.xml
diff --git a/res/layout/color_preference.xml b/fBReaderJ/src/main/res/layout/color_preference.xml
similarity index 100%
rename from res/layout/color_preference.xml
rename to fBReaderJ/src/main/res/layout/color_preference.xml
diff --git a/res/layout/control_panel_bottom.xml b/fBReaderJ/src/main/res/layout/control_panel_bottom.xml
similarity index 100%
rename from res/layout/control_panel_bottom.xml
rename to fBReaderJ/src/main/res/layout/control_panel_bottom.xml
diff --git a/res/layout/control_panel_bottom_flat.xml b/fBReaderJ/src/main/res/layout/control_panel_bottom_flat.xml
similarity index 100%
rename from res/layout/control_panel_bottom_flat.xml
rename to fBReaderJ/src/main/res/layout/control_panel_bottom_flat.xml
diff --git a/res/layout/control_panel_floating.xml b/fBReaderJ/src/main/res/layout/control_panel_floating.xml
similarity index 100%
rename from res/layout/control_panel_floating.xml
rename to fBReaderJ/src/main/res/layout/control_panel_floating.xml
diff --git a/res/layout/download_notification.xml b/fBReaderJ/src/main/res/layout/download_notification.xml
similarity index 100%
rename from res/layout/download_notification.xml
rename to fBReaderJ/src/main/res/layout/download_notification.xml
diff --git a/res/layout/edit_authors_dialog.xml b/fBReaderJ/src/main/res/layout/edit_authors_dialog.xml
similarity index 100%
rename from res/layout/edit_authors_dialog.xml
rename to fBReaderJ/src/main/res/layout/edit_authors_dialog.xml
diff --git a/res/layout/edit_bookmark.xml b/fBReaderJ/src/main/res/layout/edit_bookmark.xml
similarity index 100%
rename from res/layout/edit_bookmark.xml
rename to fBReaderJ/src/main/res/layout/edit_bookmark.xml
diff --git a/res/layout/edit_list_dialog_item.xml b/fBReaderJ/src/main/res/layout/edit_list_dialog_item.xml
similarity index 100%
rename from res/layout/edit_list_dialog_item.xml
rename to fBReaderJ/src/main/res/layout/edit_list_dialog_item.xml
diff --git a/res/layout/edit_tags_dialog.xml b/fBReaderJ/src/main/res/layout/edit_tags_dialog.xml
similarity index 100%
rename from res/layout/edit_tags_dialog.xml
rename to fBReaderJ/src/main/res/layout/edit_tags_dialog.xml
diff --git a/res/layout/extra_link_item.xml b/fBReaderJ/src/main/res/layout/extra_link_item.xml
similarity index 100%
rename from res/layout/extra_link_item.xml
rename to fBReaderJ/src/main/res/layout/extra_link_item.xml
diff --git a/res/layout/folder_list_dialog.xml b/fBReaderJ/src/main/res/layout/folder_list_dialog.xml
similarity index 100%
rename from res/layout/folder_list_dialog.xml
rename to fBReaderJ/src/main/res/layout/folder_list_dialog.xml
diff --git a/res/layout/folder_list_item.xml b/fBReaderJ/src/main/res/layout/folder_list_item.xml
similarity index 100%
rename from res/layout/folder_list_item.xml
rename to fBReaderJ/src/main/res/layout/folder_list_item.xml
diff --git a/res/layout/library_tree_item.xml b/fBReaderJ/src/main/res/layout/library_tree_item.xml
similarity index 100%
rename from res/layout/library_tree_item.xml
rename to fBReaderJ/src/main/res/layout/library_tree_item.xml
diff --git a/res/layout/main.xml b/fBReaderJ/src/main/res/layout/main.xml
similarity index 100%
rename from res/layout/main.xml
rename to fBReaderJ/src/main/res/layout/main.xml
diff --git a/res/layout/menu_item.xml b/fBReaderJ/src/main/res/layout/menu_item.xml
similarity index 100%
rename from res/layout/menu_item.xml
rename to fBReaderJ/src/main/res/layout/menu_item.xml
diff --git a/res/layout/navigate.xml b/fBReaderJ/src/main/res/layout/navigate.xml
similarity index 100%
rename from res/layout/navigate.xml
rename to fBReaderJ/src/main/res/layout/navigate.xml
diff --git a/res/layout/network_book.xml b/fBReaderJ/src/main/res/layout/network_book.xml
similarity index 100%
rename from res/layout/network_book.xml
rename to fBReaderJ/src/main/res/layout/network_book.xml
diff --git a/res/layout/ok_cancel_buttons.xml b/fBReaderJ/src/main/res/layout/ok_cancel_buttons.xml
similarity index 100%
rename from res/layout/ok_cancel_buttons.xml
rename to fBReaderJ/src/main/res/layout/ok_cancel_buttons.xml
diff --git a/res/layout/opendictionary_flyout.xml b/fBReaderJ/src/main/res/layout/opendictionary_flyout.xml
similarity index 100%
rename from res/layout/opendictionary_flyout.xml
rename to fBReaderJ/src/main/res/layout/opendictionary_flyout.xml
diff --git a/res/layout/plugin_dialog.xml b/fBReaderJ/src/main/res/layout/plugin_dialog.xml
similarity index 100%
rename from res/layout/plugin_dialog.xml
rename to fBReaderJ/src/main/res/layout/plugin_dialog.xml
diff --git a/res/layout/plugin_item.xml b/fBReaderJ/src/main/res/layout/plugin_item.xml
similarity index 100%
rename from res/layout/plugin_item.xml
rename to fBReaderJ/src/main/res/layout/plugin_item.xml
diff --git a/res/layout/simple_dialog.xml b/fBReaderJ/src/main/res/layout/simple_dialog.xml
similarity index 100%
rename from res/layout/simple_dialog.xml
rename to fBReaderJ/src/main/res/layout/simple_dialog.xml
diff --git a/res/layout/string_preference_dialog.xml b/fBReaderJ/src/main/res/layout/string_preference_dialog.xml
similarity index 100%
rename from res/layout/string_preference_dialog.xml
rename to fBReaderJ/src/main/res/layout/string_preference_dialog.xml
diff --git a/res/layout/style_item.xml b/fBReaderJ/src/main/res/layout/style_item.xml
similarity index 100%
rename from res/layout/style_item.xml
rename to fBReaderJ/src/main/res/layout/style_item.xml
diff --git a/res/layout/tip.xml b/fBReaderJ/src/main/res/layout/tip.xml
similarity index 100%
rename from res/layout/tip.xml
rename to fBReaderJ/src/main/res/layout/tip.xml
diff --git a/res/layout/toc_tree_item.xml b/fBReaderJ/src/main/res/layout/toc_tree_item.xml
similarity index 100%
rename from res/layout/toc_tree_item.xml
rename to fBReaderJ/src/main/res/layout/toc_tree_item.xml
diff --git a/res/values-fr/strings.xml b/fBReaderJ/src/main/res/values-fr/strings.xml
similarity index 100%
rename from res/values-fr/strings.xml
rename to fBReaderJ/src/main/res/values-fr/strings.xml
diff --git a/res/values-ru/strings.xml b/fBReaderJ/src/main/res/values-ru/strings.xml
similarity index 100%
rename from res/values-ru/strings.xml
rename to fBReaderJ/src/main/res/values-ru/strings.xml
diff --git a/res/values-v11/styles.xml b/fBReaderJ/src/main/res/values-v11/styles.xml
similarity index 100%
rename from res/values-v11/styles.xml
rename to fBReaderJ/src/main/res/values-v11/styles.xml
diff --git a/res/values-v14/styles.xml b/fBReaderJ/src/main/res/values-v14/styles.xml
similarity index 100%
rename from res/values-v14/styles.xml
rename to fBReaderJ/src/main/res/values-v14/styles.xml
diff --git a/res/values/strings.xml b/fBReaderJ/src/main/res/values/strings.xml
similarity index 100%
rename from res/values/strings.xml
rename to fBReaderJ/src/main/res/values/strings.xml
diff --git a/res/values/styles.xml b/fBReaderJ/src/main/res/values/styles.xml
similarity index 100%
rename from res/values/styles.xml
rename to fBReaderJ/src/main/res/values/styles.xml
diff --git a/res/xml/searchable.xml b/fBReaderJ/src/main/res/xml/searchable.xml
similarity index 100%
rename from res/xml/searchable.xml
rename to fBReaderJ/src/main/res/xml/searchable.xml
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
new file mode 100644
index 00000000000..8c0fb64a869
Binary files /dev/null and b/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
new file mode 100644
index 00000000000..0c71e760dc9
--- /dev/null
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,6 @@
+#Wed Apr 10 15:27:10 PDT 2013
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/gradlew b/gradlew
new file mode 100644
index 00000000000..91a7e269e19
--- /dev/null
+++ b/gradlew
@@ -0,0 +1,164 @@
+#!/usr/bin/env bash
+
+##############################################################################
+##
+## Gradle start up script for UN*X
+##
+##############################################################################
+
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS=""
+
+APP_NAME="Gradle"
+APP_BASE_NAME=`basename "$0"`
+
+# Use the maximum available, or set MAX_FD != -1 to use that value.
+MAX_FD="maximum"
+
+warn ( ) {
+ echo "$*"
+}
+
+die ( ) {
+ echo
+ echo "$*"
+ echo
+ exit 1
+}
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false
+msys=false
+darwin=false
+case "`uname`" in
+ CYGWIN* )
+ cygwin=true
+ ;;
+ Darwin* )
+ darwin=true
+ ;;
+ MINGW* )
+ msys=true
+ ;;
+esac
+
+# For Cygwin, ensure paths are in UNIX format before anything is touched.
+if $cygwin ; then
+ [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
+fi
+
+# Attempt to set APP_HOME
+# Resolve links: $0 may be a link
+PRG="$0"
+# Need this for relative symlinks.
+while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`"/$link"
+ fi
+done
+SAVED="`pwd`"
+cd "`dirname \"$PRG\"`/" >&-
+APP_HOME="`pwd -P`"
+cd "$SAVED" >&-
+
+CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+
+# Determine the Java command to use to start the JVM.
+if [ -n "$JAVA_HOME" ] ; then
+ if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+ # IBM's JDK on AIX uses strange locations for the executables
+ JAVACMD="$JAVA_HOME/jre/sh/java"
+ else
+ JAVACMD="$JAVA_HOME/bin/java"
+ fi
+ if [ ! -x "$JAVACMD" ] ; then
+ die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+ fi
+else
+ JAVACMD="java"
+ which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+fi
+
+# Increase the maximum file descriptors if we can.
+if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
+ MAX_FD_LIMIT=`ulimit -H -n`
+ if [ $? -eq 0 ] ; then
+ if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
+ MAX_FD="$MAX_FD_LIMIT"
+ fi
+ ulimit -n $MAX_FD
+ if [ $? -ne 0 ] ; then
+ warn "Could not set maximum file descriptor limit: $MAX_FD"
+ fi
+ else
+ warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
+ fi
+fi
+
+# For Darwin, add options to specify how the application appears in the dock
+if $darwin; then
+ GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
+fi
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin ; then
+ APP_HOME=`cygpath --path --mixed "$APP_HOME"`
+ CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
+
+ # We build the pattern for arguments to be converted via cygpath
+ ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
+ SEP=""
+ for dir in $ROOTDIRSRAW ; do
+ ROOTDIRS="$ROOTDIRS$SEP$dir"
+ SEP="|"
+ done
+ OURCYGPATTERN="(^($ROOTDIRS))"
+ # Add a user-defined pattern to the cygpath arguments
+ if [ "$GRADLE_CYGPATTERN" != "" ] ; then
+ OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
+ fi
+ # Now convert the arguments - kludge to limit ourselves to /bin/sh
+ i=0
+ for arg in "$@" ; do
+ CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
+ CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
+
+ if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
+ eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
+ else
+ eval `echo args$i`="\"$arg\""
+ fi
+ i=$((i+1))
+ done
+ case $i in
+ (0) set -- ;;
+ (1) set -- "$args0" ;;
+ (2) set -- "$args0" "$args1" ;;
+ (3) set -- "$args0" "$args1" "$args2" ;;
+ (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
+ (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
+ (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
+ (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
+ (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
+ (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
+ esac
+fi
+
+# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
+function splitJvmOpts() {
+ JVM_OPTS=("$@")
+}
+eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
+JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
+
+exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
diff --git a/gradlew.bat b/gradlew.bat
new file mode 100644
index 00000000000..8a0b282aa68
--- /dev/null
+++ b/gradlew.bat
@@ -0,0 +1,90 @@
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windowz variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+if "%@eval[2+2]" == "4" goto 4NT_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+goto execute
+
+:4NT_args
+@rem Get arguments from the 4NT Shell from JP Software
+set CMD_LINE_ARGS=%$
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/help/html/de.html b/help/html/de.html
new file mode 100644
index 00000000000..18e05480de4
--- /dev/null
+++ b/help/html/de.html
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
FBReader: eine Einführung
+
Lesestart
+
Möchten Sie direkt anfangen zu lesen? Klicken Sie auf ein Cover unten zum Herunterladen und Öffnen des Buches. Um zu diesem Text zurückzukehren, wählen Sie “Startbildschirm” im Menü.
+
+
Suchen Sie mehr Bücher?
+
Gehen Sie einfach zur Netzwerk-Bibliothek. Dort gibt es mehrere Kataloge mit einer Vielzahl an Büchern, kostenlos oder gegen eine Gebühr. Sie können Ihre eigenen OPDS Kataloge zur Liste hinzufügen.
+
Sind Ihre Bücher bereits auf dem Gerät, dann können Sie diese über die Bibliothek öffnen.
+
Speichern Sie Ihre eBooks in der Cloud
+
Möchten Sie Ihre eBooks vom Desktop auf dieses Gerät kopieren? Oder Ihre heruntergeladenen Bücher an einem sicheren Ort speichern? Das FBReader Bücher Netzwerk ist ein Cloud Storage Service basierend auf Google Driveâ„¢. Synchronisieren Sie mit dem Bücher Netzwerk und Ihre Buchsammlung steht Ihnen auf allen Ihren Computern und Mobilgeräten zur Verfügung. Die Bücher werden in Ihrem eigenen Google Drive Speicherplatz hinterlegt. Sie können vom Browser aus Ihre Sammlung bearbeiten.
+
Lesen Sie das gleiche Buch auf Ihrem Handy und Tablet? Müssen Sie bei jedem Gerätewechsel nachschauen, wo Sie mit dem Lesen aufgehört haben? Aktivieren Sie die FBReader Synchronisation auf beiden Geräten und das Programm öffnet automatisch die richtige Stelle.
+
eBook Formate
+
Der FBReader unterstützt alle beliebten Textformate. Haben Sie ein Buch in mehreren Formaten, dann ist die beste Wahl ePub, mobi (a.k.a. azw3 von kindle), oder fb2. Bitte beachten Sie, dass der FBReader ein kostenloser Reader ist und DRM-geschützte Bücher nicht öffnet. Nicht-Text Formate, wie PDF oder DjVu werden von FBReader Plugins unterstützt.
Posten Sie Ihre Frage auf einem sozialen Netzwerk. Dort gibt es eine grosse Anzahl aktiver User, zusammen mit den Programmautoren. Möchten Sie uns direkt kontaktieren, dann schreiben Sie bitte eine Email.
Want to copy your ebooks from the desktop to this device? Or maybe you want to store your downloaded books in a safe space? FBReader Book Network is a cloud storage service based on Google Driveâ„¢. Enable synchronisation with the Book Network, and your book collection will be always available from all your computers and mobile devices. The books will be stored in your own space in Google Drive. You can manage your collection from the browser.
Reading the same book on your mobile phone and tablet? Having to look for where you stopped every time you change the device? Enable FBReader synchronisation on both devices and the program will open the reading position automatically.
Choosing ebook formats
-
FBReader supports all popular text file formats. However if you have a book in several formats, the best choice is ePub, mobi (a.k.a. azw3 of kindle), or fb2. Please keep in mind that FBReader is a free reader and does not open DRM-protected books. Non-text formats like PDF or DjVu are supported by FBReader plugins.
+
FBReader supports all popular text file formats. However if you have a book in several formats, the best choice is ePub, mobi (a.k.a. azw3 or kindle), or fb2. Please keep in mind that FBReader is a free reader and does not open DRM-protected books. Non-text formats like PDF or DjVu are supported by FBReader plugins.
Chcesz zacząć czytać? Kliknij w okÅ‚adkÄ™ poniżej, aby Å›ciÄ…gnąć i otworzyć książkÄ™. By wrócić do tego tekstu, wybierz w menu “Ekran startowy”.
+
+
Szukasz więcej książek?
+
Po prostu przejdź do Biblioteki sieciowej. Znajduje się tam kilka katalogów z mnóstwem książek, zarówno darmowych jak i płatnych. Możesz dodać do listy własne katalogi OPDS.
+
Jeżeli masz już swoje książki na urządzeniu, możesz je otworzyć przez Bibliotekę.
+
Przechowuj ebooki w chmurze
+
Chcesz skopiować swoje ebooki z pulpitu na to urządzenie? A może chcesz przechowywać pobrane książki w bezpiecznym miejscu? FBReader Book Network to usługa przechowywania w chmurze oparta na Google Drive™. Zezwól na synchronizację z Book Network, a Twoja kolekcja książek będzie zawsze dostępna ze wszystkich Twoich komputerów i urządzeń mobilnych. Książki będą przechowywane w Twojej własnej przestrzeni na Google Drive. Możesz zarządzać swoją kolekcją z poziomu przeglądarki.
+
Czytasz tę samą książkę na swoim telefonie i tablecie i musisz sprawdzać, gdzie skończyłeś, za każdym razem, gdy chcesz zmienić urządzenie? Zezwól FBReaderowi na synchronizację obu urządzeń, a program automatycznie otworzy książkę w odpowiednim miejscu.
+
Wybór formatów ebooków
+
FBReader wspiera wszystkie popularne formaty plików tekstowych. Jeżeli jednak posiadasz książkę w kilku formatach, najlepszym wyborem będzie ePub, mobi (znany także jako azw3 z kindle) lub fb2. Pamiętaj, że FBReader jest darmową aplikacją do ebooków i nie otwiera książek chronionych przez DRM. Formaty nietekstowe takie jak PDF lub DjVu są obsługiwane przez wtyczki do FBReadera.
Zadaj pytanie na portalu społecznościowym. Jest tam wielu aktywnych użytkowników, w tym autorzy programu, którzy mogą Ci pomóc. Jeżeli wolisz zadać nam pytanie bezpośrednio, napisz e-mail.