Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(133)

Issue 2873123002: Put unqualified pseudos into the more specific rulesets. (Closed)

Created:
3 years, 7 months ago by esprehn
Modified:
3 years, 7 months ago
Reviewers:
meade_UTC10, nainar, rune
CC:
darktears, apavlov+blink_chromium.org, blink-reviews, blink-reviews-css, blink-reviews-style_chromium.org, chromium-reviews, dglazkov+blink, rwlbuis
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Put unqualified pseudos into the more specific rulesets. We were incorrectly putting unqualified pseudo classes for :focus, :visited, :-webkit-any-link and :link into the universal RuleSet which meant we would match them for every element defeating the optimization of having the separate rulesets. This patch starts tracking the pseudos inside the extraction step to make sure we put them into the right ruleset. It also adds some asserts that the default UA sheet never adds any universal rules. This removes one rule (:focus) from the set of rules for every element.

Patch Set 1 #

Patch Set 2 : Handle combined rule like :hover:focus correctly. #

Patch Set 3 : comments. #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+54 lines, -21 lines) Patch
M third_party/WebKit/Source/core/css/CSSDefaultStyleSheets.cpp View 1 chunk +9 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/css/RuleSet.cpp View 1 2 7 chunks +45 lines, -21 lines 4 comments Download

Messages

Total messages: 14 (8 generated)
esprehn
3 years, 7 months ago (2017-05-10 00:24:45 UTC) #6
nainar
lgtm
3 years, 7 months ago (2017-05-10 02:23:16 UTC) #8
rune
https://codereview.chromium.org/2873123002/diff/40001/third_party/WebKit/Source/core/css/RuleSet.cpp File third_party/WebKit/Source/core/css/RuleSet.cpp (right): https://codereview.chromium.org/2873123002/diff/40001/third_party/WebKit/Source/core/css/RuleSet.cpp#newcode155 third_party/WebKit/Source/core/css/RuleSet.cpp:155: CSSSelector::PseudoType& pseudoType) { camelCase? https://codereview.chromium.org/2873123002/diff/40001/third_party/WebKit/Source/core/css/RuleSet.cpp#newcode200 third_party/WebKit/Source/core/css/RuleSet.cpp:200: CSSSelector::PseudoType pseudoType = ...
3 years, 7 months ago (2017-05-10 08:46:02 UTC) #11
esprehn
On 2017/05/10 at 08:46:02, rune wrote: > https://codereview.chromium.org/2873123002/diff/40001/third_party/WebKit/Source/core/css/RuleSet.cpp > File third_party/WebKit/Source/core/css/RuleSet.cpp (right): > > https://codereview.chromium.org/2873123002/diff/40001/third_party/WebKit/Source/core/css/RuleSet.cpp#newcode155 ...
3 years, 7 months ago (2017-05-10 18:07:18 UTC) #12
meade_UTC10
It looks like maybe you forgot to upload a patchset? This lgtm assuming there were ...
3 years, 7 months ago (2017-05-11 01:59:40 UTC) #13
meade_UTC10
3 years, 7 months ago (2017-05-11 02:00:01 UTC) #14
On 2017/05/11 01:59:40, meade_UTC10 wrote:
> It looks like maybe you forgot to upload a patchset? This lgtm assuming there
> were actually changes along with the replies to the comments :)

Oh, and the tests being fixed...

Powered by Google App Engine
This is Rietveld 408576698