My Project
Loading...
Searching...
No Matches
SurfaceManagerInterface.h
1/*
2 * Copyright (C) 2016 Canonical, Ltd.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; version 3.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#ifndef UNITY_SHELL_APPLICATION_SURFACEMANAGERINTERFACE_H
18#define UNITY_SHELL_APPLICATION_SURFACEMANAGERINTERFACE_H
19
20#include <QObject>
21#include <QVector>
22
23namespace unity {
24namespace shell {
25namespace application {
26
27class MirSurfaceInterface;
28
29class SurfaceManagerInterface : public QObject
30{
31 Q_OBJECT
32
33public:
34 virtual ~SurfaceManagerInterface() {}
35
36 virtual void raise(MirSurfaceInterface *surface) = 0;
37 virtual void activate(MirSurfaceInterface *surface) = 0;
38
39Q_SIGNALS:
40 void surfaceCreated(unity::shell::application::MirSurfaceInterface *surface);
41 void surfacesRaised(const QVector<unity::shell::application::MirSurfaceInterface*> &surfaces);
42 void modificationsStarted();
43 void modificationsEnded();
44};
45
46} // namespace application
47} // namespace shell
48} // namespace unity
49
50#endif // UNITY_SHELL_APPLICATION_SURFACEMANAGERINTERFACE_H
Holds a Mir surface. Pretty much an opaque class.
Definition: MirSurfaceInterface.h:42
Definition: SurfaceManagerInterface.h:30
Top-level namespace for all things Unity-related.
Definition: Version.h:38