LibreOffice Module vcl (master) 1
qt5/QtX11Support.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 */
9
10#pragma once
11
12#include <string_view>
13
14#include <xcb/xcb.h>
15
16class QtX11Support final
17{
18 static constexpr const char* m_sWindowGroupName = "WM_CLIENT_LEADER\0";
19 static xcb_atom_t m_nWindowGroupAtom;
20 static bool m_bDidAtomLookups;
21
22 static xcb_atom_t lookupAtom(xcb_connection_t*, const char* const sAtomName);
23 static void fetchAtoms();
24
25public:
26 static bool fixICCCMwindowGroup(xcb_window_t nWinId);
27 static void setApplicationID(xcb_window_t nWinId, std::u16string_view rWMClass);
28};
29
30/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
static void fetchAtoms()
static bool m_bDidAtomLookups
static constexpr const char * m_sWindowGroupName
static bool fixICCCMwindowGroup(xcb_window_t nWinId)
static xcb_atom_t m_nWindowGroupAtom
static void setApplicationID(xcb_window_t nWinId, std::u16string_view rWMClass)
static xcb_atom_t lookupAtom(xcb_connection_t *, const char *const sAtomName)