-
Notifications
You must be signed in to change notification settings - Fork 280
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
Dragging Files Between Windows #46
Comments
+1. |
AFAIK: tldr: functionality has to be implemented upstream before it can be done at the extension level. |
May not be entirely related but with dash to panel disabled, files can be dragged to the top left hot corner and dragged over another window. With dash to panel enabled, dragging the file to the hot corner does not show the activities overview. Can that be fixed, or is it intentional? |
Thanks, I had read @micheleg's answer, however I did not exactly understand the part about opening the windows. |
Basically the shell interface can't get information about which file is being dragged, but it can know a file is being dragged. But application windows can. My idea - never implemented - was on drag to show the open windows of the selected application, then hover the desired window to activate it, then drop. This is exactly the same dynamics you get by dragging a file to the activities button, and then look for the desired window. Showing only the windows of the selected application just makes it quicker. |
Thanks for the quick reply! There are no workarounds, other than calling upon the window view? Perhaps some custom code from the extension itself (although that will unfortunately limit the possibilites of integration with other extensions, and/or be too much to handle), or a seperate extensions that could "patch" the shell to allow other extensions to make use of it? |
It is my understanding that you really have to patch the C layer, which is just not possible from an extension. I don't blame GNOME developers though. It is probably a lack of direct interest for the feature - after all they don't need that functionality for the shell itself. I honestly haven't tried to push for the patch to be applied upstream. You could test and update the patch to current upstream, and try to push for merging. |
Thank you very much. The extension ecosystem should not be underestimated (I am also an Xposed Framework user on Android (whenever possible))! |
I definitely find this annoying too. While dropping the file directly onto the icon would be best, I think even just raising all the application's running windows when hovering the icon while dragging a file would be a big improvement without a lot of effort. |
The best solution I could get working in a reasonable amount of time was to popup the overview when you drag a file over the panel. Then you can drag over the window or workspace you are interested in and hover over the new window. After a couple of seconds that window will be raised and you can drop your file into it. I wasn't able to find out anything about the contents of the dragged item, as @micheleg mentioned. My next thought was to allow the user to hover over an icon and open the live preview window, then hover over one of those windows to raise it. But, grabbing focus by the preview window failed since it was already grabbed by the drag-and-drop handler, and the windows underneath were picking up the events. I tried a bunch of workarounds but basically no events get through to shell extensions except the drag-and-drop events in that state. You only know that a drag started, the mouse moved, and a drag ended. I'm sure that with the inclination, it would be possible to override the grab handler to add some special cases, but even then you can't actually drop the item there without the C shell fix in place. |
Re-opening as I haven't been happy with how cumbersome the current solution is. Hopefully someone can take initiative to push for the necessary upstream changes. |
+1 I post here a video just to be more clear (in this video i'm trying to drag a pick found on facebook into telegram). |
Thanks for bringing that up @brofjst! Should now be fixed on master. |
Now it works, thank you! |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Hi, with respect to the drag and drop behavior. I noticed that when dash-to-dock autohide feature is enabled, and user tries to drag a file onto the dash-to-dock - the panel does not slide back on the screen. Edit: I also checked "Dash to Dock" behavior and it works as expected. When user drags a file to the edge of the screen, panel pops out. Should I open a separate issue? |
It's implemented in this pull request for "Dash To Dock" (not perfect but works most of the time). |
this is so problematic, the PR above looks pretty simple to add at least to dash to dock, duno for dash to panel there was also this thing https://askubuntu.com/questions/1030623/how-to-drag-and-drop-files-to-open-application and new information here micheleg/dash-to-dock#49 @jderose9 @charlesg99 pinging just in case |
Very essential missing feature. Couldn't this solution be applied here also @philippun1 @charlesg99 ?: paperwm/PaperWM#574 |
Would it be possible to allow for files to be dragged between windows? It would be nice to be able to drag a file from one window, hover it over the icon or preview of a second window, and have the second window be brought to the front. This would be helpful for dragging files from a file manager to Google Drive.
The text was updated successfully, but these errors were encountered: