Comment 9 for bug 1011884

Revision history for this message
Martin Wildam (mwildam) wrote :

I think, I now understood why you are concentrating so much on the parent.

And I am now not sure if this is a unity or nautilus problem, however:

When you click on the nautilus launcher with several windows open, you can see all windows (including the copy progress window) as separete instances that can be switched to. So somehow unity or nautilus "knows" that the progress dialog is a separate instance of nautilus.

I compared that now to behaviour in gedit, geany or LibreOffice when opening the File open dialog with the following result: App window and file dialog were displayed as separate windows when clicking on the launcher, but: Whatever I clicked of the both windows, the file dialog came to foreground - which is ok, because it is displayed modal/synchroneously/blocking.
ALT+TAB brings back to that window - ok.

When the dialog is displayed asynchroneously/non-blocking there is no problem in switching to the application window instead (new browser window is such an example or several different email detail windows opened from Thunderbird). I do consider Thunderbird as comparable with Nautilus here. A copy dialog is not much different from a details or copy progress window in Nautilus.

And indeed here we see another difference: Press ALT+ENTER on a file in Nautilus. A seperate window opens. You can now use the launcher icon to switch back to the main nautilus window and either open another file details with ALT+Enter. The only difference here is that (for whatever reason) the details dialog has the stay-on-top-flag set. Anyway you can focus the main window in the background.

How ever should a dummy-user understand why what behaviour?

The behaviour of Thunderbird or Firefox in displaying new windows mostly asynchroneously is the way which is most common sense I would say. There are application dialogs that need to be displayed synchroneously, but oft course copy dialog or file details window make sense to be displayed asynchroneously without blocking the main application window and hence: Both should be switchable to and considered as last active Window when switching windows.