ErrorFlynn / ytdlp-interface

Windows graphical interface for yt-dlp, designed as a simple YouTube downloader
MIT License
1.1k stars 58 forks source link

[Suggestion] Refactor bottommost buttons #154

Closed the-liquid-metal closed 4 months ago

the-liquid-metal commented 4 months ago

Please see

Korb commented 3 months ago

In the current interface, the logic of the placement of controls does not look logical and intuitive. In particular, the placement of the "Settings", "Queue actions", "Select formats", "Show output" and "Start download" buttons. At a minimum, I would divide all indicators and controls into the following three groups:

  1. selected downloads;
  2. settings for new default downloads;
  3. application settings (affecting all current and future downloads, regardless of whether they are selected or not).

In the current interface, it is generally unclear which buttons and fields belong to which of these groups, which of them are duplicated in the context menu, and, finally, which perform an action, which cause the current window to change / show a new window.

For example, in the first line of the lower block there are three elements that are apparently close in meaning, since they are located next to each other. These are the "Settings" button, the web address of the current download and the drop-down menu button "Queue actions". That is, these are the general application settings (one of the most rarely used elements), the property of the selected download and the list of functions duplicating the context menu of the selected download (in fact, the main menu item "Edit" or "Download"). Although, from the inscription on the button, one could assume that this is only about managing the list of downloads as a whole. That is, these elements do not belong to the same group of elements according to the classification given above.

In addition, the appearance of all buttons is identical regardless of whether they immediately perform some action ("Start download" / "Stop download"), open a window ("Settings", "Select formats"), switch the display mode of the current window ("Show output" / "Show queue") or expand the "Queue actions" list.

The progress bar is visible only on the "Show output" screen, although this is one of the most important indicators for the user. Moreover, it is located in the place of the "Settings" button, the web address of the current download and the "Queue actions" button, making them inaccessible to the user from this screen. I understand why you would block access to the "Queue actions" button - this screen doesn't show which download is current, and when selecting actions in the drop-down menu you can make a mistake and apply the action to the wrong download. But why hide the other two elements (and not hide other controls (like "Download folder", "Download rate limit" and others) is unclear.

Because of this confusion, it is unclear whether "Start download" / "Stop download" refers only to the selected download (i.e. be a synonym for the Start item in the download context menu and the "Queue actions" drop-down menu), or they can be read as "Start all" / "Stop all"?

Maybe, at a minimum, displaying the log in a separate window with the title of the download name and moving all the general settings to the burger menu or even to the application settings screen will make it more user-friendly?

I am not a designer, but I have experience writing technical documentation, and I feel when the interface has logic, or when it is broken. My favorite example of a "programmer's interface" is the settings of the FOSS application Mahou. Hundreds of settings, chaotically scattered across a dozen and a half tabs. This is an interface that can be used to scare children when they can't calm down before going to bed. =)