tesshucom / jpsonic

This is a repository for development. See https://github.com/jpsonic/jpsonic
GNU General Public License v3.0
13 stars 13 forks source link

Migrate UPnP menu to customizable #2615

Closed tesshucom closed 2 months ago

tesshucom commented 2 months ago

Prerequisites: #2587

Overview

Users will have the ability to customize their UPnP content list more flexibly.

Jpsonic's UPnP has long been a style that provides multiple views with slightly different specifications, and allows the user to enable the one of them that they want to use. This pull request will allow users to rename and reorder UPnP items.

Goal

Non-Goal

Web page changes

UPnP settings Page has been changed "UPnP basic settings" remains unchanged. Newly added "Menu settings" and "Customizing content display". ![image](https://github.com/tesshucom/jpsonic/assets/27724847/4254d33b-4c97-49c8-8d92-2ccbf135efc0)
Menu settings Currently, there are eight basic menu items such as FOLDER and ARTIST. New items are planned to be added to these menu items in v114.x. - Can be enabled/disabled. - You can set the display name. - To avoid confusion, the initial setting is "Album Artist", but it could be abbreviated to "Artist". - The purpose is also to avoid i18n. Users can set it to their native language. - It is possible to change the order. However, it is powerless against Apps that overwrite sorting. Choose good client software. (In UPnP, Apps that force client-specific sorting, at least by default, can be called anarchy.) Settings can be changed instantly. No service restart is required. With software such as BubbleUPnP, which has an excellent cache refresh design, it will be easy to confirm this. ![image](https://github.com/tesshucom/jpsonic/assets/27724847/20d7f5b2-8076-4cd6-9ffe-c3608d5a0ba7)
Customizing content display - It is possible to change the display contents of the menu. - By default, one item is enabled for each item. If multiple Items are enabled for a single menu, the UI will display more nested structures. - Display name will only be used if multiple items are enabled. If only one is enabled, its contents will be displayed directly. To minimize nesting of the UI, only one item should be enabled. - If all items are disabled for a menu, the default item will be enabled. - New items will be added to these sub-items in v114.x. - Internally, these items can be sorted, but there are no plans to implement this functionality for the time being. - By design, items that will not surprise the user are provided at the top of the list. Items that currently do not have such general views may have new views added in the future.. - Or items with lower cross-platform characteristics will not be ranked higher. (For example, items that depend on file dates are unlikely to be designed as default value.) In other words, they are not arranged completely based on the user's senses, so it may not meet your expectations. ![image](https://github.com/tesshucom/jpsonic/assets/27724847/468a28ad-7fde-464f-8b9c-09a4dab862da)

Contents of changes