Skip to content

foldermodel: lift screen add/remove handling out of screenmapper

Harald Sitter requested to merge work/sitter/screenmgmt into master

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