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
Non-touch DPad improvements, largely kindle. #11749
Conversation
Current state of affairs: Left/Right keys have been repurposed to 'Previous/Next Chapter' (on both readerrolling and readerpaging) -- Previous behaviour here was redundant 'Previous/Next Page' (this change seems inoffensive to all) ScreenKB key (unique to K4) Up/Down keys have been repurposed to 'Content selection' (on readerrolling ONLY, i.e ePubs) -- Previous behaviour was redundant 'Previous/Next Page' when in page mode, and 'Panning' when in continuous mode (this specific case has some, splitting hairs). Regarding the importance of 'content selection': Currently the only way to do a dictionary lookup or start highlighting a passage requires you to: "Press Menu button > select page with text (this may take a few presses depending on where you last were on the menu) > press Up > Start content selection" and finally guide the little cross to where you need it to be. It can easily take a minimum of 4-5 button presses before you can control the cross (content selection) to find out what an unfamiliar word means. And this is not limited to just dictionary lookups, but to all functionality that requires the selection of text, i.e Wikipedia, View HTML, Translate, etc. So if it is so amazing and solves all your problems, why not add it to readerpaging too? Well to quote @Frenzie, "A PDF page is typically taller than the screen, meaning it'll take [at least] two page turns to get through fully.", or in other words, that panning behaviour is strictly necessary. So what are our options then? well the short/simple answer would be to break panning for continuous mode in lieu of a better experience. The more difficult option, to let the user decide via menu settings. If the latter, one could offer different mapping to both Up and Down independently, for example: Up could be "bookmark current page" and Down would be "content selection" could look something like this (note that in this example, user cannot remap down/left/right keys)
where
|
Panning behavior isn't really the right word. It simply goes per screen height instead of per page. My point isn't that you can't change things since the screen height behavior is simply the desired next page behavior, but that you have to make sure you don't break things. |
well that is what is called in the code, and panning (with a camera) is slowly moving it from left to right (or up-down, or viceversa) to capture a whole scene that does not fit in one frame, like in panoramas. This is a sort of similar idea. But anyway, we are in agreement that for PDFs up/down should not be changed (or at least it should remain that way by default) |
For reference, I am posting this here #4329 (comment) since I keep going on about how wonderful the button mapping on stock kindle is, for those unfamiliar with it
edit: well this largely describes the selection of text not the actual button mapping but still interesting to keep in mind. |
I don't believe that's what it's called in the code. Panning is the act of arbitrarily panning, not the act of turning a page in continuous/scroll mode.
I'm not at all sure that I'm in agreement though. The crucial factor is that it should remain usable, which means turning the page per screen and not per page is the thing that must remain, since otherwise you couldn't read. |
Oops, yes you are right. I was assuming rolling and paging were using the same named function alas, they are not.
As of now, that is the case. |
But what about the dictionary lookups and highlighting? The point is it should be properly usable while I get the feeling you're interpreting that restrictively in some manner. :-) Full page turns are of lesser importance if a choice is necessary. |
What i was thinking was, to match the changes for readingpaging with those of readingrolling (up/down calls content selection) and to reassign the page turn ones to what up/down currently does??? |
To my knowledge page up/down work exactly as they should. Is that not the case? The important thing is that it works. You can't necessarily match them conceptually. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
waiting for @yparitcher to check this... and give his blessing
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
It looks that all the key_events now call events instead of new functions, so that looks good on my end. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
support LPg
removed from "Panning"
Last minute addition of link following, found here #6562 |
nice save... :) Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
We are good to go here 👍. |
Thank you to everyone who provided help, comments, feedback or mental support. |
I guess all the info in your posts above about the key combinations => action could be copied into a NT dedicated page on our Wiki (or added to one if it already exists). |
If the info in the OP is up to date I'll also copy it into the release notes. |
Of course it is up to date. Documentation must be released at the same time as the product. We are not amateurs here. |
Btw in honour of our maintainers, the next two releases should be "KOReader tiger roll" (or tiger bloomer or tiger bread) and "KOReader butter croissant". |
as discussed in #11295, this PR should improve DPad support on older non-touch kindles.
It re-maps dPad to:
Up
orDown
: content selection (used for dict lookup, highlights and more)Left
: previous chapterRight
: next chapterwith the merge of #11802
ScreenKB
would become a modifier key which allows shortcuts on kindle 4, the following are currently supported inside reader, for both fixed and flowable documents:ScreenKB
+Up
: table of contentsScreenKB
+Left
: bookmarksScreenKB
+Right
: bookmark current pageScreenKB
+Down
: save current location to historyScreenKB
+Back
: open previous document (supported on filemanager too)ScreenKB
+Home
turn wifi on/off (supported on filemanager too)ScreenKB
+LeftPgBack
/LeftPgFwd
Previous/next page link (useful for footnotes)ScreenKB
+RightPgBack
/RightPgFwd
panning (with crengine and when in continuous mode only, normal page turning otherwise)other shortcuts should be implemented soon in other PRs, for example, #11802 will introduce screenshots via
ScreenKB
+Menu
on kindle 4 orAlt
+Shift
+G
on all other non-touch kindlesIn order to make content selection even better (as seen here #11749 (comment)), the following user adjustable settings (bottom three) have been added to all non-touch devices, although all other non-touch (not kindles) must trigger content selection from the menu.
once a user has entered "content selection" (via
Up
,Down
or from menu) dPad keys become navigational and the following shortcuts become available. Note: although not introduced here, users with kindles with keyboards can also use this by replacingScreenKB
withShift
ScreenKB
+Up
: move up by 20% of screen height (length, sigh...whatever)ScreenKB
+Left
: move left by 20% of screen widthScreenKB
+Right
: move right by 20% of screen widthScreenKB
+Down
: move down by 20% of screen heightTL:DR this should make content selection (mentioned here #9063), dictionary lookups, highlighting (mentioned here #4329), link following (mentioned here #6562), text search just a
tadlot better.closes #11295
This change is