wallpapers/image: fix wrong usage of `std::bind`

`m_virtualDesktopInfo->currentDesktop()` will be regarded as a static
value in `std::bind`, which prevents the current desktop from being
updated, so use lambda instead.

BUG: 459199
FIXED-IN: 5.26
wilder
Fushan Wen 4 years ago
parent 9c7ac7061c
commit eb3483123e
  1. 14
      wallpapers/image/plugin/utils/maximizedwindowmonitor.cpp

@ -50,16 +50,14 @@ void MaximizedWindowMonitor::Private::init()
q->setGroupMode(GroupMode::GroupDisabled); q->setGroupMode(GroupMode::GroupDisabled);
q->setActivity(m_activityInfo->currentActivity()); q->setActivity(m_activityInfo->currentActivity());
q->connect(m_activityInfo, q->connect(m_activityInfo, &TaskManager::ActivityInfo::currentActivityChanged, q, [this] {
&TaskManager::ActivityInfo::currentActivityChanged, q->setActivity(m_activityInfo->currentActivity());
q, });
std::bind(&MaximizedWindowMonitor::setActivity, q, m_activityInfo->currentActivity()));
q->setVirtualDesktop(m_virtualDesktopInfo->currentDesktop()); q->setVirtualDesktop(m_virtualDesktopInfo->currentDesktop());
q->connect(m_virtualDesktopInfo, q->connect(m_virtualDesktopInfo, &TaskManager::VirtualDesktopInfo::currentDesktopChanged, q, [this]() {
&TaskManager::VirtualDesktopInfo::currentDesktopChanged, q->setVirtualDesktop(m_virtualDesktopInfo->currentDesktop());
q, });
std::bind(&MaximizedWindowMonitor::setVirtualDesktop, q, m_virtualDesktopInfo->currentDesktop()));
q->setFilterByActivity(true); q->setFilterByActivity(true);
q->setFilterByVirtualDesktop(true); q->setFilterByVirtualDesktop(true);

Loading…
Cancel
Save