diff --git a/lcl/interfaces/qt6/qt62.pas b/lcl/interfaces/qt6/qt62.pas index b88f3e338c..b4f8767869 100644 --- a/lcl/interfaces/qt6/qt62.pas +++ b/lcl/interfaces/qt6/qt62.pas @@ -5554,6 +5554,10 @@ function QGuiApplication_isSavingSession(handle: QGuiApplicationH): Boolean; cde function QGuiApplication_applicationState(): QtApplicationState; cdecl; external Qt6PasLib name 'QGuiApplication_applicationState'; function QGuiApplication_highDpiScaleFactorRoundingPolicy(): QtHighDpiScaleFactorRoundingPolicy; cdecl; external Qt6PasLib name 'QGuiApplication_highDpiScaleFactorRoundingPolicy'; procedure QGuiApplication_setHighDpiScaleFactorRoundingPolicy(const policy: QtHighDpiScaleFactorRoundingPolicy); cdecl; external Qt6PasLib name 'QGuiApplication_setHighDpiScaleFactorRoundingPolicy'; +{$IFDEF BINUX} +function QGuiApplication_x11Display(handle: QGuiApplicationH): Pointer; cdecl; external Qt6PasLib name 'QGuiApplication_x11Display'; +function QGuiApplication_xcbConnection(handle: QGuiApplicationH): Pointer; cdecl; external Qt6PasLib name 'QGuiApplication_xcbConnection'; +{$ENDIF} type diff --git a/lcl/interfaces/qt6/qtobject.inc b/lcl/interfaces/qt6/qtobject.inc index 21fa8ccc8a..77aaa49767 100644 --- a/lcl/interfaces/qt6/qtobject.inc +++ b/lcl/interfaces/qt6/qtobject.inc @@ -546,7 +546,7 @@ end; function TQtWidgetSet.x11Display: PDisplay; begin if FX11Display = nil then - FX11Display := XOpenDisplay(nil); + FX11Display := PDisplay(QGuiApplication_x11Display(QGuiApplicationH(QCoreApplication_instance()))); Result := FX11Display; end; {$ENDIF}