Commit graph

104 commits

Author SHA1 Message Date
Slava Monich
fec438e494 [app] When renaming the folder, rename the config/cache directory too 2018-02-04 11:55:16 +03:00
Slava Monich
bf38202e31 [app] Added missing BooksStorage::fullConfigPath implementation 2018-02-04 11:14:22 +03:00
Slava Monich
28a814dd26 [app] Handle the case if hash can't be stored as fs attr (e.g. SD-card)
Assume that the hash from page marks file is correct and verify it
later when the file hash gets recalculated.
2018-02-02 11:51:32 +03:00
Slava Monich
76b1e20e1a [app] BooksUtil::computeFileHash should take const BooksTask pointer
And so should BooksUtil::computeFileHashAndSetAttr
2018-02-02 01:11:23 +03:00
Slava Monich
09fc0cbe3e [app] Turned some warnings into debug messages 2018-01-31 15:15:57 +02:00
Slava Monich
7b7f8b9e97 [app] Tweaked the selection background 2018-01-31 15:00:27 +02:00
Slava Monich
ee5a949d41 [app] Speed up book loading by caching page marks 2018-01-30 01:41:57 +02:00
Slava Monich
2082fbc09d [app] BooksShelf now automatically moves itself to the main thread
So does BooksBook
2018-01-30 00:28:11 +02:00
Slava Monich
ca38e3cd92 [app] Added hash attribute to BooksBook 2018-01-30 00:27:40 +02:00
Slava Monich
ed219c1af1 [app] Moved hashing utilities to BooksUtil 2018-01-30 00:26:06 +02:00
Slava Monich
26510f1d9e [app] A few BooksTask tweaks
1. Added QThread attribute to the constructor
2. Made isCanceled() public
2018-01-30 00:24:17 +02:00
Slava Monich
4f293dd7ff [app] Added BooksPos::List::fromVariant() and toVariantList()
Also moved BooksPos::fromVariant() and toVariant() to the .cpp file.
They seem to be a bit too large for inline functions.
2018-01-28 02:00:07 +02:00
Slava Monich
209280a3e4 [app] Memory map the book to calculate its hash
It's more efficient
2018-01-27 01:55:36 +02:00
Slava Monich
feffa61273 [app] Corrected page stack behaviour
It couldn't push the same position that was just popped.

Also, some countChanged signals were not being deferred - it
was probably not intentional, at least I couldn't remember why
it was done like that. Let all countChanged signals be deferred.
2018-01-20 13:36:01 +02:00
Slava Monich
7a7067869d [fbreader] Fixed FB2 footnotes
FB2 reader strips the leading hash sign from href, XHTML wasn't doing it.
Unified their behavior.
2018-01-20 02:43:05 +02:00
Slava Monich
02d86ffa67 [app] Use HarbourPluginLoader from HarbourLib 2017-12-04 01:37:33 +03:00
Slava Monich
b16f5e986b [app] Provide haptic feedback on entering/leaving selection mode 2017-12-03 16:23:25 +03:00
Slava Monich
2aa3b9e568 [app] Fixed check for null image in setClipboardImage 2017-10-10 00:52:59 +03:00
Slava Monich
2295ebfb7f [app] Added "Select all" pulley menu item to the import view 2017-09-07 23:46:52 +03:00
Slava Monich
89775f269e [app] Implemented text selection (whole words)
The selected text is getting copied to clipboard.
2017-09-07 19:03:17 +03:00
Slava Monich
a48fe1d0e4 [app] Added BooksTask::isStarted() method
Allows the owner of the task to check whether the task has actually
started to execute. This is a one-way flag, not synchronized (and
doesn't need to be).
2017-09-07 18:25:56 +03:00
Slava Monich
a1adc666aa [app] Always use the default clipboard
Also, make sure that the QClipboard methods are invoked on the main thread.
2017-09-07 18:21:08 +03:00
Slava Monich
48cb24f8a1 [app] Fixed the behavior of the position stack
It didn't do the right thing when it reached the depth limit.
2017-09-07 18:10:11 +03:00
Slava Monich
0e8d758879 Turn pages with volume keys
And allow to configure volume key actions.
2017-08-08 16:19:30 +03:00
Slava Monich
9ac726c523 Implemented history (position stack)
Allows the user to return back after selecting a cross-page link
2017-08-03 18:48:17 +03:00
Slava Monich
d0051015c1 [app] Fixed Qt 5.6 compilation 2017-04-24 13:02:59 +03:00
Slava Monich
4ac2d2a4d6 Reduced verbosity of the debug log 2017-01-29 23:56:23 +02:00
Slava Monich
77be4b68e8 [app] Workaround for positionViewAtIndex not working for the first time
This is probably a bug in QQuickListView - it first calculates the
item position and then starts instantiating the delegates. The very
first time the item position always turns out to be zero because the
average item size isn't known yet. So if we are trying to position the
list at a non-zero index and instead we got positioned at zero, try it
again.
2016-11-24 20:02:53 +02:00
Slava Monich
32013a8ac5 [app] Added BooksPos::toString() method 2016-11-24 17:49:54 +02:00
Slava Monich
1a8aad3139 [app] Added positionViewAtIndex method to BooksListWatcher
It allows to avoid binding loops
2016-11-24 14:18:59 +02:00
Slava Monich
3ffcd7cdf2 [app] Housekeeping 2016-11-06 21:52:09 +03:00
Slava Monich
3fbe9561be [app] BooksListWatcher should emit sizeChanged when view is assigned 2016-11-02 23:52:40 +03:00
Slava Monich
e3b0e1c453 [app] Support for footnotes 2016-11-02 19:51:34 +03:00
Slava Monich
8169b31531 [app] Fixed the problem with the font size adjustment being ignored
Per-book font size adjustment was essentially ignored until the font
size is changed for the first time.
2016-10-30 01:07:20 +03:00
Slava Monich
af9271dff5 [app] Made root directory configurable for removable storage
The dconf entry is /apps/harbour-books/removableRoot
2016-10-23 20:17:13 +03:00
Slava Monich
1d4fdeaea9 [app] Fixed beginResetModel/endInsertRows mismatch in BooksImportModel 2016-10-17 02:02:37 +03:00
Slava Monich
0f492594c7 [app] Slightly refactored BooksSettings
Internal stuff has been moved inside, leaving only interfaces in the header
2016-10-17 00:48:25 +03:00
Slava Monich
caf858b581 [app] Use shared instance of BooksSettings 2016-10-16 23:36:13 +03:00
Slava Monich
b2d01710e8 [app] Support for internal hyperlinks 2016-10-16 20:07:03 +03:00
Slava Monich
cd3194e1a2 [app] Improved link detection
The previous one was detecting any tap after the link within the
paragraph as a tap on the link. That's wrong. You have to hit the
link between its start and the end, otherwise it's a miss.
2016-10-15 13:27:43 +03:00
Slava Monich
13c3c73004 [app] Make sure that book path is mixed into the image id
That fixes the problem with different books having images with
the same ids.
2016-10-09 12:50:37 +03:00
Slava Monich
1cdafb5fd0 [app] Tweaking image view transitions 2016-10-08 23:36:28 +03:00
Slava Monich
4c918861d0 [app] Zoom images on long tap 2016-10-08 20:16:08 +03:00
Slava Monich
c15d6b840d [app] Open external links on long tap 2016-10-08 19:41:27 +03:00
Slava Monich
44e40dbb3a [app] Added ~/android_storage/Download to the search path 2016-10-07 19:52:15 +03:00
Slava Monich
d8964ee8b1 [app] Allow to fix orientation 2016-10-07 19:40:18 +03:00
Slava Monich
5be7de14ba [app] Prefixed all string ids with harbour-books- 2016-10-07 18:47:27 +03:00
Slava Monich
833775f0b0 [app] Added settings page 2016-10-07 17:57:08 +03:00
Slava Monich
fcdf92acc5 [app] Even better way to determine screen DPI. 2016-07-27 12:34:15 +03:00
Slava Monich
ca2f50cb4b [app] Restore current folder at startup 2016-06-23 18:34:13 +03:00