Merge lp:~ubuntu-sdk-team/ubuntu-ui-toolkit/strokeColor into lp:ubuntu-ui-toolkit/staging
- strokeColor
- Merge into staging
Status: | Merged | ||||
---|---|---|---|---|---|
Approved by: | Tim Peeters | ||||
Approved revision: | 1139 | ||||
Merged at revision: | 1168 | ||||
Proposed branch: | lp:~ubuntu-sdk-team/ubuntu-ui-toolkit/strokeColor | ||||
Merge into: | lp:ubuntu-ui-toolkit/staging | ||||
Diff against target: |
534 lines (+223/-103) 14 files modified
components.api (+7/-0) debian/qtdeclarative5-ubuntu-ui-toolkit-plugin.install (+2/-0) documentation/docs.sh (+2/-2) examples/ubuntu-ui-toolkit-gallery/Buttons.qml (+10/-0) modules/Ubuntu/Components/10/10.pro (+9/-0) modules/Ubuntu/Components/10/Button.qml (+3/-87) modules/Ubuntu/Components/11/11.pro (+9/-0) modules/Ubuntu/Components/11/Button.qml (+125/-0) modules/Ubuntu/Components/Components.pro (+1/-1) modules/Ubuntu/Components/Themes/Ambiance/ButtonStyle.qml (+41/-8) modules/Ubuntu/Components/qmldir (+3/-2) push_to_phone.sh (+1/-1) tests/autopilot/ubuntuuitoolkit/tests/custom_proxy_objects/test_main_view.py (+2/-1) tests/qmlapicheck.py (+8/-1) |
||||
To merge this branch: | bzr merge lp:~ubuntu-sdk-team/ubuntu-ui-toolkit/strokeColor | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Tim Peeters | Approve | ||
PS Jenkins bot | continuous-integration | Approve | |
Zsombor Egri | Approve | ||
Review via email: mp+223944@code.launchpad.net |
Commit message
Implement optional strokeColor in AbstractButton
Description of the change
PS Jenkins bot (ps-jenkins) wrote : | # |
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1115
http://
Executed test runs:
SUCCESS: http://
FAILURE: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
Cris Dywan (kalikiana) wrote : | # |
FAIL! : components:
Loc: [/tmp/buildd/
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1116
http://
Executed test runs:
SUCCESS: http://
FAILURE: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
Cris Dywan (kalikiana) wrote : | # |
FAIL! : components:
Loc: [/tmp/buildd/
Zsombor Egri (zsombi) wrote : | # |
> FAIL! :
> components:
> 'There is no text selected' returned FALSE. ()
> Loc: [/tmp/buildd/
> 114+autopilot0/
This is weird... does not fail with staging...
Zsombor Egri (zsombi) wrote : | # |
The strokeColor should only be applied to Button, and for version 1.1. ComboButton should also take the Button11 as base type.
Zsombor Egri (zsombi) wrote : | # |
There's one more thing with this: this only configures the stroke colour. Meaning that whoever wants to set a button to be stroke button, must set a colour other than the default value. Do we expect apps to use the
Button {
strokeColor: UbuntuColors.
}
setup whenever they want to have a default stroke button? Shouldn't we have a property which sets the defaults?
Button {
stroke: true
}
This would set the strokeColor to the default one (preferably from Theme.palette than UbuntuColors), but the debs can then configure the strokeColor to whatever they'd like. What do you think?
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1117
http://
Executed test runs:
UNSTABLE: http://
FAILURE: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
Cris Dywan (kalikiana) wrote : | # |
We don't really have a "default" as I understand it, the colors I've seen in designs are grey and green, I would assume developers to have a look at the guidelines and make a decision on what's appropriate. That's why there's no "semantic" API but just the color and style.
Zsombor Egri (zsombi) wrote : | # |
> We don't really have a "default" as I understand it, the colors I've seen in
> designs are grey and green, I would assume developers to have a look at the
> guidelines and make a decision on what's appropriate. That's why there's no
> "semantic" API but just the color and style.
Completely makes sense!
Implementation looks nice, merge with staging and then we can approve.
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1118
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
Zsombor Egri (zsombi) wrote : | # |
All clear now. Thanks for the update!
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Autolanding.
More details in the following jenkins job:
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1119
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
Click here to trigger a rebuild:
http://
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1120
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
Click here to trigger a rebuild:
http://
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1121
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
Click here to trigger a rebuild:
http://
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1122
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
Click here to trigger a rebuild:
http://
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1123
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1125
http://
Executed test runs:
FAILURE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
FAILURE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
Click here to trigger a rebuild:
http://
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Autolanding.
More details in the following jenkins job:
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1126
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
Click here to trigger a rebuild:
http://
Tim Peeters (tpeeters) wrote : | # |
Looks like tests are failing because for autopilot the buttons are no longer of type Button, so stuff like this fails:
I guess they are now Button11 (for 1.1, but when fixing the tests we should also verify that they still work when using 1.0).
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1127
http://
Executed test runs:
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
Click here to trigger a rebuild:
http://
Cris Dywan (kalikiana) wrote : | # |
QUbuntu: Could not create application instance
ProcessSearchError: Process exited with exit code: -6
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Autolanding.
More details in the following jenkins job:
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
- 1128. By Cris Dywan
-
Move versioned Button classes to subfolders
This avoids Autopilot unintentionally changing class names
And restore specifying of Button classes in Autopilot - 1129. By Cris Dywan
- 1130. By Cris Dywan
-
Get un/versioned files in the same order in components.api
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1128
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
Tim Peeters (tpeeters) wrote : | # |
qdoc doesn't like it:
tim@C720:
SRC=. ./documentation
/home/tim/
/home/tim/
/home/tim/
/home/tim/
/home/tim/
make: *** [docs] Error 1
Tim Peeters (tpeeters) : | # |
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1130
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
- 1131. By Cris Dywan
-
Move around Button11.qdoc in an attempt to please qdoc
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1131
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
- 1132. By Cris Dywan
-
Move all Button docs into Button.qdoc and mark the real ones as internal
- 1133. By Cris Dywan
-
Use correct Button parent class
Cris Dywan (kalikiana) wrote : | # |
My last changes make it *build* alas the docs don't include any properties and there's non-working "Button" links. This is as good as it will get, I can't find a way to make it work.
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1133
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
- 1134. By Cris Dywan
-
Make pep8 happy
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1134
http://
Executed test runs:
FAILURE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
FAILURE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
Click here to trigger a rebuild:
http://
Cris Dywan (kalikiana) wrote : | # |
Note to self: push_to_phone.sh doesn't push 1.1/Button.qml
- 1135. By Cris Dywan
-
Also push the versioned 10 and 11 folders to the phone
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1135
http://
Executed test runs:
FAILURE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
FAILURE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
Click here to trigger a rebuild:
http://
Tim Peeters (tpeeters) wrote : | # |
10/ and 11/ also need to be added to debian/
- 1136. By Cris Dywan
-
Add folders 10 and 11 to qtdeclarative5-
ubuntu- ui-toolkit- plugin. install
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1136
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
- 1137. By Cris Dywan
-
Add .pro files for 10 and 11 folders
PS Jenkins bot (ps-jenkins) wrote : | # |
PASSED: Continuous integration, rev:1137
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
Click here to trigger a rebuild:
http://
Tim Peeters (tpeeters) wrote : | # |
It appears like I finally found a solution for the problems with qdoc and AP: duplicate the Button API in 10/Button and 11/Button instead of making 11/Button inherit from 10/Button. See https:/
- 1138. By Cris Dywan
- 1139. By Cris Dywan
-
Drop docs from 10/Button.qml which are redundant now
Tim Peeters (tpeeters) wrote : | # |
hurray :) let's hope this is it!
Preview Diff
1 | === modified file 'components.api' |
2 | --- components.api 2014-07-21 13:57:13 +0000 |
3 | +++ components.api 2014-07-29 14:43:30 +0000 |
4 | @@ -33,6 +33,13 @@ |
5 | property Gradient gradient |
6 | property font font |
7 | property string iconPosition |
8 | +Button 1.1 |
9 | +AbstractButton |
10 | + property color strokeColor |
11 | + property color color |
12 | + property Gradient gradient |
13 | + property font font |
14 | + property string iconPosition |
15 | CheckBox 0.1 1.0 |
16 | AbstractButton |
17 | property bool checked |
18 | |
19 | === modified file 'debian/qtdeclarative5-ubuntu-ui-toolkit-plugin.install' |
20 | --- debian/qtdeclarative5-ubuntu-ui-toolkit-plugin.install 2014-04-29 12:50:32 +0000 |
21 | +++ debian/qtdeclarative5-ubuntu-ui-toolkit-plugin.install 2014-07-29 14:43:30 +0000 |
22 | @@ -6,6 +6,8 @@ |
23 | usr/lib/*/qt5/qml/Ubuntu/Layouts/plugins.qmltypes |
24 | usr/lib/*/qt5/qml/Ubuntu/Layouts/libUbuntuLayouts.so |
25 | usr/lib/*/qt5/qml/Ubuntu/Components/*.qml |
26 | +usr/lib/*/qt5/qml/Ubuntu/Components/10/*.qml |
27 | +usr/lib/*/qt5/qml/Ubuntu/Components/11/*.qml |
28 | usr/lib/*/qt5/qml/Ubuntu/Components/*.js |
29 | usr/lib/*/qt5/qml/Ubuntu/Components/qmldir |
30 | usr/lib/*/qt5/qml/Ubuntu/Components/plugins.qmltypes |
31 | |
32 | === modified file 'documentation/docs.sh' |
33 | --- documentation/docs.sh 2014-03-27 08:59:19 +0000 |
34 | +++ documentation/docs.sh 2014-07-29 14:43:30 +0000 |
35 | @@ -24,7 +24,7 @@ |
36 | # Offline docs for QtCreator |
37 | qdoc $DOC_PATH/ubuntu-ui-toolkit-qtcreator.qdocconf 2> $DOC_PATH/qdoc.log |
38 | # FIXME: With Qt 5.2 this warning shows up, forcibly omit it from errors |
39 | -cat $DOC_PATH/qdoc.log | grep -v "qdoc: warning: No documentation for 'global'" > $DOC_PATH/qdoc.err |
40 | +grep -v "error: HTML file already exists; overwriting" $DOC_PATH/qdoc.log | grep -v "qdoc: warning: No documentation for 'global'" > $DOC_PATH/qdoc.err |
41 | cat $DOC_PATH/qdoc.err |
42 | test ! -s $DOC_PATH/qdoc.err || exit 1 |
43 | echo docs: Offline done. |
44 | @@ -35,7 +35,7 @@ |
45 | # Online docs. Run qdoc twice: the second run with indexes for cross-referencing |
46 | # other APIs but discard errors because qdoc inherits all doc bugs otherwise |
47 | qdoc $DOC_PATH/ubuntu-ui-toolkit-online.qdocconf 2> $DOC_PATH/qdoc.log |
48 | -cat $DOC_PATH/qdoc.log | grep -v "qdoc: warning: No documentation for 'global'" > $DOC_PATH/qdoc.err |
49 | +grep -v "error: HTML file already exists; overwriting" $DOC_PATH/qdoc.log | grep -v "qdoc: warning: No documentation for 'global'" > $DOC_PATH/qdoc.err |
50 | cat $DOC_PATH/qdoc.err |
51 | test ! -s $DOC_PATH/qdoc.err || exit 1 |
52 | echo docs: Online done. |
53 | |
54 | === modified file 'examples/ubuntu-ui-toolkit-gallery/Buttons.qml' |
55 | --- examples/ubuntu-ui-toolkit-gallery/Buttons.qml 2014-04-23 09:39:11 +0000 |
56 | +++ examples/ubuntu-ui-toolkit-gallery/Buttons.qml 2014-07-29 14:43:30 +0000 |
57 | @@ -34,6 +34,16 @@ |
58 | } |
59 | |
60 | TemplateRow { |
61 | + title: i18n.tr("Stroke") |
62 | + |
63 | + Button { |
64 | + objectName: "button_stroke" |
65 | + text: i18n.tr("Call") |
66 | + strokeColor: UbuntuColors.warmGrey |
67 | + } |
68 | + } |
69 | + |
70 | + TemplateRow { |
71 | title: i18n.tr("Color") |
72 | |
73 | Button { |
74 | |
75 | === added directory 'modules/Ubuntu/Components/10' |
76 | === added file 'modules/Ubuntu/Components/10/10.pro' |
77 | --- modules/Ubuntu/Components/10/10.pro 1970-01-01 00:00:00 +0000 |
78 | +++ modules/Ubuntu/Components/10/10.pro 2014-07-29 14:43:30 +0000 |
79 | @@ -0,0 +1,9 @@ |
80 | +TEMPLATE = subdirs |
81 | + |
82 | +uri = Ubuntu.Components.10 |
83 | +installPath = $$[QT_INSTALL_QML]/$$replace(uri, \\., /) |
84 | + |
85 | +qml_files.path = $$installPath |
86 | +qml_files.files = *.qml |
87 | + |
88 | +INSTALLS += qml_files |
89 | |
90 | === renamed file 'modules/Ubuntu/Components/Button.qml' => 'modules/Ubuntu/Components/10/Button.qml' |
91 | --- modules/Ubuntu/Components/Button.qml 2014-04-23 08:50:20 +0000 |
92 | +++ modules/Ubuntu/Components/10/Button.qml 2014-07-29 14:43:30 +0000 |
93 | @@ -15,105 +15,21 @@ |
94 | */ |
95 | |
96 | import QtQuick 2.0 |
97 | +import Ubuntu.Components 1.0 |
98 | |
99 | /*! |
100 | - \qmltype Button |
101 | - \inqmlmodule Ubuntu.Components 1.1 |
102 | - \ingroup ubuntu |
103 | - \brief Standard Ubuntu button. |
104 | - |
105 | - \l {http://design.ubuntu.com/apps/building-blocks/buttons}{See also the Design Guidelines on Buttons}. |
106 | - |
107 | - Examples: |
108 | - \qml |
109 | - Column { |
110 | - Button { |
111 | - text: "Send" |
112 | - onClicked: print("clicked text-only Button") |
113 | - } |
114 | - Button { |
115 | - iconName: "compose" |
116 | - gradient: UbuntuColors.greyGradient |
117 | - onClicked: print("clicked icon-only Button") |
118 | - } |
119 | - Button { |
120 | - iconName: "compose" |
121 | - text: "Icon on left" |
122 | - iconPosition: "left" |
123 | - onClicked: print("clicked text and icon Button") |
124 | - } |
125 | - } |
126 | - \endqml |
127 | - An \l Action can be used to specify \b clicked, iconSource and text. Example: |
128 | - \qml |
129 | - Item { |
130 | - Action { |
131 | - id: action1 |
132 | - text: "Click me" |
133 | - onTriggered: print("action!") |
134 | - iconName: "compose" |
135 | - } |
136 | - Button { |
137 | - anchors.centerIn: parent |
138 | - action: action1 |
139 | - color: UbuntuColors.warmGrey |
140 | - } |
141 | - } |
142 | - \endqml |
143 | + \internal |
144 | + Documentation in 11/Button.qml |
145 | */ |
146 | AbstractButton { |
147 | id: button |
148 | |
149 | - /*! |
150 | - The background color of the button. |
151 | - |
152 | - \sa gradient |
153 | - */ |
154 | property color color: __styleInstance.defaultColor |
155 | |
156 | - /*! |
157 | - The gradient used to fill the background of the button. |
158 | - |
159 | - Standard Ubuntu gradients are defined in \l UbuntuColors. |
160 | - |
161 | - If both a gradient and a color are specified, the gradient will be used. |
162 | - |
163 | - \sa color |
164 | - */ |
165 | property Gradient gradient: __styleInstance.defaultGradient |
166 | |
167 | - /*! |
168 | - The font used for the button's text. |
169 | - */ |
170 | property font font: __styleInstance ? __styleInstance.defaultFont : Qt.font({family: "Ubuntu", pixelSize: FontUtils.sizeToPixels("medium")}) |
171 | |
172 | - /*! |
173 | - The source URL of the icon to display inside the button. |
174 | - Leave this value blank for a text-only button. |
175 | - If \l action is set, the default iconSource is that of the action. |
176 | - \qmlproperty url iconSource |
177 | - */ |
178 | - |
179 | - /*! |
180 | - The text to display in the button. If an icon was defined, |
181 | - the text will be shown next to the icon, otherwise it will |
182 | - be centered. Leave blank for an icon-only button. |
183 | - If \l action is set, the default text is that of the action. |
184 | - \qmlproperty string text |
185 | - */ |
186 | - |
187 | - /*! |
188 | - The position of the icon relative to the text. Options |
189 | - are "left" and "right". The default value is "left". |
190 | - |
191 | - If only text or only an icon is defined, this |
192 | - property is ignored and the text or icon is |
193 | - centered horizontally and vertically in the button. |
194 | - |
195 | - Currently this is a string value. We are waiting for |
196 | - support for enums: |
197 | - https://bugreports.qt-project.org/browse/QTBUG-14861 |
198 | - */ |
199 | property string iconPosition: "left" |
200 | |
201 | style: Theme.createStyleComponent("ButtonStyle.qml", button) |
202 | |
203 | === added directory 'modules/Ubuntu/Components/11' |
204 | === added file 'modules/Ubuntu/Components/11/11.pro' |
205 | --- modules/Ubuntu/Components/11/11.pro 1970-01-01 00:00:00 +0000 |
206 | +++ modules/Ubuntu/Components/11/11.pro 2014-07-29 14:43:30 +0000 |
207 | @@ -0,0 +1,9 @@ |
208 | +TEMPLATE = subdirs |
209 | + |
210 | +uri = Ubuntu.Components.11 |
211 | +installPath = $$[QT_INSTALL_QML]/$$replace(uri, \\., /) |
212 | + |
213 | +qml_files.path = $$installPath |
214 | +qml_files.files = *.qml |
215 | + |
216 | +INSTALLS += qml_files |
217 | |
218 | === added file 'modules/Ubuntu/Components/11/Button.qml' |
219 | --- modules/Ubuntu/Components/11/Button.qml 1970-01-01 00:00:00 +0000 |
220 | +++ modules/Ubuntu/Components/11/Button.qml 2014-07-29 14:43:30 +0000 |
221 | @@ -0,0 +1,125 @@ |
222 | +/* |
223 | + * Copyright 2014 Canonical Ltd. |
224 | + * |
225 | + * This program is free software; you can redistribute it and/or modify |
226 | + * it under the terms of the GNU Lesser General Public License as published by |
227 | + * the Free Software Foundation; version 3. |
228 | + * |
229 | + * This program is distributed in the hope that it will be useful, |
230 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
231 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
232 | + * GNU Lesser General Public License for more details. |
233 | + * |
234 | + * You should have received a copy of the GNU Lesser General Public License |
235 | + * along with this program. If not, see <http://www.gnu.org/licenses/>. |
236 | + */ |
237 | + |
238 | +import QtQuick 2.2 |
239 | +import Ubuntu.Components 1.1 |
240 | + |
241 | +/*! |
242 | + \qmltype Button |
243 | + \inqmlmodule Ubuntu.Components 1.1 |
244 | + \ingroup ubuntu |
245 | + \brief Standard Ubuntu button. |
246 | + |
247 | + \l {http://design.ubuntu.com/apps/building-blocks/buttons}{See also the Design Guidelines on Buttons}. |
248 | + |
249 | + Examples: |
250 | + \qml |
251 | + Column { |
252 | + Button { |
253 | + text: "Send" |
254 | + onClicked: print("clicked text-only Button") |
255 | + } |
256 | + Button { |
257 | + iconName: "compose" |
258 | + gradient: UbuntuColors.greyGradient |
259 | + onClicked: print("clicked icon-only Button") |
260 | + } |
261 | + Button { |
262 | + iconName: "compose" |
263 | + text: "Icon on left" |
264 | + iconPosition: "left" |
265 | + onClicked: print("clicked text and icon Button") |
266 | + } |
267 | + } |
268 | + \endqml |
269 | + An \l Action can be used to specify \b clicked, iconSource and text. Example: |
270 | + \qml |
271 | + Item { |
272 | + Action { |
273 | + id: action1 |
274 | + text: "Click me" |
275 | + onTriggered: print("action!") |
276 | + iconName: "compose" |
277 | + } |
278 | + Button { |
279 | + anchors.centerIn: parent |
280 | + action: action1 |
281 | + color: UbuntuColors.warmGrey |
282 | + } |
283 | + } |
284 | + \endqml*/ |
285 | +AbstractButton { |
286 | + id: button |
287 | + /*! |
288 | + \since Ubuntu.Components 1.1 |
289 | + If set to a color, the button has a stroke border instead of a filled shape. |
290 | + */ |
291 | + property color strokeColor: Qt.rgba(0.0, 0.0, 0.0, 0.0) |
292 | + |
293 | + /*! |
294 | + \qmlproperty url Button::iconSource |
295 | + The source URL of the icon to display inside the button. |
296 | + Leave this value blank for a text-only button. |
297 | + If \l action is set, the default iconSource is that of the action. |
298 | + */ |
299 | + |
300 | + /*! |
301 | + The text to display in the button. If an icon was defined, |
302 | + the text will be shown next to the icon, otherwise it will |
303 | + be centered. Leave blank for an icon-only button. |
304 | + If \l action is set, the default text is that of the action. |
305 | + \qmlproperty string Button::text |
306 | + */ |
307 | + |
308 | + /*! |
309 | + The background color of the button. |
310 | + |
311 | + \sa gradient |
312 | + */ |
313 | + property color color: __styleInstance.defaultColor |
314 | + |
315 | + /*! |
316 | + The gradient used to fill the background of the button. |
317 | + |
318 | + Standard Ubuntu gradients are defined in \l UbuntuColors. |
319 | + |
320 | + If both a gradient and a color are specified, the gradient will be used. |
321 | + |
322 | + \sa color |
323 | + */ |
324 | + property Gradient gradient: __styleInstance.defaultGradient |
325 | + |
326 | + /*! |
327 | + The font used for the button's text. |
328 | + */ |
329 | + property font font: __styleInstance ? __styleInstance.defaultFont : Qt.font({family: "Ubuntu", pixelSize: FontUtils.sizeToPixels("medium")}) |
330 | + |
331 | + /*! |
332 | + The position of the icon relative to the text. Options |
333 | + are "left" and "right". The default value is "left". |
334 | + |
335 | + If only text or only an icon is defined, this |
336 | + property is ignored and the text or icon is |
337 | + centered horizontally and vertically in the button. |
338 | + |
339 | + Currently this is a string value. We are waiting for |
340 | + support for enums: |
341 | + https://bugreports.qt-project.org/browse/QTBUG-14861 |
342 | + */ |
343 | + property string iconPosition: "left" |
344 | + |
345 | + style: Theme.createStyleComponent("ButtonStyle.qml", button) |
346 | +} |
347 | |
348 | === modified file 'modules/Ubuntu/Components/Components.pro' |
349 | --- modules/Ubuntu/Components/Components.pro 2013-07-01 05:54:33 +0000 |
350 | +++ modules/Ubuntu/Components/Components.pro 2014-07-29 14:43:30 +0000 |
351 | @@ -1,5 +1,5 @@ |
352 | TEMPLATE = subdirs |
353 | |
354 | -SUBDIRS += plugin Themes Colors |
355 | +SUBDIRS += plugin Themes Colors 10 11 |
356 | |
357 | include(deployment.pri) |
358 | |
359 | === modified file 'modules/Ubuntu/Components/Themes/Ambiance/ButtonStyle.qml' |
360 | --- modules/Ubuntu/Components/Themes/Ambiance/ButtonStyle.qml 2014-04-23 08:50:20 +0000 |
361 | +++ modules/Ubuntu/Components/Themes/Ambiance/ButtonStyle.qml 2014-07-29 14:43:30 +0000 |
362 | @@ -22,13 +22,14 @@ |
363 | Item { |
364 | id: buttonStyle |
365 | |
366 | - property Button button: styledItem |
367 | + property var button: styledItem |
368 | property real minimumWidth: units.gu(10) |
369 | property real horizontalPadding: units.gu(1) |
370 | property color defaultColor: UbuntuColors.orange |
371 | property font defaultFont: Qt.font({family: "Ubuntu", pixelSize: FontUtils.sizeToPixels("medium")}) |
372 | property Gradient defaultGradient |
373 | property real buttonFaceOffset: 0 |
374 | + property bool stroke: button.hasOwnProperty("strokeColor") && button.strokeColor != Qt.rgba(0.0, 0.0, 0.0, 0.0) |
375 | /*! |
376 | The property overrides the button's default background with an item. This |
377 | item can be used by derived styles to reuse the ButtonStyle and override |
378 | @@ -82,22 +83,54 @@ |
379 | property bool isGradient: button.gradient && (button.color == defaultColor || |
380 | button.gradient != defaultGradient) |
381 | |
382 | + Image { |
383 | + id: strokeBorder |
384 | + anchors.fill: parent |
385 | + anchors.margins: -units.gu(0.5) |
386 | + source: "artwork/stroke_button.png" |
387 | + visible: false |
388 | + } |
389 | + |
390 | + ShaderEffect { |
391 | + id: colorizedImage |
392 | + |
393 | + anchors.fill: parent |
394 | + visible: stroke && strokeBorder.status == Image.Ready |
395 | + |
396 | + property Item source: visible ? strokeBorder : null |
397 | + property color keyColorOut: stroke ? strokeColor : Qt.rgba(0.0, 0.0, 0.0, 0.0) |
398 | + property color keyColorIn: Qt.rgba(1.0, 1.0, 1.0, 1.0) |
399 | + property real threshold: 1.0 |
400 | + |
401 | + fragmentShader: " |
402 | + varying highp vec2 qt_TexCoord0; |
403 | + uniform sampler2D source; |
404 | + uniform highp vec4 keyColorOut; |
405 | + uniform highp vec4 keyColorIn; |
406 | + uniform lowp float threshold; |
407 | + uniform lowp float qt_Opacity; |
408 | + void main() { |
409 | + lowp vec4 sourceColor = texture2D(source, qt_TexCoord0); |
410 | + gl_FragColor = mix(vec4(keyColorOut.rgb, 1.0) * sourceColor.a, sourceColor, step(threshold, distance(sourceColor.rgb / sourceColor.a, keyColorIn.rgb))) * qt_Opacity; |
411 | + }" |
412 | + } |
413 | + |
414 | UbuntuShape { |
415 | id: background |
416 | anchors.fill: parent |
417 | borderSource: "radius_idle.sci" |
418 | - visible: (color.a != 0.0) || backgroundSource |
419 | + visible: stroke ? false : ((color.a != 0.0) || backgroundSource) |
420 | image: backgroundSource |
421 | |
422 | - color: backgroundSource ? "#00000000" : (isGradient ? __colorHack(gradientProxy.topColor) : __colorHack(button.color)) |
423 | - gradientColor: backgroundSource ? "#00000000" : (isGradient ? __colorHack(gradientProxy.bottomColor) : __colorHack(button.color)) |
424 | + color: stroke ? "" : (backgroundSource ? "#00000000" : (isGradient ? __colorHack(gradientProxy.topColor) : __colorHack(button.color))) |
425 | + gradientColor: stroke ? "" : (backgroundSource ? "#00000000" : (isGradient ? __colorHack(gradientProxy.bottomColor) : __colorHack(button.color))) |
426 | } |
427 | |
428 | UbuntuShape { |
429 | id: backgroundPressed |
430 | anchors.fill: parent |
431 | - color: background.color |
432 | - gradientColor: background.gradientColor |
433 | + color: stroke ? strokeColor : background.color |
434 | + gradientColor: stroke ? strokeColor : background.gradientColor |
435 | borderSource: "radius_pressed.sci" |
436 | opacity: button.pressed ? 1.0 : 0.0 |
437 | Behavior on opacity { |
438 | @@ -106,7 +139,7 @@ |
439 | easing.type: Easing.Linear |
440 | } |
441 | } |
442 | - visible: background.visible |
443 | + visible: stroke || background.visible |
444 | } |
445 | |
446 | ButtonForeground { |
447 | @@ -120,7 +153,7 @@ |
448 | /* Pick either a clear or dark text color depending on the luminance of the |
449 | background color to maintain good contrast (works in most cases) |
450 | */ |
451 | - textColor: ColorUtils.luminance(button.color) <= 0.85 ? "#F3F3E7" : "#888888" |
452 | + textColor: ColorUtils.luminance(button.color) <= 0.85 && !(stroke && !pressed) ? "#F3F3E7" : "#888888" |
453 | iconSource: button.iconSource |
454 | iconPosition: button.iconPosition |
455 | iconSize: units.gu(3) |
456 | |
457 | === added file 'modules/Ubuntu/Components/Themes/Ambiance/artwork/stroke_button@27.png' |
458 | Binary files modules/Ubuntu/Components/Themes/Ambiance/artwork/stroke_button@27.png 1970-01-01 00:00:00 +0000 and modules/Ubuntu/Components/Themes/Ambiance/artwork/stroke_button@27.png 2014-07-29 14:43:30 +0000 differ |
459 | === modified file 'modules/Ubuntu/Components/qmldir' |
460 | --- modules/Ubuntu/Components/qmldir 2014-07-16 11:58:43 +0000 |
461 | +++ modules/Ubuntu/Components/qmldir 2014-07-29 14:43:30 +0000 |
462 | @@ -6,7 +6,7 @@ |
463 | ToolbarItems 0.1 ToolbarItems.qml |
464 | ToolbarButton 0.1 ToolbarButton.qml |
465 | MainView 0.1 MainView.qml |
466 | -Button 0.1 Button.qml |
467 | +Button 0.1 10/Button.qml |
468 | Panel 0.1 Panel.qml |
469 | internal DraggingArea DraggingArea.qml |
470 | Tab 0.1 Tab.qml |
471 | @@ -57,7 +57,7 @@ |
472 | ToolbarItems 1.0 ToolbarItems.qml |
473 | ToolbarButton 1.0 ToolbarButton.qml |
474 | MainView 1.0 MainView.qml |
475 | -Button 1.0 Button.qml |
476 | +Button 1.0 10/Button.qml |
477 | Panel 1.0 Panel.qml |
478 | Tab 1.0 Tab.qml |
479 | TabBar 1.0 TabBar.qml |
480 | @@ -93,6 +93,7 @@ |
481 | |
482 | #version 1.1 |
483 | ComboButton 1.1 ComboButton.qml |
484 | +Button 1.1 11/Button.qml |
485 | ProgressBar 1.1 ProgressBar11.qml |
486 | CrossFadeImage 1.1 CrossFadeImage11.qml |
487 | PullToRefresh 1.1 PullToRefresh.qml |
488 | |
489 | === modified file 'push_to_phone.sh' |
490 | --- push_to_phone.sh 2014-07-22 10:47:35 +0000 |
491 | +++ push_to_phone.sh 2014-07-29 14:43:30 +0000 |
492 | @@ -33,7 +33,7 @@ |
493 | echo modules/Ubuntu/Components/qmldir '->' /usr/lib/$ARCH/qt5/qml/Ubuntu/Components/ |
494 | adb push Ubuntu/Components/qmldir /usr/lib/$ARCH/qt5/qml/Ubuntu/Components/ |
495 | cd .. |
496 | -for i in ListItems Pickers Popups Colors Styles Themes artwork; do |
497 | +for i in 10 11 ListItems Pickers Popups Colors Styles Themes artwork; do |
498 | adb push modules/Ubuntu/Components/$i/ /usr/lib/$ARCH/qt5/qml/Ubuntu/Components/$i || exit 1 |
499 | done |
500 | # Autopilot tests should always match the Toolkit |
501 | |
502 | === modified file 'tests/autopilot/ubuntuuitoolkit/tests/custom_proxy_objects/test_main_view.py' |
503 | --- tests/autopilot/ubuntuuitoolkit/tests/custom_proxy_objects/test_main_view.py 2014-04-25 16:49:45 +0000 |
504 | +++ tests/autopilot/ubuntuuitoolkit/tests/custom_proxy_objects/test_main_view.py 2014-07-29 14:43:30 +0000 |
505 | @@ -134,7 +134,8 @@ |
506 | |
507 | def _go_to_page1(self): |
508 | button = self.main_view.select_single( |
509 | - 'Button', objectName='go_to_page1') |
510 | + 'Button', |
511 | + objectName='go_to_page1') |
512 | self.pointing_device.click_object(button) |
513 | |
514 | def test_go_back(self): |
515 | |
516 | === modified file 'tests/qmlapicheck.py' |
517 | --- tests/qmlapicheck.py 2014-07-18 15:58:50 +0000 |
518 | +++ tests/qmlapicheck.py 2014-07-29 14:43:30 +0000 |
519 | @@ -74,7 +74,14 @@ |
520 | inputfiles.append(fileinput.filename()) |
521 | fileinput.nextfile() |
522 | |
523 | -inputfiles.sort() |
524 | + |
525 | +# Sort filenames to maintain a consistent order |
526 | +# Get un/versioned files in the same order |
527 | +def skipversion(filename): |
528 | + for v in ['10', '11']: |
529 | + filename = filename.replace(v + '/', '') |
530 | + return filename |
531 | +inputfiles.sort(key=skipversion) |
532 | |
533 | hook = fileinput.hook_encoded('utf-8') |
534 | for line in fileinput.input(inputfiles, openhook=hook): |
FAILED: Continuous integration, rev:1114 jenkins. qa.ubuntu. com/job/ ubuntu- sdk-team- ubuntu- ui-toolkit- staging- ci/427/ jenkins. qa.ubuntu. com/job/ generic- deb-autopilot- utopic- touch/1071 jenkins. qa.ubuntu. com/job/ generic- mediumtests- utopic/ 960/console jenkins. qa.ubuntu. com/job/ ubuntu- sdk-team- ubuntu- ui-toolkit- staging- utopic- amd64-ci/ 259/console jenkins. qa.ubuntu. com/job/ ubuntu- sdk-team- ubuntu- ui-toolkit- staging- utopic- armhf-ci/ 259 jenkins. qa.ubuntu. com/job/ ubuntu- sdk-team- ubuntu- ui-toolkit- staging- utopic- armhf-ci/ 259/artifact/ work/output/ *zip*/output. zip jenkins. qa.ubuntu. com/job/ ubuntu- sdk-team- ubuntu- ui-toolkit- staging- utopic- i386-ci/ 259 jenkins. qa.ubuntu. com/job/ generic- deb-autopilot- runner- mako/1442 jenkins. qa.ubuntu. com/job/ generic- mediumtests- builder- utopic- armhf/1874 jenkins. qa.ubuntu. com/job/ generic- mediumtests- builder- utopic- armhf/1874/ artifact/ work/output/ *zip*/output. zip s-jenkins. ubuntu- ci:8080/ job/touch- flash-device/ 8679 jenkins. qa.ubuntu. com/job/ generic- mediumtests- builder- utopic- amd64/1103/ console
http://
Executed test runs:
SUCCESS: http://
FAILURE: http://
FAILURE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
FAILURE: http://
Click here to trigger a rebuild: s-jenkins. ubuntu- ci:8080/ job/ubuntu- sdk-team- ubuntu- ui-toolkit- staging- ci/427/ rebuild
http://