@@ -37,7 +37,8 @@ Item {
37 property alias horizontalAlignment: image.horizontalAlignment
37 property alias horizontalAlignment: image.horizontalAlignment
38 property alias verticalAlignment: image.verticalAlignment
38 property alias verticalAlignment: image.verticalAlignment
39 property alias sourceImage: image
39 property alias sourceImage: image
40− property alias borderSource: shape.borderSource
40+ property bool useUbuntuShape: true
41+ property string borderSource: "radius_idle.sci"
42 state: "default"
43 state: "default"
@@ -78,7 +79,7 @@ Item {
81− UbuntuShape {
82+ Loader {
83 objectName: "shape"
84 objectName: "shape"
84 height: root.initialHeight
85 height: root.initialHeight
@@ -88,13 +89,22 @@ Item {
88 opacity: 0
89 opacity: 0
89 visible: opacity != 0
90 visible: opacity != 0
92+ sourceComponent: useUbuntuShape ? ubuntuShapeComponent : itemComponent
94+ if (sourceComponent === ubuntuShapeComponent) {
96+ item.borderSource = Qt.binding(function() { return root.borderSource })
91− image: Image {
100+ Image {
92 id: image
101 id: image
93 objectName: "image"
102 objectName: "image"
95 property url nextSource
104 property url nextSource
96 property string format: image.implicitWidth > image.implicitHeight ? "landscape" : "portrait"
105 property string format: image.implicitWidth > image.implicitHeight ? "landscape" : "portrait"
107+ visible: !useUbuntuShape
98 fillMode: Image.PreserveAspectFit
108 fillMode: Image.PreserveAspectFit
99 asynchronous: true
109 asynchronous: true
100 cache: false
110 cache: false
@@ -109,6 +119,16 @@ Item {
128+ id: ubuntuShapeComponent
112 states: [
132 states: [
114 name: "default"
134 name: "default"