[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
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 keyboard corrections #12372

Merged
merged 3 commits into from
Aug 20, 2024
Merged

Conversation

Commodore64user
Copy link
Contributor
@Commodore64user Commodore64user commented Aug 17, 2024

what's new:


This change is Reviewable

@Commodore64user
Copy link
Contributor Author

I would like to politely request permission to make an illegal move

to turn this:

function ReaderConfig:registerKeyEvents()
if Device:hasKeys() then
self.key_events.ShowConfigMenu = { { { "Press", "AA" } } }
end
end

into this:

function ReaderConfig:registerKeyEvents()
    if Device:hasKeys() then
        self.key_events.ShowConfigMenu = { { { "Press", "AA" } } }
        if Device:hasSymKey() then
            self.key_events.ShowConfigMenu = { { "AA" } }
        end
    end
end

@Frenzie
Copy link
Member
Frenzie commented Aug 17, 2024

What would you do with Press?

@Commodore64user
Copy link
Contributor Author
Commodore64user commented Aug 17, 2024

currently, three buttons call up the bottom menu on k3 press, enter and AA. that bothers me very much. btw press and enter are considered to be the same, even though they generate different key codes and are two separate physical keys.

[28] = "Press", -- K3 (Enter)

What would you do with Press?

mmm, nothing? refresh the screen?

@Frenzie
Copy link
Member
Frenzie commented Aug 18, 2024

I don't understand how it could bother you to have a super convenient way to bring up the menu while navigating, but everything you wrote there screams user patch imho.

@Commodore64user
Copy link
Contributor Author

I don't understand how it could bother you to have a super convenient way to bring up the menu while navigating, but everything you wrote there screams user patch imho.

For a start there's three buttons, and two of them only do half the work, by that i mean they open the bottom menu but cannot close it (because now they have to work as select). Aa is only one that satisfies both opening and closing just fine.

Is not really any more convenient as far as i am concerned, as accidental triggers seem to happen (to me at least) sometimes. I understand why is needed on k4 (unless...) but on the other kindles is just not.

@Frenzie
Copy link
Member
Frenzie commented Aug 18, 2024

they open the bottom menu but cannot close it (because now they have to work as select)

Which is fantastic. You press, press, press exactly where you want to go. If you don't like it, user patch, don't mess things up for other people.

@Commodore64user
Copy link
Contributor Author

they open the bottom menu but cannot close it (because now they have to work as select)

Which is fantastic. You press, press, press exactly where you want to go. If you don't like it, user patch, don't mess things up for other people.

It isn't fantastic, particularly when is something you only visit maybe once per book. I'm not happy with the outcome, but I was kind of expecting this answer, so. ;-)

I tried building one but ended up getting that "no engine" error or whatever.

@Commodore64user
Copy link
Contributor Author

@Frenzie feel free to merge this. nothing else is happening here

@Frenzie Frenzie merged commit 698fc35 into koreader:master Aug 20, 2024
4 checks passed
@Frenzie Frenzie added this to the 2024.08 milestone Aug 20, 2024
@Frenzie Frenzie changed the title Minor corrections Minor keyboard corrections Aug 20, 2024
@Commodore64user Commodore64user deleted the minor-fixes branch August 20, 2024 10:21
@Commodore64user
Copy link
Contributor Author

I think I found a way to solve two problems in a reasonable way @Frenzie. Because I don't want it to look like I am trying to scurry around this previous discussion, I want to be upfront about it.

I do want to use "Press" for refreshing the screen albeit, I won't force it on anyone so instead, a user can decide to do just that. On k4, the bottom menu should appear as an extra icon at the top of the screen and on <k3 well, nothing as there is a dedicated Aa that would handle it.

I have this so far master...Commodore64user:KOReader_fork:refresh-screen if you want to have a look, however I still need to figure out why the FullRefresh event won't actually refresh the screen...

@Frenzie
Copy link
Member
Frenzie commented Sep 1, 2024

I suppose, though I have some fear that might be entering technical debt territory.

@Commodore64user
Copy link
Contributor Author

the other possible thing is to do the switcheroo. Basically have mod+press do the screen refresh (so everyone gets it either way) and move the current add location to stack to this setting. So it would be something like add location to stack with press key. And the point to doing this, is that eventually this would change to page browser with press key. essentially a placeholder for the time being.

That seems a lot less like a hack.

@Commodore64user
Copy link
Contributor Author

okay, I bit the bullet and, have been trying to get a "gestures" like plugin for shortcuts.

I've gotten the UI side of it, but still needs more stuff and I could use some help here, https://github.com/koreader/koreader/compare/master...Commodore64user:KOReader_fork:shortcuts?expand=1

any chance @poire-z or @NiLuJe are bored looking at flies passing by?

@poire-z
Copy link
Contributor
poire-z commented Sep 4, 2024

Not bored enough, sorry.
But you may want to name all this more specifically than just "shortcuts", which can have other meaning (folder shortcuts, book shorcuts...)
KeyShortcuts, KeyMaps...

@Frenzie
Copy link
Member
Frenzie commented Sep 4, 2024

What kind of stuff? (I don't really have time atm though)

Agreed on the shortcuts thing. Keyboard shortcuts?

@Commodore64user
Copy link
Contributor Author
Commodore64user commented Sep 4, 2024

What kind of stuff? (I don't really have time atm though)

well for one, matching the shortcuts with the actual key presses.

https://github.com/Commodore64user/KOReader_fork/blob/9f01cdc84a18b7b6f5f37ffad4eb56b2cbf83639/plugins/hotkeyshortcuts.koplugin/main.lua#L240-L249

I would prefer to table.insert ^ that ^ as well to the existing array but was not able either.

@Commodore64user
Copy link
Contributor Author

another thing, for some reason the shortcuts that use screenkb or shift show up fine but the ones with alt appear as %1 instead of using their names. In any case, it would be very helpful if someone could have a look at the whole thing because I won't certainly be able to continue without help. It's a kinda, pick a spade and start digging kind of situation here atm.

https://github.com/koreader/koreader/compare/master...Commodore64user:KOReader_fork:shortcuts?expand=1

@poire-z
Copy link
Contributor
poire-z commented Sep 5, 2024

https://github.com/Commodore64user/KOReader_fork/blob/fe0d49a52a5d175b5812af025ac187db684d0ada/plugins/hotkeyshortcuts.koplugin/main.lua#L27-L29
is a table/associative array (key => value).
Tables can also be a plain array (1,2,3,4 => values)
(Lua tables can be both, have integer indexes, and string keys, but it's not a good idea to mix them when not needed for some reasons.)
table.insert() only makes sense with plain array, to append values.

https://github.com/Commodore64user/KOReader_fork/blob/fe0d49a52a5d175b5812af025ac187db684d0ada/plugins/hotkeyshortcuts.koplugin/main.lua#L42-L45
is wrong: you are inserting at index 1 another associative array.

You probably want to use:

koreader/frontend/util.lua

Lines 366 to 374 in 00984ba

-- Merge t2 into t1, overwriting existing elements if they already exist
-- Probably not safe with nested tables (c.f., https://stackoverflow.com/q/1283388)
---- @param t1 Lua table
---- @param t2 Lua table
function util.tableMerge(t1, t2)
for k, v in pairs(t2) do
t1[k] = v
end
end


https://github.com/Commodore64user/KOReader_fork/blob/fe0d49a52a5d175b5812af025ac187db684d0ada/plugins/hotkeyshortcuts.koplugin/main.lua#L92-L95
I think here, you are just on each line overwriting the thing you set on previous line.
May be #9059 (comment) can help.

@Commodore64user
Copy link
Contributor Author
Commodore64user commented Sep 5, 2024

Thank you @poire-z, i'll have a look at merging the arrays later. Regarding the last bit of your comment though, yes i might be but that is not the real issue atm (they all just temporarily look the same, i know how to write them ;) ) the real issue is that i am not sure how to write the function that plugs both the key_events with the array in hotkeyshortcuts_path

Btw is the if self.ui ~= nil then correct? Is supposed to be used only whilst inside reader

@poire-z
Copy link
Contributor
poire-z commented Sep 5, 2024

but that is not the real issue atm

Looks like it was what you were asking :/

the real issue is that i am not sure how to write the function that plugs both the key_events with the array in hotkeyshortcuts_path

I guess (like in gestures.koplugin that you copied it from) that function HotKeyShortcuts:onFlushSettings() takes care of that. You just update self.settings.data (a datastructure of your choice) and this is called when leaving reader/fm and stuff is written to the file.

Btw is the if self.ui ~= nil then correct? Is supposed to be used only whilst inside reader

Probably not, all plugins, even in FM, gets a self.ui = reader or filemanager.
Not sure how other modules check that, may be if self.ui and self.ui.document.
self.is_docless might be just be doing that.

@Commodore64user
Copy link
Contributor Author

Looks like it was what you were asking :/

oops, sorry i was outside, so couldn’t read it properly then.

I guess (like in gestures.koplugin that you copied it from) that function HotKeyShortcuts:onFlushSettings() takes care of that. You just update self.settings.data (a datastructure of your choice) and this is called when leaving reader/fm and stuff is written to the file.

i am still not sure about the whole thing though, could you please provide an example relative to this particular case?

@poire-z
Copy link
Contributor
poire-z commented Sep 5, 2024

I'm still not sure about what you're asking. Anyway, the existing example is gestures.koplugin: follow what its self.settings.data is and how it gets updated when the user change things - I haven't followed, so don't ask me. I'm just telling you that the saving/writting is auto taken care of by this HotKeyShortcuts:onFlushSettings() (which is called by other parts of the code, don't worry about that).

@poire-z
Copy link
Contributor
poire-z commented Sep 13, 2024

If you put a plugin in our plugins/ alongside all the others, as long as we don't ship a plugin with the same dirname, it will persist. And anything menu it adds will be put in the plugin submenu, I think (or there is a hint/order = to tells a menu item to be put in another menu.

@Commodore64user
Copy link
Contributor Author

but wouldn't I also need to add it to reader_menu_order.lua and filemanager_menu_order.lua and technically speaking it also needs to add

if self.ui.hotkeyshortcuts then -- search and update the profile action in assigned keyboard shortcuts
   self.ui.hotkeyshortcuts:updateProfiles(action_old_name, action_new_name)
end

in the profiles koplugin

@poire-z
Copy link
Contributor
poire-z commented Sep 13, 2024

but wouldn't I also need to add it to reader_menu_order.lua and filemanager_menu_order.lua

Plugins can use a sorting_hint = ("more_tools") to tell in which menu/submenu they'd like their item to be put.

technically speaking it also needs to add in the profiles koplugin

You can user-patch plugins I think (may depend on the amount of tweak you need), I added something to make that easier, see #11838 (comment).

@Commodore64user
Copy link
Contributor Author

Plugins can use a sorting_hint = ("more_tools") to tell in which menu/submenu they'd like their item to be put.

I see, sorry I didn't understand it before.

regarding the user patch for the registerKeyEvents, is that a number 0 or 1? and the user-patch plugin, I am not really sure I understand what to do. I just need to add those three lines seen here #12372 (comment) to

if self.ui.gestures then -- search and update the profile action in assigned gestures
self.ui.gestures:updateProfiles(action_old_name, action_new_name)
end

@poire-z
Copy link
Contributor
poire-z commented Sep 13, 2024

regarding the user patch for the registerKeyEvents, is that a number 0 or 1?

You mean the number at the start of the filename ? 2-, like for most user patches.

and the user-patch plugin, I am not really sure I understand what to do. I just need to add those three lines seen here

Untested:

local userpatch = require("userpatch")
userpatch.registerPatchPluginFunc("profiles", function(plugin)
    local orig_updateProfiles = plugin.updateProfiles
    plugin.updateProfiles = function(self, action_old_name, action_new_name)
        orig_updateProfiles(self, action_old_name, action_new_name)
        if self.ui.gestures then -- search and update the profile action in assigned gestures
            self.ui.gestures:updateProfiles(action_old_name, action_new_name)
        end
    end
end)

@Commodore64user
Copy link
Contributor Author

You mean the number at the start of the filename ?

yes that was it. I'll try the other patch. Thank you!!!!

so I am running the plugin, everything seems fine except for one little thing. Every time I open the menu, a new pair of the settings introduced by the plugin are added to the menu, but I don't know why

so that is the third time, opening it, and as you can see, three sets of options. https://github.com/koreader/koreader/compare/master...Commodore64user:KOReader_fork:hotkeyshortcuts?expand=1

@poire-z
Copy link
Contributor
poire-z commented Sep 13, 2024

Dunno either.
Does it happen with and/or without the sorting_hint ?
Does it happen with and/or without the user patch plugin stuff ?

@Commodore64user
Copy link
Contributor Author

Does it happen with and/or without the user patch plugin stuff ?

I am only building it now, so not this.

Does it happen with and/or without the sorting_hint ?

without it, it does that weird thing where it puts the settings in the first icon (page and bookmark) as NEW: Use press... and NEW: Shortcuts since I am no longer telling it where to go, but it doesn't seem to multiply them as you revisit.

@poire-z
Copy link
Contributor
poire-z commented Sep 13, 2024

without it, it does that weird thing where it puts the settings in the first icon (page and bookmark) as NEW: Use press... and NEW: Shortcuts since I am no longer telling it where to go

That's by design and normal.

but it doesn't seem to multiply them as you revisit.

So, may be a bug with sorting_hint, @Frenzie ?

@Commodore64user
Copy link
Contributor Author

note about replication, open in FM first, open a book and then open the menu in reader (setting will be duplicated), close reader and open menu in FM (settings triplicated, as in screenshot).

If you only do it, in either FM or reader, subsequent attempts do not duplicate settings.

@Frenzie
Copy link
Member
Frenzie commented Sep 14, 2024

So, may be a bug with sorting_hint

I don't know what that means. Not multiplying sounds like a good thing though.

@poire-z
Copy link
Contributor
poire-z commented Sep 14, 2024

I tried replicating the behaviour you describe by hacking the autoturn.koplugin, but couldn't get its menu item duplicated :/

@poire-z
Copy link
Contributor
poire-z commented Sep 14, 2024

I don't think this could be the culprit, but sorting_hint = ("physical_buttons_setup") doesn't need any parens.
Also try with adding only one of your two menu items (in case multiple identical sorting_hints causes the issue).

@Commodore64user
Copy link
Contributor Author

I don't think this could be the culprit, but sorting_hint = ("physical_buttons_setup") doesn't need any parens. Also try with adding only one of your two menu items (in case multiple identical sorting_hints causes the issue).

not it either,

I tried replicating the behaviour you describe by hacking the autoturn.koplugin, but couldn't get its menu item duplicated :/

why don't you try the shortcuts plugin then? ;) just pushed the latest version I have available.

@poire-z
Copy link
Contributor
poire-z commented Sep 14, 2024

Did.
It doesn't happen if you use sorting_hints = "navigation".
So, I guess it is because our code uses self.menu_items.physical_buttons_setup = require("ui/elements/physical_buttons"), and it is always the cached require'd object that gets re-used and each time got re-added your items.
We probably didn't need to think about that case, before you came in (these were happy times :))

@Commodore64user
Copy link
Contributor Author

so essentially, what you are saying is, this is a: "is not you, it's me" kind of situation ;)

@poire-z
Copy link
Contributor
poire-z commented Sep 14, 2024

No, it is a "it's you, and it's @Frenzie" kind of situation :)
May be something like this could be added (seems to solve duplication, but not familiar with the whole menusorter stuff, and how this additional loop adds to the already complex processing)?

--- a/frontend/ui/menusorter.lua
+++ b/frontend/ui/menusorter.lua
@@ -179,6 +179,12 @@ function MenuSorter:sort(item_table, order)
         if sorting_hint then
             local sorting_hint_menu = self:findById(menu_table["KOMenu:menu_buttons"], sorting_hint)
             sorting_hint_menu = sorting_hint_menu.sub_item_table or sorting_hint_menu
+            for i=1, #sorting_hint_menu do
+                if sorting_hint_menu[i].id == v.id then
+                    table.remove(sorting_hint_menu, i)
+                    break
+                end
+            end
             table.insert(sorting_hint_menu, v)
         else
             table.insert(menu_table["KOMenu:menu_buttons"][1], v)

@NiLuJe
Copy link
Member
NiLuJe commented Sep 14, 2024

Or, better yet, just use dofile ;).

NiLuJe added a commit to NiLuJe/koreader that referenced this pull request Sep 14, 2024
Use dofile instead, as we don't want to cache those tables,
as we or MenuSorter may insert new data into it.

c.f., koreader#12372 (comment)
@Commodore64user
Copy link
Contributor Author

Or, better yet, just use dofile ;).

Mmm, what does that mean? 🤔

@Commodore64user
Copy link
Contributor Author

I have been running the plugin on both k3 and k4 for the last few days, seems to work absolutely fine, so I ask. Are you interested in re-opening that PR? I can't make the changes that were quickly piled up there. And, would certainly need to hack the keyEvent functions like in #12372 (comment), thoughts?

@Commodore64user
Copy link
Contributor Author

Is that a No?

@Frenzie
Copy link
Member
Frenzie commented Oct 1, 2024

That was addressed to NiLuJe?

@NiLuJe
Copy link
Member
NiLuJe commented Oct 1, 2024

Not sure what we're talking about, exactly ^^.

@Commodore64user
Copy link
Contributor Author

It was a question for all of you, in short:

There is shortcuts plugin, it works, is not perfect. I personally can't make it better at this moment in time but would like to make it available to all... it would require some concessions, more precisely, making ugly adjustments to the current key_events functions affected.

@NiLuJe
Copy link
Member
NiLuJe commented Oct 1, 2024

I'm pretty firmly in the "hell no" camp, then ;).

This thing is already fairly gnarly, nobody has touched it in years, we really really don't want to make it worse.

@Commodore64user
Copy link
Contributor Author
Commodore64user commented Oct 1, 2024

This thing is already fairly gnarly, nobody has touched it in years

What is?

btw here it is master...Commodore64user:KOReader_fork:hotkeyshortcuts if you want to have a look.

@NiLuJe
Copy link
Member
NiLuJe commented Oct 1, 2024

I meant the whole Key framework, pretty much from top to bottom ;).

@Commodore64user
Copy link
Contributor Author

I am with you, that’s why i am saying I would not want to change anything else for it (plugin). It is what it is. The only thing would be to hack the functions with current events like in #12372 (comment)

unless someone else wanted to provide a function that designates priorities ;)

wbstx added a commit to wbstx/koreader that referenced this pull request Nov 29, 2024
KOReader 2024.11 "Slang"

![koreader-2024-11-slangie](https://github.com/user-attachments/assets/cb9e68bf-aa0f-47c7-a093-46fbf8bb19c3)

Some of you on Android may have had dictionary issues. That should be fixed now.

Connecting to Wi-Fi should be more reliable on platforms where we manage it ourselves, most notably Kobo (koreader/lj-wpaclient#11).

Color is now supported when reflowing (koreader#12085).

This month's logo was contributed by @Sonnenfee

We'd like to thank all contributors for their efforts. Some highlights since the previous release include:

* Certain network features will now work in Flatpak (<flathub/rocks.koreader.KOReader#52>) @kii-chan-reloaded
* 'Use left and right keys for page turning' option added (koreader#12174) @Commodore64user
* Text editor: enhancement (koreader#12176) @hius07
  (1) Speed up adding/deleting chars (by avoiding a call of expensive splitToChars), noticeable on big files.
  (2) Indicate select mode: wider cursor.
* Annotations: more fixes (koreader#12181) @hius07
  (1) Allows annotations with equal datetime fields.
  (2) Allows page bookmarks with equal page numbers.
* kopt: color support (koreader#12085) @benoit-pierre
* bump base (updated build system) & fix macOS CI (koreader#12187) @benoit-pierre
* AltStatusBar/Footer: add the read timer value (koreader#12002) @zwim
* bump translations (koreader#12193) @pazos
* CRE call cache: don't wrap setViewMode (koreader#12194) @poire-z
* bump crengine: various fixes and optimizations (koreader#12200) @poire-z
* Add author option for alt status bar (koreader/crengine#575) (koreader#12197) @trash-pandy
* Page turns: invert vertical tap zones (koreader#12195) @hius07
* Annotations: pageno honors reference pages and hidden flows (koreader#12214) @hius07
* ToggleSwitch: fix long-press (koreader#12215) @hius07
* SDL: Return true in NetworkMgr:isConnected on !hasWifiToggle platforms (koreader#12217) @NiLuJe
* Kobo: Refactor various aspects of the Kaleido/MTK support (koreader#12221) @NiLuJe
* ReaderAnnotation: fix doesMatch func (koreader#12231) @hius07
* bump base (koreader#12241) @benoit-pierre
* NetworkMgr: Attempt to handle wpa_supplicant rescans better (koreader#12236) @NiLuJe
* miscellaneous build system changes (koreader#12242) @benoit-pierre
* make: handle old build data directory (koreader#12259) @benoit-pierre
* ReaderFooter: improve (koreader#12243) @hius07
* Annotations: fix exporting (koreader#12261) @hius07
* make: install missing `cr3.css`… (koreader#12262) @benoit-pierre
* [fix] NetworkMgr: apply HTTP proxy setting on startup (koreader#12260) @Frenzie
* Kobo: Track frontlight state more accurately on suspend/resume (koreader#12256) @NiLuJe
* Make W-Fi scan more reliable (koreader#12265, koreader/lj-wpaclient#11) @NiLuJe
* ReaderAnnotation: fix doesMatch func 2 (koreader#12270) @hius07
* make: fix android update sdcv (koreader#12275) @benoit-pierre
* [plugin] Reader footer: check if header resp. footer are available (koreader#12264) @zwim
* ReadHistory: On remove, trust the index from FileManagerHistory if possible (koreader#12253) @NiLuJe
* ReaderUI: add `seamless` argument to switchDocument (koreader#12290) @ziz57
* Fix early unhighlight after Add to vocab builder (koreader#12288) @poire-z
* [CoverBrowser.MosaicMenu] Increase the thickness of the mosaic’s focus underline (koreader#12189) @Commodore64user
* doc: update building documentation (koreader#12295) @benoit-pierre
* NetworkMgr: fix debug trace (koreader#12297) @benoit-pierre
* Panel zoom: Properly handle `renderPage()` not rendering the whole page (koreader#12296) @fbriere
* PowerD: Keep track of frontlight state change by interactive callers for suspend/resume purposes (koreader#12283) @NiLuJe
* InputDialog and MultiInputDialog: improve enter and edit callback handling, and implement addWidget (koreader#12289) @ziz57
* ReaderSearch: "All text" improve (koreader#12287) @hius07
* Show/Hide Virtual keyboard and more keyboard shortcuts (koreader#12162) @Commodore64user
* bump base; mostly thirdparty bumps (koreader#12311) @benoit-pierre
* Document: Do not cache panel-zoom tiles to disk and fix their caching and rendering (koreader#12303) @NiLuJe
* Disable the legacy ReaderRotation module (koreader#12309) @NiLuJe
* bump luajit (koreader#12317) @benoit-pierre
* [AutoWarmth] Delay front light actions after resume (koreader#12315) @zwim
* Allow numbers in measure text: fixes a crash in table of contents when debugging on (koreader#12310) @zwim
* ReaderFooter: Add page-turn item (koreader#12249) @Commodore64user
* luajit launcher: out of tree build + don't rebuild luajit (koreader#12285) @benoit-pierre
* BookInfo: rating, review (koreader#12313) @hius07
* fix missing android APK asset (koreader#12333) @benoit-pierre
* ImageWidget: Don't attempt to pan if we haven't rendered the bb yet (koreader#12331) @NiLuJe
* OTM: Unbreak koreader#11999  (koreader#12337) @NiLuJe
* Kobo: Refactor suspend in order to be able to catch input events sent during the 2s window of ntx madness (koreader#12330) @NiLuJe
* [Menu] Remove title bar buttons from layout on hasSymKey or hasScreenKB (koreader#12328) @Commodore64user
* [doc] Build: update Android instructions to openjdk-17-jdk (koreader#12345) @Frenzie
* Support 'Ctrl' shortcuts on hasKeyboard (koreader#12347) @Commodore64user
* Annotations: fix page numbers (koreader#12324) @hius07
* Bug Fix: DPad conflict on Kindle Keyboard (koreader#12341) @Commodore64user
* Nit: Make some cache keys prettier (koreader#12354) @NiLuJe
* Dispatcher: minor wording fixes (koreader#12356) @hius07
* kodev rework (koreader#12338) @benoit-pierre
* czmq & libzmq: update to 4.2.1 & 4.3.5 respectively (koreader#12350) @benoit-pierre
* [TextViewer] Add hamburger menu to FocusManager and Menu key (koreader#12365) @Commodore64user
* ci: fix test / coverage (koreader#12367) @benoit-pierre
* A couple of tiny fixes (koreader#12359) @NiLuJe
* android: tweak update rule (koreader#12370) @benoit-pierre
* doc: update Android build instructions (koreader#12368) @benoit-pierre
* Display menu preview of italic-only fonts (koreader#12351) @charrarr
* ReaderStatus, Book status widget: cleanup (koreader#12343) @hius07
* ci/macos: fix homebrew packages install (koreader#12382) @benoit-pierre
* Fix terminal broken cursor and backspace (koreader#12375) @zwim
* Screensaver: add option to rotate to fit screen (koreader#12366) @charrarr
* Minor keyboard corrections (koreader#12372) @Commodore64user
* Touch menu: always go up to correct parent page (koreader#12378) @hius07
* Collections: fix context menu (koreader#12383) @hius07
* PDF: no "Contrast set to" notification on opening (koreader#12391) @hius07
* Closing Bookmark details dialog with X should also refresh list entry (koreader#12390) @fbriere
* Add numerical key_codes to event_map on kindle 3 (koreader#12358) @Commodore64user
* FocusManager: Fix focus_flags check in moveFocusTo, and deal with the fallout (koreader#12361) @NiLuJe
* Various notification, text editor and footnote popup minor fixes (koreader#12406) @poire-z
* Bug: Account for local reading order direction adjustments. (koreader#12388) @Commodore64user
* android: add custom `adb logcat` formatter (koreader#12385) @benoit-pierre
* kodev: improve `kodev prompt` (koreader#12408) @benoit-pierre
* kodev: fix `./kodev run android…` (koreader#12407) @benoit-pierre
* Readerfont: Current font on top in menu; New fonts from current session on top in font test doc (koreader#12410) @jonnyl2
* Fix a couple of potentially spurious footer refreshes (koreader#12422) @NiLuJe
* FileManager: Handle the FlushSettings event (koreader#12425) @NiLuJe
* PageBrowser: fix drawing of thicker thumbnail frame on tap (koreader#12432) @poire-z
* FileManagerSetDefaults: Handle strings that we default to nil (koreader#12433) @NiLuJe
* Input: Ignore ABS_X, ABS_Y & ABS_PRESSURE for snow_protocol (koreader#12427) @NiLuJe
* Add color highlight menu (koreader#11044) @smasher816
* Exporter: choose highlight styles to be exported (koreader#12431) @hius07
* ReaderView: Don't crash on pre-koreader#11044 highlights without a color field (koreader#12438) @NiLuJe
* Terminal fixes (koreader#12369) @ziz57
* Dispatcher/DeviceListener: Temporarily turn on Accelerometer/GSensor for 5 sec (koreader#12419) @jonnyl2
* fix bug preventing export to joplin; (koreader#12446) @bitterlox
* bump base: blitbuffer, android build, crengine (koreader#12451) @poire-z
* InputText: Unbreak onTapTextBox on an already in-focus field (koreader#12449) @NiLuJe
* Update el_popup.lua (koreader#12463) @ichnilatis-gr
* [Dispatcher] add [missing] conditions to dispatcher items (koreader#12453) @Commodore64user
* ReaderView: Fix a couple of edge-cases in onReaderFooterVisibilityChange (koreader#12466) @NiLuJe
* misc: Move cleanupSelectedText to util (koreader#12477) @NiLuJe
* ReaderHighlight: Fix an old typo in the OCR help string (koreader#12479) @NiLuJe
* Highlights popup dialog: add "Color" and "Details" buttons (koreader#12461) @hius07
* ButtonDialogTitle: remove (koreader#12394) @hius07
* [Dispatcher] new events for selecting links (koreader#12474) @Commodore64user
* Doc: Update quickstartguide on kindle non touch (koreader#12426) @Commodore64user
* [NT] Call GotoViewRel for page up/down on useDPadAsActionKeys devices (koreader#12495) @cccslater
* bump base (koreader#12503) @benoit-pierre
* Defaults: Deprecate DKOPTREADER_CONFIG_DOC_LANGS_TEXT (koreader#12504) @NiLuJe
* ReaderAnnotation: skip old highlights with invalid xpointers (koreader#12494) @hius07
* Cloud Sync: handles potentially incompatible backup and incoming dbs (koreader#12470) @weijiuqiao
* VocabBuilder.koplugin: Better handling word context (koreader#12469) @weijiuqiao
* Write highlights into PDF: revisited (koreader#12509) @hius07
* SyncService: Only require online connectivity when using Dropbox (koreader#12520) @NiLuJe
* Chore: Don't cache static data tables (ui/elements, ui/data, kb layouts & co) (koreader#12519) @NiLuJe
* Fix page gap inconsistencies between doc open & config change (koreader#12507) @NiLuJe
* Kindle: Restore hall effect sensor state on startup (koreader#12521) @NiLuJe
* VocabBuilder.koplugin: save dict headword as entry (koreader#12530) @weijiuqiao
* Add PocketBook Verse Pro Color (PB634K3) (koreader#12476) @ElimGarak1
* Onyx Boox Go 10.3 support (koreader#12533) @hugleo
* Statistics: fix null terminated strings, add toggle stats (koreader#12547) @hius07
* input: drop use of `ffi/input` (koreader#12486) @benoit-pierre
* ci/circle: fix tests parallelism (koreader#12551) @benoit-pierre
* input: fix kobo init (koreader#12553) @benoit-pierre
* [ReaderFooter] update status bar in real time when inverting page turning (koreader#12424) @Commodore64user
* input: fix pocketbook init (koreader#12555) @benoit-pierre
* use new `ffi.loadlib` helper (koreader#12545) @benoit-pierre
* input: fix loading of `fbink_input` library (koreader#12560) @benoit-pierre
* Fix typos in quickstart (koreader#12566) @cheywood
* File search: improve (koreader#12549) @hius07
* [DictQuickLookup] shortcuts for editing searches (koreader#12539) @Commodore64user
* Profiles: auto-execute on events (koreader#12564) @hius07
* Exporter: export to book folder, register to Dispatcher (koreader#12569) @hius07
* sdl: use our compiled version for the AppImage (koreader#12575) @benoit-pierre
* Add kobov4 & kobov5 targets (koreader#12568) @NiLuJe
* android: switch to monolibtic mode (koreader#12576) @benoit-pierre
* android: fix apkanalyzer location (koreader#12563) @benoit-pierre
* Disabled rotation map for Android devices where "hw media keys follow gravity" (koreader#12557) @jkl16
* Quickstart guide kindle illustrations (koreader#12577) @Commodore64user
* [plugin] Exporter: fix typo (koreader#12592) @Frenzie
* Dispatcher: values' range consistent with bottom menu (koreader#12580) @hius07
* metadata translations for fdroid/flathub (koreader#12581) @pazos
* ProgressWidget: fix misalignment (koreader#12526) @wbstx
* Add wifi support to Cervantes Touch Light devices (koreader#12148) @jsanpe
* ReaderTypeset: fix margins info (koreader#12609) @hius07
* DocSettingsTweak: apply to books with status (koreader#12606) @hius07
* Menu widget: rotation handler (koreader#12573) @hius07
* Profiles: add "on rotation" auto-execute event (koreader#12612) @hius07
* ReaderHighlight: adjustable "Edit highlight" dialog position (koreader#12599) @hius07
* KOSync/Kobo: Explicitly kill Wi-Fi on suspend (koreader#12616) @NiLuJe
* Kobo: Minor simplification after koreader#12616 (koreader#12629) @NiLuJe
* bump luajit-launcher (koreader#12630) @benoit-pierre
* Terminal: Minor cleanups (koreader#12631) @NiLuJe
* Menu widget: draw focus on focused item (koreader#12583) @hius07
* Cloud storage: fix sorting non-English filenames (koreader#12644) @hius07
* Text editor: show current line number (koreader#12632) @hius07
* InputText: fix Terminal plugin input (koreader#12652) @hius07
* ReaderFont test: Error correction -- new fonts were not rendering in own font (koreader#12646) @jonnyl2
* ReaderHighlight: fix color for extended highlight in pdf (koreader#12654) @hius07
* Kindle Scribe: fix elseif for orientation code (koreader#12663) @mergen3107
* Menu: Fix fallout from koreader#12583 on hasDPad devices (koreader#12657) @NiLuJe
* Misc: Some more FocusManager fallout (koreader#12667) @NiLuJe
* plugin messages (koreader#12636) @pazos
* And deprecation to autofrontlight (koreader#12619) @pazos
* Add deprecation for unmaintained targets (koreader#12620) @pazos
* Profiles: more auto-exec triggers (koreader#12651) @hius07
* PatchManagement: prettify menu (koreader#12668) @hius07
* Fix KOReader spelling in the code (koreader#12670) @mergen3107
* Update Building.md - meson install from backports (koreader#12680) @mergen3107
* OTA: Make the final ConfirmBox undismissable (koreader#12676) @NiLuJe
* Text editor: rotate (koreader#12658) @hius07
* Profiles: more auto-exec triggers 2 (koreader#12691) @hius07
* Add authentication request and cookies management for news (koreader#12496) @bateast
* calibre: always use custom fast parser (koreader#12714, koreader#12715) @pazos
* Add Nextcloud Notes to exporter plugin (koreader#12301) @kotnik
* [plugin] Wallabag: remove empty file when download fails (koreader#12723) @fenuks
* [plugin] Wallabag: separate option to delete ‘on hold’ articles (koreader#12722) @fenuks
* kopt: fix OCR segmentation mode (koreader#12726) @benoit-pierre
* bump base (koreader#12727) @benoit-pierre
   Most notably dropbear: update to 2024.85 (koreader/koreader-base#1964)
* bump android-luajit-launcher (koreader#12734) @pazos
* ci/circle: manually cap build jobs (koreader#12751) @benoit-pierre
* Adjust Minimum Font Size in Terminal Emulator (koreader#12752) @pphszx
* ReaderHighlight: Highlight menu, change 'Delete' to Trash can icon (koreader#12758) @jonnyl2

* @trash-pandy made their first contribution in koreader#12197
* @fbriere made their first contribution in koreader#12296
* @charrarr made their first contribution in koreader#12351
* @smasher816 made their first contribution in koreader#11044
* @bitterlox made their first contribution in koreader#12446
* @cccslater made their first contribution in koreader#12495
* @cheywood made their first contribution in koreader#12566
* @jkl16 made their first contribution in koreader#12557
* @wbstx made their first contribution in koreader#12526
* @jsanpe made their first contribution in koreader#12148
* @fenuks made their first contribution in koreader#12723
* @pphszx made their first contribution in koreader#12752

**Full Changelog**: koreader/koreader@v2024.07...v2024.11 — [closed milestone issues](https://github.com/koreader/koreader/milestone/74?closed=1)

---

**Installation instructions**: [Android](https://github.com/koreader/koreader/wiki/Installation-on-Android-devices) • [Cervantes](https://github.com/koreader/koreader/wiki/Installation-on-BQ-devices) • [ChromeOS](https://github.com/koreader/koreader/wiki/Installation-on-Chromebook-devices) • [Kindle](https://github.com/koreader/koreader/wiki/Installation-on-Kindle-devices) • [Kobo](https://github.com/koreader/koreader/wiki/Installation-on-Kobo-devices) • [PocketBook](https://github.com/koreader/koreader/wiki/Installation-on-PocketBook-devices) • [ReMarkable](https://github.com/koreader/koreader/wiki/Installation-on-ReMarkable) • [Desktop Linux](https://github.com/koreader/koreader/wiki/Installation-on-desktop-linux) • [MacOS](https://github.com/koreader/koreader/wiki/Installation-on-MacOS)
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.

4 participants