GNOME Bugzilla – Bug 730767
Tab that's being dragged is not updated
Last modified: 2014-06-02 03:16:52 UTC
Start g-t with a single window, multiple tabs. Execute something like "sleep 5; seq 1 10" and then start dragging this tab while the "sleep" command is running. Move your mouse horizontally only, stay within the tab bar. Notice that while dragging, seq's output (and the shell prompt) is not printed, they're replaced by the Gtk+ theme's default background color. The display is not even updated when you finish dragging the tab and drop it to its desired location. The display is properly updated on a subsequent tab chance, focus out, mouse highlight etc.
vte's widget_class->draw [i.e. vte_terminal_draw()] is not being called when dragging the tab. No idea why. roxterm doesn't suffer from this bug.
It once happened to me with roxterm, too. (With g-t it happens all the time.) Gtk+ bug?
-> gtk+ Same happens in gtk+/tests/testnotebookdnd: patch it to continually update the entry texts in a timeout, then start a tab reodering drag; while the drag is in progress, the notebook page's content isn't being redrawn.
This appears to be by design: gtk_notebook_draw(): [...] if (priv->cur_page && priv->operation != DRAG_OPERATION_REORDER) gtk_container_propagate_draw (GTK_CONTAINER (notebook), priv->cur_page->child, cr); but I don't see any reason for this...
(In reply to comment #3) > -> gtk+ > > Same happens in gtk+/tests/testnotebookdnd: patch it to continually update the > entry texts in a timeout, then start a tab reodering drag; while the drag is in > progress, the notebook page's content isn't being redrawn. I've been trying this, and it works fine for me. > but I don't see any reason for this... If you look a few lines down, you'll see that we are drawing the current tab separately in the DRAG_OPERATION_REORDER case.
Created attachment 277516 [details] [review] this is how I've tried it (patch to testnotebookdnd.c) When the reorder drag starts (or perhaps as soon as the first invalidate of the tab contents afterwards?), the tab content doesn't drag at all. In case it might make any difference, I'm using gnome-shell 3.8 as window manager.
Matthias: I can also reproduce with ChPe's test patch, too. Make sure to stay in the notebook tab bar area with the mouse.
Created attachment 277559 [details] [review] my patch
Created attachment 277560 [details] what I see
Created attachment 277570 [details] what I see with chpe's patch It's not the tab label, it's the actual tabbed content (in the test app: the text input fields) that's not updated.
ah, I missed that detail, thanks
Thanks a lot! :) [https://git.gnome.org/browse/gtk+/commit/?id=4d1930c]