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

« back to all changes in this revision

Viewing changes to src/mimpluginmanager_p.h

  • 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:
22
22
#include "mimonscreenplugins.h"
23
23
#include "mimsettings.h"
24
24
#include "mimhwkeyboardtracker.h"
25
 
#include "mindicatorserviceclient.h"
26
25
#include <maliit/settingdata.h>
27
26
#include <maliit/plugins/abstractpluginsetting.h>
28
 
 
29
 
#include "abstractsurfacegroup.h"
 
27
#include "windowgroup.h"
 
28
#include "abstractplatform.h"
30
29
 
31
30
#include <QtCore>
32
31
 
34
33
namespace Plugins {
35
34
    class InputMethodPlugin;
36
35
}
37
 
namespace Server {
38
 
    class AbstractSurfaceGroupFactory;
39
 
}
40
 
}
41
 
class MImAbstractPluginFactory;
 
36
}
 
37
 
42
38
class MInputContextConnection;
43
39
class MIMPluginManager;
44
40
class MAttributeExtensionManager;
47
43
class MAbstractInputMethod;
48
44
class MIMPluginManagerAdaptor;
49
45
 
50
 
using Maliit::Server::AbstractSurfaceGroup;
51
 
using Maliit::Server::AbstractSurfaceGroupFactory;
52
 
 
53
46
/* Internal class only! Interfaces here change, internal developers only*/
54
47
class PluginSetting : public Maliit::Plugins::AbstractPluginSetting
55
48
{
76
69
    Q_DECLARE_PUBLIC(MIMPluginManager)
77
70
public:
78
71
    typedef QSet<Maliit::HandlerState> PluginState;
79
 
    typedef QWeakPointer<QWidget> WeakWidget;
80
72
 
81
73
    enum ShowInputMethodRequest {
82
74
        DontShowInputMethod,
89
81
        PluginState state;
90
82
        Maliit::SwitchDirection lastSwitchDirection;
91
83
        QString pluginId; // the library filename is used as ID
92
 
        QSharedPointer<AbstractSurfaceGroup> surfaceGroup;
 
84
        QSharedPointer<Maliit::WindowGroup> windowGroup;
93
85
    };
94
86
 
95
87
    typedef QMap<Maliit::Plugins::InputMethodPlugin *, PluginDescription> Plugins;
96
88
    typedef QSet<Maliit::Plugins::InputMethodPlugin *> ActivePlugins;
97
89
    typedef QMap<Maliit::HandlerState, Maliit::Plugins::InputMethodPlugin *> HandlerMap;
98
 
    typedef QMap<QString, MImAbstractPluginFactory*> PluginsFactory;
99
90
 
100
91
    MIMPluginManagerPrivate(const QSharedPointer<MInputContextConnection>& connection,
101
 
                            const QSharedPointer<AbstractSurfaceGroupFactory>& surfaceGroupFactory,
 
92
                            const QSharedPointer<Maliit::AbstractPlatform> &platform,
102
93
                            MIMPluginManager *p);
103
94
    virtual ~MIMPluginManagerPrivate();
104
95
 
107
98
    void activatePlugin(Maliit::Plugins::InputMethodPlugin *plugin);
108
99
    void loadPlugins();
109
100
    bool loadPlugin(const QDir &dir, const QString &fileName);
110
 
    bool loadFactoryPlugin(const QDir &dir, const QString &fileName);
111
101
    void addHandlerMap(Maliit::HandlerState state, const QString &pluginName);
112
102
    void registerSettings();
113
103
    void registerSettings(const MImPluginSettingsInfo &info);
164
154
     */
165
155
    void _q_setActiveSubView(const QString &, Maliit::HandlerState);
166
156
 
167
 
    //! Called a moment after hideActivePlugins is called to disable region
168
 
    //! updates and force an empty region in case of badly behaving plugins.
169
 
    void _q_ensureEmptyRegionWhenHidden();
170
 
 
171
157
    /*!
172
158
     * \brief Called in response to changed active on screen subview key change
173
159
     */
189
175
    Plugins plugins;
190
176
    ActivePlugins activePlugins;
191
177
    QSet<MAbstractInputMethod *> targets;
192
 
    PluginsFactory factories;
193
178
    QList<MImPluginSettingsInfo> settings;
194
179
 
195
180
    QStringList paths;
199
184
    QList<MImSettings *> handlerToPluginConfs;
200
185
    MImSettings *imAccessoryEnabledConf;
201
186
    QString activeSubViewIdOnScreen;
202
 
    QRegion activeImRegion;
203
187
 
204
188
    MIMPluginManagerAdaptor *adaptor;
205
189
 
206
190
    MIMPluginManager *q_ptr;
207
 
    bool connectionValid;
208
191
 
209
 
    bool acceptRegionUpdates;
210
192
    bool visible;
211
193
 
212
194
    typedef QMap<Maliit::HandlerState, QString> InputSourceToNameMap;
214
196
 
215
197
    MAttributeExtensionId toolbarId;
216
198
 
217
 
    MIndicatorServiceClient indicatorService;
218
 
 
219
 
    QTimer ensureEmptyRegionWhenHiddenTimer;
220
 
 
221
199
    MImOnScreenPlugins onScreenPlugins;
222
200
    MImHwKeyboardTracker hwkbTracker;
223
201
 
224
 
    QSharedPointer<AbstractSurfaceGroupFactory> mSurfaceGroupFactory;
225
202
    int lastOrientation;
226
203
 
227
204
    QScopedPointer<MAttributeExtensionManager> attributeExtensionManager;
228
205
    QScopedPointer<MSharedAttributeExtensionManager> sharedAttributeExtensionManager;
 
206
 
 
207
    QSharedPointer<Maliit::AbstractPlatform> m_platform;
229
208
};
230
209
 
231
210
#endif