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

Side by Side Diff: third_party/WebKit/LayoutTests/fast/css/invalidation/independent-inheritance-fast-path-multiple-properties.html

Issue 2213223004: Revert of Add a fast-path for independent inherited properties (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@computedstyle_cleanup_rename_final_member_fields
Patch Set: Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 <!DOCTYPE html>
2 <script src="../../../resources/testharness.js"></script>
3 <script src="../../../resources/testharnessreport.js"></script>
4 <style>
5 #c {
6 pointer-events: all;
7 }
8 #e {
9 visibility: collapse;
10 }
11 </style>
12
13 <!-- The property is set on this outermost element. -->
14 <div id="a">
15 <!-- Tests that the property is propagated through an element that inherits it -->
16 <div id="b">
17 <!-- Tests that the property stops propagating through an element that d oesn't inherit it -->
18 <div id="c">
19 <!-- The property is also set on this inner element, which inherited it from its parent, and should now propagate down to #e and #f -->
20 <div id="d">
21 <!-- The property is also set on this inner element, which inher ited it from its parent but now sets it itself, and should now propagate to #f - ->
22 <div id="e">
23 <!-- Tests that the above properties resolve correctly and t his inherits the value from #f -->
24 <div id="f">
25 </div>
26 </div>
27 </div>
28 </div>
29 </div>
30 </div>
31 <script>
32 test(function(t)
33 {
34 if (!window.internals)
35 assert_unreached('This test requires window.internals.');
36
37 a.offsetTop; // Force recalc.
38 assert_equals(internals.updateStyleAndReturnAffectedElementCount(), 0);
39
40 assert_equals(getComputedStyle(a).pointerEvents, "auto");
41 assert_equals(getComputedStyle(b).pointerEvents, "auto");
42 assert_equals(getComputedStyle(c).pointerEvents, "all");
43 assert_equals(getComputedStyle(d).pointerEvents, "all");
44 assert_equals(getComputedStyle(e).pointerEvents, "all");
45 assert_equals(getComputedStyle(f).pointerEvents, "all");
46 assert_equals(getComputedStyle(a).visibility, "visible");
47 assert_equals(getComputedStyle(b).visibility, "visible");
48 assert_equals(getComputedStyle(c).visibility, "visible");
49 assert_equals(getComputedStyle(d).visibility, "visible");
50 assert_equals(getComputedStyle(e).visibility, "collapse");
51 assert_equals(getComputedStyle(f).visibility, "collapse");
52
53 a.offsetTop; // Force recalc.
54 a.style.pointerEvents = "none";
55 assert_equals(internals.updateStyleAndReturnAffectedElementCount(), 1);
56
57 a.offsetTop; // Force recalc.
58 a.style.visibility = "hidden";
59 assert_equals(internals.updateStyleAndReturnAffectedElementCount(), 1);
60
61 assert_equals(getComputedStyle(a).pointerEvents, "none");
62 assert_equals(getComputedStyle(b).pointerEvents, "none");
63 assert_equals(getComputedStyle(c).pointerEvents, "all");
64 assert_equals(getComputedStyle(d).pointerEvents, "all");
65 assert_equals(getComputedStyle(e).pointerEvents, "all");
66 assert_equals(getComputedStyle(f).pointerEvents, "all");
67 assert_equals(getComputedStyle(a).visibility, "hidden");
68 assert_equals(getComputedStyle(b).visibility, "hidden");
69 assert_equals(getComputedStyle(c).visibility, "hidden");
70 assert_equals(getComputedStyle(d).visibility, "hidden");
71 assert_equals(getComputedStyle(e).visibility, "collapse");
72 assert_equals(getComputedStyle(f).visibility, "collapse");
73
74 a.offsetTop; // Force recalc.
75 d.style.pointerEvents = "painted";
76 assert_equals(internals.updateStyleAndReturnAffectedElementCount(), 1);
77
78 a.offsetTop; // Force recalc.
79 e.style.visibility = "visible";
80 assert_equals(internals.updateStyleAndReturnAffectedElementCount(), 1);
81
82 assert_equals(getComputedStyle(a).pointerEvents, "none");
83 assert_equals(getComputedStyle(b).pointerEvents, "none");
84 assert_equals(getComputedStyle(c).pointerEvents, "all");
85 assert_equals(getComputedStyle(d).pointerEvents, "painted");
86 assert_equals(getComputedStyle(e).pointerEvents, "painted");
87 assert_equals(getComputedStyle(f).pointerEvents, "painted");
88 assert_equals(getComputedStyle(a).visibility, "hidden");
89 assert_equals(getComputedStyle(b).visibility, "hidden");
90 assert_equals(getComputedStyle(c).visibility, "hidden");
91 assert_equals(getComputedStyle(d).visibility, "hidden");
92 assert_equals(getComputedStyle(e).visibility, "visible");
93 assert_equals(getComputedStyle(f).visibility, "visible");
94 }, "Changing both pointer-events and visibility on an element, both independent inherited properties, doesn't cause a style recalc for its children.");
95 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698