2
0
mirror of https://github.com/koreader/koreader synced 2024-11-16 06:12:56 +00:00
Commit Graph

219 Commits

Author SHA1 Message Date
chrox
f41f645465 add last_percent field in pdf/djvu document history
And normalize last_percent for cre document
2013-01-07 00:20:30 +08:00
Qingping Hou
27f0801e93 Merge branch 'new_ui_code' of github.com:hwhw/kindlepdfviewer into new_ui_houqp 2013-01-06 03:31:47 -05:00
{Qingping,Dave} Hou
350d3aa55e Merge pull request #682 from houqp/swipe
Swipe gesture support
2013-01-06 00:31:21 -08:00
Qingping Hou
44eb70bcf5 use ReaderRolling.view_mode instead of self.ui.document.view_mode
view_mode is removed from self.ui.document
2013-01-06 02:55:37 -05:00
chrox
aa152a8a51 make readerconfig independent of koptoptions
So that other readers could reuse readerconfig
2013-01-06 14:01:34 +08:00
{Qingping,Dave} Hou
bac3ae568b Merge pull request #686 from chrox/prerendering
add pre-rendering in pdf/djvu readers
2013-01-05 16:46:52 -08:00
chrox
12a76fee33 add pre-rendering in pdf/djvu readers
"HintPage" tasks are scheduled into the execution stack of UIManager
after each page drawing. These tasks should be checked immediately after
screen is refreshed so tasks are double-checked in the main loop.
2013-01-05 22:28:14 +08:00
chrox
bfe7b5e332 move Reflow option to More options dialog 2013-01-05 20:15:17 +08:00
{Qingping,Dave} Hou
3ec818a3cd Merge pull request #684 from chrox/koptreader-new-ui
add reflow mode in pdf/djvu readers
2013-01-04 00:28:57 -08:00
Qingping Hou
c0602fba95 fix nil dimen bug in InputContainer:init 2013-01-04 03:16:18 -05:00
chrox
349bcb996e use koptinterface to reflow text in pdf/djvu readers 2013-01-03 22:33:49 +08:00
Qingping Hou
06444e3420 add notification widget and used it in readerbookmark 2013-01-01 18:08:19 -05:00
Qingping Hou
fff8658530 notify user if page already book marked 2013-01-01 17:27:10 -05:00
Qingping Hou
d04ab4e4ae add readerbookmark 2013-01-01 14:45:52 -05:00
Qingping Hou
9e7d41d129 bug fix in readertoc
* typo in fillToc method
* handle xpointer in getTocTitleByPage
* return true in onShowToc
2013-01-01 14:45:44 -05:00
Qingping Hou
a05e87a2dc move Back key binding of readerui to ReaderUI:init() 2013-01-01 14:40:37 -05:00
Qingping Hou
b79fafb863 add Device:hasKeyboard in device.lua 2013-01-01 14:40:32 -05:00
Qingping Hou
d295e28046 remove unused onPageUpdate and onPosUpdate in readertoc 2013-01-01 14:40:24 -05:00
Qingping Hou
943d56699e remove dulplicate onSetDimensions handler in readertoc 2013-01-01 14:40:17 -05:00
Qingping Hou
2bf0a5cf0a use menu widget ignore attribute for reader menu
now menu is poped up from top of screen
2013-01-01 14:40:09 -05:00
Qingping Hou
6af311bc17 add ignore attribute to CenterContainer widget 2013-01-01 14:40:02 -05:00
Qingping Hou
a19b3cc1b4 bug fix: set toc menu height and width 2012-12-31 00:49:43 -05:00
Qingping Hou
414f8bec34 use left swipe for next page turn 2012-12-31 00:09:33 -05:00
Qingping Hou
d3292740ec adapt ReaderPanning to new touch event system 2012-12-30 22:57:23 -05:00
Qingping Hou
120f7b0252 bug fix: signal ViewRecalculate event after panning
This make sure ReaderPaging get correct visible_area when
turnning to previous page.
2012-12-30 22:53:57 -05:00
Qingping Hou
8a8b993ade add toc menu for touch UI 2012-12-30 19:13:46 -05:00
Qingping Hou
468178c37c bug fix in menu widget, call close_callback on after select 2012-12-30 18:51:14 -05:00
Qingping Hou
c5fc851bb7 bug fix for swipe gesture detection (nil x or y)
a complete_last_ev var is used to make sure the first argument
to isSwipe() method has no nil x or y entry.
2012-12-30 01:01:44 -05:00
Qingping Hou
f19b6e7667 use swipe gestures in menu widget to signal page turn 2012-12-30 00:56:21 -05:00
Qingping Hou
0f51f34ff6 add swipe event detection in gesturedetector.lua 2012-12-30 00:45:21 -05:00
chrox
e525264b01 save/restore koptconfig to setting files 2012-12-24 17:36:52 +08:00
chrox
99a7ebaeb6 larger option text in paperwhite 2012-12-24 16:55:10 +08:00
chrox
a649301e69 make pdfreader and djvureader the defaults 2012-12-24 08:19:34 +08:00
chrox
074522a36b first usable koptreader for new UI 2012-12-24 08:16:41 +08:00
chrox
755e012dba add config options 2012-12-24 08:16:33 +08:00
chrox
138def10c3 Demo version of koptreader config dialog. 2012-12-24 08:16:17 +08:00
Qingping Hou
93abd2fee7 add page status to readerrolling for better page view_mode support
* now when rendering in page view mode, we only keep track of page
number instead of pos inside document. Because using pos inside
document for page view mode is really a bad idea and will lead to
many unsovlabe bugs...
2012-12-22 13:27:46 +08:00
Qingping Hou
5ab98420bd use predefined variable instead of magic number for view_mode 2012-12-21 09:10:16 +08:00
Qingping Hou
efa37c97ab bug fix in readerfont
After set font in ReaderFont:onReadSettings, we have to send UpdatePos
event in order to set m_is_rendered(member of LVDocView) to true.

Otherwise position inside document will be reset to 0 on first view
render, this makes the first page of document is always displayed on
document open.

So far, I don't know why this call will alter the value of m_is_rendered.
It just works...
2012-12-21 06:00:51 +08:00
Qingping Hou
4d010f10e2 disable overlap dimming for page view mode in crereader 2012-12-18 12:31:55 +08:00
Qingping Hou
5a57ef84d3 remove default_font in readerfont because it is defined in credocument. 2012-12-17 15:01:31 +08:00
Qingping Hou
e27b99f770 read font_face and font_size from document settings
This is done in readerfont.lua
2012-12-17 14:51:50 +08:00
Qingping Hou
5d1c98e90a add setFontSize to credocument.lua 2012-12-17 14:50:50 +08:00
Qingping Hou
590bf149be count FrameContainer padding into menu title bar size 2012-12-16 03:43:33 -05:00
Qingping Hou
2050696de6 bug fix in FrameContainer
content_size should be obtained by calling self[1]:getSize()
2012-12-16 03:42:30 -05:00
Qingping Hou
6beebe4423 remove menu item underline for touch device 2012-12-16 02:16:21 -05:00
Qingping Hou
dbd27cd600 rename ReaderMenu:addToMainMenuCallback to registerToMainMenu
since we are actully inserting widgets, not callbacks
2012-12-15 09:30:48 +08:00
Qingping Hou
5b6558383d register ReaderZooming's zoommode menu in ReaderMenu 2012-12-15 09:26:40 +08:00
Qingping Hou
9a439f5dc4 register ReaderFont's font menu in ReaderMenu 2012-12-15 09:23:02 +08:00
Qingping Hou
f7c65ebef7 add register_widget in ReaderMenu & minor fixes in menu.lua
* now readerwidgets can add menu items in ReaderMenu by
calling ReaderMenu:addToMainMenuCallback and define its own
addToMainMenu method, which takes ReaderMenu's item_table as argument.
2012-12-15 09:20:12 +08:00
Qingping Hou
93f7813d1a do deep copy on InputContainer widget _init 2012-12-14 05:52:56 +08:00
Qingping Hou
476733dc87 register font menu to main reader menu for touch device 2012-12-14 02:32:16 +08:00
Qingping Hou
1675d8667b add cre view mode support in frontend 2012-12-13 12:41:48 +08:00
Qingping Hou
756cce6174 use DroidSansFallback.ttf in font.lua 2012-12-13 01:40:35 +08:00
Qingping Hou
93b642a0d7 fix Device:isKindle4() method 2012-12-12 10:03:16 +08:00
Qingping Hou
309af296db read document configuration files from history dir
this feature was introduced by @NuPogodi in old KPV
2012-12-12 09:35:49 +08:00
Qingping Hou
97041638a6 Merge branch 'new_ui_code' of github.com:hwhw/kindlepdfviewer into new_ui_houqp 2012-12-11 22:56:37 +08:00
eureka
424776b564 fix bug in eventhook for KT
* no return
* it is value that should be changed
2012-12-11 13:14:41 +08:00
Qingping Hou
b253a774f6 added TODO in Input:init in case I forget it in the future 2012-12-10 21:05:35 -05:00
Qingping Hou
c8d43cd33c add Input:eventAdjustHook(ev)
so we can adjust input event for KT on the fly.
the touch input event coordinates in KT ranges from 0-4095
instead of the screen size.
2012-12-10 20:58:16 -05:00
Qingping Hou
1b7357fc0f add Device:hasKeyboard to help initialize UI components
So that kindle4 won't have all the gesture event registered.
2012-12-10 19:01:32 -05:00
eureka
bf86cf7a93 KT input device patch from eureka
* add KT detection
* remove unnacessary input device for KT
2012-12-10 18:52:22 -05:00
Qingping Hou
c0616b4173 make sure menu height not exceed screen height. 2012-12-11 02:30:50 +08:00
Qingping Hou
5fc4adafc4 fill menu with dummy blank widget to extend its height 2012-12-11 01:59:24 +08:00
Qingping Hou
418bfd9fc2 remove update_area since I cannot come up with a good implementation yet 2012-12-09 01:26:28 +08:00
Qingping Hou
c8de4f3f6c adapt filechooser and readermenu to new menu widget
* now if you want to center a menu, you have to wrap it
in CenterContainer. Refer to readermenu for details.
2012-12-09 01:25:32 +08:00
Qingping Hou
92bce18537 bug fix in InputContainer and menu widget
* add _init callback for all widgets, which is used for base widget
initialization. see comment in Widget:new(o) for more information.

* new ges_events and key_events are created for each InputContainer
widget, previously, they shared the same tables.

* remove hardcoded menu widget dimen

* recalculate menu dimen on table item changes

* add CloseAllMenus for menu widget
2012-12-09 01:21:30 +08:00
Qingping Hou
cc38d9e6fc add KT support 2012-12-08 01:06:47 -05:00
Qingping Hou
e98a89f8d5 demo for dimming on page overlap 2012-12-08 01:05:10 -05:00
Qingping Hou
683c7eee2c handle corrupted usedbbox in Document:getUsedBBoxDimensions() 2012-12-07 16:42:27 -05:00
Qingping Hou
3af979b84d add close button for menu 2012-12-07 23:30:15 +08:00
Qingping Hou
74dc0abc18 add UIManager.repaint_all to force repaint on all widgets 2012-12-07 23:29:24 +08:00
Qingping Hou
7accd7572b add OverlapGroup in widget.lua 2012-12-07 23:28:55 +08:00
{Qingping,Dave} Hou
e00dfa7d38 Merge pull request #650 from houqp/new_ui_houqp
add touch support for readerrolling
2012-12-06 07:33:48 -08:00
{Qingping,Dave} Hou
5cbbfaceff Merge pull request #649 from chrox/koptreader-new-ui
move page reflowing code to getPageDimensions method
2012-12-04 01:08:12 -08:00
Qingping Hou
90f6dfefb4 code tide up in readerpaging 2012-12-04 17:05:58 +08:00
Qingping Hou
98ca3aa83f add touch support for readerrolling 2012-12-04 17:05:40 +08:00
Qingping Hou
d077bafb6d fix bug no default zoom mode bug in readerpaging
reported by @chrox, see #647
2012-12-04 15:19:50 +08:00
chrox
fd461e4f3e move page reflowing code to getPageDimensions method 2012-12-04 10:36:36 +08:00
Qingping Hou
ae1c489a0f implement full pageturn by viewport for all modes
* add notIntersectWith method for Geom
* add math.roundAwayFromZero in geometry.lua
* Readerview:recalculate now signals ViewRecalculate event.
  For now, this event is only usefull for ReaderPaging
2012-12-03 13:48:41 +08:00
Qingping Hou
7b707ab367 add usedbbox support 2012-12-02 17:09:32 +08:00
Qingping Hou
7e04c97b70 bug fix for PdfDocument:getUsedBBox
when cache found, we should return cache.ubbox
not cache.data
2012-12-02 15:14:02 +08:00
Qingping Hou
65e8e2292f revert wrong cleanup for commit cf3cc65c03
self.layout must be updated for any widget that inherits
from focusmanager. Previous commit removed related code on
menu item update.
2012-11-29 10:48:57 -05:00
{Qingping,Dave} Hou
267ed42be6 Merge pull request #638 from houqp/new_ui_code_fix
zoom mode support in reader menu & menu module bug fix
2012-11-29 07:33:54 -08:00
{Qingping,Dave} Hou
8e085c3e5d Merge pull request #641 from houqp/new_ui_code
merge latest changes from master branch
2012-11-29 07:32:32 -08:00
chrox
4dd9232194 recalculate page size after each call of drawPage
Only after renderPage is called can koptdocument update
reflowed page size. And the recalculate acts as a page
size updater here.
2012-11-29 21:58:24 +08:00
chrox
aa9fe4b01c cache page size after page is reflowed
So that when page dimension is recalculated right page size
other than screen size is returned.
2012-11-29 21:58:12 +08:00
chrox
c462090600 add koptreader demo 2012-11-27 20:43:49 +08:00
{Qingping,Dave} Hou
da87914cbf Merge pull request #634 from houqp/ges-detect
Touch gesture detection module
2012-11-26 15:20:54 -08:00
Qingping Hou
d57ac2e756 Use the font DroidSansFallbackFull.ttf in font.lua 2012-11-26 13:39:09 -05:00
Qingping Hou
ba3973b2ac add all zoom modes support to reader menu 2012-11-26 15:30:24 +08:00
Qingping Hou
cf3cc65c03 fix bug in multi-level menu support
The size of framecontainer is not reset after content changed.
2012-11-26 15:25:28 +08:00
Qingping Hou
c701248a8d rename Input:setTimeOut to Input:setTimtout
To keep consistent with Javascript setTimeout function...
2012-11-25 15:57:29 +08:00
Qingping Hou
e3617676a1 fix deprecated debug call in credocument.lua 2012-11-23 01:10:34 -05:00
Qingping Hou
a7b2215249 bug fix in time.lua
a crazy typo
2012-11-23 01:04:56 -05:00
Qingping Hou
324f67412a fix bug in timer_callbacks scheduling & change variable name
watiEvent should stop checking timer_callbacks when execceds
wait timeout set by timeout_us.
2012-11-17 13:51:34 -05:00
Qingping Hou
d3e0424122 add setTimeOut method in inputevent.lua
adapt all the state machine to use setTimeOut. Now supported gestures
includes tap, double tap and hold.
2012-11-17 13:41:26 -05:00
Qingping Hou
a8e4c6ed73 add setTimeOut method in inputevet and use it in gesturedetector 2012-11-16 18:55:13 -05:00
Qingping Hou
dfd697453b add time module 2012-11-16 18:54:01 -05:00
Qingping Hou
f06afb798e rewrite gesturedetector state machine 2012-11-15 19:58:01 -05:00