[Konsole-devel] Review Request: A experimental hack to support escape sequence for resizing

Jekyll Wu adaptee at gmail.com
Tue Feb 21 14:27:40 UTC 2012


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/104038/
-----------------------------------------------------------

Review request for Konsole.


Description
-------

The first existing problem is when such escape sequence is received, Vt102Emulation does not emit related signal, and SessionController::sessionResizeRequest() is not triggered. That is not hard to fix.

However, the harder problem is when TerminalDisplay::setSize() is called, it only change the sizeHint of the terminal area. So nothing changes unless we tell the mainwindow to resize itself manually. This is the another thing this experimental patch does.

Well, this patch does not work correctly. The left problem is I have to send the same escape sequence twice to make the mainwindow actually resize. For example, echo -ne "\033[8;25;80t" does not cause any effect; I have to repeat that again to make the mainwindow really resize to the specifed size.

As you can see from the patch, I'm really a bit lost on how to really fix it correctly and elegantly. Hope the patch can give others some hint, especially the left problem mentioned in last paragraph.


This addresses bug 238073.
    http://bugs.kde.org/show_bug.cgi?id=238073


Diffs
-----

  src/Emulation.h 8390a25 
  src/MainWindow.h 23ae033 
  src/MainWindow.cpp 1e30232 
  src/Session.cpp 0912596 
  src/SessionController.h 7de6b20 
  src/SessionController.cpp 5284179 
  src/TerminalDisplay.h 7354991 
  src/Vt102Emulation.cpp 8251d1a 

Diff: http://git.reviewboard.kde.org/r/104038/diff/


Testing
-------


Thanks,

Jekyll Wu

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/konsole-devel/attachments/20120221/8d24946d/attachment.html>


More information about the konsole-devel mailing list