Summary: | Cycling trough konsole tabs with keyboard (shift arrow) causes terminal size to be printed on screen every time. | ||
---|---|---|---|
Product: | [Applications] konsole | Reporter: | Marko Eha <galen> |
Component: | general | Assignee: | Konsole Developer <konsole-devel> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | michal, news |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Debian testing | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: |
disallow 'resize' when switching tabs
When switching tabs only update font menu |
Description
Marko Eha
2004-08-15 23:14:35 UTC
*** Bug 87066 has been marked as a duplicate of this bug. *** Disable Settings->Configure Konsole->General->Show terminal size after resizing Perhaps the config text should read 'Show terminal size after resizing or changing tabs via shortcuts' Hmm, that's kinda long... Switching tabs shouldn't cause a resize. It's a bug if it does. That you get the window size indicator is a symptom of the problem, it's not the cause. On the surface, it appears that setFont is the cause of this in void Konsole::activateSession(TESession *s) konsole: Konsole::activateSession before setFont konsole: TEWidget::setVTfont() konsole: TEWidget::fontChange() konsole: TEWidget::propagateSize() konsole: TEWidget::updateImageSize() konsole: TESession::onContentSizeChange 531 804 konsole: TEmulation::onImageSizeChange() konsole: Konsole::activateSession after setFont konsole: Konsole::activateSession before setFont konsole: TEWidget::setVTfont() konsole: TEWidget::fontChange() konsole: TEWidget::propagateSize() konsole: TEWidget::updateImageSize() konsole: TESession::onContentSizeChange 531 804 konsole: TEmulation::onImageSizeChange() konsole: Konsole::activateSession after setFont void TEWidget::setImage is where the resizing/info window popups from. I'll look at this later. Created attachment 7182 [details]
disallow 'resize' when switching tabs
When switching tabs, skip:
selectBell->setCurrentItem(te->bellMode());
setFont(se->fontNo());
updateSchemaMenu();
Why do you think these calls *need* to be skipped? And why do you think these calls *can* be skipped? Seems to me that without e.g. the setFont(...) call, the menu does not indicate the currently active font correctly. Yepper, well the problem is when setFont is called it causes the resize image/window. See comment #5. So basically, we should update menus for schema/bell/font without actually changing/configuring any of these... This was the only approach that I could come up with; it seems like there should be a better way of doing this. Created attachment 7183 [details]
When switching tabs only update font menu
Having to compensate for menu separators is ridiculous... that needs fixed!!
*** Bug 89341 has been marked as a duplicate of this bug. *** What about this? --- TEWidget.cpp 1 Jun 2004 12:31:20 -0000 1.216 +++ TEWidget.cpp 13 Sep 2004 21:51:22 -0000 @@ -1011,7 +1011,7 @@ void TEWidget::updateImageSize() //NOTE: control flows from the back through the chest right into the eye. // `emu' will call back via `setImage'. - resizing = true; + resizing = (oldlin!=lines) || (oldcol!=columns); emit changedContentSizeSignal(contentHeight, contentWidth); // expose resizeEvent resizing = false; } *** Bug has been marked as fixed ***. |