From 2b96a2cd09608e2e9c4a99608bd2eaed3759f5ab Mon Sep 17 00:00:00 2001 From: Mathew-D Date: Sun, 10 May 2026 21:23:12 -0400 Subject: [PATCH] fix(tray): undid breaking --- src/dbus/tray/tray_service.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/dbus/tray/tray_service.cpp b/src/dbus/tray/tray_service.cpp index 3bef97441..b973aac8b 100644 --- a/src/dbus/tray/tray_service.cpp +++ b/src/dbus/tray/tray_service.cpp @@ -341,6 +341,12 @@ namespace { return true; } + const std::vector& requestedMenuProperties() { + // Per dbusmenu protocol, an empty property list means "all available properties". + static const std::vector kRequestedMenuProperties = {}; + return kRequestedMenuProperties; + } + std::vector int32ListFromVariant(const sdbus::Variant& value) { try { return value.get>(); @@ -657,8 +663,7 @@ bool TrayService::fetchMenuProperties(const std::string& itemId, const std::vect cache.proxy->callMethod("GetGroupProperties") .onInterface(k_menu_interface) .withTimeout(std::chrono::milliseconds(1000)) - // Per dbusmenu protocol, an empty property list means "all available properties". - .withArguments(entryIds, std::vector{}) + .withArguments(entryIds, requestedMenuProperties()) .storeResultsTo(properties); std::unordered_map> propertiesById; @@ -772,8 +777,7 @@ void TrayService::requestMenuLayoutAfterAboutToShow(const std::string& itemId, s cache.proxy->callMethodAsync("GetLayout") .onInterface(k_menu_interface) .withTimeout(std::chrono::milliseconds(2000)) - // Per dbusmenu protocol, an empty property list means "all available properties". - .withArguments(parentId, static_cast(-1), std::vector{}) + .withArguments(parentId, static_cast(-1), requestedMenuProperties()) .uponReplyInvoke([this, itemId, parentId, generation](std::optional error, std::uint32_t revision, DbusMenuLayout layout) { auto replyCacheIt = m_menuCache.find(itemId);