[Nook Touch Themes and Apps] nmyshkin:
Edit 1-8-23: I've updated the Mantano apk file. Seems there were still some issues with the aspect ratio of the default.png (book cover) image. Fixed now at 1.5!

I keep my NSTG on FW 1.2.1 because there are issues with Tasker and plugins on FW 1.2.2. The resulting apps are OK, but development is a problem unless I do it on FW 1.2.1. So that one device has B&N apps removed. AlReader has been my go-to reader app. Until now.

While working on some thorny issues with a Tasker app update I came across a book I wanted to read. Unfortunately it was only available in PDF format and AlReader can't handle that. I soon found that something like EBookDroid really couldn't deal well with a PDF file that begged for text reflow (problematic as that is). I wanted something that was at least as good as the stock reader. I could have just picked up one of my other NSTs and read the book that way, but when you abandon the B&N system you should at least break even, not lose. So I went searching through the forum for some ideas.

Mantano Reader caught my interest. Not only can it reflow PDF text (pretty much like the stock reader-don't get too excited), it can also display PDFs as a continuous scroll, with zoom. It can handle Adobe DRM books! And the TTS works (not a big deal). So I looked around and started with version 2.2.12 from Apkpure. This is the last version for Android 2.1. I found that full-screen reading was broken in this version and I couldn't see why, so I worked my way back until it wasn't broken. That was version 2.2.3.

Not for everyone

Those are some of Mantano's virtues, but it's not for everyone. I think it's chief drawback is the absence of full font support. There is only the default (admittedly not bad) and although there is provision for user fonts, there are issues. More on that later. Then there is the really tiny user interface. The colors render somewhat muddy on the NST also. Those are really tough issues to address, certainly beyond my pay grade. Also, none of the syncing, cloud, downloading of dictionaries, OPDS books, fulfilling of .acsm files, additional fonts, user manuals, etc., works. Can't be fixed. I looked. Finally, the reader options are pretty simple, about what is available for the stock reader (except for fonts). So if you like the hundreds of setting combinations in something like AlReader or FB Reader, this app is

not

for you. If you want something straightforward so you can just read a book without all the B&N hoopla, Mantano may be worth a look.

Mods

When I started getting serious about this I decided to try to learn by doing. My goal was to remove (or at least hide/disable) stuff that did not work. Almost all of my modifications were in the resources folder of the apk file. There was also one annoying issue with the aspect ratio of book covers that required a minor change in two smali files (thanks to @Renate). Here's a short list:

1. Removed Bookstore (OPDS) tab on home screen (formerly "My Catalogs" as described in User Guide)

2. Removed menu icons for sync and cloud

3. Disabled sections in Settings that don't work (Login, Sync, Dictionary download, Fonts, User Manual download)

4. Corrected font colors in some local dialogs so text is visible

5. Made the page number black, smaller, and with a transparent background for less visual distraction

Also, there were a few dialogs with invisible text that used the system framework to generate the window. The only way to fix this was to make a few very minor changes in framework-res.apk. This worked well and even helped with a few other apps that formerly had invisible text. A win-win. You can update your framework-res.apk using the CWM zip provided below. Despite its filename, it is

not

an "update" zip. You'll just be installing a zip file with CWM.

Making do

Overdrive Library epubs

: No app will be able to fulfill .acsm files on the NST/G. The SSL is just not up to it. So there's no point in registering the device with Adobe. That just wastes one of your allowed devices and so I disabled that first Settings selection. However, the app can read Adobe DRM books, understands due-dates, etc. You just need to introduce your device to ADE running on your PC (ver. 3.0 works well for me on Windows) and transfer fulfilled books from there, just as you would with the stock reader.

Fonts

: You can, in theory, supply your own TrueType fonts and place them in /sdcard/Mantano/fonts. When a book is opened, the lower menu options include "Themes". This odd term is for adjusting the appearance of the book (fonts, margins, justification, line spacing, colors). You can make a new theme or edit the default one. Either way, you will get to select a font. You will see the font you added in the folder (you can copy any font you like from /system/fonts or from anywhere else). The problem is that Mantano has no way to deal with font

families

. For example, I prefer Malabar. Of course, there is the base font, the bold instance, italic, bold italic. Mantano makes you choose one of these. Clearly you choose the base font (no need to copy over the others). If there are italics or bold type in a book, the reader uses the default font. This would not be such an issue for small sections of emphasized text, but the font scales are not the same. Malabar is larger than the default font. So any italics is obviously smaller. I tried a software package for scaling the font but it just turned it into rubbish. I am learning to like the default font. This issue was fixed in version 2.4.6, based on what I've read. But that won't run on the NST, of course.

Dictionaries

: The reader has the ability to go out to find definitions on the WWW. Big pain. Although you can't download any dictionaries from within the app, Mantano does play nicely with ColorDict and there are plenty of dictionary options for that. Easy fix.

User Guide

: I poked around and found a guide labeled "Version 2.1". That was the best I could do. It seems pretty close, although what was the "Bookstore" tab in this version (which I have removed) is referred to as "My Catalogs" in the manual. Either way, it's non-functional and gone. The same goes for references to cloud, accounts and sync. None of it works and all of it has either been removed from view or disabled in this mod.

Extras

Edit 7-2-23: If you use Mantano as your principal reader but you have an interest in the custom UI shown here, PM me. I have custom versions of the two needed apps for Mantano Reader.

Unlike AlReader and FB Reader, Mantano's main activity is the library view. That means there is no simple way to use the "reading now" status bar button to go directly to your current book.

I also like to be able to use the current book cover as a screensaver. AlReader and CoolReader both have this capability. Mantano does not, but it does create thumbnails for each book (if you let it) and one of those is screensaver size (default.png). For some unknown reason, all the thumbnails of various sizes for display in the library have the correct aspect ratio except for default.png. I fixed this in the app with a view to using it as a screensaver image.

To address these issues, I have used Tasker to create two small apps. Mantano_Extras1 enables a listener for when the reader is closed (either by two presses of the back button or simply by pressing the "n" button). When that happens, the Mantano database is queried for the last reading point/book. This is stored in a variable. Accessing Mantano_Extras1 after setup sends a command to open that file. If Mantano is your default app for epubs and/or pdfs, the book will open automatically to the right place without passing through the library. Thus assigning Mantano_Extras1 to the "reading now" button with NookTouch ModManager restores the function of that button.

Mantano_Extras2 does everything described above. During setup it

also

creates the folder /media/screensavers/CurrentBookCover. When the reader is exited and the database information stored in a variable, it copies the default.png for the current book to that folder. If you select that folder in your NST Settings app for the screensaver, the current cover will be displayed during sleep.

I should add that both apps check to see if the current book has changed before they do anything. If there is no change, they simply stop.

As these are Tasker-generated apps (but don't require Tasker to run), they have a dependency on two small library files. If you don't have one of my other Tasker apps already, you need to copy the two files in the zip as below:

/system/etc/permissions/com.google.android.maps.xml

/system/framework/com.google.android.maps.jar

Set permissions for both files to rw-r--r-- and reboot. Without these files resident, the app will not install.

The apps also use sqlite3 and busybox. If you rooted with NookManager you already have busybox. A few other special packages probably include it. If you have it, you will find it in /system/xbin. If it's not there, copy the file from the zip to that location and set permissions to rwx-rwx-rwx.

If you don't already have sqlite3, move the file from the zip to /system/bin and set the permissions to rwx r-x r-x.

When you have prepared the way, reboot and then install whichever of the two "Extras" apps you want. When you first tap on the app icon there will be a pause while things are set up and then a request for root access. Once that's done they are good to go. Use NTMM to assign the app to the "reading now" status bar button and set your screensaver directory to "CurrentBookCover" (if you installed Mantano_Extras2).