~timo-jyrinki/ubuntu/trusty/maliit-framework/fix_qt52

« back to all changes in this revision

Viewing changes to src/windowedsurfacegroup.cpp

  • Committer: Package Import Robot
  • Author(s): Ricardo Salveti de Araujo, Sergio Schvezov, Ricardo Salveti de Araujo
  • Date: 2013-07-23 19:47:04 UTC
  • mfrom: (1.1.2) (1.2.1 experimental)
  • Revision ID: package-import@ubuntu.com-20130723194704-1lsy1kmlda069cea
Tags: 0.99.0+git20130615+97e8335-0ubuntu1
[ Sergio Schvezov ]
* New build from HEAD 97e8335.
* Packaging import from lp:phablet-extras/maliit-framework.

[ Ricardo Salveti de Araujo ]
* debian/control: adding vcs and fixing dependencies
* General package cleanup

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* * This file is part of Maliit framework *
2
 
 *
3
 
 * Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
4
 
 * All rights reserved.
5
 
 *
6
 
 * Contact: maliit-discuss@lists.maliit.org
7
 
 *
8
 
 * Copyright (C) 2012 Openismus GmbH
9
 
 *
10
 
 * This library is free software; you can redistribute it and/or
11
 
 * modify it under the terms of the GNU Lesser General Public
12
 
 * License version 2.1 as published by the Free Software Foundation
13
 
 * and appearing in the file LICENSE.LGPL included in the packaging
14
 
 * of this file.
15
 
 */
16
 
 
17
 
#include "windowedsurfacegroup.h"
18
 
 
19
 
#include "abstractsurfacegroup.h"
20
 
#include "windowedsurface.h"
21
 
 
22
 
namespace Maliit {
23
 
namespace Server {
24
 
 
25
 
class WindowedSurfaceGroup : public AbstractSurfaceGroup
26
 
{
27
 
public:
28
 
    WindowedSurfaceGroup(WindowedSurfaceFactory *surfaceFactory);
29
 
 
30
 
    virtual Maliit::Plugins::AbstractSurfaceFactory *factory();
31
 
 
32
 
    virtual void activate();
33
 
    virtual void deactivate();
34
 
 
35
 
    virtual void setRotation(Maliit::OrientationAngle angle);
36
 
 
37
 
    void applicationFocusChanged(WId winId);
38
 
 
39
 
private:
40
 
    QScopedPointer<WindowedSurfaceFactory> mSurfaceFactory;
41
 
};
42
 
 
43
 
WindowedSurfaceGroup::WindowedSurfaceGroup(WindowedSurfaceFactory *surfaceFactory)
44
 
    : AbstractSurfaceGroup(),
45
 
      mSurfaceFactory(surfaceFactory)
46
 
{
47
 
    connect(mSurfaceFactory.data(), SIGNAL(inputMethodAreaChanged(QRegion)),
48
 
            this, SIGNAL(inputMethodAreaChanged(QRegion)));
49
 
}
50
 
 
51
 
Maliit::Plugins::AbstractSurfaceFactory *WindowedSurfaceGroup::factory()
52
 
{
53
 
    return mSurfaceFactory.data();
54
 
}
55
 
 
56
 
void WindowedSurfaceGroup::activate()
57
 
{
58
 
    mSurfaceFactory->activate();
59
 
}
60
 
 
61
 
void WindowedSurfaceGroup::deactivate()
62
 
{
63
 
    mSurfaceFactory->deactivate();
64
 
}
65
 
 
66
 
void WindowedSurfaceGroup::setRotation(Maliit::OrientationAngle)
67
 
{
68
 
}
69
 
 
70
 
void WindowedSurfaceGroup::applicationFocusChanged(WId winId)
71
 
{
72
 
    mSurfaceFactory->applicationFocusChanged(winId);
73
 
}
74
 
 
75
 
QSharedPointer<AbstractSurfaceGroup> WindowedSurfaceGroupFactory::createSurfaceGroup()
76
 
{
77
 
    WindowedSurfaceFactory *factory = new WindowedSurfaceFactory;
78
 
 
79
 
    connect(factory, SIGNAL(surfaceWidgetCreated(QWidget*,int)),
80
 
            this, SIGNAL(surfaceWidgetCreated(QWidget*,int)));
81
 
 
82
 
    QSharedPointer<WindowedSurfaceGroup> group(new WindowedSurfaceGroup(factory));
83
 
    mGroups.push_back(group);
84
 
 
85
 
    return group;
86
 
}
87
 
 
88
 
void WindowedSurfaceGroupFactory::applicationFocusChanged(WId winId)
89
 
{
90
 
    Q_FOREACH(QWeakPointer<WindowedSurfaceGroup> weakGroup, mGroups) {
91
 
        QSharedPointer<WindowedSurfaceGroup> group = weakGroup.toStrongRef();
92
 
        if (group) {
93
 
            group->applicationFocusChanged(winId);
94
 
        }
95
 
    }
96
 
}
97
 
 
98
 
} // namespace Plugins
99
 
} // namespace Maliit