GNOME Bugzilla – Bug 353699
Title bar lost when returning from full screen mode
Last modified: 2006-09-07 23:06:11 UTC
Please describe the problem: If the tab bar has been made visible when in full screen mode, the window borders and title bar of the Terminal window does not reappear when returning to normal mode. Steps to reproduce: 1. Press F11 to go to full screen mode 2. Open a new tab (Shift+Ctrl+T) 3. Press F11 to return to normal mode Actual results: You are left with a terminal window with no borders or title bar. Expected results: Return to normal sizable window Does this happen every time? Yes Other information:
I can reproduce this. This is metacity, as the window decorations are drawn there. Maybe related to bug #329152?
I can't duplicate; are you really sure this bug description is correct? For me, the window definitely still has borders. *However*, I do see the titlebar being covered up by the top panel, making it *look* like it doesn't have a titlebar. (But a simple Alt+F7 followed by the arrow keys or and Alt-left-click-and-drag will bring the titlebar back onscreen) This is a combination metacity/gnome-terminal bug as far as I can tell. After the window leaves fullscreen mode, gnome-terminal sends three ConfigureRequest events to move the window to the upper-left corner of the screen. So, after fixing my part, I'll probably reassign back. I'll attach a patch in a minute that fixes my part and ensures the titlebar stays onscreen.
Created attachment 71969 [details] [review] Simple fix to make sure windows returning from fullscreen mode are constrained to be "onscreen"
You're correct - I don't have the panel at the top but alt-click and drag does reveal that the title bar is still there, just off the top of the screen. I think it is therefore a duplicate of #329152.
Yup, you are right: the title bar was behind the panel. The terminal simply calls gtk_window_unfullscreen when you hit F11 in fullscreen mode. In particular, that movement to the upper-left corneris quite strange... How can I see the detail in those ConfigureRequests?
Martin: Actually, it's not a duplicate of 329152; although very similar, the constraints handling of maximized and fullscreen windows are different. In particular, this bug made me aware that the patch in comment 3 is needed for cases like this, whereas that patch won't be useful at all for 329152. Mariano: I'm pretty sure gtk+ is sending the configure request events on your behalf due to the fact that there are size-increment hints set for the window. You could either add debug spew to gtk+, or to metacity/src/window.c:meta_window_configure_request. I did the latter, although I realize that I printed the processed values (which could have had a bug of its own) rather than the values passed from gnome-terminal. I'll attach that patch in just a minute if you want to use it.
Created attachment 71971 [details] Reproduce this in the wild Here comes a little python script with which you can reproduce this. Run it, click the Fullscreen button, then click the other button with a silly name, then click again the Fullscreen button to toggle it back.
Nevermind the gnome-terminal bug claim; the first configure request occurs when the window is fullscreened, and the second two occur when a new tab is added. When the window is unfullscreened, there are no ConfigureRequest events; rather a modified form of bug 329152 kicks in (this time, instead of the minimum size hints being violated by the saved position, the size-increment/base-size hints are)
I committed the patch; the rest of the issues (that the window doesn't get put where one would expect it) is already filed as bug 329152 so I'm marking this one as fixed.