Skip to content
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

Enhancement: Better Drag & Drop #517

Open
dreamsyntax opened this issue Dec 11, 2024 · 4 comments
Open

Enhancement: Better Drag & Drop #517

dreamsyntax opened this issue Dec 11, 2024 · 4 comments
Labels
enhancement New feature or request untriaged No decision has been made by the developers.

Comments

@dreamsyntax
Copy link
Contributor

dreamsyntax commented Dec 11, 2024

What

The current Drag & Drop install mod feature has very little area where you can drop a mod. Leading to some users thinking the feature is broken.

A user would intuitively try to drop the mod within the list of Mods in Configure Mods window.

Drag-N-Drop-Current.mp4

Proposal

  • Allow drag & dropping anywhere within the MainWindow and automatically detect the context (external file? -> add mod)
  • Ensure not conflicting with Drag & Drop behaviors within the app (mod reordering, etc)
@dreamsyntax dreamsyntax added enhancement New feature or request untriaged No decision has been made by the developers. labels Dec 11, 2024
@Sewer56
Copy link
Member

Sewer56 commented Dec 11, 2024

Technically the whole window does allow it, but some controls swallow it. I just haven't gone around to fixing it on a control by control basis.

I remember having some trouble getting the mod list to not swallow it.

@dreamsyntax
Copy link
Contributor Author

I was hoping that each component could attempt to process, and if nothing handles the object type, then throw the Drag&Drop event to their parent. Each component would do this, with the final parent being MainWindow or App. This top level could handle or discard if nothing has processed it at this point.

I don't know how feasible it is, but something I'll look into.

@Sewer56
Copy link
Member

Sewer56 commented Dec 11, 2024

That's what's supposed to happen, but unfortunately some controls swallow the event and don't let it bubble up to the window. I never got around to trying to fix it control bt control.

@dreamsyntax
Copy link
Contributor Author

Tried a few solutions such as

                DragDrop.DragEnter="DragDrop_PassthroughHandler"
                DragDrop.DragLeave="DragDrop_PassthroughHandler"
                DragDrop.DragOver="DragDrop_PassthroughHandler"
                dd:DragDrop.IsDragSource="True"
                dd:DragDrop.IsDropTarget="True">

But ultimately even adding it on every component within AppSummaryPage either breaks the theming on the internal drag&drop mod sorting, or threw away the mod install event.

I recommend leaving this issue open if anyone else wants to take a crack at it and has more experience with drag&drop and WPF.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request untriaged No decision has been made by the developers.
Projects
None yet
Development

No branches or pull requests

2 participants