Merge lp:~ubuntu-sdk-team/ubuntu-ui-toolkit/ucLabs into lp:ubuntu-ui-toolkit/staging

Proposed by Zsombor Egri
Status: Merged
Approved by: Cris Dywan
Approved revision: 2022
Merged at revision: 2020
Proposed branch: lp:~ubuntu-sdk-team/ubuntu-ui-toolkit/ucLabs
Merge into: lp:ubuntu-ui-toolkit/staging
Diff against target: 255 lines (+162/-2)
10 files modified
debian/control (+29/-0)
debian/control.gles (+30/-0)
debian/qml-module-ubuntu-components-labs.install (+3/-0)
src/Ubuntu/Components/Components.pro (+2/-1)
src/Ubuntu/Components/Labs/Labs.pro (+10/-0)
src/Ubuntu/Components/Labs/plugin/plugin.cpp (+47/-0)
src/Ubuntu/Components/Labs/plugin/plugin.pri (+8/-0)
src/Ubuntu/Components/Labs/qmldir (+3/-0)
src/Ubuntu/UbuntuToolkit/ubuntutoolkitmodule.cpp (+21/-1)
src/Ubuntu/UbuntuToolkit/ubuntutoolkitmodule.h (+9/-0)
To merge this branch: bzr merge lp:~ubuntu-sdk-team/ubuntu-ui-toolkit/ucLabs
Reviewer Review Type Date Requested Status
ubuntu-sdk-build-bot continuous-integration Approve
Cris Dywan Approve
Review via email: mp+298220@code.launchpad.net

Commit message

Separate plugin for Ubuntu.Components.Labs

Description of the change

Separate plugin for Ubuntu.Components.Labs

To post a comment you must log in.
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Cris Dywan (kalikiana) wrote :

Looks fine.

import Ubuntu.Components.Labs 1.0
ZiObject { }

This works, so I'll consider this acceptable since right now we have nothing useful to test.
I feel we might want to have an .api for it as well, even if we break the API, to track changes, but it seems to require work in apicheck I'd rather not block this on.

review: Approve
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Needs Fixing (continuous-integration)
2022. By Cris Dywan

Wrap and sort the control{,.gles} files

Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
ubuntu-sdk-build-bot (ubuntu-sdk-build-bot) wrote :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/control'
2--- debian/control 2016-06-03 04:28:05 +0000
3+++ debian/control 2016-06-24 13:11:14 +0000
4@@ -94,6 +94,35 @@
5 .
6 This package contains the Ubuntu Components QML plugin.
7
8+Package: qml-module-ubuntu-components-labs
9+Architecture: any
10+Multi-Arch: same
11+Pre-Depends: dpkg (>= 1.15.6~),
12+ ${misc:Pre-Depends},
13+Depends: libqt5svg5,
14+ libubuntugestures5 (= ${binary:Version}),
15+ libubuntutoolkit5 (= ${binary:Version}),
16+ qml-module-qtfeedback,
17+ qml-module-qtgraphicaleffects,
18+ qml-module-qtquick-layouts,
19+ qml-module-qtquick-window2,
20+ qml-module-qtquick2,
21+ qml-module-ubuntu-performancemetrics,
22+ qtdeclarative5-unity-action-plugin (>= 1.1.0),
23+ suru-icon-theme,
24+ ttf-ubuntu-font-family,
25+ ubuntu-ui-toolkit-theme (= ${binary:Version}),
26+ ${misc:Depends},
27+ ${shlibs:Depends},
28+Conflicts: qt-components-ubuntu-labs,
29+Replaces: qt-components-ubuntu-labs,
30+Provides: qt-components-ubuntu-labs,
31+Description: Qt Components Labs for Ubuntu - Components QML plugin
32+ Qt Components Labs for Ubuntu offers a set of non-released and mostly
33+ unstable user interface components for Qt Quick 2 / QML.
34+ .
35+ This package contains the Ubuntu Components Labs QML plugin.
36+
37 Package: qml-module-ubuntu-layouts
38 Architecture: any
39 Multi-Arch: same
40
41=== modified file 'debian/control.gles'
42--- debian/control.gles 2016-06-03 06:01:35 +0000
43+++ debian/control.gles 2016-06-24 13:11:14 +0000
44@@ -114,6 +114,36 @@
45 This package contains the Ubuntu Components QML plugin (built with
46 the OpenGLES backend).
47
48+Package: qml-module-ubuntu-components-labs-gles
49+Architecture: amd64 i386
50+Breaks: qtdeclarative5-ubuntu-ui-toolkit-plugin-gles (<< ${source:Version}),
51+Conflicts: qml-module-ubuntu-components-labs,
52+Replaces: qml-module-ubuntu-components-labs,
53+Provides: qml-module-ubuntu-components-labs,
54+Multi-Arch: same
55+Pre-Depends: dpkg (>= 1.15.6~),
56+ ${misc:Pre-Depends},
57+Depends: libqt5svg5,
58+ libubuntugestures5-gles (= ${binary:Version}),
59+ libubuntutoolkit5-gles (= ${binary:Version}),
60+ qml-module-qtfeedback,
61+ qml-module-qtgraphicaleffects,
62+ qml-module-qtquick-layouts,
63+ qml-module-qtquick-window2,
64+ qml-module-qtquick2,
65+ qtdeclarative5-unity-action-plugin (>= 1.1.0),
66+ suru-icon-theme,
67+ ttf-ubuntu-font-family,
68+ ubuntu-ui-toolkit-theme,
69+ ${misc:Depends},
70+ ${shlibs:Depends},
71+Description: Qt Components Labs for Ubuntu - QML plugin - GLES
72+ Qt Components Labs for Ubuntu offers a set of non-released and mostly
73+ unstable user interface components for Qt Quick 2 / QML.
74+ .
75+ This package contains the Ubuntu Components Labs QML plugin (built with
76+ the OpenGLES backend).
77+
78 Package: qml-module-ubuntu-performancemetrics-gles
79 Architecture: amd64 i386
80 Breaks: qtdeclarative5-ubuntu-ui-toolkit-plugin-gles (<< ${source:Version}),
81
82=== added file 'debian/qml-module-ubuntu-components-labs.install'
83--- debian/qml-module-ubuntu-components-labs.install 1970-01-01 00:00:00 +0000
84+++ debian/qml-module-ubuntu-components-labs.install 2016-06-24 13:11:14 +0000
85@@ -0,0 +1,3 @@
86+usr/lib/*/qt5/qml/Ubuntu/Components/Labs/libUbuntuComponentsLabs.so
87+usr/lib/*/qt5/qml/Ubuntu/Components/Labs/plugins.qmltypes
88+usr/lib/*/qt5/qml/Ubuntu/Components/Labs/qmldir
89
90=== modified file 'src/Ubuntu/Components/Components.pro'
91--- src/Ubuntu/Components/Components.pro 2015-05-18 09:53:55 +0000
92+++ src/Ubuntu/Components/Components.pro 2016-06-24 13:11:14 +0000
93@@ -5,4 +5,5 @@
94 Pickers \
95 Popups \
96 Styles \
97- Themes
98+ Themes \
99+ Labs
100
101=== added directory 'src/Ubuntu/Components/Labs'
102=== added file 'src/Ubuntu/Components/Labs/Labs.pro'
103--- src/Ubuntu/Components/Labs/Labs.pro 1970-01-01 00:00:00 +0000
104+++ src/Ubuntu/Components/Labs/Labs.pro 2016-06-24 13:11:14 +0000
105@@ -0,0 +1,10 @@
106+CXX_MODULE = qml
107+TARGET = UbuntuComponentsLabs
108+TARGETPATH = Ubuntu/Components/Labs
109+IMPORT_VERSION = 1.0
110+
111+include(plugin/plugin.pri)
112+
113+load(ubuntu_qml_plugin)
114+
115+OTHER_FILES+=qmldir
116
117=== added directory 'src/Ubuntu/Components/Labs/plugin'
118=== added file 'src/Ubuntu/Components/Labs/plugin/plugin.cpp'
119--- src/Ubuntu/Components/Labs/plugin/plugin.cpp 1970-01-01 00:00:00 +0000
120+++ src/Ubuntu/Components/Labs/plugin/plugin.cpp 2016-06-24 13:11:14 +0000
121@@ -0,0 +1,47 @@
122+/*
123+ * Copyright 2016 Canonical Ltd.
124+ *
125+ * This program is free software; you can redistribute it and/or modify
126+ * it under the terms of the GNU Lesser General Public License as published by
127+ * the Free Software Foundation; version 3.
128+ *
129+ * This program is distributed in the hope that it will be useful,
130+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
131+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
132+ * GNU Lesser General Public License for more details.
133+ *
134+ * You should have received a copy of the GNU Lesser General Public License
135+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
136+ *
137+ * Author: Zsombor Egri <zsombor.egri@canonical.com>
138+ */
139+
140+#include <QtQml/QQmlExtensionPlugin>
141+#include <ubuntutoolkitmodule.h>
142+
143+class UbuntuComponentsLabsPlugin : public QQmlExtensionPlugin
144+{
145+ Q_OBJECT
146+ Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface/1.0")
147+
148+public:
149+ void registerTypes(const char *uri) override
150+ {
151+ Q_ASSERT(uri == QLatin1String("Ubuntu.Components.Labs"));
152+ UT_PREPEND_NAMESPACE(UbuntuLabsModule)::defineModule(uri);
153+ }
154+
155+ void initializeEngine(QQmlEngine *engine, const char *uri) override
156+ {
157+ UT_PREPEND_NAMESPACE(UbuntuLabsModule)::initializeModule(engine, this);
158+ QQmlExtensionPlugin::initializeEngine(engine, uri);
159+ }
160+
161+ ~UbuntuComponentsLabsPlugin()
162+ {
163+ UT_PREPEND_NAMESPACE(UbuntuLabsModule)::undefineModule();
164+ }
165+};
166+
167+#include "plugin.moc"
168+
169
170=== added file 'src/Ubuntu/Components/Labs/plugin/plugin.pri'
171--- src/Ubuntu/Components/Labs/plugin/plugin.pri 1970-01-01 00:00:00 +0000
172+++ src/Ubuntu/Components/Labs/plugin/plugin.pri 2016-06-24 13:11:14 +0000
173@@ -0,0 +1,8 @@
174+QT *= qml quick UbuntuToolkit UbuntuToolkit_private
175+
176+CONFIG += no_keywords c++11
177+
178+INCLUDEPATH+=$$PWD
179+
180+SOURCES += \
181+ $$PWD/plugin.cpp
182
183=== added file 'src/Ubuntu/Components/Labs/qmldir'
184--- src/Ubuntu/Components/Labs/qmldir 1970-01-01 00:00:00 +0000
185+++ src/Ubuntu/Components/Labs/qmldir 2016-06-24 13:11:14 +0000
186@@ -0,0 +1,3 @@
187+module Ubuntu.Components.Labs
188+plugin UbuntuComponentsLabs
189+typeinfo plugins.qmltypes
190
191=== modified file 'src/Ubuntu/UbuntuToolkit/ubuntutoolkitmodule.cpp'
192--- src/Ubuntu/UbuntuToolkit/ubuntutoolkitmodule.cpp 2016-06-23 07:09:59 +0000
193+++ src/Ubuntu/UbuntuToolkit/ubuntutoolkitmodule.cpp 2016-06-24 13:11:14 +0000
194@@ -19,6 +19,7 @@
195 #include "ubuntutoolkitmodule.h"
196 #include <QtQml/QQmlEngine>
197 #include <QtQml/QQmlContext>
198+#include <QtQml/QQmlExtensionPlugin>
199 #include <QtQuick/private/qquickimagebase_p.h>
200 #include <QDBusConnection>
201 #include <QtGui/QGuiApplication>
202@@ -286,6 +287,25 @@
203 // nothing yet
204 }
205
206-
207+/******************************************************************************
208+ * Labs module
209+ */
210+void UbuntuLabsModule::initializeModule(QQmlEngine *engine, QQmlExtensionPlugin *plugin)
211+{
212+ Q_UNUSED(engine);
213+ Q_UNUSED(plugin);
214+}
215+
216+void UbuntuLabsModule::defineModule(const char *uri)
217+{
218+ Q_UNUSED(uri);
219+ // a fake component so we can have the module types file created
220+ qmlRegisterType<QObject>(uri, 1, 0, "ZiObject");
221+}
222+
223+void UbuntuLabsModule::undefineModule()
224+{
225+ // nothing yet
226+}
227
228 UT_NAMESPACE_END
229
230=== modified file 'src/Ubuntu/UbuntuToolkit/ubuntutoolkitmodule.h'
231--- src/Ubuntu/UbuntuToolkit/ubuntutoolkitmodule.h 2016-06-23 07:09:59 +0000
232+++ src/Ubuntu/UbuntuToolkit/ubuntutoolkitmodule.h 2016-06-24 13:11:14 +0000
233@@ -27,6 +27,7 @@
234
235 class QQmlEngine;
236 class QWindow;
237+class QQmlExtensionPlugin;
238 /*
239 * Type registration functions.
240 */
241@@ -75,6 +76,14 @@
242 static void undefineModule();
243 };
244
245+class UBUNTUTOOLKIT_EXPORT UbuntuLabsModule
246+{
247+public:
248+ static void initializeModule(QQmlEngine *engine, QQmlExtensionPlugin *plugin);
249+ static void defineModule(const char *uri);
250+ static void undefineModule();
251+};
252+
253 UT_NAMESPACE_END
254
255 #endif // UBUNTUTOOLKITMODULE_H

Subscribers

People subscribed via source and target branches