55 Commits

Author SHA1 Message Date
Kovid Goyal
497b8e4803
Content server: Fix jumping to locations such as bookmarks not working on iPhone/iPad running iOS >= 15. Fixes #1989722 [Calibre Content Server: Opening bookmarks on Safari iOS not working](https://bugs.launchpad.net/calibre/+bug/1989722) 2022-09-27 12:13:24 +05:30
Kovid Goyal
8988cbcf56
Remove top-level references to window and document 2021-05-16 05:43:02 +05:30
Kovid Goyal
d862d271f2
Revert "Avoid deprecation message in console about legacy fullscreen APIs"
This reverts commit d6f7b55e21471cad94ebd536d9ab2b6d66bcf195.
2020-09-03 07:47:50 +05:30
Kovid Goyal
d6f7b55e21
Avoid deprecation message in console about legacy fullscreen APIs 2020-08-31 08:49:14 +05:30
Kovid Goyal
8de5a4ed86
Browser viewer: Fix context menu not working in input controls 2020-08-22 18:48:23 +05:30
Mark W. Gabby-Li
d9a343dad6
Support for Books in RTL Languages, Such as Hebrew
Three parts: RTL layout support, made inputs behave naturally in RTL modes, and updated tutorial for RTL books.

To add RTL layout support:
 ‣ Don't force LTR layout on DOM when loading.
 ‣ Disable "overflow: hidden" in RTL mode to compensate for an issue in Chrome, and disable scrollbars on all browsers to compensate for the side effect of this turning on scrollbars.
 ‣ Have viewport hide the RTL mode by negating scrolls and viewport position requests in RTL mode.
 ‣ Initialize viewport in paged mode layout so that it properly saves RTL mode.
 ‣ Remove all raw calls to pageXOffset and pageYOffset
 ‣ Put viewport_to_document in ScrollViewport so that it can abstract away RTL mode in this case, too.
   ‣ Get rid of calls to reset_transforms and make it private, since it is only called to prepare for viewport_to_document. Put the call there, instead.
 ‣ Use bounding box right instead of left for position of various elements when the viewport is in RTL mode, since the right side is the beginning of the element in this case.

To made input behave naturally in RTL:
 ‣ Get page progression direction from ePub.
 ‣ Add rtl_page_progression() function to return whether we're in this mode.
 ‣ Added support to tell page advance functions whether they should flip their direction if RTL is on.
 ‣ Changed touch behavior to support different position for going back and forward in RTL books.

Tutorial changes:
 ‣ Flipped tutorial so that next and previous page are reversed in position and size in RTL mode.
 ‣ Added a new counter so that RTL tutorial is shown even if user has already seen LTR tutorial.
2020-08-22 18:48:22 +05:30
Kovid Goyal
79a7d9885f
Now that there is a unicode symbol for half stars, use it 2020-05-17 12:17:38 +05:30
Kovid Goyal
3a9357d481
Move various existing RS tests into new framework 2020-04-02 16:28:59 +05:30
Kovid Goyal
4defd82bed
Click to position handles implemented 2020-03-20 15:41:23 +05:30
Kovid Goyal
18a7ad73a4
Initial positioning of selection handles works 2020-03-18 09:28:19 +05:30
Kovid Goyal
2f701318d2
Viewer: Fix searching in Regex and Whole words mode not working well.
Viewer: Fix searching for multiple words in fixed layout books not
working. Fixes #1863464 [Private bug](https://bugs.launchpad.net/calibre/+bug/1863464)
2020-02-28 14:45:07 +05:30
Kovid Goyal
7cdd0c10ef
Handle search expressions with boundary conditions 2020-01-22 15:57:23 +05:30
Kovid Goyal
8c53305a4c
Server viewer: Make exit fullscreen action available in viewer controls. Fixes #1857677 [Add Exit full screen option in Content server controls](https://bugs.launchpad.net/calibre/+bug/1857677) 2019-12-27 15:21:32 +05:30
Kovid Goyal
b17b3f358d
Content server: Fix detection of iOS on iPAD with iOS 13 which defaults to desktop mode 2019-10-09 20:31:39 +05:30
Kovid Goyal
0641384bc7
Server: Use overlay buttons as next/prev on boo details page
See #1845417 ([Enhancement] Book details on calibre-server)
2019-09-26 11:55:30 +05:30
Kovid Goyal
317a2b9a14
Viewer: Allow fading the background image by blending it with the background color 2019-09-25 11:25:40 +05:30
Kovid Goyal
e58a50e7ed
Shortcut for toggling fullscreen 2019-09-13 09:12:32 +05:30
Kovid Goyal
4fc76a6919
Finish up adding books implementation
Still needs to add the new book to the existing book list, so that the
book list does not need to be refreshed to see the book.
2018-01-25 14:04:15 +05:30
Kovid Goyal
00334e9f1b
Workaround for window.innerWidth/Height being wrong inside an iframe on Safari 2017-05-27 15:59:23 +05:30
Kovid Goyal
8c07e979dd
Do not rely on translators getting the trailing spaces right when rendering the series name 2017-05-25 08:13:20 +05:30
Kovid Goyal
133a073ef7
Refuse to work at all on browsers that do not support <iframe srcdoc> 2017-05-21 13:39:43 +05:30
Kovid Goyal
d09f7605f1
Fix font in embedded iframe different from rest of interface 2017-05-21 13:39:43 +05:30
Kovid Goyal
ecb9266eca
More useful error page when reading book fails 2017-05-21 13:39:41 +05:30
Kovid Goyal
5271fa949c
Restore proper reflow for comments on the book details page 2017-05-21 13:39:38 +05:30
Kovid Goyal
f502da812a
Sandbox comments HTML 2017-05-21 13:39:37 +05:30
Kovid Goyal
a50a2c7cca
Be more explicit about setting innerHTML 2017-05-21 13:39:37 +05:30
Kovid Goyal
7a4ddafb9b
Remove u regex flag as it is not supported by dukpy 2017-05-21 13:39:37 +05:30
Kovid Goyal
c651219654
Utility function to sanitize simple inline HTML markup 2017-05-21 13:39:37 +05:30
Kovid Goyal
623651d84b
Fix caching of parsed URL queries broken
Ensure that changes to query objects dont make it into
the cache
2017-05-21 13:39:36 +05:30
Kovid Goyal
cccd5e8f1a
Add a button to enter full screen mode to the viewer controls 2017-05-21 13:39:34 +05:30
Kovid Goyal
4974f3b7c0
Utility function to request full screen 2017-05-21 13:39:34 +05:30
Kovid Goyal
1672ef4f22
Fix --url-prefix not working 2017-05-21 13:39:13 +05:30
Kovid Goyal
5db33faeb8 Encode local state using # instead of ? in URLS
Needed for appcache (appcache caches URLs with different ? query
parameters separately).

Also probably semantically more correct, since
the query data represents local state.
2017-04-06 11:47:00 +05:30
Kovid Goyal
0fe268343b DRYer 2017-02-15 08:30:46 +05:30
Kovid Goyal
ab332d0b99 Work on refactoring the books view 2017-02-15 08:30:46 +05:30
Kovid Goyal
0c815b507e More work on viewer search 2017-01-09 20:14:44 +05:30
Kovid Goyal
27499c9188 Generate correct search expressions for half stars when clicking the Tag Browser entries 2016-09-05 08:52:03 +05:30
Kovid Goyal
7852aa3eac Add history to the search bar widget 2016-08-11 10:14:18 +05:30
Kovid Goyal
3ca4670ce9 Encode the current book position in the URL
Allows direct linking to arbitrary locations in a book hosted in the
calibre server
2016-05-20 12:36:50 +05:30
Kovid Goyal
3eac3b3c53 ... 2016-04-29 09:14:54 +05:30
Kovid Goyal
3f34835bac Port the paged layout code to RapydScript 2016-04-28 15:37:47 +05:30
Kovid Goyal
60a531283c Update RapydScript 2016-04-25 16:39:04 +05:30
Kovid Goyal
98ae9e6754 Make the home icon in the breadcrumbs slightly larger
Also remove unnecessary use of prototype
2016-04-23 10:25:33 +05:30
Kovid Goyal
04929a943d Implement keyboard and wheel scrolling in flow mode 2016-04-07 15:18:27 +05:30
Kovid Goyal
a171dfc99d Implement previous and next page buttons for when scrolling reaches top/bottom in flow mode 2016-04-05 20:17:18 +05:30
Kovid Goyal
05c637cba7 Switch to using string functions as methods 2016-04-04 15:52:40 +05:30
Kovid Goyal
2012b0f6b4 Update RapydScript 2016-03-27 14:24:43 +05:30
Kovid Goyal
35d2b9fda9 Establish communication between parent and sanboxed render iframe 2016-03-24 17:35:53 +05:30
Kovid Goyal
449511cd8e Implement storing of rendered book in IndexedDB 2016-03-20 22:53:48 +05:30
Kovid Goyal
d96eb506bd Work on downloading files for a rendered book 2016-03-20 20:49:42 +05:30