File indexing completed on 2024-04-28 05:27:45
0001 /* 0002 SPDX-FileCopyrightText: 2023 Fushan Wen <qydwhotmail@gmail.com> 0003 0004 SPDX-License-Identifier: LGPL-2.1-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include <X11/Xlib.h> 0010 0011 #include <QGuiApplication> 0012 #include <QString> 0013 0014 using namespace Qt::StringLiterals; 0015 0016 namespace X11Info 0017 { 0018 [[nodiscard]] inline bool isPlatformX11() 0019 { 0020 return QGuiApplication::platformName() == "xcb"_L1; 0021 } 0022 0023 [[nodiscard]] inline auto display() 0024 { 0025 return qGuiApp->nativeInterface<QNativeInterface::QX11Application>()->display(); 0026 } 0027 0028 [[nodiscard]] inline auto connection() 0029 { 0030 return qGuiApp->nativeInterface<QNativeInterface::QX11Application>()->connection(); 0031 } 0032 0033 [[nodiscard]] inline Window appRootWindow() 0034 { 0035 return DefaultRootWindow(display()); 0036 } 0037 }