Fix adding global suppression doesn't suppress existing diagnostics
We need to scan all the document nodes once global suppression changes to suppress all matches. Also, try not to rely on Document pointer, we can have diagnostics for files which are not open in the editor.