AvengeMedia / AvengeMedia/DankMaterialShell

FileBrowser sidebar has no removable/network drives (quickAccessLocations is hardcoded)

Open
#3,184 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
QML
Stars
8.1k
Forks
515
Avg merge
1d 8h
Merged PRs (30d)
102

Description

## Description

The built-in file browser modal (`DankCommon/Modals/FileBrowser/FileBrowserContent.qml` in `dank-qml-common`) only ever shows a fixed set of quick-access locations in its sidebar:

```qml
property var quickAccessLocations: [
{ "name": "Home", "path": homeDir, "icon": "home" },
{ "name": "Documents", "path": docsDir, "icon": "description" },
{ "name": "Downloads", "path": downloadDir, "icon": "download" },
{ "name": "Pictures", "path": picsDir, "icon": "image" },
{ "name": "Music", "path": musicDir, "icon": "music_note" },
{ "name": "Videos", "path": videosDir, "icon": "movie" },
{ "name": "Desktop", "path": desktopDir, "icon": "computer" }
]
```

There's no enumeration of mounted removable media (USB drives, etc.) or network shares (SMB/NFS mounts via GVfs), so they never show up in the sidebar even when they're mounted and browsable via other file managers (e.g. Thunar with udisks2/gvfs).

## Request

Add dynamic entries to the sidebar for currently-mounted external/removable and network volumes, e.g. by querying `udisks2` (via D-Bus) and/or GVfs mounts, similar to what GTK's native file chooser and most file managers show under "Devices"/"Network". Even a simple always-refreshed list of current mounts (excluding the root/home filesystem) under a "Devices" section would cover the common case.

## Context

Noticed this while setting up DMS on niri: system-wide file pickers routed through `xdg-desktop-portal` (e.g. Firefox uploads) already show external/network drives fine via the GTK portal backend, since GTK's chooser does its own volume monitoring. It's specifically DMS's own internal file browser (used e.g. for wallpaper selection) that's missing this, since `quickAccessLocations` has no dynamic/mount-aware source.

Contributor guide

Open the contributing guide

Research direction

Start with DankCommon/Modals/FileBrowser/FileBrowserContent.qml and trace how quickAccessLocations are rendered in the sidebar. Research the available udisks2 or GVfs mount-monitoring interfaces and how this project handles D-Bus or filesystem integration. Done means currently mounted removable and network volumes appear in a distinct sidebar section, excluding the root and home filesystems, and update when mounts change.

Written by the indexing model from the issue text.

Assessment

Domain
desktop
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.