Commit Graph

1195 Commits (dfe39589f4a9e10182eb2f0706e65a56f72c42d5)

Author SHA1 Message Date
NiLuJe 3fdd90cf3b Fix a few Droid font paths 9 years ago
Qingping Hou 186673587e chore: fix some of the luacheck errors 9 years ago
NiLuJe c847807322 Turns out that also looks better as ui refreshes 9 years ago
NiLuJe 50dbf6b581 Switch a few widgets to ui refresh modes
More closely matches native behavior on REAGL devices.
Closing those widgets should still trigger a partial refresh though,
because we usually get back to the reader, and text, so we want REAGL
;).
9 years ago
chrox 932df2a2f9 Refactor out string.gsplit to util.gsplit 9 years ago
chrox fdc56f39a3 Show OTA channel info when package is unavailable
so that users could be aware that there is other channels to check.
9 years ago
chrox b1867def37 Check dns for www.example.com when geting network status
Because sometimes dns won't return for www.google.com in China,
ridiculous enough, right?
9 years ago
chrox ebdd374c93 Add 'input page number' function in filemanager
by holding on the page info label at the buttom of the filemanager
9 years ago
chrox 8836225cec fix freeze when register for KOSync on Kindle 9 years ago
chrox 82393f0ed3 fix loading frontend/JSON.lua for json.lua on Kindle
The VFAT file system of `/mnt/us` is case insensitive so that
require("json") from Spore which intends to load luajson module in
rock directory actually will load `frontend/JSON.lua`, the two JSON
parser libraries have slightly different APIs.

This patch remove the pure Lua JSON library in favor of `luajson` which
uses LPeg pattern marching backend for better performance.
9 years ago
chrox d3bb0d159a disable Turbo on Android to save precious mcode
This is a workaround to fix #1456.
9 years ago
chrox 72012e97e1 disable reflow options when reflow is not ON
This should also fix #1061.
9 years ago
chrox 90a5e09bdc disable highlight in dict window if it's highlighted already
This should fix #1418.
9 years ago
chrox 83cad1c61c larger page margin as a workaround to fix #1422 9 years ago
chrox cf124eb72f refresh menu instead of closing if menu item is a check option 9 years ago
chrox 9299b9a5e8 add async http client
it uses non-blocking turbo I/O looper to process http request
so that multiple http request can be handled simultaneously and http request
won't block user input, and most importantly, in Lua's way.
9 years ago
Huang Xin b56c01c382 Merge pull request #1423 from Markismus/master
Update networkmgr.lua
9 years ago
Markismus a32c3b3879 Update networkmgr.lua
Corrected a typo.
9 years ago
Markismus 5dd2fe0fae Update networkmgr.lua
Change from the commands from `wifi.sh` to those from `wifi_enable_dhcp.sh` from Tshering's Start Menu. See  Issue #939. Should resolve hanging of Kobo Aura H2O.
9 years ago
chrox f22a53affd screen orientation won't change when going into filemanager
and filemanager remembers screen orientation at exit
This should fix #1338.
9 years ago
chrox 02d61115dc fix some part of the screen not refreshed when togglering nightmode 9 years ago
chrox c6f6699644 fix empty menu widget won't trigger screen refresh
This should fix #1398.
9 years ago
chrox 3f691bab93 add stable OTA channel
This should fix #1353.
9 years ago
chrox db064fc009 add toggle wifi status on PocketBook 9 years ago
chrox a40c172c47 fix mupdf rendering caused by FONTDIR env var
It turns out that one of our mupdf patch reads the FONTDIR env var
and uses it in a totally different way so we will use another env var
EXT_FONT_DIR to define external font directory for different platforms.
10 years ago
chrox 077517be0b add FONTDIR env variable
to support custom font directory for EPUB documents

Now Koreader could find fonts in the "fonts" directory in the USB root
directory of kindle, Kobo and PocketBook devices, thus no need to copy
fonts to "koreader/fonts" directory.
10 years ago
chrox 9d13d4189b fix no eink optimization on all devices 10 years ago
chrox c11a2bbf1e fix ota update for PocketBook 10 years ago
chrox 6a06cfaea5 refactor out flush settings when device goes into screensaver 10 years ago
Qingping Hou 6ed8f30f35 fix: empty item_table crashes menu widget 10 years ago
chrox b403a45228 fix OTA server broken on checking stable release 10 years ago
chrox 8555f24c45 make sure refresh_count is incremented by only once at most for each repaint 10 years ago
chrox b3d79b053a workaround to fix #1340 10 years ago
variousvirgil 9c69c1f14e Fix #1299 10 years ago
Hans-Werner Hilse ff0fbbdb4b fix widget closing 10 years ago
Hans-Werner Hilse 844c1babf7 UIManager:_refresh(): no more default refresh
If no refresh type is specified, don't do a refresh.
There should be now refresh types specified in all relevant places.
10 years ago
Hans-Werner Hilse 94ce08937a clean up refreshes
This is a larger clean-up of the refresh situation.
The general shift is that refreshes are now mainly triggered by
the (top-level) widgets when they get shown or closed via UIManager.

All refreshes for the widgets when they are in use were handled by
themselves before. This adds the case of showing/closing.

It is the desired result of not having UIManager:show()/:close()
do (full screen) refreshes on its own.
10 years ago
Hans-Werner Hilse 9c4088a3ac small change of UIManager:show(): No more automatic refresh
This eliminates the API difference between the extra parameters of
UIManager:show() and setDirty(). They work the same now.
Note that this also eliminates the automatic refresh that took place
before when using show() without refresh options. It always refreshed
the full screen, which led to too big refresh regions all over the
place. Thus, refresh has now explicitly to be asked for, hopefully
encouraging to implement it in the widget that gets shown (and is
aware about the screen region it covers).

Also add an event that is triggered when a widget is closed:
CloseWidget. So a widget can implement "onCloseWidget()" to trigger
actions upon closing - most commonly, this is a refresh for the area
previously taken by the widget. That way, the widget's user does not
have to take measures to ensure that the area is refreshed later.
10 years ago
Huang Xin ddae003925 Merge pull request #1310 from hwhw/master
fixes for scrolling, fix for double-refresh, misc stuff
10 years ago
Hans-Werner Hilse e8642fbad7 use API for refresh when closing widgets in message popups 10 years ago
Hans-Werner Hilse 1091a8a3b9 add refresh control to UIManager:close() 10 years ago
Hans-Werner Hilse 143c56c48c record ButtonDialog.dimen 10 years ago
Hans-Werner Hilse afb59667c0 allow for more control on refreshes when show()ing widgets
for now, we have show() automatically call setDirty() for the new
widget, as before. However, now show() takes two arguments for
refresh configuration that will get passed on to setDirty().

For compatibility, the default is here in show() to do a partial
refresh. So if you want no refresh triggered (via this show() call),
add a function that doesn't return anything.
10 years ago
Frans de Jonge 47d7a48555 OPDS: refactored unit test and fixed a minor bug with undefined image_rel 10 years ago
Hans-Werner Hilse 3f9dc46315 fix dict window refresh
was still using old API
also, move this to another place.
10 years ago
Frans de Jonge c25254a7ec OPDS: embryonic unit test for OPDS browser
This initial seed specifically tests against what recently broke in Gutenberg and FeedBooks.
10 years ago
Hans-Werner Hilse f02be20a65 refresh fixes for the menus
this will only refresh the areas that actually need to be refreshed.
10 years ago
Hans-Werner Hilse 6793a4fee1 reader config dialog: properly refresh config pane
This serves as a good example for the way refreshes are done:
setDirty("all", function() ... end)
* the "all" will have all widgets on screen repainted.
  In this case that is needed because the config pane has
  different sizes, covering different parts of underlying
  widgets. So they need to be repainted every time.
* the function will return the area to refresh and is evaluated
  after painting. In this example, we take the area that is covered
  by the config pane before switching it (if present at all), and
  hand it to the refresh area function as an upvalue.
  When the function is called later after painting, it will
  use that saved area and combine it with the area that is covered
  then by the widget. That way, parts that are covered no more are
  included in the refresh area, too.
10 years ago
Hans-Werner Hilse 82c26b1f18 adapt widgets to new refresh/repaint API 10 years ago
Hans-Werner Hilse 229c5ad61c change setDirty/refresh API
See documentation in the code.
In short: There is now one single method, setDirty(), that triggers
repaints and/or refreshes.
All variables in UIManager are gone - at least from an external
perspective. Everything is done through setDirty().
This also allows for easier debugging, since all requests come
in via function calls.
10 years ago