CssLogic skips on a selector-by-selector basis those rules that come from UA style sheets, when building the array of unmatched selectors. (note that a sheet has multiple rules, and each rule has multiple selectors!) We need to skip UA sheets entirely from being processed when building the array of unmatched selectors. This will improve performance in all of the Style Inspector use cases, irrespective of the "Show only user styles" checkbox state.
Created attachment 563092 [details] [diff] [review] proposed fix This patch changes the location of where the system rules are skipped. It seems that system rules have been skipped inside the CssPropertyInfo code path. It should be quite faster to skip the system style sheets entirely in the CssLogic code path, so they never get processed. (I don't know when the change was made for systemRules to be skipped in the unmatched selectors view...) All tests pass on my system.
Comment on attachment 563092 [details] [diff] [review] proposed fix yes!
Thank you Rob!