IgnorantGuru / spacefm

SpaceFM File Manager
http://ignorantguru.github.com/spacefm/
GNU General Public License v3.0
489 stars 73 forks source link

[desktop] multiple workspaces #246

Closed IgnorantGuru closed 11 years ago

IgnorantGuru commented 11 years ago

Received elsewhere:

I've found that any dialog produced by SpaceFM desktop handler appears on workspace that contains SpaceFM window, which may be another workspace. So it appears like that: you select a file on desktop, press delete, nothing happens. You try to create a file, nothing happens. You try to open a directory, nothing happens. Then you switch to workspace that contains SpaceFM window and see a bunch of dialogs and a dir you've tried to open. Workspace handling needs some improvement.

Also a good suggestion would be for SpaceFM window to ask WM for focus and attention state if a directory was opened in it. That way WM will handle some part of workspace transition or at least notify user that window needs attention.

Also I can't use arrows and enter key on SpaceFM desktop in Openbox (but delete works). And in XFCE no keyboard events ever reach to SpaceFM desktop. Although that might be XFCE issue.

fmfer commented 11 years ago

Looking at the code, the arrows and Enter keys issue is not your WM, it's because those keys are not yet handled by SpaceFM Desktop.

Although I can say the windows position (specially dialogs) keep playing with me, appearing at random positions in Fluxbox even after making sure the WM is not repositioning SpaceFM stuff. This is not happening in, at least, Enlightenment.

Dialogs being redirected to one workspace is strange, maybe that one is your WM remembering the wrong stuff.

Also, using spacefm --desktop, Fluxbox was repositioning the... desktop, thinking it was the main SpaceFM window. The desktop and the main window both have the same WM_CLASS attribute, and both contain "SpaceFM" in the WM_NAME attribute, so you need to take care how your WM is treating them. As a workaround for this madness, the main window has a "-" in the WM_NAME, so for example:

wmctrl -a "- SpaceFM" || spacefm

will do the right thing. I hope this helps.

IgnorantGuru commented 11 years ago

I can confirm some dialogs appearing in the workspace containing the (last used?) spacefm window (if one is open), on Openbox.

IgnorantGuru commented 11 years ago

In next (will be in 0.8.5), all desktop dialogs should now appear on the current workspace. Desktop keys have been added. Also, the create new dialog now uses the newer dialog used by the fm, and will select the new file/folder on the desktop after creation.

For this:

Also a good suggestion would be for SpaceFM window to ask WM for focus and attention state if a directory was opened in it. That way WM will handle some part of workspace transition or at least notify user that window needs attention.

SpaceFM already applies gtk_window_present when opening a folder - the behavior there will depend on the window manager.