[tor-commits] [vidalia/alpha] Hide mainwindow with shortcut Ctrl+W if systray is available

chiiph at torproject.org chiiph at torproject.org
Tue Jul 3 23:01:16 UTC 2012


commit 82c3d4b3856d2897b93b4a34a2994ffe9863c3ca
Author: Tomás Touceda <chiiph at torproject.org>
Date:   Tue Jul 3 19:59:54 2012 -0300

    Hide mainwindow with shortcut Ctrl+W if systray is available
---
 changes/bug5495            |    2 ++
 src/vidalia/MainWindow.cpp |    7 +++++++
 src/vidalia/MainWindow.h   |    3 ++-
 3 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/changes/bug5495 b/changes/bug5495
new file mode 100644
index 0000000..5d50307
--- /dev/null
+++ b/changes/bug5495
@@ -0,0 +1,2 @@
+  New features:
+  o Hide window with Ctrl+W shortcut. Resolves ticket 5495.
diff --git a/src/vidalia/MainWindow.cpp b/src/vidalia/MainWindow.cpp
index 3ddfb35..2ea816e 100644
--- a/src/vidalia/MainWindow.cpp
+++ b/src/vidalia/MainWindow.cpp
@@ -217,6 +217,10 @@ MainWindow::createActions()
   _actionExit = new QAction(QIcon(IMG_EXIT), tr("Exit"), this);
   _actionDebugDialog = new QAction(tr("Debug output"), this);
   _actionPanic = new QAction(QIcon(IMG_EXIT), tr("Panic!"), this);
+  _actionHide = new QAction(tr("Hide"), this);
+  if (QSystemTrayIcon::isSystemTrayAvailable()) {
+    _actionHide->setShortcut(QKeySequence(tr("Ctrl+W")));
+  }
 }
 
 /** Creates the menu bar */
@@ -235,6 +239,7 @@ MainWindow::createMenuBar()
   torMenu->addAction(_actionReloadConfig);
 #endif
   torMenu->addSeparator();
+  torMenu->addAction(_actionHide);
   torMenu->addAction(_actionExit);
 
   QMenu *actionsMenu = menu->addMenu(tr("Actions"));
@@ -446,6 +451,8 @@ MainWindow::createConnections()
 
   connect(_actionPanic, SIGNAL(triggered()), this, SLOT(panic()));
 
+  connect(_actionHide, SIGNAL(triggered()), this, SLOT(hide()));
+
   /* Catch signals when the application is running or shutting down */
   connect(vApp, SIGNAL(running()), this, SLOT(running()));
   connect(vApp, SIGNAL(aboutToQuit()), this, SLOT(aboutToQuit()));
diff --git a/src/vidalia/MainWindow.h b/src/vidalia/MainWindow.h
index 50a84c0..4bb3ef8 100644
--- a/src/vidalia/MainWindow.h
+++ b/src/vidalia/MainWindow.h
@@ -56,7 +56,7 @@ public:
 
 public slots:
   /** Shows or hides this window. **/
-  virtual void setVisible(bool visible);
+  virtual void setVisible(bool visible = false);
   /** Display a message in the application system tray icon */
   void trayMessage(const QString &title, const QString &msg,
                    QSystemTrayIcon::MessageIcon icon = QSystemTrayIcon::Information,
@@ -307,6 +307,7 @@ private:
   QAction *_actionExit;
   QAction *_actionDebugDialog;
   QAction *_actionPanic;
+  QAction *_actionHide;
 
   QMenu _reattachMenu; /**< Menu used to handle tab re-attaching */
   QAction *_dummy; /**< Dummy action to display when there are no more tabs */



More information about the tor-commits mailing list