From d9f1d8625465c461df2b9eed4c17b089a30a6961 Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Mon, 20 Feb 2017 11:06:30 +0100 Subject: [PATCH] feat(ui/modules/Common/Form/SearchBox): remove usage of `SmartConnect` --- .../ui/modules/Common/Form/SearchBox.qml | 37 ++++++++----------- 1 file changed, 16 insertions(+), 21 deletions(-) diff --git a/linphone-desktop/ui/modules/Common/Form/SearchBox.qml b/linphone-desktop/ui/modules/Common/Form/SearchBox.qml index 12f744556..232592932 100644 --- a/linphone-desktop/ui/modules/Common/Form/SearchBox.qml +++ b/linphone-desktop/ui/modules/Common/Form/SearchBox.qml @@ -58,6 +58,15 @@ Item { model.setFilter(text) } + function _handleCoords () { + searchBox.hideMenu() + + var point = searchBox.mapToItem(null, 0, searchBox.height) + + desktopPopup.popupX = window.x + point.x + desktopPopup.popupY = window.y + point.y + } + // --------------------------------------------------------------------------- implicitHeight: searchField.height @@ -84,30 +93,16 @@ Item { // ------------------------------------------------------------------------- - SmartConnect { - Component.onCompleted: { - var window = searchBox.Window.window + Connections { + target: searchBox.Window.window - var handleCoords = function () { - searchBox.hideMenu() + onHeightChanged: _handleCoords() + onWidthChanged: _handleCoords() - var point = searchBox.mapToItem(null, 0, searchBox.height) + onXChanged: _handleCoords() + onYChanged: _handleCoords() - desktopPopup.popupX = window.x + point.x - desktopPopup.popupY = window.y + point.y - } - - // The menu is always below the search field. - this.connect(window, 'heightChanged', handleCoords) - this.connect(window, 'widthChanged', handleCoords) - - this.connect(window, 'xChanged', handleCoords) - this.connect(window, 'yChanged', handleCoords) - - this.connect(window, 'visibilityChanged', handleCoords) - - handleCoords() - } + onVisibilityChanged: _handleCoords() } // Wrap the search box menu in a window.