Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Minor tweaks to the LuaJIT mcode hack #285

Merged
merged 5 commits into from
Jan 3, 2021
Merged

Conversation

NiLuJe
Copy link
Member

@NiLuJe NiLuJe commented Jan 2, 2021

Better comments, make it track mcode_allocarea to make it easier to follow, and fix a corner-case that would never happen on Android ;).

(This makes the patch sane to use on "standard" platforms, with or without the reserve. And testing confirmed that unmapping/remapping the reserve works).


This change is Reviewable

  * Better comments in lj_mcode_clear
  * Follow the same code flow as mcode_allocarea, because it's
    effectively serving the same purpose
  * Handle non-contiguous links properly anywhere in the chain
@NiLuJe NiLuJe merged commit 180513e into koreader:master Jan 3, 2021
NiLuJe added a commit to koreader/koreader that referenced this pull request Jan 10, 2021
* Wherever possible, do an actual dumb invert on the Screen BB instead of repainting the widget, *then* inverting it (which is what the "invert" flag does).
* Instead of playing with nextTick/tickAfterNext delays, explicitly fence stuff with forceRePaint
* And, in the few cases where said Mk. 7 quirk kicks in, make the fences more marked by using a well-placed WAIT_FOR_UPDATE_COMPLETE

* Fix an issue in Button where show/hide & enable/disable where actually all toggles, which meant that duplicate calls or timing issues would do the wrong thing. (This broke dimming some icons, and mistakenly dropped the background from FM chevrons, for example).
* Speaking of, fix Button's hide/show to actually restore the background properly (there was a stupid typo in the variable name)
* Still in Button, fix the insanity of the double repaint on rounded buttons. Turns out it made sense, after all (and was related to said missing background, and bad interaction with invert & text with no background).
* KeyValuePage suffered from a similar issue with broken highlights (all black) because of missing backgrounds.
* In ConfigDialog, only instanciate IconButtons once (because every tab switch causes a full instantiation; and the initial display implies a full instanciation and an initial tab switch). Otherwise, both instances linger, and catch taps, and as such, double highlights.
* ConfigDialog: Restore the "don't repaint ReaderUI" when switching between similarly sized tabs (re #6131). I never could reproduce that on eInk, and I can't now on the emulator, so I'm assuming @poire-z fixed it during the swap to SVG icons.
* KeyValuePage: Only instanciate Buttons once (again, this is a widget that goes through a full init every page). Again, caused highlight/dimming issues because buttons were stacked.
* Menu: Ditto.
* TouchMenu: Now home of the gnarliest unhilight heuristics, because of the sheer amount of different things that can happen (and/or thanks to stuff not flagged covers_fullscreen properly ;p).

* Bump base
koreader/koreader-base#1280
koreader/koreader-base#1282
koreader/koreader-base#1283
koreader/koreader-base#1284

* Bump android-luajit-launcher
koreader/android-luajit-launcher#284
koreader/android-luajit-launcher#285
koreader/android-luajit-launcher#286
koreader/android-luajit-launcher#287
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants