KWayland

filtered_display.h
1 /*
2  SPDX-FileCopyrightText: 2017 David Edmundson <[email protected]>
3 
4  SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
5 */
6 
7 #ifndef KWAYLAND_SERVER_FILTERED_DISPLAY_H
8 #define KWAYLAND_SERVER_FILTERED_DISPLAY_H
9 
10 #include "display.h"
11 #include "global.h"
12 
13 #include <KWayland/Server/kwaylandserver_export.h>
14 
15 namespace KWayland
16 {
17 namespace Server
18 {
19 /**
20  * Server Implementation that allows one to restrict which globals are available to which clients
21  *
22  * Users of this class must implement the virtual @method allowInterface method.
23  *
24  * @since 5.FIXME
25  */
26 class KWAYLANDSERVER_EXPORT FilteredDisplay : public Display
27 {
28  Q_OBJECT
29 public:
30  FilteredDisplay(QObject *parent);
31  ~FilteredDisplay() override;
32 
33  /**
34  * Return whether the @arg client can see the interface with the given @arg interfaceName
35  *
36  * When false will not see these globals for a given interface in the registry,
37  * and any manual attempts to bind will fail
38  *
39  * @return true if the client should be able to access the global with the following interfaceName
40  */
41  virtual bool allowInterface(ClientConnection *client, const QByteArray &interfaceName) = 0;
42 
43 private:
44  class Private;
46 };
47 
48 }
49 }
50 
51 #endif
Class holding the Wayland server display loop.
Definition: display.h:86
Convenient Class which represents a wl_client.
Server Implementation that allows one to restrict which globals are available to which clients.
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Tue Feb 7 2023 03:56:21 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.