After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 742513 - Many operations (cut, copy, paste) stop working if rename prompt is not properly exited.
Many operations (cut, copy, paste) stop working if rename prompt is not prope...
Status: RESOLVED DUPLICATE of bug 732513
Product: nautilus
Classification: Core
Component: Location Bar
3.10.x
Other Linux
: Normal normal
: ---
Assigned To: Nautilus Maintainers
Nautilus Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-01-07 10:15 UTC by A. Syukri Abdollah
Modified: 2015-01-08 11:50 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description A. Syukri Abdollah 2015-01-07 10:15:18 UTC
Version: 3.10.1 (from Ubuntu Trusty Updates repository, package version 3.10.1-0ubuntu9.4)
Distro: Ubuntu 14.04 Trusty Tahr

A bug has been opened in Launchpad (https://bugs.launchpad.net/ubuntu/+source/nautilus/+bug/1322925) last year, but had no upstream bugs linked.
Recent bug #739238 seems to be a symptom of this bug.

Steps to reproduce (as hinted by comment #29 from Launchpad bug https://bugs.launchpad.net/ubuntu/+source/nautilus/+bug/988251):
1. Start Nautilus, go to any folder with write permissions.
2. Select a file and press F2 or select from menu "Edit>Rename...".
3. With the rename prompt still active, without unselecting file, open new tab by Ctrl+T or menu "File>New Tab".
4. Select a file and copy by pressing Ctrl+C or menu "Edit>Copy".
5. Paste by pressing Ctrl+V or menu "Edit>Paste"

Expected result:
Copied file is pasted.

What happens:
Nothing happens.

Details:
A. After step 5, returning to the original tab will restore ability to copy, paste etc.
B. At step 4 or 5, from gdb, it is shown that the associated callbacks (action_cut_files_callback, action_copy_files_callback, action_paste_files_callback) are never called.
C-i. After step 2, activating location bar by Ctrl+L or menu "Go>Enter Location...", or
C-ii. after step 3, attempting to rename a file on new tab outputs the following stderr:
"""
    (nautilus:22490): Gtk-WARNING **: Inserting action group 'ClipboardActions' into UI manager which already has a group with this name
""" 
D. If original tab is closed before step 4, the following stderr appears after step 5 (pasting):
"""
    (nautilus:22490): Gtk-CRITICAL **: gtk_widget_get_clipboard: assertion 'gtk_widget_has_screen (widget)' failed

    (nautilus:22490): Gtk-CRITICAL **: gtk_clipboard_request_text: assertion 'clipboard != NULL' failed
"""
E. A freshly opened new window does not exhibit the bug, unless the above steps are repeated.
Comment 1 A. Syukri Abdollah 2015-01-07 13:08:54 UTC
Problem is due to clipboard items not being merged out properly.
nautilus-clipboard.c:target_destroy_callback() did not fire, even though
nautilus-list-view.c:editable_focus_out_cb() was called, which sets
view->details->editable_widget = NULL;
For some reason, the editable widget is not destroyed until callback for either "editing-canceled" or "edited" completes.

It seems icon view mode is not affected by this bug.
Comment 2 A. Syukri Abdollah 2015-01-08 06:17:05 UTC
In icon (canvas) view, 'focus-in-event' and 'focus-out-event' are properly fired when focus of text entry is lost upon switching to other tabs. In list view, there is no sign of the two being emitted (associated callback is not called).
Comment 3 Cosimo Cecchi 2015-01-08 06:43:07 UTC
I believe this was fixed in 3.14 with the patch committed for bug 732513  - https://git.gnome.org/browse/nautilus/commit/?id=8032628adc9c8286050716d609c574dc7273dfcb
Could you check by applying that patch?
Comment 4 A. Syukri Abdollah 2015-01-08 11:40:40 UTC
Yes, the patch fixed the bug. Thank you!
Comment 5 Cosimo Cecchi 2015-01-08 11:50:30 UTC
Thanks for testing! Does that also fix the other bug 739238 mentioned here?

*** This bug has been marked as a duplicate of bug 732513 ***