summaryrefslogtreecommitdiff
path: root/src/gui
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/chatwindow.cpp16
-rw-r--r--src/gui/chatwindow.h5
2 files changed, 21 insertions, 0 deletions
diff --git a/src/gui/chatwindow.cpp b/src/gui/chatwindow.cpp
index 29ce3bace..c266374ef 100644
--- a/src/gui/chatwindow.cpp
+++ b/src/gui/chatwindow.cpp
@@ -396,6 +396,22 @@ void ChatWindow::nextTab()
mChatTabs->setSelectedTab(tab);
}
+void ChatWindow::closeTab()
+{
+ if (!mChatTabs)
+ return;
+
+ int idx = mChatTabs->getSelectedTabIndex();
+ Tab *tab = mChatTabs->getTabByIndex(idx);
+ if (!tab)
+ return;
+ WhisperTab *whisper = dynamic_cast<WhisperTab*>(tab);
+ if (!whisper)
+ return;
+
+ whisper->handleCommand("close", "");
+}
+
void ChatWindow::defaultTab()
{
if (mChatTabs)
diff --git a/src/gui/chatwindow.h b/src/gui/chatwindow.h
index 05e039c60..b6a37ef79 100644
--- a/src/gui/chatwindow.h
+++ b/src/gui/chatwindow.h
@@ -130,6 +130,11 @@ class ChatWindow : public Window,
void nextTab();
/**
+ * Close current chat tab
+ */
+ void closeTab();
+
+ /**
* Switch to the default tab
*/
void defaultTab();