• Status Closed
  • Percent Complete
  • Task Type Patches
  • Category User Interface
  • Assigned To No-one
  • Operating System All players
  • Severity Low
  • Priority Very Low
  • Reported Version
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by fml2 - 2007-03-02

FS#6718 - Customize the order of the entries in the main menu

Here is make take to make the order of the entries in the main menu customizable. Only the order may be changed, key shortcuts etc. is not changed.

The solution is a bit clumsy (if not ugly). To change the order of the entries, create a text file named “main_menu.mnu” in the folder “/.rockbox”. In this file, place the following lines in the order you’d like to have the entries in the main menu:

now playing
fm radio

The line with “fm radio” should only be present on DAPs with FM radio. The line with “shutdown” should only be present on DAPs with char cells.

An example for H120:

now playing
fm radio

If something goes wrong (file does not exist, unknown entries, bad number of lines etc.) the root menu is not changed.

This feature can be propagated to other menues, but I think it would be an overkill. But the main menu is used often and hence should be optimized as much as possible to the taste of every single user.

If this will be propagated to other menues, we could create a field in the menu structure to hold the “id” of the menu entry.

Comments are welcome.

Closed by  Llorean
2007-05-09 00:00
Reason for closing:  Rejected
Additional comments about closing:   Warning: Undefined array key "typography" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 371 Warning: Undefined array key "camelcase" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 407

Pain to support.
Increases binary size for minimal gain.
Adds to code complexity, for a minor benefit.

fml2 commented on 2007-03-04 17:06

I admit that the implementation is not the best ever possible. But how do you find the idea?

I don’t like customizable menus and are completely against adding such a thing to Rockbox. It will be hell to support that. The only thing that might be feasible is a customizable “Favourites” submenu (IIRC JdGordon had such a thing at some point during the menu rewrite).

fml2 commented on 2007-03-05 07:50

He-he. Would be a nightmare to describe it in the manual ;-)

Personally, I love this idea. However, there needs to be a better implementation. I would like to see a menu somewhere in the settings where you can change the order. My idea is it shows the order, you can press play to select an item, then pressing up or down will move the menu… up or down. Now, I’m no coder and I doubt that would work with the rockbox code, but still I think that would be the way to do it…

fml2 commented on 2007-03-07 12:51

Bobby, I also had that idea. And I think it even wouldn’t be very hard to implement (this could also be a plugin so that the main binary wouldn’t grow in size; the plugin would be associated with .mnu-files). But we have to separate two things: the ability to reorder items in menues and how to edit the files (if reordering is done with files).

My patch does the first part. If it’s accepted we can start with the second.

But I’m afraid, the possibility of reordering itself is frown upon by the core developers so the chance of this patch to be committed is not very high.

I’ve been trying to learn about the code so I could implement this same idea, except I want it to work for all the menus (especially the WPS context menu), and it would also be possible remove unused menu items. I didn’t realize someone had already done this. I think it is a great idea, and would make RB that much better for every one. Why do you think this is not likely to make it into the main build?

Because it will be a pain to support it, it adds binary size (which is always a concern) and gives no real benefit for the majority of users. A lot of people involved with Rockbox development will object against customizable menus, the only thing that might get considered (and the only I would consider at all) would be a customizable “Favourites” menu.

Frmo what I understand about the “pain to support it”, the problem is that with this patch, there is no UI for customizing the order of the menu items. Thus, the pain to support. Like Alex Levin said, this patch does the first part, however I think the second part needs to be implemented before any of this will get committed.

One of the big points about Rockbox is that it is customizable. The sound settings are customizable, and the way it looks is customizable, but the navigation through the menu system is not. Since everybody likes to do things differently, different people have different ideas about menus, so one menu set can never please everyone. I like to load lots of music onto my player and whenever I hear a song I dont like, I delete it. If I could do that one thing faster, it would be a huge help to me. On the other hand, I never save playlists, so I have no use for the ‘Playlist Catalog’ menu, for example.

Of course, just allowing the reordering the menu items doesnt get you all the way there, but it is a step in the right direction, in my opinion.

I have no problem using a file to set up the menus - people who don’t care can always use the default, but for those that want to make a change they can do it, without having to merge their own code changes in and rebuild, whenever they want to update to the latest build. Just like with the tagnavi.config stuff. If people get themselves into trouble, getting rid of menu options they need or whatever, they can always delete the file, and go back to the default.

Ok I guess I talked enough about it. Just my 2 cents.


Available keyboard shortcuts


Task Details

Task Editing