Commit graph

202 commits

Author SHA1 Message Date
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
3325aad1b2 [app] Eliminated unnecessary QML object creation 2018-01-20 13:49:51 +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
f699d3cb34 [app] Added "Copied to clipboard" pop-up notification 2017-12-04 01:24:39 +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
Åke Engelbrektson
35d9a674db Update harbour-books-sv.ts 2017-08-09 15:38:46 +02: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
1ca5fb3653 Added UI state with pager but without tools 2017-08-03 21:48:27 +03:00
Slava Monich
bd403f44c9 Hide history controls if there's no history
Also, long-press on the history arrow clears the history
2017-08-03 21:24:03 +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
59f49be0c3 Specify slider animation duration in addition to velocity 2017-08-03 18:41:59 +03:00
Slava Monich
8344963cc9 Tweaking tool icons 2017-08-03 16:19:51 +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
ca2afa3dec [app] Fixed a problem with generation of .qm files 2017-01-28 18:25:31 +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
Åke Engelbrektson
9a9e5a5006 Update harbour-books-sv.ts 2016-10-24 04:57:21 +02:00
Slava Monich
bbeac12891 [app] Tweaking Russian translations 2016-10-23 20:18:59 +03:00
Slava Monich
417bf0371e [app] Made books folder on the memory card configurable 2016-10-23 20:17:40 +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
55b47f18f2 [app] Took out unused slider code 2016-10-16 22:41:29 +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
01c9f0744b [app] Fixed condition for BooksBookView being interactive 2016-10-15 13:16:06 +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
1c7c897909 [app] Housekeeping 2016-10-08 14:55:20 +03:00
Slava Monich
0a42d93e14 [app] Fixed the problem with the initial slider position 2016-10-08 01:09:57 +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
fd0724aa90 [app] Fixed wrapping of "No books" label 2016-07-27 23:25:20 +03:00
Slava Monich
fcdf92acc5 [app] Even better way to determine screen DPI. 2016-07-27 12:34:15 +03:00
Slava Monich
43d54a8a20 [app] Fixed truncation of long folder names 2016-06-25 00:35:15 +03:00
Slava Monich
ca2f50cb4b [app] Restore current folder at startup 2016-06-23 18:34:13 +03:00
Heiko Bauke
0a4f909b97 fixed wrong language declaration 2016-04-18 14:54:18 +02:00
Heiko Bauke
80750b4f86 fixed double "CONFIG += sailfishapp" 2016-04-18 09:37:30 +02:00
Heiko Bauke
a4b7c45f8b revert changes in habour-books.spec 2016-04-17 02:05:34 +02:00
Heiko Bauke
a319ba6008 German localization 2016-04-16 23:01:17 +02:00
Slava Monich
138e7f2068 [app] Optimize BooksShelfItem
Use Loader to instantiate components on demand
2016-03-16 01:31:33 +02:00
Slava Monich
0220a2c79a [app] Tweaking the "Loading..." screen 2016-02-21 15:13:40 +03:00
Slava Monich
34f8070d8d [app] Fixed OBS build 2016-02-21 14:53:45 +03:00
Slava Monich
40bfd59dc5 [app] Added -d option that turns on built-in fbreader trace
for example, -d epub
2016-02-21 13:48:07 +03:00
Slava Monich
c9ec2cb51e [stubs] Added XML_SetHashSalt stub
It't required to fix the problem created by the fix for CVE-2012-0876
This is a great example of a solution that creates more problems than
it solves.
2015-12-14 12:23:12 +03:00
Slava Monich
e3fc9982c6 [app] Fixed ZLibrary::ourApplicationDirectory
It wasn't pointing where FBReader code was expecting it to point.
Particularly, FBReader wasn't finding format-specific XML entities.
2015-12-14 12:18:22 +03:00
Slava Monich
58d0927e82 [app] Implemented per-book font size
The global font size setting still exists, per-book value is the adjustment
relative to the default value.
2015-12-13 14:46:53 +03:00
Slava Monich
7ab1b72343 [app] Changed "-a" icon alignment 2015-12-12 17:33:24 +03:00
Slava Monich
c95bb79aa2 [app] Tweaking book copy 2015-12-12 12:38:26 +03:00
Slava Monich
84b9b77523 [app] Show progress indicator when copying the book 2015-12-03 01:00:45 +02:00
Slava Monich
272a45279c [app] Preparing to support copying folders 2015-12-02 23:38:16 +02:00
Slava Monich
08c0904a84 [app] Fixed the problem with the initial focus
If the first press isn't ignored by the drag area then the first flick
won't work. The problem has something to do with this drag area as
everything works fine if the drag area is removed. Couldn't figure out
what exactly the problem was and what's wrong with the initial focus,
but this hack makes things work.
2015-12-01 19:10:31 +02:00
Slava Monich
26e651a932 [app] Tweaking BooksShelfView
It doesn't need to be flickable. Also, re-parented BooksDragArea
2015-12-01 19:00:55 +02:00
Slava Monich
2f435649b7 [app] Removed unnecessary slash from the state file name
Doesn't really matter, purely cosmetic change
2015-12-01 18:59:17 +02:00
Slava Monich
34fb489107 [app] Reworked support for folder renaming
The actual renaming is easier to do in BooksShelf rather than BooksPathModel
and it generally makes more sense.

Editing now also starts after long-pressing the title of the current folder.
2015-12-01 00:00:56 +02:00
Slava Monich
9f1261a822 [app] Added BooksSaveTimer::saveNow() method 2015-11-30 23:18:53 +02:00
Slava Monich
a89e489f7a [app] Fixed criteria of a valid folder name 2015-11-30 23:17:43 +02:00
Slava Monich
ed218a6f03 [app] Added translation for "Enter folder name" 2015-11-30 18:29:37 +02:00
Slava Monich
57204d3cc4 [app] Implemented folder renaming 2015-11-30 17:57:27 +02:00
Slava Monich
8a4e131452 [app] Tweaking folder UI 2015-11-29 23:18:09 +02:00
Slava Monich
89f79e2492 [app] Added limited support for folders
UI doesn't allow creating or renaming the folders yet and there's
no easy way to move books between folders, but if folders are there,
they will be shown and the user will be able to navigate between them.

Folders can be deleted though.
2015-11-08 14:20:25 +03:00
Slava Monich
ef19a5c2e7 [app] Better guess at screen DPI 2015-11-05 01:04:55 +03:00
Slava Monich
3ebb82b208 [app] Housekeeping 2015-11-05 01:03:49 +03:00
Slava Monich
98b269d405 [app] Use busy indicator of medium size for bookshelf item 2015-11-05 00:40:29 +03:00
Slava Monich
fe7f81e353 [app] Updated Finnish translation for book-view-formatting 2015-11-03 15:48:28 +03:00
Slava Monich
512c698fd1 [app] Only show the cancel button when actually loading the book 2015-11-03 01:33:58 +03:00
Slava Monich
53f7693ced [app] Workaround for Qt crash
Qt was crashing when user was swiping over hidden cancel button.
Making button invisible helps to avoid the crash.
2015-10-31 00:04:04 +03:00
Slava Monich
312dbff58c [app] Don't mess with the Button width 2015-10-21 13:57:38 +03:00
Slava Monich
01e9c614a0 [app] Fixed the "cancel load" button
Now it disappears after loading is done and becomes compatible with SFOS 1.1.7
2015-10-21 13:38:28 +03:00
Slava Monich
d82564509c [app] Package icons in a different way
Otherwise deployment from QtCreator may fail.
2015-10-21 13:31:48 +03:00
Slava Monich
eda98440cf [app] Added 108x108, 128x128 and 256x256 icons 2015-10-19 16:54:37 +03:00
Slava Monich
1fc46997eb [app] Fixed gcc 4.8 warning "iteration 1u invokes undefined behavior" 2015-10-15 17:24:24 +03:00
Åke Engelbrektson
d91d4c939b Update harbour-books-sv.ts
Correcting translation
2015-09-12 21:24:19 +02:00
Slava Monich
e00e5624f9 [app] Made it easier to cancel book loading
Also, show the book title at the top of the loading screen
2015-09-12 19:37:02 +03:00
Slava Monich
9f7c751e8d [app] Fade truncated title 2015-09-12 19:24:45 +03:00