I have made the following changes intended for :
  CE:MW:Shared / qt-components
  CE:MW:Shared / libmeegotouch
  CE:MW:Shared / mthemedaemon

Please review and accept or decline.
BOSS has already run some checks on this request.
See the "Messages from BOSS" section below.

https://build.pub.meego.com//request/show/7188

Thank You,
Robin Burchell

[This message was auto-generated]

---

Request # 7188:

Messages from BOSS:

State: review at 2012-10-29T22:09:43 by bossbot

Reviews:
       new for Project:MTF:MW : 
       new for Project:MTF:MW : 
       new for Project:MTF:MW : 
       accepted by bossbot : Prechecks succeeded.
       new for CE-maintainers : Please replace this text with a review and 
approve/reject the review (not the SR). BOSS will take care of the rest

Changes:
  submit: Project:MTF:MW / qt-components -> CE:MW:Shared / qt-components
  
changes files:
--------------
--- qt-components.changes
+++ qt-components.changes
@@ -0,0 +1,8 @@
+* Mon Oct 29 2012 Robin Burchell <[email protected]> - 1.4.4
+- Fixes NEMO#511: Toolbar animations are incorrect (from faenil)
+- Performance improvement: don't use popup bubbles in Label, add 
SelectableLabel (from Robin)
+- Performance improvement: remove some unused imports (from Robin)
+- Performance improvement: Remove some unnecessary items in Sheet (from Robin)
+- Fix an obnoxious bug in sheet placement based on parent detection (from 
Robin)
+- Add a requirement to new mthemedaemon package
+

old:
----
  qt-components-1.4.3.tar.bz2

new:
----
  qt-components-1.4.4.tar.bz2

spec files:
-----------
--- qt-components.spec
+++ qt-components.spec
@@ -9,7 +9,7 @@
 # << macros
 
 Summary:    Qt Quick UX Components
-Version:    1.4.3
+Version:    1.4.4
 Release:    1
 Group:      System/Libraries
 License:    BSD
@@ -17,6 +17,7 @@
 Source0:    %{name}-%{version}.tar.bz2
 Source100:  qt-components.yaml
 Patch0:     xruxa-screen-resolution.patch
+Requires:   mthemedaemon
 BuildRequires:  pkgconfig(QtCore) >= 4.7.0
 BuildRequires:  pkgconfig(QtGui)
 BuildRequires:  pkgconfig(QtOpenGL)

other changes:
--------------

++++++ qt-components-1.4.3.tar.bz2 -> qt-components-1.4.4.tar.bz2
--- examples/meego/QmlComponentGallery/qml/LabelPage.qml
+++ examples/meego/QmlComponentGallery/qml/LabelPage.qml
@@ -39,7 +39,7 @@
 ****************************************************************************/
 
 import QtQuick 1.1
-import com.nokia.meego 1.1
+import com.nokia.meego 1.2
 
 Page {
     id: labelsPage
@@ -55,19 +55,18 @@
         anchors.fill: parent
         Column {
             id: col
-            Label { text: "Plain label"; platformSelectable: true; }
-            Label { text: "<a href=\"http://www.nokia.com\";>Invert</a> label 
via link"; platformSelectable: false;
+            SelectableLabel { text: "Plain label"; }
+            Label { text: "<a href=\"http://www.nokia.com\";>Invert</a> label 
via link"; 
                     onLinkActivated: platformStyle.inverted = 
!platformStyle.inverted; }
-            Label { text: "Bold label"; font.bold: true; platformSelectable: 
true; }
-            Label { text: "Italic label"; font.italic: true; 
platformSelectable: true; }
-            Label { text: "Large label"; font.pixelSize: 100;  
platformSelectable: true; }
+            SelectableLabel { text: "Bold label"; font.bold: true; }
+            SelectableLabel { text: "Italic label"; font.italic: true; }
+            SelectableLabel { text: "Large label"; font.pixelSize: 100;  }
 
-            Label {
+            SelectableLabel {
                 id: coloredLabel
                 text: "Large label with MouseArea"
                 width: parent.width
                 font.pixelSize: 48
-                platformSelectable: true
                 color: Qt.rgba(1.0, 0.5, 0.5, 1.0)
                 wrapMode: Text.WordWrap
 
@@ -81,17 +80,16 @@
 
             }
 
-            Label { text: "Red label"; color: "red"; platformSelectable: true; 
}
-            Label { text: "Elided labels are too long"; font.italic: true; 
width: 200; elide: Text.ElideRight; platformSelectable: true; }
+            SelectableLabel { text: "Red label"; color: "red"; }
+            SelectableLabel { text: "Elided labels are too long"; font.italic: 
true; width: 200; elide: Text.ElideRight; }
             Label { text: "Unselectable plain label <br>" }
-            Label {
+            SelectableLabel {
                 text: "<b>Wrapping label with a lot of text:</b> The quick 
brown fox jumps over the lazy dog. \
                 The quick brown fox jumps over the lazy dog. <br>The quick 
brown fox jumps over the lazy dog. \
                 The quick brown fox jumps over the lazy dog."
                 font.pixelSize: 30
                 wrapMode: Text.Wrap
                 width: labelsPage.width
-                platformSelectable: true            
             }
 
         }
--- src/meego/Label.qml
+++ src/meego/Label.qml
@@ -41,172 +41,18 @@
 import QtQuick 1.1
 import "." 1.0
 
-import "EditBubble.js" as Popup
-import "UIConstants.js" as UI
-import "SelectionHandles.js" as SelectionHandles
-
 Text {
     id: root
 
     // Common public API
-    property bool platformSelectable: false
     // Styling for the Label
     property Style platformStyle: LabelStyle{}
 
-    //Deprecated, TODO Remove this at some point
-    property alias style: root.platformStyle
-
-    property bool platformEnableEditBubble: true
 
     font.family: platformStyle.fontFamily
     font.pixelSize: platformStyle.fontPixelSize
     color: platformStyle.textColor
-
     wrapMode: Text.Wrap
 
-    QtObject {
-        id: privateApi
-        property color __textColor
-    }
-
     horizontalAlignment: locale.directionForText !== undefined && 
locale.directionForText(root.text) === 1 /* Qt::RightToLeft */ ? 
Text.AlignRight : Text.AlignLeft
-
-    MouseArea {
-        id: mouseFilter
-        anchors.fill: parent
-
-        enabled: platformSelectable
-
-        Component {
-            id: textSelectionComponent
-
-            TextEdit {
-                id: selectionTextEdit
-
-                property bool canPaste: false
-
-                readOnly: true
-                selectByMouse: true
-
-                // TODO: For every new QML release sync new QML TextEdit 
properties:
-                clip : root.clip
-                color : privateApi.__textColor
-                font.bold : root.font.bold
-                font.capitalization : root.font.capitalization
-                font.family : root.font.family
-                font.italic : root.font.italic
-                font.letterSpacing : root.font.letterSpacing
-                font.pixelSize : root.font.pixelSize
-                font.pointSize : root.font.pointSize
-                font.strikeout : root.font.strikeout
-                font.underline : root.font.underline
-                font.weight : root.font.weight
-                font.wordSpacing : root.font.wordSpacing
-                horizontalAlignment : root.horizontalAlignment
-                smooth : root.smooth
-                text : root.text
-                textFormat : root.textFormat
-                verticalAlignment : root.verticalAlignment
-                wrapMode : root.wrapMode
-
-                mouseSelectionMode : TextEdit.SelectWords
-
-                selectedTextColor : platformStyle.selectedTextColor
-                selectionColor : platformStyle.selectionColor
-
-                Component.onCompleted: {
-                    if ( root.elide == Text.ElideNone ) {
-                        width = root.width;
-                        height = root.height;
-                    }
-                    privateApi.__textColor = root.color;
-                    root.color = Qt.rgba(0, 0, 0, 0);
-                    selectWord();
-                    if (platformEnableEditBubble) {
-                         
Popup.open(selectionTextEdit,selectionTextEdit.positionToRectangle(selectionTextEdit.cursorPosition));
-                         SelectionHandles.open( selectionTextEdit )
-                    }
-                }
-                Component.onDestruction: {
-                    root.color = privateApi.__textColor;
-
-                    if (Popup.isOpened(selectionTextEdit)) {
-                        Popup.close(selectionTextEdit);
-                    }
-                    if (SelectionHandles.isOpened(selectionTextEdit)) {
-                        SelectionHandles.close(selectionTextEdit);
-                    }
-                }
-
-                onSelectedTextChanged: {
-                    if (selectionTextEdit.selectionStart == 
selectionTextEdit.selectionEnd) {
-                        selectionTextEdit.selectWord();
-                    }
-                    if (Popup.isOpened(selectionTextEdit)) {
-                        Popup.close(selectionTextEdit);
-                    }
-                }
-
-                MouseFilter {
-                    id: mouseSelectionFilter
-                    anchors.fill: parent
-
-                    onFinished: {
-                        if (platformEnableEditBubble) {
-                            
Popup.open(selectionTextEdit,selectionTextEdit.positionToRectangle(selectionTextEdit.cursorPosition));
-                        }
-                    }
-                }
-
-                InverseMouseArea {
-                    anchors.fill: parent
-                    enabled: textSelectionLoader.sourceComponent != undefined
-
-                    onPressedOutside: { // Pressed instead of Clicked to 
prevent selection overlap
-                        if (Popup.isOpened(selectionTextEdit) && ((mouseX > 
Popup.geometry().left && mouseX < Popup.geometry().right) &&
-                                                       (mouseY > 
Popup.geometry().top && mouseY < Popup.geometry().bottom))) {
-                            return
-                        }
-                        if (SelectionHandles.isOpened(selectionTextEdit)) {
-                            if 
(SelectionHandles.leftHandleContains(Qt.point(mouseX, mouseY))) {
-                                return
-                            }
-                            if 
(SelectionHandles.rightHandleContains(Qt.point(mouseX, mouseY))) {
-                                return
-                            }
-                        }
-                        textSelectionLoader.sourceComponent = undefined;
-                    }
-                    onClickedOutside: { // Handles Copy click
-                        if (SelectionHandles.isOpened(selectionTextEdit) &&
-                            ( 
SelectionHandles.leftHandleContains(Qt.point(mouseX, mouseY)) ||
-                              
SelectionHandles.rightHandleContains(Qt.point(mouseX, mouseY)) ) ) {
-                            return
-                        }
-                        if (Popup.isOpened(selectionTextEdit) && ((mouseX > 
Popup.geometry().left && mouseX < Popup.geometry().right) &&
-                                                       (mouseY > 
Popup.geometry().top && mouseY < Popup.geometry().bottom))) {
-                            textSelectionLoader.sourceComponent = undefined;
-                            return;
-                        }
-                    }
-                }
-            }
-        }
-        Loader {
-          id: textSelectionLoader
-        }
-
-        onPressAndHold:{
-            if (root.platformSelectable == false) return; // keep old behavior 
if selection is not requested
-
-            textSelectionLoader.sourceComponent = textSelectionComponent;
-
-            // select word that is covered by long press:
-            var cursorPos = textSelectionLoader.item.positionAt(mouse.x, 
mouse.y);
-            textSelectionLoader.item.cursorPosition = cursorPos;
-            if (platformEnableEditBubble) {
-                
Popup.open(textSelectionLoader.item,textSelectionLoader.item.positionToRectangle(textSelectionLoader.item.cursorPosition));
-            }
-        }
-    }
 }
--- src/meego/SelectableLabel.qml
+++ src/meego/SelectableLabel.qml
@@ -0,0 +1,197 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation ([email protected])
+**
+** This file is part of the Qt Components project.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+**   * Redistributions of source code must retain the above copyright
+**     notice, this list of conditions and the following disclaimer.
+**   * Redistributions in binary form must reproduce the above copyright
+**     notice, this list of conditions and the following disclaimer in
+**     the documentation and/or other materials provided with the
+**     distribution.
+**   * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+**     the names of its contributors may be used to endorse or promote
+**     products derived from this software without specific prior written
+**     permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 1.1
+import "." 1.0
+
+import "EditBubble.js" as Popup
+import "SelectionHandles.js" as SelectionHandles
+
+Label {
+    id: root
+
+    // Common public API
+    property bool platformSelectable: true
+    property bool platformEnableEditBubble: true
+
+    QtObject {
+        id: privateApi
+        property color __textColor
+    }
+
+    MouseArea {
+        id: mouseFilter
+        anchors.fill: parent
+
+        enabled: platformSelectable
+
+        Component {
+            id: textSelectionComponent
+
+            TextEdit {
+                id: selectionTextEdit
+
+                property bool canPaste: false
+
+                readOnly: true
+                selectByMouse: true
+
+                // TODO: For every new QML release sync new QML TextEdit 
properties:
+                clip : root.clip
+                color : privateApi.__textColor
+                font.bold : root.font.bold
+                font.capitalization : root.font.capitalization
+                font.family : root.font.family
+                font.italic : root.font.italic
+                font.letterSpacing : root.font.letterSpacing
+                font.pixelSize : root.font.pixelSize
+                font.pointSize : root.font.pointSize
+                font.strikeout : root.font.strikeout
+                font.underline : root.font.underline
+                font.weight : root.font.weight
+                font.wordSpacing : root.font.wordSpacing
+                horizontalAlignment : root.horizontalAlignment
+                smooth : root.smooth
+                text : root.text
+                textFormat : root.textFormat
+                verticalAlignment : root.verticalAlignment
+                wrapMode : root.wrapMode
+
+                mouseSelectionMode : TextEdit.SelectWords
+
+                selectedTextColor : platformStyle.selectedTextColor
+                selectionColor : platformStyle.selectionColor
+
+                Component.onCompleted: {
+                    if ( root.elide == Text.ElideNone ) {
+                        width = root.width;
+                        height = root.height;
+                    }
+                    privateApi.__textColor = root.color;
+                    root.color = Qt.rgba(0, 0, 0, 0);
+                    selectWord();
+                    if (platformEnableEditBubble) {
+                         
Popup.open(selectionTextEdit,selectionTextEdit.positionToRectangle(selectionTextEdit.cursorPosition));
+                         SelectionHandles.open( selectionTextEdit )
+                    }
+                }
+                Component.onDestruction: {
+                    root.color = privateApi.__textColor;
+
+                    if (Popup.isOpened(selectionTextEdit)) {
+                        Popup.close(selectionTextEdit);
+                    }
+                    if (SelectionHandles.isOpened(selectionTextEdit)) {
+                        SelectionHandles.close(selectionTextEdit);
+                    }
+                }
+
+                onSelectedTextChanged: {
+                    if (selectionTextEdit.selectionStart == 
selectionTextEdit.selectionEnd) {
+                        selectionTextEdit.selectWord();
+                    }
+                    if (Popup.isOpened(selectionTextEdit)) {
+                        Popup.close(selectionTextEdit);
+                    }
+                }
+
+                MouseFilter {
+                    id: mouseSelectionFilter
+                    anchors.fill: parent
+
+                    onFinished: {
+                        if (platformEnableEditBubble) {
+                            
Popup.open(selectionTextEdit,selectionTextEdit.positionToRectangle(selectionTextEdit.cursorPosition));
+                        }
+                    }
+                }
+
+                InverseMouseArea {
+                    anchors.fill: parent
+                    enabled: textSelectionLoader.sourceComponent != undefined
+
+                    onPressedOutside: { // Pressed instead of Clicked to 
prevent selection overlap
+                        if (Popup.isOpened(selectionTextEdit) && ((mouseX > 
Popup.geometry().left && mouseX < Popup.geometry().right) &&
+                                                       (mouseY > 
Popup.geometry().top && mouseY < Popup.geometry().bottom))) {
+                            return
+                        }
+                        if (SelectionHandles.isOpened(selectionTextEdit)) {
+                            if 
(SelectionHandles.leftHandleContains(Qt.point(mouseX, mouseY))) {
+                                return
+                            }
+                            if 
(SelectionHandles.rightHandleContains(Qt.point(mouseX, mouseY))) {
+                                return
+                            }
+                        }
+                        textSelectionLoader.sourceComponent = undefined;
+                    }
+                    onClickedOutside: { // Handles Copy click
+                        if (SelectionHandles.isOpened(selectionTextEdit) &&
+                            ( 
SelectionHandles.leftHandleContains(Qt.point(mouseX, mouseY)) ||
+                              
SelectionHandles.rightHandleContains(Qt.point(mouseX, mouseY)) ) ) {
+                            return
+                        }
+                        if (Popup.isOpened(selectionTextEdit) && ((mouseX > 
Popup.geometry().left && mouseX < Popup.geometry().right) &&
+                                                       (mouseY > 
Popup.geometry().top && mouseY < Popup.geometry().bottom))) {
+                            textSelectionLoader.sourceComponent = undefined;
+                            return;
+                        }
+                    }
+                }
+            }
+        }
+        Loader {
+          id: textSelectionLoader
+        }
+
+        onPressAndHold:{
+            if (root.platformSelectable == false) return; // keep old behavior 
if selection is not requested
+
+            textSelectionLoader.sourceComponent = textSelectionComponent;
+
+            // select word that is covered by long press:
+            var cursorPos = textSelectionLoader.item.positionAt(mouse.x, 
mouse.y);
+            textSelectionLoader.item.cursorPosition = cursorPos;
+            if (platformEnableEditBubble) {
+                
Popup.open(textSelectionLoader.item,textSelectionLoader.item.positionToRectangle(textSelectionLoader.item.cursorPosition));
+            }
+        }
+    }
+}
--- src/meego/Sheet.qml
+++ src/meego/Sheet.qml
@@ -41,15 +41,15 @@
 import QtQuick 1.1
 import "." 1.0
 
-Item {
+MouseArea {
     id: root
 
     width: parent ? parent.width : 0
     height: parent ? parent.height : 0
 
-    property alias title: titleBar.children 
+    property alias title: header.children 
     property alias content: contentField.children
-    property alias buttons: buttonRow.children
+    property alias buttons: header.children
     property Item visualParent
     property int status: DialogStatus.Closed
 
@@ -109,20 +109,14 @@
         return undefined;
     }
 
-    MouseArea {
-        id: blockMouseInput
-        anchors.fill: parent
-    }
-    
     Item {
         id: sheet
 
         //when the sheet is part of a page do nothing
         //when the sheet is a direct child of a PageStackWindow, consider the 
status bar
-        property int statusBarOffset: (typeof __isPage != "undefined") ? 0
-                                     : (typeof __statusBarHeight == 
"undefined") ? 0
-                                     :  __statusBarHeight
-        
+        property int statusBarOffset: (parent.objectName != "windowContent") ? 0
+                                       : (typeof __statusBarHeight == 
"undefined") ? 0
+                                       : __statusBarHeight
         width: parent.width
         height: parent.height - statusBarOffset
 
@@ -174,61 +168,46 @@
         ]
         
         BorderImage {
+            id: contentField
             source: platformStyle.background
             width: parent.width
             anchors.top: header.bottom
             anchors.bottom: parent.bottom
-            Item {
-                id: contentField
-                anchors.fill: parent
-            }
         }
 
-        Item {
+        BorderImage {
             id: header
             width: parent.width
-            height: headerBackground.height
-            BorderImage {
-                id: headerBackground
-                border {
-                    left: platformStyle.headerBackgroundMarginLeft
-                    right: platformStyle.headerBackgroundMarginRight
-                    top: platformStyle.headerBackgroundMarginTop
-                    bottom: platformStyle.headerBackgroundMarginBottom
-                }
-                source: platformStyle.headerBackground
-                width: header.width
-            }
-            Item {
-                id: buttonRow
-                anchors.fill: parent
-                SheetButton {
-                    id: rejectButton
-                    objectName: "rejectButton"
-                    anchors.left: parent.left
-                    anchors.leftMargin: 
root.platformStyle.rejectButtonLeftMargin
-                    anchors.verticalCenter: parent.verticalCenter
-                    visible: text != ""
-                    onClicked: close()
-                }
-                SheetButton {
-                    id: acceptButton
-                    objectName: "acceptButton"
-                    anchors.right: parent.right
-                    anchors.rightMargin: 
root.platformStyle.acceptButtonRightMargin
-                    anchors.verticalCenter: parent.verticalCenter
-                    platformStyle: SheetButtonAccentStyle { }
-                    visible: text != ""     
-                    onClicked: close()
-                }
-                Component.onCompleted: {
-                    acceptButton.clicked.connect(accepted)
-                    rejectButton.clicked.connect(rejected)
-                }
-            }
-            Item {
-                id: titleBar
-                anchors.fill: parent
+            border {
+                left: platformStyle.headerBackgroundMarginLeft
+                right: platformStyle.headerBackgroundMarginRight
+                top: platformStyle.headerBackgroundMarginTop
+                bottom: platformStyle.headerBackgroundMarginBottom
+            }
+            source: platformStyle.headerBackground
+
+            SheetButton {
+                id: rejectButton
+                objectName: "rejectButton"
+                anchors.left: parent.left
+                anchors.leftMargin: root.platformStyle.rejectButtonLeftMargin
+                anchors.verticalCenter: parent.verticalCenter
+                visible: text != ""
+                onClicked: close()
+            }
+            SheetButton {
+                id: acceptButton
+                objectName: "acceptButton"
+                anchors.right: parent.right
+                anchors.rightMargin: root.platformStyle.acceptButtonRightMargin
+                anchors.verticalCenter: parent.verticalCenter
+                platformStyle: SheetButtonAccentStyle { }
+                visible: text != ""     
+                onClicked: close()
+            }
+            Component.onCompleted: {
+                acceptButton.clicked.connect(accepted)
+                rejectButton.clicked.connect(rejected)
             }
         }
     }
--- src/meego/ToolBar.qml
+++ src/meego/ToolBar.qml
@@ -113,15 +113,15 @@
             PropertyChanges { target: root; height: 0; visible: false; }
         },
         State {
-            name: ""
-            when: !(privateVisibility == ToolBarVisibility.Visible || tools == 
null)
+            name: "visible"
+            when: (privateVisibility == ToolBarVisibility.Visible && tools != 
null)
             PropertyChanges { target: root; height: bgImage.height; visible: 
true; }
         }
     ]
 
     // Transition between active and inactive states.
     transitions: Transition {
-        from: ""; to: "hidden"; reversible: true;
+        from: "visible"; to: "hidden"; reversible: true;
         SequentialAnimation {
             PropertyAnimation {
                 properties: "height";
@@ -182,7 +182,7 @@
 
         // select container states based on the transition animation
         var transitions = {
-            "set":      { "new": "",        "old": "hidden" },
+            "set":      { "new": "default",        "old": "hidden" },
             "push":     { "new": "right",   "old": "left" },
             "pop":      { "new": "left",    "old": "right" },
             "replace":  { "new": "front",   "old": "back" }
@@ -203,7 +203,7 @@
         __currentContainer.state = animation["old"];
         if (tools) {
             container.state = animation["new"];
-            container.state = "";
+            container.state = "default";
         }
 
         __currentContainer = container;
@@ -261,6 +261,11 @@
                     PropertyChanges { target: container; visible: true }
                     PropertyChanges { target: container; scale: 0.85; opacity: 
0.0 }
                 },
+                State {
+                    name: "default"
+                    PropertyChanges { target: container; visible: true }
+                    PropertyChanges { target: container; scale: 1.0; opacity: 
1.0; x: 0.0 }
+                },
                 // Inactive state.
                 State {
                     name: "hidden"
@@ -272,7 +277,7 @@
             transitions: [
                 // Pop entry and push exit transition.
                 Transition {
-                    from: ""; to: "left"; reversible: true
+                    from: "default"; to: "left"; reversible: true
                     SequentialAnimation {
                         PropertyAnimation { properties: "x,opacity"; 
easing.type: Easing.InCubic; duration: platformStyle.contentTransitionDuration 
/ 2 }
                         PauseAnimation { duration: 
platformStyle.contentTransitionDuration / 2 }
@@ -281,7 +286,7 @@
                 },
                 // Push entry and pop exit transition.
                 Transition {
-                    from: ""; to: "right"; reversible: true
+                    from: "default"; to: "right"; reversible: true
                     SequentialAnimation {
                         PropertyAnimation { properties: "x,opacity"; 
easing.type: Easing.InCubic; duration: platformStyle.contentTransitionDuration 
/ 2 }
                         PauseAnimation { duration: 
platformStyle.contentTransitionDuration / 2 }
@@ -290,14 +295,14 @@
                 },
                 Transition {
                     // Replace entry transition.
-                    from: "front"; to: "";
+                    from: "front"; to: "default";
                     SequentialAnimation {
                         PropertyAnimation { properties: "scale,opacity"; 
easing.type: Easing.InOutExpo; duration: 
platformStyle.contentTransitionDuration }
                     }
                 },
                 Transition {
                     // Replace exit transition.
-                    from: ""; to: "back";
+                    from: "default"; to: "back";
                     SequentialAnimation {
                         PropertyAnimation { properties: "scale,opacity"; 
easing.type: Easing.InOutExpo; duration: 
platformStyle.contentTransitionDuration }
                         ScriptAction { script: if (state == "back") state = 
"hidden" }
--- src/meego/meego.pro
+++ src/meego/meego.pro
@@ -169,6 +169,7 @@
         style/MenuStyle.qml \
         Fader.qml \
         Label.qml \
+        SelectableLabel.qml \
         style/LabelStyle.qml \
         AbstractMenu.qml \
         Menu.qml \
--- src/meego/qmldir
+++ src/meego/qmldir
@@ -21,6 +21,7 @@
 MultiSelectionDialog 1.0 MultiSelectionDialog.qml
 SelectionDialogStyle 1.0 SelectionDialogStyle.qml
 Label 1.0 Label.qml
+SelectableLabel 1.2 SelectableLabel.qml
 LabelStyle 1.0 LabelStyle.qml
 Menu 1.0 Menu.qml
 MenuLayout 1.0 MenuLayout.qml

++++++ qt-components.yaml
--- qt-components.yaml
+++ qt-components.yaml
@@ -1,6 +1,6 @@
 Name: qt-components
 Summary: Qt Quick UX Components
-Version: 1.4.3
+Version: 1.4.4
 Release: 1
 Group: System/Libraries
 License: BSD
@@ -24,6 +24,8 @@
     - contextsubscriber-1.0
     - maliit-1.0
     - mlite
+Requires:
+    - mthemedaemon
 Configure: none
 Builder: make
 RunFdupes:

  submit: Project:MTF:MW / libmeegotouch -> CE:MW:Shared / libmeegotouch
  
changes files:
--------------
--- libmeegotouch.changes
+++ libmeegotouch.changes
@@ -0,0 +1,5 @@
+* Mon Oct 29 2012 Robin Burchell <[email protected]> - 0.30.0
+- Merge all pending patches from OBS
+- Split mthemedaemon out into a seperate package/source tree
+- Depend on new mthemedaemon package
+

old:
----
  0001-reformat-warning-messages-to-ease-parsing.patch
  0002-add-configurable-logging-to-file-0.26.1.patch
  BMC_22845_move-var-run-to-home.patch
  BMC_4068_default_autodetect_conf.patch
  BMC_8268_show_statusbar_on_n900.patch
  allow-cursor-control-env.patch
  arm_egl_visibility.patch
  libmeegotouch-0.24.21-no-werror.patch
  libmeegotouch-0.25.6-link-with-missing-libs.patch
  libmeegotouch-0.26.1-fix-build.patch
  libmeegotouch-0.26.1-fix-inotify-build.patch
  libmeegotouch-0.26.1-support-theme-symlinks.patch
  meegotouch-libmeegotouch-0.26.1.tar.gz
  mthemedaemon.desktop
  mthemedaemon.service
  revert-MPanRecognizerTouch-usage-on-arm.patch

new:
----
  libmeegotouch-0.30.0.tar.bz2

spec files:
-----------
--- libmeegotouch.spec
+++ libmeegotouch.spec
@@ -9,31 +9,17 @@
 # << macros
 
 Summary:    MeeGo Touch Framework
-Version:    0.26.1
+Version:    0.30.0
 Release:    1
 Group:      System/Libraries
 License:    LGPLv2.1
 URL:        http://meego.gitorious.org/meegotouch/libmeegotouch
-Source0:    meegotouch-libmeegotouch-%{version}.tar.gz
+Source0:    %{name}-%{version}.tar.bz2
 Source1:    libmeegotouch.sh
-Source2:    mthemedaemon.desktop
-Source3:    mthemedaemon.service
 Source100:  libmeegotouch.yaml
-Patch0:     arm_egl_visibility.patch
-Patch1:     BMC_8268_show_statusbar_on_n900.patch
-Patch2:     BMC_4068_default_autodetect_conf.patch
-Patch3:     BMC_22845_move-var-run-to-home.patch
-Patch4:     revert-MPanRecognizerTouch-usage-on-arm.patch
-Patch5:     allow-cursor-control-env.patch
-Patch6:     libmeegotouch-0.25.6-link-with-missing-libs.patch
-Patch7:     libmeegotouch-0.24.21-no-werror.patch
-Patch8:     0001-reformat-warning-messages-to-ease-parsing.patch
-Patch9:     0002-add-configurable-logging-to-file-0.26.1.patch
-Patch10:     libmeegotouch-0.26.1-support-theme-symlinks.patch
-Patch11:     libmeegotouch-0.26.1-fix-build.patch
-Patch12:     libmeegotouch-0.26.1-fix-inotify-build.patch
 Requires:   meegotouch-theme >= 0.20.79
 Requires:   libmeegotouch-l10n-en
+Requires:   mthemedaemon
 Requires(post): /sbin/ldconfig
 Requires(postun): /sbin/ldconfig
 BuildRequires:  pkgconfig(QtOpenGL)
@@ -188,34 +174,8 @@
 
 
 %prep
-%setup -q -n meegotouch-%{name}
+%setup -q -n %{name}
 
-# arm_egl_visibility.patch
-%patch0 -p1
-# BMC_8268_show_statusbar_on_n900.patch
-%patch1 -p1
-# BMC_4068_default_autodetect_conf.patch
-%patch2 -p1
-# BMC_22845_move-var-run-to-home.patch
-%patch3 -p1
-# revert-MPanRecognizerTouch-usage-on-arm.patch
-%patch4 -p1
-# allow-cursor-control-env.patch
-%patch5 -p1
-# libmeegotouch-0.25.6-link-with-missing-libs.patch
-%patch6 -p1
-# libmeegotouch-0.24.21-no-werror.patch
-%patch7 -p1
-# 0001-reformat-warning-messages-to-ease-parsing.patch
-%patch8 -p1
-# 0002-add-configurable-logging-to-file-0.26.1.patch
-%patch9 -p1
-# libmeegotouch-0.26.1-support-theme-symlinks.patch
-%patch10 -p1
-# libmeegotouch-0.26.1-fix-build.patch
-%patch11 -p1
-# libmeegotouch-0.26.1-fix-inotify-build.patch
-%patch12 -p1
 # >> setup
 # << setup
 
@@ -255,15 +215,9 @@
 # << install pre
 mkdir -p %{buildroot}%{_sysconfdir}/profile.d
 cp -a %{SOURCE1} %{buildroot}%{_sysconfdir}/profile.d
-mkdir -p %{buildroot}%{_sysconfdir}/xdg/autostart
-cp -a %{SOURCE2} %{buildroot}%{_sysconfdir}/xdg/autostart
-mkdir -p %{buildroot}%{_libdir}/systemd/user/
-cp -a %{SOURCE3} %{buildroot}%{_libdir}/systemd/user/
 
 
 # >> install post
-# Create the mthemedaemon cache directory
-mkdir -p %{buildroot}/var/cache/meegotouch
 # Avoid mmoc confusion: ship script on ARM and binary on IA32
 %ifarch %{ix86}
 rm -f %{buildroot}%{_bindir}/mmoc.pl
@@ -281,23 +235,13 @@
 
 %post -p /sbin/ldconfig
 
-%postun
-/sbin/ldconfig
-# >> postun
-if [ -d /var/cache/meegotouch ]; then
-rm -rf /var/cache/meegotouch
-fi
-# << postun
+%postun -p /sbin/ldconfig
 
 %files
 %defattr(-,root,root,-)
 # >> files
-%config %{_sysconfdir}/meegotouch/themedaemonpriorities.conf
 %config %{_sysconfdir}/profile.d/libmeegotouch.sh
-%config %{_sysconfdir}/xdg/autostart/mthemedaemon.desktop
-%{_libdir}/systemd/user/mthemedaemon.service
 %{_bindir}/mservicemapper
-%{_bindir}/mthemedaemon
 %{_libdir}/libmeegotouchcore.so.*
 %{_libdir}/libmeegotouchextensions.so.*
 %{_libdir}/libmeegotouchsettings.so.*
@@ -334,7 +278,6 @@
 %{_datadir}/themes/base/meegotouch/widgetsgallery/svg/multimedia-overlays.svg
 %{_datadir}/l10n/meegotouch/libmeegotouch.qm
 %{_datadir}/l10n/meegotouch/widgetsgallery.qm
-%attr(1777, -, -) /var/cache/meegotouch
 # << files
 
 %files devel

other changes:
--------------

++++++ libmeegotouch-0.30.0.tar.bz2 (new)

++++++ libmeegotouch.yaml
--- libmeegotouch.yaml
+++ libmeegotouch.yaml
@@ -1,32 +1,18 @@
 Name: libmeegotouch
 Summary: MeeGo Touch Framework
-Version: 0.26.1
+Version: 0.30.0
 Release: 1
 Group: System/Libraries
 License: LGPLv2.1
 URL: http://meego.gitorious.org/meegotouch/libmeegotouch
 Sources:
-    - "meegotouch-libmeegotouch-%{version}.tar.gz"
-
-Patches:
-    - arm_egl_visibility.patch
-    - BMC_8268_show_statusbar_on_n900.patch
-    - BMC_4068_default_autodetect_conf.patch
-    - BMC_22845_move-var-run-to-home.patch
-    - revert-MPanRecognizerTouch-usage-on-arm.patch
-    - allow-cursor-control-env.patch
-    - libmeegotouch-0.25.6-link-with-missing-libs.patch
-    - libmeegotouch-0.24.21-no-werror.patch
-    - 0001-reformat-warning-messages-to-ease-parsing.patch
-    - 0002-add-configurable-logging-to-file-0.26.1.patch
-    - libmeegotouch-0.26.1-support-theme-symlinks.patch
-    - libmeegotouch-0.26.1-fix-build.patch
-    - libmeegotouch-0.26.1-fix-inotify-build.patch
+    - "%{name}-%{version}.tar.bz2"
 Description: |
     Qt based MeeGo Touch Framework for developing touch based user interfaces.
 Requires:
     - meegotouch-theme >= 0.20.79
     - libmeegotouch-l10n-en
+    - mthemedaemon
 PkgBR:
     - doxygen
     - icu
@@ -57,9 +43,6 @@
 Builder: none
 ExtraSources:
     - libmeegotouch.sh;%{_sysconfdir}/profile.d
-    - mthemedaemon.desktop;%{_sysconfdir}/xdg/autostart
-    - mthemedaemon.service;%{_libdir}/systemd/user/
-
 RunFdupes:
     - "%{_datadir}"
 UseAsNeeded: no

++++++ deleted files:
--- 0001-reformat-warning-messages-to-ease-parsing.patch
--- 0002-add-configurable-logging-to-file-0.26.1.patch
--- BMC_22845_move-var-run-to-home.patch
--- BMC_4068_default_autodetect_conf.patch
--- BMC_8268_show_statusbar_on_n900.patch
--- allow-cursor-control-env.patch
--- arm_egl_visibility.patch
--- libmeegotouch-0.24.21-no-werror.patch
--- libmeegotouch-0.25.6-link-with-missing-libs.patch
--- libmeegotouch-0.26.1-fix-build.patch
--- libmeegotouch-0.26.1-fix-inotify-build.patch
--- libmeegotouch-0.26.1-support-theme-symlinks.patch
--- meegotouch-libmeegotouch-0.26.1.tar.gz
--- mthemedaemon.desktop
--- mthemedaemon.service
--- revert-MPanRecognizerTouch-usage-on-arm.patch

  submit: Project:MTF:MW / mthemedaemon -> CE:MW:Shared / mthemedaemon
  
changes files:
--------------

++++++ new changes file:
--- mthemedaemon.changes
+++ mthemedaemon.changes
@@ -0,0 +1,3 @@
+* Mon Oct 29 2012 Robin Burchell <[email protected]> - 1.0.0
+- Initial packaging, split out from libmeegotouch.
+- Remove libmeegotouch dependency.

new:
----
  mthemedaemon-1.0.0.tar.bz2
  mthemedaemon.changes
  mthemedaemon.desktop
  mthemedaemon.service
  mthemedaemon.spec
  mthemedaemon.yaml

spec files:
-----------

++++++ new spec file:
--- mthemedaemon.spec
+++ mthemedaemon.spec
@@ -0,0 +1,81 @@
+# 
+# Do NOT Edit the Auto-generated Part!
+# Generated by: spectacle version 0.25
+# 
+
+Name:       mthemedaemon
+
+# >> macros
+# << macros
+
+Summary:    Shared theme resource loader
+Version:    1.0.0
+Release:    1
+Group:      System/Libraries
+License:    LGPLv2.1
+URL:        https://github.com/nemomobile/mthemedaemon
+Source0:    %{name}-%{version}.tar.bz2
+Source1:    mthemedaemon.desktop
+Source2:    mthemedaemon.service
+Source100:  mthemedaemon.yaml
+Requires:   nemo-theme-default
+BuildRequires:  pkgconfig(QtOpenGL)
+BuildRequires:  pkgconfig(mlite)
+BuildRequires:  fdupes
+
+%description
+Daemon for sharing theme pixmaps
+
+
+
+%prep
+%setup -q -n %{name}
+
+# >> setup
+# << setup
+
+%build
+# >> build pre
+# << build pre
+
+%qmake 
+
+make %{?jobs:-j%jobs}
+
+# >> build post
+# << build post
+
+%install
+rm -rf %{buildroot}
+# >> install pre
+# << install pre
+%qmake_install
+mkdir -p %{buildroot}%{_sysconfdir}/xdg/autostart
+cp -a %{SOURCE1} %{buildroot}%{_sysconfdir}/xdg/autostart
+mkdir -p %{buildroot}%{_libdir}/systemd/user/
+cp -a %{SOURCE2} %{buildroot}%{_libdir}/systemd/user/
+
+
+# >> install post
+# Create the mthemedaemon cache directory
+mkdir -p %{buildroot}/var/cache/meegotouch
+# << install post
+
+%fdupes  %{buildroot}/%{_datadir}
+
+%postun
+# >> postun
+if [ -d /var/cache/meegotouch ]; then
+rm -rf /var/cache/meegotouch
+fi
+# << postun
+
+%files
+%defattr(-,root,root,-)
+%{_bindir}/mthemedaemon
+%{_libdir}/systemd/user/mthemedaemon.service
+%{_sysconfdir}/xdg/autostart/mthemedaemon.desktop
+%{_sysconfdir}/meegotouch/themedaemonpriorities.conf
+# >> files
+%attr(1777, -, -) /var/cache/meegotouch
+# << files

other changes:
--------------

++++++ mthemedaemon-1.0.0.tar.bz2 (new)

++++++ mthemedaemon.desktop (new)
--- mthemedaemon.desktop
+++ mthemedaemon.desktop
@@ -0,0 +1,5 @@
+[Desktop Entry]
+Exec=/usr/bin/mthemedaemon
+X-Moblin-Priority=Highest
+X-Meego-Watchdog=Restart
+

++++++ mthemedaemon.service (new)
--- mthemedaemon.service
+++ mthemedaemon.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=The MTF theme daemon
+After=xorg.target
+Requires=dbus.socket xorg.target
+
+[Service]
+ExecStart=/usr/bin/mthemedaemon
+
+

++++++ mthemedaemon.yaml (new)
--- mthemedaemon.yaml
+++ mthemedaemon.yaml
@@ -0,0 +1,28 @@
+Name: mthemedaemon
+Summary: Shared theme resource loader
+Version: 1.0.0
+Release: 1
+Group: System/Libraries
+License: LGPLv2.1
+URL: https://github.com/nemomobile/mthemedaemon
+Sources:
+    - "%{name}-%{version}.tar.bz2"
+Description: |
+    Daemon for sharing theme pixmaps
+Requires:
+    - nemo-theme-default
+PkgConfigBR:
+    - QtOpenGL
+    - mlite
+Configure: none
+Builder: qmake
+ExtraSources:
+    - mthemedaemon.desktop;%{_sysconfdir}/xdg/autostart
+    - mthemedaemon.service;%{_libdir}/systemd/user/
+RunFdupes:
+    - "%{_datadir}"
+Files:
+    - "%{_bindir}/mthemedaemon"
+    - "%{_libdir}/systemd/user/mthemedaemon.service"
+    - "%{_sysconfdir}/xdg/autostart/mthemedaemon.desktop"
+    - "%{_sysconfdir}/meegotouch/themedaemonpriorities.conf"



Reply via email to