~albaguirre/qtubuntu/mir-0.26.1-compat

« back to all changes in this revision

Viewing changes to src/ubuntumirclient/qmirclientnativeinterface.h

Class renaming and syntax changes to shrink delta with upstream mirclient QPA plugin (which is equivalent to rev 360)

Changes:
- Rename classes to prefix "QMirClient" instead of "Ubuntu"
- Update licence headers to match Qt's
- change logging categories spec to match Qt: qt.qpa.mirclient
- Enforce American English
- some minor syntax tweaks

Some differences still exist:
- QPA plugin remains "ubuntumirclient" and not "mirclient" as used upstream.
- some header paths differ between in-Qt code and externally built code
- I've not included build-type switches for things like accessibility support
- relaxed switch cases to allow older versions of Mir not break a build
- panel height hack removed from upstream
- platform-api env var setting removed from upstream

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
 * Copyright (C) 2014,2016 Canonical, Ltd.
3
 
 *
4
 
 * This program is free software: you can redistribute it and/or modify it under
5
 
 * the terms of the GNU Lesser General Public License version 3, as published by
6
 
 * the Free Software Foundation.
7
 
 *
8
 
 * This program is distributed in the hope that it will be useful, but WITHOUT
9
 
 * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
10
 
 * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11
 
 * Lesser General Public License for more details.
12
 
 *
13
 
 * You should have received a copy of the GNU Lesser General Public License
14
 
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
15
 
 */
16
 
 
17
 
#ifndef UBUNTU_NATIVE_INTERFACE_H
18
 
#define UBUNTU_NATIVE_INTERFACE_H
 
1
/****************************************************************************
 
2
**
 
3
** Copyright (C) 2016 Canonical, Ltd.
 
4
** Contact: https://www.qt.io/licensing/
 
5
**
 
6
** This file is part of the plugins of the Qt Toolkit.
 
7
**
 
8
** $QT_BEGIN_LICENSE:LGPL$
 
9
** Commercial License Usage
 
10
** Licensees holding valid commercial Qt licenses may use this file in
 
11
** accordance with the commercial license agreement provided with the
 
12
** Software or, alternatively, in accordance with the terms contained in
 
13
** a written agreement between you and The Qt Company. For licensing terms
 
14
** and conditions see https://www.qt.io/terms-conditions. For further
 
15
** information use the contact form at https://www.qt.io/contact-us.
 
16
**
 
17
** GNU Lesser General Public License Usage
 
18
** Alternatively, this file may be used under the terms of the GNU Lesser
 
19
** General Public License version 3 as published by the Free Software
 
20
** Foundation and appearing in the file LICENSE.LGPL3 included in the
 
21
** packaging of this file. Please review the following information to
 
22
** ensure the GNU Lesser General Public License version 3 requirements
 
23
** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
 
24
**
 
25
** GNU General Public License Usage
 
26
** Alternatively, this file may be used under the terms of the GNU
 
27
** General Public License version 2.0 or (at your option) the GNU General
 
28
** Public license version 3 or any later version approved by the KDE Free
 
29
** Qt Foundation. The licenses are as published by the Free Software
 
30
** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
 
31
** included in the packaging of this file. Please review the following
 
32
** information to ensure the GNU General Public License requirements will
 
33
** be met: https://www.gnu.org/licenses/gpl-2.0.html and
 
34
** https://www.gnu.org/licenses/gpl-3.0.html.
 
35
**
 
36
** $QT_END_LICENSE$
 
37
**
 
38
****************************************************************************/
 
39
 
 
40
 
 
41
#ifndef QMIRCLIENTNATIVEINTERFACE_H
 
42
#define QMIRCLIENTNATIVEINTERFACE_H
19
43
 
20
44
#include <qpa/qplatformnativeinterface.h>
21
45
 
22
 
#include "integration.h"
 
46
#include "qmirclientintegration.h"
23
47
 
24
48
class QPlatformScreen;
25
49
 
26
 
class UbuntuNativeInterface : public QPlatformNativeInterface {
 
50
class QMirClientNativeInterface : public QPlatformNativeInterface {
27
51
    Q_OBJECT
28
52
public:
29
53
    enum ResourceType { EglDisplay, EglContext, NativeOrientation, Display, MirConnection, MirSurface, Scale, FormFactor };
30
54
 
31
 
    UbuntuNativeInterface(const UbuntuClientIntegration *integration);
32
 
    ~UbuntuNativeInterface();
 
55
    QMirClientNativeInterface(const QMirClientClientIntegration *integration);
 
56
    ~QMirClientNativeInterface();
33
57
 
34
58
    // QPlatformNativeInterface methods.
35
59
    void* nativeResourceForIntegration(const QByteArray &resource) override;
51
75
    void screenPropertyChanged(QPlatformScreen *screen, const QString &propertyName);
52
76
 
53
77
private:
54
 
    const UbuntuClientIntegration *mIntegration;
 
78
    const QMirClientClientIntegration *mIntegration;
55
79
    const QByteArray mGenericEventFilterType;
56
80
    Qt::ScreenOrientation* mNativeOrientation;
57
81
};
58
82
 
59
 
#endif // UBUNTU_NATIVE_INTERFACE_H
 
83
#endif // QMIRCLIENTNATIVEINTERFACE_H