<file>theme/Style/qmldir</file>
<file>src/gui/tray/ActivityActionButton.qml</file>
<file>src/gui/tray/ActivityItem.qml</file>
+ <file>src/gui/tray/AutoSizingMenu.qml</file>
</qresource>
</RCC>
--- /dev/null
+import QtQuick 2.15
+import QtQuick.Controls 2.3
+
+Menu {
+ width: {
+ var result = 0;
+ var padding = 0;
+ for (var i = 0; i < count; ++i) {
+ var item = itemAt(i);
+ result = Math.max(item.contentItem.implicitWidth, result);
+ padding = Math.max(item.padding, padding);
+ }
+ return result + padding * 2;
+ }
+}
Accessible.name: qsTr("More apps")\r
Accessible.onPressAction: trayWindowAppsButton.clicked()\r
\r
- Menu {\r
+ AutoSizingMenu {\r
id: appsMenu\r
y: (trayWindowAppsButton.y + trayWindowAppsButton.height + 2)\r
readonly property Item listContentItem: contentItem.contentItem\r
- width: Math.min(listContentItem.childrenRect.width + 4, Style.trayWindowWidth / 2)\r
- height: Math.min(implicitHeight, maxMenuHeight)\r
closePolicy: Menu.CloseOnPressOutsideParent | Menu.CloseOnEscape\r
\r
background: Rectangle {\r
text: appName\r
font.pixelSize: Style.topLinePixelSize\r
icon.source: appIconUrl\r
- width: contentItem.implicitWidth + leftPadding + rightPadding\r
onTriggered: UserAppsModel.openAppUrl(appUrl)\r
hoverEnabled: true\r
\r
- background: Item {\r
- width: appsMenu.width\r
- height: parent.height\r
-\r
- Rectangle {\r
- anchors.fill: parent\r
- anchors.margins: 1\r
- color: appEntry.hovered ? Style.lightHover : "transparent"\r
- }\r
- \r
- Accessible.role: Accessible.PopupMenu\r
- Accessible.name: qsTr("Apps menu")\r
- }\r
-\r
Accessible.role: Accessible.MenuItem\r
Accessible.name: qsTr("Open %1 in browser").arg(appName)\r
Accessible.onPressAction: appEntry.triggered()\r