diff options
Diffstat (limited to 'src/panels')
| -rw-r--r-- | src/panels/terminal/terminalpanel.cpp | 8 | ||||
| -rw-r--r-- | src/panels/terminal/terminalpanel.h | 1 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/panels/terminal/terminalpanel.cpp b/src/panels/terminal/terminalpanel.cpp index 8977111f8..b45be621a 100644 --- a/src/panels/terminal/terminalpanel.cpp +++ b/src/panels/terminal/terminalpanel.cpp @@ -54,6 +54,14 @@ void TerminalPanel::terminalExited() m_terminal = 0; } +void TerminalPanel::visibilityChanged(bool visible) +{ + if (!visible && m_terminal && (m_terminal->foregroundProcessId() == -1)) { + // Make sure this terminal does not prevent unmounting any removable drives + changeDir(KUrl::fromPath("/")); + } +} + bool TerminalPanel::urlChanged() { if (!url().isValid()) { diff --git a/src/panels/terminal/terminalpanel.h b/src/panels/terminal/terminalpanel.h index e4d76d54c..288cb05d3 100644 --- a/src/panels/terminal/terminalpanel.h +++ b/src/panels/terminal/terminalpanel.h @@ -44,6 +44,7 @@ public: public slots: void terminalExited(); + void visibilityChanged(bool visible); signals: void hideTerminalPanel(); |
