Skip to content

foldermodel: lift screen add/remove handling out of screenmapper

screenmapper is the wrong place for it because we don't know the url inside the mapper. Instead handle events in the foldermodel and correctly delegate the add/remove actions to the mapper with both our screenId AND the activityId

notably the previous code would incorrectly invoke addScreen with empty activityIds triggering fallback handling that resulted in incorrect m_screensPerPath management (there would be no screen associated with our url anymore after a screenAdded signal because our screen got associated with no url) and consequently firstAvailableScreen would return no screen for our url (remember: we are associated with no url) making FolderModel::filterAcceptsRow return false and filtering completely valid entries

BUG: 467951

possibly also is the root cause behind CCBUG: 467092

Merge request reports