+void TerminalSidebarPage::terminalExited()
+{
+ emit hideTerminalSidebarPage();
+
+ KPluginFactory* factory = KPluginLoader("libkonsolepart").factory();
+ KParts::ReadOnlyPart* part = factory ? (factory->create<KParts::ReadOnlyPart>(this)) : 0;
+ if (part != 0) {
+ connect(part, SIGNAL(destroyed(QObject*)), this, SLOT(terminalExited()));
+ m_terminalWidget = part->widget();
+ m_layout->addWidget(m_terminalWidget);
+ m_terminal = qobject_cast<TerminalInterface *>(part);
+ m_terminal->showShellInDir(url().path());
+ }
+ if (m_terminal != 0) {
+ m_terminal->sendInput("cd " + KShell::quoteArg(url().path()) + '\n');
+ m_terminal->sendInput("clear\n");
+ m_terminalWidget->setFocus();
+ }
+}
+