-
-
Notifications
You must be signed in to change notification settings - Fork 85
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Application-Themed/Branded Folder Icons? #1009
Comments
I'm not sure it's super worth pursuing this route when the future we're working towards is a sandboxed one, so apps will not be able to create directories in users' home at some point |
Regarding sandboxing, sandboxed application directories could still be nice to have themed with special icons. For example, sandboxed application directories in iCloud Drive use icons derived from the applications that created them. |
Depending on how sandboxing works with Flatpak, themed-icon metadata might be better implemented by Flatpak rather than by the applications themselves, but I don't know enough about the nitty-gritty to know what would be involved. |
On a different subject, looking at the illustration of an inset-pictogram icon from the elementary icon-design guidelines: It's easy to imagine folder icons being programmatically created from the default folder, the symbolic icon, and possibly an alternate fill color. The "embossed" stylization is standardized enough that that folder-icon rules could be enforced at the time of creation (which could also simplify creating the icons in the first place). |
Also, in terms of which applications would be eligible for themed folder icons, in the case of elementary, it could be reasonable for themed folder icons to be a special aspect of curated AppCenter applications, rather than something completely thrown open to all developers. (Though if themed folder icons were implemented on the Flatpak level, Flathub could figure them out, too.) |
It might be nice to have something like iOS where each app has its own sandboxed folder that it can use as its user-accessible folder rather than having to use the user's Documents, Pictures etc. Another cool idea would be to have these 'App storage' spaces have a static shortcut in the Files sidebar (and possibly the save dialog) |
I'm pretty sure this is how it works with both Flatpak and Snap. The main difference between the two is where the choose to put the sandboxed userdata folder. In both cases, though, it's not terribly user-friendly:
By contrast, the way Apple does user-accessible app-specific folders (i.e. on iCloud Drive or iOS Files) is the folders technically live in |
I didn't mean to present the user with the actual flatpak folder struture, I meant a simple virtual folder like the recents tab that has a bunch of the 'App spaces' in it. |
Ehhhh... Snap has the force of a commercially significant distribution behind it. Yes, it's annoying that it's separate from Flatpak, but at the end of the day it's a functionally equivalent way of doing more or less the same things. |
This is sounding to me like more of an issue to be pursued in GVFS. If you want to have a location that you can view app data in the same way that you can with say "trash://" or "recent://", GVFS is where that code lives So I'm inclined to close this as "out of scope" for elementary. If the maintainers of GVFS are opposed to this idea, then maybe it could be brought up against Files, but if we had to maintain support for this it would only support Flatpak and not Snap since development resources are limited |
Cool, thanks for pointing me an that direction! I'll dig around in the GVFS issue tracker and see if there's a good place to put a version of this issue there. |
If you're curious, the issue I created on the GVFS issue tracker is here. |
Problem
Directories that are native to the operating system (i.e. Documents, Downloads, etc.) have overlays, coloration, and mini glyphs to distinguish them from regular directories. However, certain directories not provided by the operating system are programmatically created, yet still look like user-created directories.
Most prominently, Snap creates a top-level directory in the user's home directory, and it can't be renamed or moved (though it can be hidden by referencing it in
.hidden
). Similarly, cloud-sync services often create or require one or more branded directories, which can be placed anywhere but usually also default to the top level of the user's home directory.Issue #665 specifically talks about directories inappropriately residing at the top level of a user's home directory, but folder icons are determined by metadata keys, rather than their location in the directory structure. For example, the Documents folder has the following:
Using
gio
for icon theming, while an application-specific folder could inappropriately reside at the top level of a user's home directory, it could just as easily reside anywhere else and still use a themed icon.The idea of a generic cloud-service folder was presented in Issue #742.
Issue #721 also asks about application-themed folder icons, such as Git, Code, etc.
Unlike application icons—which elementary deliberately declines to override—application-themed folder icons incorporate a generic folder icon, which is then customized. Because folder icons used by icon themes vary widely, it is impractical for application developers to provide special folder icons that coordinate with any and every icon theme. I don't know if it's even possible to applications to programmatically poll the operating for the name of applicable icon theme in the first place.
Proposal
In order to facilitate application-themed folder icons that specifically match the elementary icon theme, elementary icons (as well as other major icon-set developers) could create a more open-ended specification for constructing and naming these icons. For example, based on
folder-documents
andfolder-documents-symbolic
, the elementary icon theme could, with the cooperation of application developers and on an ad hoc basis, incorporate icons such asfolder-cloud
andfolder-cloud-symbolic
,folder-git
andfolder-git-symbolic
, or even more specific names such asfolder-nextcloud
andfolder-nextcloud-symbolic
orfolder-calibre
,folder-calibre-symbolic
,folder-joplin
,folder-joplin-symbolic
, etc.Again, this would be on an ad hoc basis and with the cooperation of application developers, who regardless would be the ones to use
gio
to assign their preferred folder icons, rather than leaving the assignment up to the operating system itself.I recognize that the particular folder-naming schema I just presented may not be ideal. For example, it may be preferable to use reverse-domain strings, like
folder-com.nextcloud.desktopclient
or similar, to match the reverse-domain strings used by the applications themselves.Also, it would presumably be necessary for the icon design guidelines to provide specifications for conforming modifications to the default folder icons, like whether the folder can be recolored, what sort or size of glyph may be used, etc.
Finally, yes, I know there are relatively detailed specifications around which icons a freedesktop.org-compliant icon theme should provide and what they should be called, but looking at #827, it does appear that the maintainers here are open to limited modifications to the icon-naming lexicon.
Prior Art
This isn't exactly prior art, but I threw together a folder icon for the Humanity icon set over at Nextcloud Desktop, and similarly both macOS and Windows have semi-established precedents for certain folders (particularly cloud-sync folders) having special icons in certain contexts.
While, yes, cloud "drives" can be mounted as virtual devices rather than folders, it is much more the norm for cloud-drive clients to sync with a regular directory than to mount as a drive. Even when a cloud-sync directory is represented in the sidebar as something other than just a folder, it still usually resides in the regular filesystem somewhere in the user's home directory.
The text was updated successfully, but these errors were encountered: