libretro / libretro/RetroArch

Better arrangement choices for a frontend to enumerate pick-list options

Open
#17,004 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
14.1k
Forks
2.2k
Avg merge
7h 35m
Merged PRs (30d)
51

Description

In reference to a post by @sonninnos in https://github.com/libretro/RetroArch/pull/16960#discussion_r1759653679

Options that might get packaged with RetroArch, like a theme color, font, default core overlay, global shader, menu background or navigation sounds, screensaver, etc.

I've always liked those GUI pick-list items for community-based or plug-in options that sort by a "popularity" rating, then by date "added" -- allows for an author to put the first 5-star vote on a release so it sorts at the top until subsequent votes come in, instead of it falling unceremoniously to the bottom when it is appended.

Internally, the option continues as a fixed integer for backward compatibility, but obviously, the change is adding the metadata (and a community popularity poll database) for frontend(s) to implement this arrangement -- also motivates frontend(s) to modernize. If nothing else changes, it simply continues to work AS-IS.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the discussion linked from PR 16960, especially the referenced post and comment. Define how metadata for pick-list options and a community popularity database would support frontend arrangement by popularity and date while preserving the existing fixed-integer behavior; the issue is done only when that design and its implementation scope are clear.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.