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 336325 - superfluous resize when a tab is drag-n-dropped to a separate window
superfluous resize when a tab is drag-n-dropped to a separate window
Status: RESOLVED FIXED
Product: gnome-terminal
Classification: Core
Component: general
2.14.x
Other Linux
: Normal normal
: ---
Assigned To: GNOME Terminal Maintainers
GNOME Terminal Maintainers
Depends on:
Blocks:
 
 
Reported: 2006-03-28 11:16 UTC by Egmont Koblinger
Modified: 2006-04-18 16:59 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch (1.01 KB, patch)
2006-04-01 03:14 UTC, Behdad Esfahbod
committed Details | Review

Description Egmont Koblinger 2006-03-28 11:16:19 UTC
Create several tabs and drag-n-drop one of them to the desktop so that a new
window is created.

This new window gets two resize events, first to 222x133 and then to its
final 80x24 size. (Maybe this 222x133 isn't the same on all systems, but for
me it's always the same, and is much bigger than my fullscreen terminal size.)

How to test it:
Execute this command in the bash shell prompt in one of the tabs:
  trap 'stty size' winch
Check that resizing the window prints the new size there. Then drag-n-drop
this shell to a separate window. You'll see the two new sizes appearing there.

Another example:
Launch 'mc' in a tab and drag-n-drop this tab. The whole screen of mc gets
garbled. mc is one of the many applications that fails to properly handle
if it gets more resize events in a very short time.

Anyway, IMHO the new window shouldn't be 80x24, it should keep the terminal
size of the previous tab so that the application doesn't need to resize at all.
Comment 1 Behdad Esfahbod 2006-04-01 03:14:28 UTC
Created attachment 62506 [details] [review]
patch

It is caused by an old hack that resizes the terminal to 2000x2000 temporarily...

I removed the hack and the problem is fixed here.  The comment before the hack suggests that it may have been fixed with recent gtk+'s.  We can probably commit this and see if regressions show up, then seek Gtk+ expertise...

May I commit?
Comment 2 Guilherme de Siqueira Pastore 2006-04-01 16:16:12 UTC
Sure. Let's make use of this coming up early in the development cycle =)
Comment 3 Behdad Esfahbod 2006-04-01 20:04:13 UTC
2006-04-01  Behdad Esfahbod  <behdad@gnome.org>

        * src/terminal-window.c (terminal_window_set_size_force_grid):
        Remove the old hack that was causing superfluous resize when a tab is
        drag-n-dropped to a separate window.  We'll see if regressions happen.
        Closes bug #336325 (may open new ones ;).

Comment 4 Dennis Cranston 2006-04-14 20:43:17 UTC
I believe I am seeing a regression.  When I switch between tabs, the size of the terminal window increases.  If I switch between enough tabs, eventually the terminal window fills the entire screen.
Comment 5 Egmont Koblinger 2006-04-18 10:10:27 UTC
Yes, I see this regression too. Note that I also have the patch from
bug #324426 applied, and I don't know if these two patches conflict.
Comment 6 Behdad Esfahbod 2006-04-18 16:23:13 UTC
Switch between tabs?!
Can you elaborate?  This change shouldn't cause any change when switching tabs only.
Comment 7 Egmont Koblinger 2006-04-18 16:48:40 UTC
I have no straightforward way to reproduce it, but it occurs very often.
Launch gnome-terminal, open three tabs (Ctrl+Alt+T twice), make the window a
little bit larger, click on every tab, and if it isn't buggy yet then repeat
these: create one more tab, click on them, make the window slightly bigger,
click on the tabs again and so on...
Comment 8 Behdad Esfahbod 2006-04-18 16:59:08 UTC
Ok, reproduced here.  Not sure if it's a regression or have been there.  Needs someone to investigate.    Filed it as bug 338913, to leave this bug closed, since the issue reported in this bug is fixed.