RESOLVED FIXED 156397
Implement functional :host() pseudo class
https://bugs.webkit.org/show_bug.cgi?id=156397
Summary Implement functional :host() pseudo class
Antti Koivisto
Reported 2016-04-08 02:23:52 PDT
We already support :host. Add functional syntax too.
Attachments
patch (14.56 KB, patch)
2016-04-08 04:04 PDT, Antti Koivisto
no flags
patch (16.03 KB, patch)
2016-04-08 05:39 PDT, Antti Koivisto
no flags
patch (16.00 KB, patch)
2016-04-08 05:42 PDT, Antti Koivisto
darin: review+
Radar WebKit Bug Importer
Comment 1 2016-04-08 02:24:29 PDT
Antti Koivisto
Comment 2 2016-04-08 04:04:45 PDT
Antti Koivisto
Comment 3 2016-04-08 05:39:35 PDT
WebKit Commit Bot
Comment 4 2016-04-08 05:41:14 PDT
Attachment 275999 [details] did not pass style-queue: ERROR: Source/WebCore/css/ElementRuleCollector.h:92: The parameter name "ruleRange" adds no information, so it should be removed. [readability/parameter_name] [5] ERROR: Source/WebCore/css/SelectorChecker.h:98: The parameter name "checkingContext" adds no information, so it should be removed. [readability/parameter_name] [5] Total errors found: 2 in 11 files If any of these errors are false positives, please file a bug against check-webkit-style.
Antti Koivisto
Comment 5 2016-04-08 05:42:39 PDT
Ryosuke Niwa
Comment 6 2016-04-08 17:57:31 PDT
Comment on attachment 276000 [details] patch The test change looks good. Maybe kling should review the style resolver change?
Antti Koivisto
Comment 7 2016-04-09 00:38:51 PDT
Michael Catanzaro
Comment 8 2016-04-09 09:09:04 PDT
It broke debug builds without ENABLE_SHADOW_DOM: ../../Source/WebCore/css/SelectorChecker.cpp: In member function ‘bool WebCore::SelectorChecker::matchHostPseudoClass(const WebCore::CSSSelector&, const WebCore::Element&, WebCore::SelectorChecker::CheckingContext&, unsigned int&) const’: ../../Source/WebCore/css/SelectorChecker.cpp:206:94: error: ‘PseudoClassHost’ is not a member of ‘WebCore::CSSSelector’ ASSERT(selector.match() == CSSSelector::PseudoClass && selector.pseudoClassType() == CSSSelector::PseudoClassHost); ^ It's not immediately clear to me how to fix this. Disabling that assert doesn't seem right.
Alexey Proskuryakov
Comment 9 2016-04-09 13:09:08 PDT
Ugh, broken build for 12 hours already. Rolling out.
WebKit Commit Bot
Comment 10 2016-04-09 13:10:14 PDT
Re-opened since this is blocked by bug 156440
Alexey Proskuryakov
Comment 11 2016-04-09 14:47:10 PDT
Also, surprised that Windows apparently doesn't have shadow DOM enabled.
Ryosuke Niwa
Comment 12 2016-04-10 21:25:14 PDT
(In reply to comment #11) > Also, surprised that Windows apparently doesn't have shadow DOM enabled. Oh oops, that was my oversight. Will enable it everywhere soon.
Antti Koivisto
Comment 13 2016-04-11 00:43:12 PDT
Maybe we should also enable <details> globally and remove the #ifs? That would clean up lot of conditional build mess.
Ryosuke Niwa
Comment 14 2016-04-11 00:53:22 PDT
(In reply to comment #13) > Maybe we should also enable <details> globally and remove the #ifs? That > would clean up lot of conditional build mess. Yeah, we've been shipping details element for a while although apparently only WebKit/Blink supports it. This is somewhat orthogonal but I suspect no one is using it so we might be able to remove it entirely...
Ryosuke Niwa
Comment 15 2016-04-11 02:01:54 PDT
(In reply to comment #14) > (In reply to comment #13) > > Maybe we should also enable <details> globally and remove the #ifs? That > > would clean up lot of conditional build mess. > > Yeah, we've been shipping details element for a while although apparently > only WebKit/Blink supports it. This is somewhat orthogonal but I suspect no > one is using it so we might be able to remove it entirely... Oops, apparently Gecko is implementing them now: https://bugzilla.mozilla.org/show_bug.cgi?id=1226455
Antti Koivisto
Comment 16 2016-04-11 02:13:40 PDT
Michael Catanzaro
Comment 17 2016-04-11 05:45:40 PDT
(In reply to comment #12) > Oh oops, that was my oversight. Will enable it everywhere soon. Hi, do you still consider shadow DOM experimental? If so, let's enable it only in FeatureList.pm. If you think it's ready for users, only then let's additionally enable it in WebKitFeatures.cmake.
Ryosuke Niwa
Comment 18 2016-04-11 09:57:08 PDT
(In reply to comment #17) > (In reply to comment #12) > > Oh oops, that was my oversight. Will enable it everywhere soon. > > Hi, do you still consider shadow DOM experimental? If so, let's enable it > only in FeatureList.pm. If you think it's ready for users, only then let's > additionally enable it in WebKitFeatures.cmake. It's getting ready to be shipped. There are still some renames to be done so I'll do that first.
Note You need to log in before you can comment on or make changes to this bug.