[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[vidalia-svn] r2354: Remove our tray icon implementation for X11 and Win32. We ha (in vidalia/trunk: . src/vidalia src/vidalia/tray)
Author: edmanm
Date: 2008-02-23 23:02:19 -0500 (Sat, 23 Feb 2008)
New Revision: 2354
Removed:
vidalia/trunk/src/vidalia/tray/trayicon_win.cpp
vidalia/trunk/src/vidalia/tray/trayicon_win.h
vidalia/trunk/src/vidalia/tray/trayicon_x11.cpp
vidalia/trunk/src/vidalia/tray/trayicon_x11.h
Modified:
vidalia/trunk/
vidalia/trunk/CMakeLists.txt
vidalia/trunk/config.h.in
vidalia/trunk/src/vidalia/CMakeLists.txt
vidalia/trunk/src/vidalia/mainwindow.cpp
vidalia/trunk/src/vidalia/tray/trayicon.cpp
vidalia/trunk/src/vidalia/tray/trayicon.h
Log:
r129@lysithea: edmanm | 2008-02-23 23:02:10 -0500
Remove our tray icon implementation for X11 and Win32. We haven't used it
since we started requiring Qt >= 4.2.0 and part of the X11 implementation
is derived from another GPL'ed project. Removing it makes it easier to
add our OpenSSL license exception.
Property changes on: vidalia/trunk
___________________________________________________________________
svk:merge ticket from /local/vidalia/trunk [r129] on 90112fd6-a33b-4cea-8d39-48ff1d78625c
Modified: vidalia/trunk/CMakeLists.txt
===================================================================
--- vidalia/trunk/CMakeLists.txt 2008-02-19 00:14:53 UTC (rev 2353)
+++ vidalia/trunk/CMakeLists.txt 2008-02-24 04:02:19 UTC (rev 2354)
@@ -4,6 +4,7 @@
# Vidalia is distributed under the following license:
#
# Copyright (C) 2006-2007, Matt Edman, Justin Hipple
+# Copyright (C) 2008, Matt Edman
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
@@ -56,16 +57,8 @@
option(OSX_FAT_BINARY "Build Vidalia as a Universal binary." OFF)
endif(APPLE)
-## Check for QSystemTrayIcon
-set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${QT_INCLUDES})
-if (NOT APPLE)
- check_include_file_cxx("qsystemtrayicon.h" HAVE_QSYSTEMTRAYICON_H)
- if (HAVE_QSYSTEMTRAYICON_H)
- option(USE_QSYSTEMTRAYICON "Use Qt's tray icon implementation." ON)
- endif(HAVE_QSYSTEMTRAYICON_H)
-endif(NOT APPLE)
-
## Check for QSslSocket
+set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${QT_INCLUDES})
check_include_file_cxx("qsslsocket.h" HAVE_QSSLSOCKET_H)
if (HAVE_QSSLSOCKET_H)
check_symbol_exists(QT_NO_OPENSSL "QtGlobal" QT_NO_SSL_SUPPORT)
Modified: vidalia/trunk/config.h.in
===================================================================
--- vidalia/trunk/config.h.in 2008-02-19 00:14:53 UTC (rev 2353)
+++ vidalia/trunk/config.h.in 2008-02-24 04:02:19 UTC (rev 2354)
@@ -1,8 +1,4 @@
-#cmakedefine HAVE_QSYSTEMTRAYICON_H
-
-#cmakedefine USE_QSYSTEMTRAYICON
-
#cmakedefine HAVE_QSSLSOCKET_H
#cmakedefine USE_QSSLSOCKET
Modified: vidalia/trunk/src/vidalia/CMakeLists.txt
===================================================================
--- vidalia/trunk/src/vidalia/CMakeLists.txt 2008-02-19 00:14:53 UTC (rev 2353)
+++ vidalia/trunk/src/vidalia/CMakeLists.txt 2008-02-24 04:02:19 UTC (rev 2354)
@@ -152,25 +152,14 @@
## Choose the correct tray icon implementation for the current platform
set(vidalia_SRCS ${vidalia_SRCS} tray/trayicon.cpp)
qt4_wrap_cpp(vidalia_SRCS tray/trayicon.h)
-if(USE_QSYSTEMTRAYICON AND NOT APPLE)
+if(APPLE)
+ set(vidalia_SRCS ${vidalia_SRCS} tray/trayicon_mac.cpp)
+ qt4_wrap_cpp(vidalia_SRCS tray/trayicon_mac.h)
+else(APPLE)
## Use Qt's QSystemTrayIcon implementation
set(vidalia_SRCS ${vidalia_SRCS} tray/trayicon_qt.cpp)
qt4_wrap_cpp(vidalia_SRCS tray/trayicon_qt.h)
-else(USE_QSYSTEMTRAYICON AND NOT APPLE)
- ## Use our custom tray icon implementation
- if(WIN32)
- set(vidalia_SRCS ${vidalia_SRCS} tray/trayicon_win.cpp)
- qt4_wrap_cpp(vidalia_SRCS tray/trayicon_win.h)
- else(WIN32)
- if(APPLE)
- set(vidalia_SRCS ${vidalia_SRCS} tray/trayicon_mac.cpp)
- qt4_wrap_cpp(vidalia_SRCS tray/trayicon_mac.h)
- else(APPLE)
- set(vidalia_SRCS ${vidalia_SRCS} tray/trayicon_x11.cpp)
- qt4_wrap_cpp(vidalia_SRCS tray/trayicon_x11.h)
- endif(APPLE)
- endif(WIN32)
-endif(USE_QSYSTEMTRAYICON AND NOT APPLE)
+endif(APPLE)
## Main Vidalia sources
set(vidalia_SRCS ${vidalia_SRCS}
Modified: vidalia/trunk/src/vidalia/mainwindow.cpp
===================================================================
--- vidalia/trunk/src/vidalia/mainwindow.cpp 2008-02-19 00:14:53 UTC (rev 2353)
+++ vidalia/trunk/src/vidalia/mainwindow.cpp 2008-02-24 04:02:19 UTC (rev 2354)
@@ -67,20 +67,11 @@
/* Decide which of our four sets of tray icons to use. */
#if defined(Q_WS_WIN)
-#if defined(USE_QSYSTEMTRAYICON)
/* QSystemTrayIcon on Windows wants 16x16 .png files */
#define IMG_TOR_STOPPED ":/images/16x16/tor-off.png"
#define IMG_TOR_RUNNING ":/images/16x16/tor-on.png"
#define IMG_TOR_STARTING ":/images/16x16/tor-starting.png"
#define IMG_TOR_STOPPING ":/images/16x16/tor-stopping.png"
-#else
-/* Use the .ico files */
-#include "res/vidalia_win.rc.h"
-#define IMG_TOR_STOPPED QString::number(IDI_TOR_OFF)
-#define IMG_TOR_RUNNING QString::number(IDI_TOR_ON)
-#define IMG_TOR_STARTING QString::number(IDI_TOR_STARTING)
-#define IMG_TOR_STOPPING QString::number(IDI_TOR_STOPPING)
-#endif
#elif defined(Q_WS_MAC)
/* On Mac, we always go straight to Carbon to load our dock images
* from .icns files */
Modified: vidalia/trunk/src/vidalia/tray/trayicon.cpp
===================================================================
--- vidalia/trunk/src/vidalia/tray/trayicon.cpp 2008-02-19 00:14:53 UTC (rev 2353)
+++ vidalia/trunk/src/vidalia/tray/trayicon.cpp 2008-02-24 04:02:19 UTC (rev 2354)
@@ -39,7 +39,6 @@
TrayIcon::TrayIcon(QWidget *parent)
: TrayIconImpl(parent)
{
- _contextMenu = 0;
}
/** Catches and handles mouse-related events. */
@@ -47,14 +46,6 @@
TrayIcon::event(QEvent *event)
{
switch (event->type()) {
- case QEvent::MouseButtonPress:
- mouseButtonPress((QMouseEvent *)event);
- break;
-
- case QEvent::MouseButtonRelease:
- mouseButtonRelease((QMouseEvent *)event);
- break;
-
case QEvent::MouseButtonDblClick:
mouseButtonDblClick((QMouseEvent *)event);
break;
@@ -66,38 +57,6 @@
return true;
}
-/** Responds to a single mouse button press. On X11, we display the menu when
- * a mouse button is pressed. */
-void
-TrayIcon::mouseButtonPress(QMouseEvent *event)
-{
-#if defined(Q_WS_X11) && !defined(USE_QSYSTEMTRAYICON)
- if (_contextMenu) {
- _contextMenu->popup(event->globalPos());
- }
-#else
- Q_UNUSED(event);
-#endif
-}
-
-/** Responds to a single mouse button release. On Windows, we display the menu
- * when a mouse button is released. */
-void
-TrayIcon::mouseButtonRelease(QMouseEvent *event)
-{
-#if defined(Q_WS_WIN)
- if (_contextMenu) {
- /* This little activateWindow() dance is necessary to make menu closing
- * work properly on Windows. */
- _contextMenu->activateWindow();
- _contextMenu->popup(event->globalPos());
- _contextMenu->activateWindow();
- }
-#else
- Q_UNUSED(event);
-#endif
-}
-
/** Responds to a mouse button double-click. On all platforms, we just emit a
* signal and let the owner of the tray icon decide if they want to do
* anything. */
@@ -152,10 +111,8 @@
{
#if defined(Q_WS_MAC)
qt_mac_set_dock_menu(menu);
-#elif defined(USE_QSYSTEMTRAYICON)
- TrayIconImpl::setContextMenu(menu);
#else
- _contextMenu = menu;
+ TrayIconImpl::setContextMenu(menu);
#endif
}
@@ -164,7 +121,11 @@
TrayIcon::showBalloonMessage(const QString &title, const QString &message,
BalloonMessageIcon balloonIcon)
{
-#if defined(USE_QSYSTEMTRAYICON)
+#if defined(Q_WS_MAC)
+ Q_UNUSED(title)
+ Q_UNUSED(message)
+ Q_UNUSED(balloonIcon)
+#else
QSystemTrayIcon::MessageIcon icon;
switch (balloonIcon) {
case NoIcon: icon = QSystemTrayIcon::NoIcon; break;
@@ -173,10 +134,6 @@
default: icon = QSystemTrayIcon::Information; break;
}
TrayIconImpl::showMessage(title, message, icon);
-#else
- Q_UNUSED(title)
- Q_UNUSED(message)
- Q_UNUSED(balloonIcon)
#endif
}
@@ -188,13 +145,9 @@
#if defined(Q_WS_WIN) || defined(Q_WS_MAC)
/* We always have a tray on Win32 or a dock on OS X */
return true;
-#elif defined(USE_QSYSTEMTRAYICON)
+#else
/* Ask Qt if there is a tray available */
return QSystemTrayIcon::isSystemTrayAvailable();
-#else
- /* XXX:This is too optimistic, but we need to make our own tray icon
- * implementation smart enough to detect a system tray on X11. */
- return true;
#endif
}
@@ -203,15 +156,13 @@
bool
TrayIcon::supportsBalloonMessages()
{
-#if defined(USE_QSYSTEMTRAYICON)
#if defined(Q_WS_WIN)
return (QSystemTrayIcon::supportsMessages()
&& QSysInfo::WindowsVersion > QSysInfo::WV_2000);
+#elif defined(Q_WS_MAC)
+ return false;
#else
return QSystemTrayIcon::supportsMessages();
#endif
-#else
- return false;
-#endif
}
Modified: vidalia/trunk/src/vidalia/tray/trayicon.h
===================================================================
--- vidalia/trunk/src/vidalia/tray/trayicon.h 2008-02-19 00:14:53 UTC (rev 2353)
+++ vidalia/trunk/src/vidalia/tray/trayicon.h 2008-02-24 04:02:19 UTC (rev 2354)
@@ -35,14 +35,10 @@
#include "config.h"
/* Include the correct tray icon implementation */
-#if defined(USE_QSYSTEMTRAYICON)
-#include "trayicon_qt.h"
-#elif defined(Q_WS_WIN)
-#include "trayicon_win.h"
-#elif defined(Q_WS_X11)
-#include "trayicon_x11.h"
-#else
+#if defined(Q_WS_MAC)
#include "trayicon_mac.h"
+#else
+#include "trayicon_qt.h"
#endif
@@ -92,15 +88,8 @@
protected:
/** Override's QObject' event() method to catch mouse-related events. */
bool event(QEvent *);
- /** Respond to a mouse button being pressed. */
- void mouseButtonPress(QMouseEvent *event);
- /** Respond to a mouse button being released. */
- void mouseButtonRelease(QMouseEvent *event);
/** Respond to a mouse button being double-clicked. */
void mouseButtonDblClick(QMouseEvent *event);
-
-private:
- QMenu* _contextMenu; /**< Menu to display when the tray icon is clicked. */
};
#endif
Deleted: vidalia/trunk/src/vidalia/tray/trayicon_win.cpp
Deleted: vidalia/trunk/src/vidalia/tray/trayicon_win.h
Deleted: vidalia/trunk/src/vidalia/tray/trayicon_x11.cpp
Deleted: vidalia/trunk/src/vidalia/tray/trayicon_x11.h