lxqt
lxqt copied to clipboard
lxqt-config-file-associations: expose more of the spec
Besides default applications, XDG MIME spec defines added and removed associations. There also exist x-scheme-handler/* protocol entries. I'm opening this issue to formalize lxqt-config-file-associations feature requests.
- [ ] add manipulation of added/removed associations
Similar to "Default application" section in the main window, add list of associations with add/remove buttons.
- [ ] add x-scheme-handler/* protocols to in the list
As these are not part of the MIME database, the best way to collect them would be "MimeType=" lines from desktop entries and existing mimeapps.list lines according to the hierarchy. Put them under "protocols" branch in the list.
- [ ] add new tab with user-friendly configurator for known/important association entries
On this tab several entries could be grouped under "Web browser", "File browser" thingies with translatable descriptions. Existing generic associations list would act as 'advanced' tab relative to this user-friendly tab (a hint for this should be visible). A situation when handlers belonging to the same group are set to different applications should be handled (for example, list of handlers in the group normally hidden under spoiler would be shown in this case)
Example of simple state:
Web Browser:
[ Firefox ]
> more -------
File Manager:
[ PCManFM ]
> more -------
Example of advanced state:
File Manager:
[ Advanced ]
V more -------
inode/directory - PCManFM
inode/mountpoint - PCManFM
x-scheme-handler/ftp - Filezilla
x-scheme-handler/smb - SpaceFM
See "protocols" on Associations tab. #< this could be a button to go
# to that tab and unfold "protocols" list.
... "Expose the logic!" could be my motto.
@Vladimir-csp - Spam removed, the bug is still valid and we should really do something in that direction :)
Just wanted to say this should probably be higher priority. I had never had to set file associations in the terminal before using LXQt.
@agaida Backend: https://github.com/lxqt/libqtxdg/pull/162 + https://gitlab.freedesktop.org/luis-pereira/xdg-utils/tree/lxqt-support
p.s. terminal handling not implemented yet.