Pseudo-classes apply to all elements regardless of class selector
Bug #1267552 reported by
Martin Owens
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Inkscape |
Fix Released
|
Medium
|
Martin Owens | ||
libcroco |
New
|
Medium
|
Bug Description
In the attached examples and screenshots you will see:
Firefox rendering showing 4 colours, first two letters A and B are 'class1' and the second two C and D are 'class2'. The lang psuedo-class applies to the two middle letters B and C.
Inkscape rendering showing 3 colours, the two middle colours are the same.
The difference is that the pseudo class in inkscape is being applied to any element with that lang regardless of other selector such as class. This is an error.
Related branches
Changed in libcroco: | |
importance: | Unknown → Medium |
status: | Unknown → New |
Changed in inkscape: | |
importance: | Undecided → Medium |
milestone: | none → 0.91 |
Changed in inkscape: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
Fixed in r12905. The pseudo-class logic was subtly different from class and attribute matching, it would simply return true if a pseudo class matched. Which might make sense if the pseudo class was always last (only element pseudo classes are) and if the matching algorithm was processing them front to back. So I've simply changed the match logic to match class and attribute logic and fixed the issue.