1
/* * This file is part of Maliit framework *
3
* Copyright (C) 2013 Openismus GmbH
5
* Contact: maliit-discuss@lists.maliit.org
7
* This library is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU Lesser General Public
9
* License version 2.1 as published by the Free Software Foundation
10
* and appearing in the file LICENSE.LGPL included in the packaging
14
#ifndef MALIIT_SERVER_WINDOW_GROUP_H
15
#define MALIIT_SERVER_WINDOW_GROUP_H
18
#include <QSharedPointer>
24
#include "windowdata.h"
26
#include <maliit/namespace.h>
33
class AbstractPlatform;
34
class WindowGroupPrivate;
36
class WindowGroup : public QObject
39
Q_DECLARE_PRIVATE(WindowGroup)
47
WindowGroup(const QSharedPointer<AbstractPlatform> &platform);
51
void deactivate(HideMode mode);
53
void setupWindow(QWindow *window, Maliit::Position position);
54
void setScreenRegion(const QRegion ®ion, QWindow *window);
55
void setInputMethodArea(const QRegion ®ion, QWindow *window);
56
void setApplicationWindow(WId id);
59
void inputMethodAreaChanged(const QRegion &inputMethodArea);
63
void onVisibleChanged(bool visible);
64
void updateInputMethodArea();
67
bool containsWindow(QWindow *window);
69
QSharedPointer<AbstractPlatform> m_platform;
70
QVector<WindowData> m_window_list;
71
QRegion m_last_im_area;
78
#endif // MALIIT_SERVER_WINDOW_GROUP_H