diff options
| author | Peter Penz <[email protected]> | 2010-10-07 14:09:30 +0000 |
|---|---|---|
| committer | Peter Penz <[email protected]> | 2010-10-07 14:09:30 +0000 |
| commit | 431da0482caa72f90a6a04785383eb1d133f678e (patch) | |
| tree | f5f670aefb220aa5f735de6b3cf2c9b859f0b7aa /src/panels/terminal | |
| parent | 06b0569613e918e5f73d762a54df041a38385195 (diff) | |
Internal cleanup for panels: Let the panel-implementations decide whether they accept an URL or not.
svn path=/trunk/KDE/kdebase/apps/; revision=1183480
Diffstat (limited to 'src/panels/terminal')
| -rw-r--r-- | src/panels/terminal/terminalpanel.cpp | 22 | ||||
| -rw-r--r-- | src/panels/terminal/terminalpanel.h | 5 |
2 files changed, 14 insertions, 13 deletions
diff --git a/src/panels/terminal/terminalpanel.cpp b/src/panels/terminal/terminalpanel.cpp index d6b370329..12b319f3c 100644 --- a/src/panels/terminal/terminalpanel.cpp +++ b/src/panels/terminal/terminalpanel.cpp @@ -52,26 +52,26 @@ QSize TerminalPanel::sizeHint() const return size; } -void TerminalPanel::setUrl(const KUrl& url) +void TerminalPanel::terminalExited() { - if (!url.isValid() || (url == Panel::url())) { - return; - } + emit hideTerminalPanel(); + m_terminal = 0; +} - Panel::setUrl(url); +bool TerminalPanel::urlChanged() +{ + if (!url().isValid()) { + return false; + } const bool sendInput = (m_terminal != 0) && (m_terminal->foregroundProcessId() == -1) && isVisible(); if (sendInput) { - changeDir(url); + changeDir(url()); } -} -void TerminalPanel::terminalExited() -{ - emit hideTerminalPanel(); - m_terminal = 0; + return true; } void TerminalPanel::showEvent(QShowEvent* event) diff --git a/src/panels/terminal/terminalpanel.h b/src/panels/terminal/terminalpanel.h index 91a75a989..b9508279e 100644 --- a/src/panels/terminal/terminalpanel.h +++ b/src/panels/terminal/terminalpanel.h @@ -46,14 +46,15 @@ public: virtual QSize sizeHint() const; public slots: - /** @see Panel::setUrl(). */ - virtual void setUrl(const KUrl& url); void terminalExited(); signals: void hideTerminalPanel(); protected: + /** @see Panel::urlChanged() */ + virtual bool urlChanged(); + /** @see QWidget::showEvent() */ virtual void showEvent(QShowEvent* event); |
