[Konsole-devel] [Bug 176902] Konsole: apps in tabbed shell truncated to 24 lines (LINES=24)

Martin von Gagern Martin.vGagern at gmx.net
Wed Apr 6 07:48:29 UTC 2011


https://bugs.kde.org/show_bug.cgi?id=176902





--- Comment #19 from Martin von Gagern <Martin vGagern gmx net>  2011-04-06 09:48:25 ---
Created an attachment (id=58619)
 --> (http://bugs.kde.org/attachment.cgi?id=58619)
Flag to emit imageSizeChanged once

(In reply to comment #12)
> So one solution would be to add a flag to the Emulation class, initially
> false and set to true when imageSizeChanged is emitted. The condition in
> setImageSize() would check the flag as well as comparing the current sizes
> to the new size.

Implemented this, patch attached. Works as expected. Thanks for pointing out
the relevant piece of code!

> That would mean checking the flag every time, when it's only needed on the
> first setImageSize call for a given object, so I'll look into a better fix.

Added a gdb breakpoint and found that there are two calls to
Emulation::setImageSize during creation of a new window. But boths parts go
through the resize codepath for a long while, so adding a simple "emit size
setting now" call to either one seemed too much of a burden. After all, resizes
are slow as hell already, that bit of added code will hardly make a difference.

An alternative would be to change the default screen sizes in the constructor.
One could either choose 24x80 as the default screen size, as this is what most
apps seem to expect, or 1x1, as this is almost certainly different from any
screen size actually used. The first approach relies on defaults which need not
be fixed, and should therefore be avoided. Both approaches force a resize of
the screens created in the constructor, which is some overhead I'd like to
avoid.

-- 
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the konsole-devel mailing list