Rockbox Technical Forums

Rockbox Development => Starting Development and Compiling => Topic started by: rpgeha on April 07, 2021, 03:59:41 PM

Title: How to disable context menu?
Post by: rpgeha on April 07, 2021, 03:59:41 PM
My device. Sansa e200

Hello. I want to disable the ability to open the context menu in some simple way. I downloaded the source code and started changing keymap-e200.


I tried to replace all BUTTON_SELECTs with any other button altogether. But this had no effect. I am testing everything in rockboxui.


The buttons do not change their function. What can you advise? Maybe it's easy to solve - just comment out some line.
Title: Re: How to disable context menu?
Post by: rpgeha on April 08, 2021, 03:16:44 AM
I get the impression that the problem is in rockboxui. I'm trying to change - and recompile - no change! I even tried changing the language files! I took some menu items and rewrote them for the test, and still there are no changes. What could be the problem? Need to test on a real device?


UPD

In general, after 10 hours of hell and stupid attempts, I realized that I needed to test the modified firmware not in the UI Simulator, but on a physical device.

I waited for the moment when the device fell into my hands and downloaded my compiled firmware and oh gods! It worked. I just reassigned the buttons.


File to edit - keymap-e200.c

struct to edit in file:
Quote
static const struct button_mapping button_context_standard[]  = {
    { ACTION_STD_PREV,        BUTTON_SCROLL_BACK,                BUTTON_NONE },
    { ACTION_STD_PREVREPEAT,  BUTTON_SCROLL_BACK|BUTTON_REPEAT,  BUTTON_NONE },
    { ACTION_STD_NEXT,        BUTTON_SCROLL_FWD,                 BUTTON_NONE },
    { ACTION_STD_NEXTREPEAT,  BUTTON_SCROLL_FWD|BUTTON_REPEAT,   BUTTON_NONE },

    { ACTION_STD_MENU,        BUTTON_DOWN|BUTTON_REL,            BUTTON_DOWN },
    { ACTION_STD_REC,         BUTTON_REC|BUTTON_REPEAT,          BUTTON_NONE },

    { ACTION_STD_OK,          BUTTON_SELECT|BUTTON_REL,          BUTTON_SELECT },
    { ACTION_STD_OK,          BUTTON_RIGHT,                      BUTTON_NONE },

   { ACTION_STD_OK,          BUTTON_SELECT|BUTTON_REPEAT,       BUTTON_SELECT },


    { ACTION_STD_CANCEL,      BUTTON_LEFT,                       BUTTON_NONE },

    { ACTION_STD_QUICKSCREEN, BUTTON_DOWN|BUTTON_REPEAT,         BUTTON_DOWN },
    { ACTION_STD_CONTEXT,     BUTTON_RIGHT|BUTTON_REPEAT,       BUTTON_RIGHT },

    LAST_ITEM_IN_LIST
}; /* button_context_standard */


"ACTION_STD_CONTEXT" I reassigned it to the right button so that it doesn't bother me anymore.