prefs/directories: surface that the Incoming folder is shared (#601) - #631
Merged
mrjimenez merged 1 commit intoMay 16, 2026
Merged
Conversation
Contributor
|
I was thinking on the same approach. "All files in this folder are shared with other peers" |
…project#601) The "Destination folder for downloads" field in the Preferences Directories tab gave no UI cue that completed downloads in that folder are automatically shared with ed2k peers. Users who reused their system-wide ~/Downloads directory ended up sharing personal files they had no intention of exposing -- see slrslr's report in amule-project#601 where the framing is essentially "I picked a download destination, I did not pick to share that folder's contents." Add three small UI cues to the same StaticBox so the sharing contract is visible without changing behaviour: * Tooltip on the path field explaining that contents land here AND get shared, with a hint to use an aMule-only sub-folder if the destination also holds private files. * Same-text tooltip on the Browse button so the cue is on the most-clicked control too. * A visible static-text label "(Files in this folder are shared with ed2k peers)" beneath the field, mirroring the existing "(Right click on folder icon for recursive share)" hint pattern in the Shared folders panel right below it. Verified locally on macOS arm64: monolithic amule rebuilds clean. Reported by slrslr.
got3nks
force-pushed
the
feat/prefs-incoming-shared-hint
branch
from
May 16, 2026 07:48
b6d4a21 to
fded4df
Compare
Contributor
Author
|
Good call, applied — "All" added to all three strings to make the "every file in there, not just downloads" point unambiguous:
Force-pushed ( |
ngosang
pushed a commit
to ngosang/amule
that referenced
this pull request
Jul 27, 2026
…ject#647) Fixes amule-project#631. Opening a collection from a file manager has never worked on any platform: nothing declared the type to the OS, nothing handled the open-document event on macOS, and the command-line path rejected anything that was not an eD2k or magnet link. Accepts a .emulecollection path or file:// URL as an argument, handles MacOpenFiles on macOS, and declares the type to each OS. Registration is exposed on the same four surfaces as the URL schemes so a portable copy can register itself; UriScheme becomes HandlerTarget so the existing policy layer and the Linux mimeapps.list handling are reused rather than duplicated. Hardens CMuleCollection, which becomes reachable from arbitrary files: a blank line threw std::out_of_range out of Open(), a length prefix could request a 4 GiB allocation, a filename containing a newline forged extra lines in the ED2KLinks IPC file, an entry without a hash produced an unusable link, a link smuggled into a filename was harvested by the text parser after the binary parser rejected it, and a UTF-8 BOM made a collection parse as empty. Adds unit tests, which the parser had none of. Also fixes pre-existing bugs this feature was the first to depend on: wxExecute's string form passed quote characters through to the XDG cache helpers, those helpers inherited the AppImage's LD_LIBRARY_PATH and died on a bundled glib symbol, mimeapps.list was written without a trailing newline so the next writer's entry fused onto ours, and four installer strings were never extractable by xgettext.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The "Destination folder for downloads" field in the Preferences → Directories tab gave no UI cue that completed downloads in that folder are automatically shared with other peers (over both ed2k and Kad). @slrslr's report in #601 frames it as "I picked a download destination, I did not pick to share that folder's contents" — a fair read of the panel as it stood. Users who reuse their system-wide
~/Downloadsdirectory had no signal that doing so would expose every other file in it.Fix
Three small UI cues added to the same StaticBox, no behaviour change:
(Files in this folder are shared with other peers), mirroring the existing(Right click on folder icon for recursive share)hint pattern in the Shared folders panel right below it.The hint is a localised string, picks up translation alongside the other panel labels.
Layout (after)
Validation
macOS arm64: monolithic
amulerebuilds clean. Hint placement mirrors the existing wxStaticText pattern in the same panel (muuli_wdr.cpp:1574) so the layout machinery is exercised by code that already works.Closes #601.