Lagrange [work/v1.9]

Fixed binding cursor keys

=> 77def5236713cb4d67dc3ff460c8fc0918aece0f

diff --git a/src/ui/bindingswidget.c b/src/ui/bindingswidget.c
index b55608c1..53a48b9c 100644
--- a/src/ui/bindingswidget.c
+++ b/src/ui/bindingswidget.c
@@ -143,6 +143,7 @@ static void setActiveItem_BindingsWidget_(iBindingsWidget *d, size_t pos) {
         item->isWaitingForEvent = iTrue;
         invalidateItem_ListWidget(d->list, d->activePos);
     }
+    setScrollMode_ListWidget(d->list, d->activePos != iInvalidPos);
 #if defined (iPlatformAppleDesktop) && defined (LAGRANGE_MAC_CONTEXTMENU)
     /* Native menus must be disabled while grabbing keys so the shortcuts don't trigger. */
     const iBool enableNativeMenus = (d->activePos == iInvalidPos);
diff --git a/src/ui/listwidget.c b/src/ui/listwidget.c
index 8b7d61e7..482e0368 100644
--- a/src/ui/listwidget.c
+++ b/src/ui/listwidget.c
@@ -518,9 +518,12 @@ static iBool processEvent_ListWidget_(iListWidget *d, const SDL_Event *ev) {
                 case SDLK_PAGEDOWN:
                 case SDLK_HOME:
                 case SDLK_END: {
-                    const int step = cursorKeyStep_ListWidget_(d, key);
-                    moveCursor_ListWidget_(d, step, iAbs(step) == 1 ? 0 : 150);
-                    return iTrue;
+                    if (d->scrollMode == normal_ScrollMode) {
+                        const int step = cursorKeyStep_ListWidget_(d, key);
+                        moveCursor_ListWidget_(d, step, iAbs(step) == 1 ? 0 : 150);
+                        return iTrue;
+                    }
+                    return iFalse;
                 }
                 case SDLK_RETURN:
                 case SDLK_KP_ENTER:
Proxy Information
Original URL
gemini://git.skyjake.fi/lagrange/work%2Fv1.9/cdiff/77def5236713cb4d67dc3ff460c8fc0918aece0f
Status Code
Success (20)
Meta
text/gemini; charset=utf-8
Capsule Response Time
59.036208 milliseconds
Gemini-to-HTML Time
0.139113 milliseconds

This content has been proxied by September (ba2dc).