No new methods have been added to the TerminalInterface class in kdelibs to avoid breaking
binary compatibility so the slot must be invoked via QMetaObject::invokeMethod() for now.
See tests/PartTest.cpp
CCMAIL:jr@jriddell.org
Squashed commit of the following:
commit 0759e22dc26b7c1c28e0d8a9b0d245d909629237
Author: Robert Knight <robertknight@gmail.com>
Date: Fri Apr 18 20:43:20 2008 +0100
Adapt test to kdelibs changes. Add a label to explain what the user should expect to see.
commit b67be2fd20178625f01f8f135751849082eddf04
Author: Robert Knight <robertknight@gmail.com>
Date: Fri Apr 18 00:47:32 2008 +0100
Export Pty, Session, KeyboardTranslator classes for use in tests.
commit 6dd28bf628fe1036c59f3383aba27ba98e23152c
Author: Robert Knight <robertknight@gmail.com>
Date: Fri Apr 18 00:46:27 2008 +0100
Build test
commit 0a9e1c9dc158f73e6bf9f7ef2fe7d4ea936a8066
Author: Robert Knight <robertknight@gmail.com>
Date: Fri Apr 18 00:46:10 2008 +0100
Remove temp file
commit 8e69bd56fef267ac0c31c989a4959453a8e3359e
Author: Robert Knight <robertknight@gmail.com>
Date: Fri Apr 18 00:45:28 2008 +0100
Add a test for using existing file descriptors with the Konsole part.
commit f1f5b8a7684e88db64769324496a5fa67dd4920b
Author: Robert Knight <robertknight@gmail.com>
Date: Tue Apr 15 18:36:14 2008 +0100
Add support in the KPart to use an existing terminal rather than opening a new one.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=798661
commit 99d61f9bdfe29347050162a5a675bb0c276bc1bf
Author: Robert Knight <robertknight@gmail.com>
Date: Sat Mar 22 20:45:45 2008 +0000
Allow a normal frame around the table view in ManageProfilesDialog. Works better with Oxygen style.
commit 7075de00d8cc88568e108e868e08d071d5aa7bcb
Author: Robert Knight <robertknight@gmail.com>
Date: Sat Mar 22 20:37:38 2008 +0000
Change base class of ProfileItemDelegate from QItemDelegate to QStyledItemDelegate for better rendering. Fix updates of favorite / non-favorite status in ManageProfilesDialog. QVariant equality comparisons are not properly supported for custom types so QAbstractItemModel::match() has to be replaced with manual iteration through the rows.
commit 3baa3307473e037efd500ade7df37d2fd62c60d9
Author: Robert Knight <robertknight@gmail.com>
Date: Sat Mar 22 20:09:27 2008 +0000
Remove unecessary deleteProfile() call. Explicitly add new profiles to the SessionManager. Mark the temporary profile in the EditProfileDialog as hidden.
commit 53d1e3515d3408c08ba4b019b5faceffae6b0f8a
Author: Robert Knight <robertknight@gmail.com>
Date: Sat Mar 22 20:02:28 2008 +0000
Do not track deletion of temporary un-named profiles.
commit 55c69e15a4247319b0cff73691f072fef39684c9
Author: Robert Knight <robertknight@gmail.com>
Date: Sat Mar 22 20:01:25 2008 +0000
Make SessionManager::addProfile() public. Call it automatically in SessionManager::setFavorite() if the profile is not already known to the manager. When a profile is deleted via SessionManager::deleteProfile() mark it as hidden so that it is not recreated on disk if later changed. Add debugging in ~Profile to track deletion of profiles.
commit 7a028bac5846cd3689e3351ab139c6f372ca173e
Author: Robert Knight <robertknight@gmail.com>
Date: Sat Mar 22 19:41:22 2008 +0000
Fix several signal/slot connections in ManageProfilesDialog after the SessionManager changes.
commit da7c7b4f939c17885cf0fbaa1fb93d2655021b83
Author: Robert Knight <robertknight@gmail.com>
Date: Sat Mar 22 19:36:57 2008 +0000
Use a helper class to pop elements from recursion guard stack when a call to loadProfile() returns rather than requiring a manual call to recursionGuard.pop()
commit 14a993d15722ec5270de708154408896fd7418b8
Author: Robert Knight <robertknight@gmail.com>
Date: Sat Mar 22 19:12:20 2008 +0000
Fix profiles not being loaded properly if their parent was a profile which had already been loaded. Profile paths were not being taken off the recursion guard stack at one exit from loadProfile().
commit f946fc0cbde26cd816e3f1d172a5e5327ff3295b
Author: Robert Knight <robertknight@gmail.com>
Date: Sat Mar 22 19:01:06 2008 +0000
Adapt Part to the SessionManager/Profile changes.
commit d3155ba0f6dc9ec0ca34a45b5787488c055dc4bf
Author: Robert Knight <robertknight@gmail.com>
Date: Sat Mar 22 18:55:05 2008 +0000
Update MainWindow API documentation to reflect string key -> ref counted pointer change for profiles.
commit 5d546054c031ae6ee6915f2cc6bcf61dd4e03520
Author: Robert Knight <robertknight@gmail.com>
Date: Sat Mar 22 18:53:16 2008 +0000
Update SessionManager API documentation to reflect string key -> ref counted pointer change for profiles.
commit 856fdf37a5bd81711ff0db1b307b8736ef4ae34e
Author: Robert Knight <robertknight@gmail.com>
Date: Thu Mar 20 23:43:53 2008 +0000
Fix assert. Fall back to current locale's codec if a null pointer is passed to Emulation::setCodec()
commit 127e894d076061b991934adf84256b651bf31724
Author: Robert Knight <robertknight@gmail.com>
Date: Thu Mar 20 22:45:11 2008 +0000
Replace string key for profiles with ref-counted profile pointer.
commit 53246e5bd4ffcec56ca0ff94730f9ef3946e3f4c
Author: Robert Knight <robertknight@gmail.com>
Date: Thu Mar 20 20:50:17 2008 +0000
First step towards removing string keys as a means to reference profiles. Change Profile base class from QObject to QSharedData and replace all usage of Profile* with KSharedPtr<Profile>
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=788936
The decision to support translucent painting is made at part
creation depending on whether the hosting application is using
an ARGB visual and a composition manager has claimed the re-
levant X selection (via KWindowSystem).
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=758145
1) KonsolePart now supports it
2) Can't see any case where a client app would
embed a konsolepart with tabs *explicitely* turned off
3) The context menu implicitly has an entry for tabbed
navigation...
Next up just have to hookup the shortcuts to create the
tabs.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=742234
needed now because friday is the last BC day. The rest of the modules will
follow as fast as my laptop allows.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=721704
factory with K_EXPORT_PLUGIN. Matthias said this shouldn't have bad
side-effects (as there's only 1 entry point in the part)
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=706212
* Initial draft of dialogs to manage sessions
- SessionTypeDialog lists available session types and allows the
user to trigger creation, editing or removal of a type.
- EditSessionDialog allows the user to edit an individual session
type.
* Remove access to the old KDE 3 preferences dialog
* Began a re-write of the Konsole part, the intention is to avoid
the duplication of code between the part and the main application
which occurred in KDE 3 and also to make more of the functionality
from the main application available to the part's clients.
* Implement the history size dialog
* Implement SSH bookmarks
* Implement Bookmark Tabs as Folders
* Allow the user to choose which sessions are shown in the 'File' menu
* Implement 'background mode'. When Konsole is started in this mode
(by running "konsole --background-mode") it creates a new session in the
background which can be displayed or hidden at any time by pressing F12.
Idea taken from Yakuake.
* Use tab bar rather than a tab widget for the view container by default,
removes the frame around the terminal display, this does not look correct
if you are using the ported-from-3.5 KDE "Plastik" style in KDE 4.
Qt's very-similar-looking Platique style produces the desired results.
* Fixed two spectacular memory leaks.
* Add option to split the view left/right ( in addition to top/bottom ) and
allow more than two views open at once. Dividing the view into a grid
( aka. "recursive splitting" ) is not yet supported.
* Add menu options to Close Active View and Close Others ( which closes
all views except the active one )
// Behind the scenes stuff
* Rewrote color scheme code
ColorSchema -> ColorScheme
ColorSchemaList -> replaced with global ColorSchemeManager
KDE 4 INI-format color schemes are used if available with fallback to the KDE 3
.schema files otherwise.
* Some more Qt 3 -> 4 porting:
Q3TextEdit -> QTextEdit
Q3IntDict<V> -> QHash<int,V>
Q3PtrList<T> -> QList<T*>
* Various adjustments to resource loading so that the various
*Manager classes can find their resources when being used in
an application other than Konsole ( eg. when being used in a part )
* Change access to singleton managers, the *Manager classes
now have an instance() method to access the global instance and
a setInstance() method which is called by the Application or KPart
constructor to create the manager initially.
* Remove all references to MainWindow from the ViewManager and move
the relevant code to the MainWindow class itself.
svn path=/branches/work/konsole-split-view/; revision=654402