Skip to content

Feature Request: Freeform Path Selection (Right-Click Drag Brush Selection) - Working Prototype Included #3822

Description

@yazeedali

Hello Nemo Team,

A long-standing workflow limitation in Nemo is the inability to select multiple files by simply drawing a path over them (brush selection) without relying solely on the rigid box selection.

To solve this, I have developed a working prototype that adds Freeform Path Selection via Right-Click Drag.

How the Prototype Works:

  • Smart Timeout: Right-clicking initiates a small timeout. If the user drags >10px, path selection activates. If released immediately, the standard context menu pops up.
  • Visual Feedback: Uses Cairo to draw a path tracking the mouse, dynamically adapting to theme_selected_bg_color.
  • Synthetic Events & Spatial Memory: To bypass external selection limits and the Ctrl+Click toggle issue, the code injects synthetic GDK_BUTTON_PRESS events and uses a spatial hashing array (ignoring clicks within a ~45px radius of previous points) to ensure solid selection without accidental deselections.

I have created a repository with the modified nemo-icon-view.c and a .patch file that applies cleanly to the current build.

You can check out the code, the patch, and the full explanation here:
👉 https://github.com/yazeedali/Linux-mint-nemo-path-selection

I would love for the core team to review this concept, polish it, and hopefully consider merging it into a future release. I believe this would be a massive UX improvement for Linux Mint users.

Thank you for your hard work on Nemo!

Best regards,
Yazeed Ali Al-Ghamdi

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions