Fix and optimize StatusbarProgressWidget
See commit messages for details.
I prepared a patch to test the optimization in the second commit: analyze-connectSingleItem.patch.
When I opened KDevelop with several small projects open (fully parsed on the previous run), its output ended with:
singleItem == mCurrentItem 25
!(singleItem == mCurrentItem) 4
When I run a Find/Replace in Files search, the output ended with:
singleItem == mCurrentItem 489
!(singleItem == mCurrentItem) 8
After a while of working on KDevelop inside KDevelop built with these commits, the output ended with:
singleItem == mCurrentItem 14609
!(singleItem == mCurrentItem) 80
Edited by Igor Kushnir