diff --git a/src/vconfigmanager.cpp b/src/vconfigmanager.cpp
index 239939b3..8f2d1c8d 100644
--- a/src/vconfigmanager.cpp
+++ b/src/vconfigmanager.cpp
@@ -1696,6 +1696,7 @@ void VConfigManager::checkVersion()
const QString key("version");
QString ver = getConfigFromSettings("global", key).toString();
m_versionChanged = ver != c_version;
+ m_freshInstall = ver.isEmpty();
if (m_versionChanged) {
setConfigToSettings("global", key, c_version);
}
diff --git a/src/vconfigmanager.h b/src/vconfigmanager.h
index 074d340d..0b08e5d3 100644
--- a/src/vconfigmanager.h
+++ b/src/vconfigmanager.h
@@ -603,6 +603,7 @@ public:
bool getParsePasteLocalImage() const;
bool versionChanged() const;
+ bool isFreshInstall() const;
const QColor &getBaseBackground() const;
void setBaseBackground(const QColor &p_bg);
@@ -1110,6 +1111,9 @@ private:
// Whether the VNote instance has different version of vnote.ini.
bool m_versionChanged;
+ // Whether VNote is first installed on this machine.
+ bool m_freshInstall;
+
// Base background of MainWindow.
QColor m_baseBackground;
@@ -2825,6 +2829,11 @@ inline bool VConfigManager::versionChanged() const
return m_versionChanged;
}
+inline bool VConfigManager::isFreshInstall() const
+{
+ return m_freshInstall;
+}
+
inline const QColor &VConfigManager::getBaseBackground() const
{
return m_baseBackground;
diff --git a/src/vmainwindow.cpp b/src/vmainwindow.cpp
index 65b4a94c..8990d057 100644
--- a/src/vmainwindow.cpp
+++ b/src/vmainwindow.cpp
@@ -3478,6 +3478,24 @@ void VMainWindow::kickOffStartUpTimer(const QStringList &p_files)
m_syncNoteListToCurrentTab = true;
+#if defined(Q_OS_WIN)
+ if (g_config->isFreshInstall()) {
+ VUtils::showMessage(QMessageBox::Information,
+ tr("Notices for Windows Users"),
+ tr("OpenGL requried by VNote may not work well on Windows by default."
+ "You may update your display card driver or set another openGL option in VNote's Settings dialog."
+ "Check GitHub issue for details."),
+ tr("Strange behaviors includes:
"
+ "* Interface freezes and does not response;
"
+ "* Widgets are out of order after maximizing and restoring the main window;
"
+ "* No cursor in edit mode;
"
+ "* Menus are not clickable in full screen mode."),
+ QMessageBox::Ok,
+ QMessageBox::Ok,
+ this);
+ }
+#endif
+
g_config->updateLastStartDateTime();
});
}