try to fix crash on macOS

This commit is contained in:
Le Tan 2019-12-17 07:43:49 +08:00
parent b46afb551c
commit 1f154c08c5
3 changed files with 7 additions and 5 deletions

View File

@ -265,6 +265,7 @@ int main(int argc, char *argv[])
g_palette = &palette;
VMainWindow w(&guard);
app.setWindow(&w);
QString style = palette.fetchQtStyleSheet();
if (!style.isEmpty()) {
app.setStyleSheet(style);
@ -276,8 +277,8 @@ int main(int argc, char *argv[])
w.kickOffStartUpTimer(filePaths);
app.setWindow(&w);
int ret = app.exec();
app.setWindow(nullptr);
if (ret == RESTART_EXIT_CODE) {
// Ask to restart VNote.
guard.exit();

View File

@ -3,14 +3,15 @@
VApplication::VApplication(int &argc, char **argv)
: QApplication(argc, argv)
{
connect(this, &QApplication::applicationStateChanged, this, &VApplication::onApplicationStateChanged);
connect(this, &QApplication::applicationStateChanged,
this, &VApplication::onApplicationStateChanged);
}
void VApplication::onApplicationStateChanged(Qt::ApplicationState state)
{
Q_UNUSED(state);
#if defined(Q_OS_MACOS) || defined(Q_OS_MAC)
if(state == Qt::ApplicationActive) {
if(state == Qt::ApplicationActive && this->window) {
this->window->show();
// Need to call raise() in macOS.
this->window->raise();

View File

@ -21,7 +21,7 @@ public slots:
void onApplicationStateChanged(Qt::ApplicationState state);
private:
VMainWindow *window;
VMainWindow *window = nullptr;
};
#endif // VAPPLICATION_H
#endif // VAPPLICATION_H