ylm / mintty

Automatically exported from code.google.com/p/mintty
GNU General Public License v3.0
0 stars 0 forks source link

Improved handling of resizes due to font changes #79

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
When increasing the font size, the window should be repositioned to fit
inside the screen if it would otherwise grow beyond the screen edge.

Original issue reported on code.google.com by andy.koppe on 4 Apr 2009 at 7:02

GoogleCodeExporter commented 9 years ago
The handling of automatic resizes due to font size changes shall obey the 
following
rules:
- The terminal's column and row numbers after the last manual resize (or the 
initial
size if there haven't been any) shall be remembered. Ditto for window position 
after
the last move.
- The window shall grow no bigger than the size of the current monitor. This 
shall be
achieved by reducing the row and column numbers as necessary.
- When increasing the font size, the window shall be repositioned if any window
contents would otherwise be moved off the current screen.
- When reducing the font size, the row and column numbers shall grow back 
towards the
last manually set size and the window shall be moved back towards its last 
position.

The effect of all this should be that matching numbers of Ctrl+ and Ctrl- 
keypresses
always return the window back to its original state unless the window is 
manually
moved or resized.

Original comment by andy.koppe on 26 Apr 2009 at 11:13

GoogleCodeExporter commented 9 years ago

Original comment by andy.koppe on 2 Jul 2009 at 7:42

GoogleCodeExporter commented 9 years ago
One of the features available in putty (and hence puttycyg) is the "Change font 
size
only when maximized".  It's a useful feature when you require a larger font to 
show
someone else standing next to you or projecting your desktop in a presentation. 
 Not
sure if this ties into this features or should be listed as a separate request.

Original comment by dh.darre...@gmail.com on 19 Oct 2009 at 7:46

GoogleCodeExporter commented 9 years ago
I've entered enhancement issue 204 for dh.darrenhall's fullscreen zoom request.

Original comment by andy.koppe on 25 Jul 2010 at 7:35

GoogleCodeExporter commented 9 years ago
A related behavior that would be nice to include in this enhancement:

Some other terminal emulator I've used (I forget which) had a nice feature 
where font size changes would resize the window "away" from the nearest monitor 
corner.  For example, if the window is positioned near bottom left corner of a 
monitor, increasing the font size will keep the bottom left corner of the 
window fixed, resizing the window up and to the right.

Original comment by fastcat@gmail.com on 5 Nov 2010 at 5:53

GoogleCodeExporter commented 9 years ago
@fastcat: That's exactly what this issue is about. Following your suggestion, I 
did have a little look at other terminals though.

Gnome Terminal repositions the window and reduces the terminal size to avoid 
growing beyond the screen size when increasing the font size, but it doesn't 
restore the position or size when going back towards the original font size as 
suggested here.

KDE's Konsole, on the other hand, simply doesn't change the window size when 
the font size is changed. Instead, it changes the terminal's size, i.e. the 
numbers of rows and columns. The terminals for the Xfce and Lxde desktops don't 
appear to have shortcuts for changing font size, but they also keep the window 
size constant when changing font size via their preferences.

Having played around with both approaches a little bit, the Konsole approach of 
keeping font resizes and window resizes separate actually makes more sense to 
me. It avoids the complications and unwelcome suprises of automatic window 
resizing and positioning, it's consistent with the behaviour when the window is 
maximized, and perhaps most importantly, it's also consistent with what other 
applications such as web browsers or editors do.

Programs such as less or vim are perfectly happy with Konsole's approach since 
they automatically adapt to the terminal size. On the command line, it would be 
better if automatic line rewrapping (issue 82) was supported, but at least 
cropped line content will reappear if the column number is increased again 
later (since issue 61 was addressed).

Therefore I've decided to go with Konsole's simpler approach. Implemented in 
r1073.

This means that the issue here no longer applies, so I'm closing it. Instead, 
I'll enter a new enhancement issue for providing an optional way to resize 
window and font together.

Original comment by andy.koppe on 6 Nov 2010 at 6:27

GoogleCodeExporter commented 9 years ago
Issue 233 is the aforementioned enhancement issue about being able to resize 
font and window together.

Original comment by andy.koppe on 6 Nov 2010 at 7:01