diff --git a/lcl/interfaces/qt5/cbindings/src/qguiapplication_c.cpp b/lcl/interfaces/qt5/cbindings/src/qguiapplication_c.cpp index fdb9daf069..423fc42dac 100644 --- a/lcl/interfaces/qt5/cbindings/src/qguiapplication_c.cpp +++ b/lcl/interfaces/qt5/cbindings/src/qguiapplication_c.cpp @@ -230,3 +230,14 @@ bool QGuiApplication_isSavingSession(QGuiApplicationH handle) return (bool) ((QGuiApplication *)handle)->isSavingSession(); } +bool QGuiApplication_isFallbackSessionManagementEnabled() +{ + return (bool) QGuiApplication::isFallbackSessionManagementEnabled(); +} + +void QGuiApplication_setFallbackSessionManagementEnabled(bool enabled) +{ + QGuiApplication::setFallbackSessionManagementEnabled(enabled); +} + + diff --git a/lcl/interfaces/qt5/cbindings/src/qguiapplication_c.h b/lcl/interfaces/qt5/cbindings/src/qguiapplication_c.h index 6ed21b5391..45bd9662cf 100644 --- a/lcl/interfaces/qt5/cbindings/src/qguiapplication_c.h +++ b/lcl/interfaces/qt5/cbindings/src/qguiapplication_c.h @@ -52,6 +52,8 @@ C_EXPORT void QGuiApplication_setQuitOnLastWindowClosed(bool quit); C_EXPORT bool QGuiApplication_quitOnLastWindowClosed(); C_EXPORT int QGuiApplication_exec(); C_EXPORT bool QGuiApplication_notify(QGuiApplicationH handle, QObjectH AnonParam1, QEventH AnonParam2); +C_EXPORT bool QGuiApplication_isFallbackSessionManagementEnabled(); +C_EXPORT void QGuiApplication_setFallbackSessionManagementEnabled(bool enabled); C_EXPORT bool QGuiApplication_isSessionRestored(QGuiApplicationH handle); C_EXPORT void QGuiApplication_sessionId(QGuiApplicationH handle, PWideString retval); C_EXPORT void QGuiApplication_sessionKey(QGuiApplicationH handle, PWideString retval); diff --git a/lcl/interfaces/qt5/qt56.pas b/lcl/interfaces/qt5/qt56.pas index 20c2fac9d5..5df7b140e5 100644 --- a/lcl/interfaces/qt5/qt56.pas +++ b/lcl/interfaces/qt5/qt56.pas @@ -5540,6 +5540,8 @@ function QGuiApplication_isSessionRestored(handle: QGuiApplicationH): Boolean; c procedure QGuiApplication_sessionId(handle: QGuiApplicationH; retval: PWideString); cdecl; external Qt5PasLib name 'QGuiApplication_sessionId'; procedure QGuiApplication_sessionKey(handle: QGuiApplicationH; retval: PWideString); cdecl; external Qt5PasLib name 'QGuiApplication_sessionKey'; function QGuiApplication_isSavingSession(handle: QGuiApplicationH): Boolean; cdecl; external Qt5PasLib name 'QGuiApplication_isSavingSession'; +function QGuiApplication_isFallbackSessionManagementEnabled(): Boolean; cdecl; external Qt5PasLib name 'QGuiApplication_isFallbackSessionManagementEnabled'; +procedure QGuiApplication_setFallbackSessionManagementEnabled(AEnabled: boolean); cdecl; external Qt5PasLib name 'QGuiApplication_setFallbackSessionManagementEnabled'; type diff --git a/lcl/interfaces/qt5/qtobject.inc b/lcl/interfaces/qt5/qtobject.inc index d7771ac8ac..b1336979a5 100644 --- a/lcl/interfaces/qt5/qtobject.inc +++ b/lcl/interfaces/qt5/qtobject.inc @@ -39,6 +39,7 @@ begin App := QApplication_Create(@argc, argv); end; QCoreApplication_setAttribute(QtAA_DontCreateNativeWidgetSiblings, True); + QGuiApplication_setFallbackSessionManagementEnabled(False); {$IFDEF QtUseNativeEventLoop} FMainTimerID := -1; {$ENDIF}