mirror of
https://github.com/KDE/latte-dock.git
synced 2025-01-12 17:17:50 +03:00
update AllScreens track information during startup
--Whenever a view is updating its layout then the AllScreens tracked information [per layout tracking] should be updated also. Until now this was happening only during startup and there was a case that if during startup a view was requesting tracking and the second one did not, then tracking for the entire layout for all screens it could be faulty disabled. BUG:411670 FIXED-IN:0.9.3
This commit is contained in:
parent
31f2dc5a4f
commit
a9b4989236
@ -198,12 +198,23 @@ void Windows::removeView(Latte::View *view)
|
||||
|
||||
void Windows::addRelevantLayout(Latte::View *view)
|
||||
{
|
||||
if (view->layout() && !m_layouts.contains(view->layout())) {
|
||||
m_layouts[view->layout()] = new TrackedLayoutInfo(this, view->layout());
|
||||
if (view->layout()) {
|
||||
bool initializing {false};
|
||||
|
||||
if (!m_layouts.contains(view->layout())) {
|
||||
initializing = true;
|
||||
m_layouts[view->layout()] = new TrackedLayoutInfo(this, view->layout());
|
||||
}
|
||||
|
||||
//! Update always the AllScreens tracking because there is a chance a view delayed to be assigned in a layout
|
||||
//! and that could create a state the AllScreens tracking will be disabled if there is a View requesting
|
||||
//! tracking and one that it does not during startup
|
||||
updateRelevantLayouts();
|
||||
updateHints(view->layout());
|
||||
emit informationAnnouncedForLayout(view->layout());
|
||||
|
||||
if (initializing) {
|
||||
updateHints(view->layout());
|
||||
emit informationAnnouncedForLayout(view->layout());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user