import com.trolltech.qt.core.QSettings;\r
import com.trolltech.qt.core.QSize;\r
import com.trolltech.qt.gui.QPalette;\r
+import com.trolltech.qt.gui.QSystemTrayIcon;\r
\r
import cx.fbn.nevernote.config.FileManager;\r
import cx.fbn.nevernote.config.InitializationException;\r
try {\r
String max = (String) settings.value("showTrayIcon", "false");\r
settings.endGroup();\r
- if (!max.equalsIgnoreCase("true"))\r
+ if (!max.equalsIgnoreCase("true") || !QSystemTrayIcon.isSystemTrayAvailable())\r
return false;\r
else\r
return true; \r
try {\r
String text = (String)settings.value("minimizeOnClose", "false");\r
settings.endGroup();\r
- if (text.equalsIgnoreCase("true"))\r
+ if (text.equalsIgnoreCase("true") && QSystemTrayIcon.isSystemTrayAvailable())\r
return true;\r
else\r
return false;\r
boolean encryptOnShutdown; // should I encrypt when I close?
boolean decryptOnShutdown; // should I decrypt on shutdown;
String encryptCipher; // What cipher should I use?
- Signal0 minimizeToTray;
+ //Signal0 minimizeToTray;
boolean windowMaximized = false; // Keep track of the window state for restores
List<String> pdfReadyQueue; // Queue of PDFs that are ready to be rendered.
List<QPixmap> syncIcons; // Array of icons used in sync animation
tagTree.showAllTags(true);
QIcon appIcon = new QIcon(iconPath+"nevernote.png");
- setWindowIcon(appIcon);
- trayIcon.setIcon(appIcon);
- if (Global.showTrayIcon())
- trayIcon.show();
- else
- trayIcon.hide();
+ if (QSystemTrayIcon.isSystemTrayAvailable()) {
+ setWindowIcon(appIcon);
+ trayIcon.setIcon(appIcon);
+ if (Global.showTrayIcon())
+ trayIcon.show();
+ else
+ trayIcon.hide();
+ }
scrollToGuid(currentNoteGuid);
if (Global.automaticLogin()) {
startupConfig.setHomeDirPath(arg.substring(arg.indexOf('=') + 1));
if (lower.startsWith("--disable-viewing"))
startupConfig.setDisableViewing(true);
- if (lower.startsWith("--sync-only"))
+ if (lower.startsWith("--sync-only=true"))
startupConfig.setSyncOnly(true);
}
Global.setup(startupConfig);
@Override
public void changeEvent(QEvent e) {
if (e.type() == QEvent.Type.WindowStateChange) {
- if (isMinimized() && Global.showTrayIcon()) {
- e.accept();
- QTimer.singleShot(10, this, "hide()");
- return;
+ if (QSystemTrayIcon.isSystemTrayAvailable()) {
+ if (isMinimized() && Global.showTrayIcon()) {
+ e.accept();
+ QTimer.singleShot(10, this, "hide()");
+ return;
+ }
+ if (isMaximized())
+ windowMaximized = true;
+ else
+ windowMaximized = false;
}
- if (isMaximized())
- windowMaximized = true;
- else
- windowMaximized = false;
}
}
import com.trolltech.qt.gui.QScrollArea;\r
import com.trolltech.qt.gui.QSpinBox;\r
import com.trolltech.qt.gui.QStyleFactory;\r
+import com.trolltech.qt.gui.QSystemTrayIcon;\r
import com.trolltech.qt.gui.QVBoxLayout;\r
import com.trolltech.qt.gui.QWidget;\r
\r
showSplashScreen = new QCheckBox(tr("Show Splash Screen on Startup"));\r
showTrayIcon = new QCheckBox(tr("Minimize To Tray"));\r
minimizeOnClose = new QCheckBox(tr("Minimize On Close"));\r
+ if (!QSystemTrayIcon.isSystemTrayAvailable()) { \r
+ showTrayIcon.setEnabled(false);\r
+ minimizeOnClose.setEnabled(false);\r
+ }\r
verifyDelete = new QCheckBox(tr("Verify Deletes"));\r
startMinimized = new QCheckBox(tr("Start Minimized"));\r
pdfPreview = new QCheckBox(tr("Display PDF Documents Inline"));\r
showTrayIcon.clicked.connect(this, "showTrayIconClicked(Boolean)");\r
showTrayIconClicked(showTrayIcon.isChecked());\r
\r
-\r
}\r
\r
private void showTrayIconClicked(Boolean checked) {\r
minimizeOnClose.setEnabled(false);\r
minimizeOnClose.setChecked(false);\r
} else\r
- minimizeOnClose.setEnabled(true);\r
+ if (QSystemTrayIcon.isSystemTrayAvailable()) \r
+ minimizeOnClose.setEnabled(true);\r
+ else\r
+ minimizeOnClose.setEnabled(false);\r
}\r
\r
\r