/irc-logs / w3c / #webapps / 2015-04-25 / end
Options:
Previous day, Next day
- # Session Start: Sat Apr 25 00:00:00 2015
- # Session Ident: #webapps
- # [00:00] <chaals> agrnda?
- # [00:00] <chaals> agenda?
- # [00:00] * Zakim sees 3 items remaining on the agenda:
- # [00:00] * Zakim 4. Jan…'s proposal for named thingo [from chaals]
- # [00:00] * Zakim 6. details of imperative distribution API, don't make it impossible. [from chaals]
- # [00:00] * Zakim 8. styling [from chaals]
- # [00:01] <chaals> s/agrnda?//
- # [00:01] * Joins: weinig (~weinig@public.cloak)
- # [00:01] * Quits: sorvell (~sorvell@public.cloak) ("Page closed")
- # [00:01] * Joins: sorvell (~sorvell@public.cloak)
- # [00:01] <taylor> Back!
- # [00:01] <taylor> DG: Following an exciting discussion on the slots proposal, we have a couple options
- # [00:02] <taylor> DG: Would like to separate the issue: is it just aesthetics, or does it really bring concrete perf gains that allow us to do distributions in near-constant time?
- # [00:02] <taylor> DG: Which opens up the opportunity for very simple imperative API
- # [00:02] <chaals> q+ anne
- # [00:02] * Zakim sees rniwa, chaals, anne on the speaker queue
- # [00:02] <chaals> q-
- # [00:02] * Zakim sees rniwa, anne on the speaker queue
- # [00:02] <chaals> q- rn
- # [00:02] * Zakim sees anne on the speaker queue
- # [00:02] <taylor> DG: Options:
- # [00:02] <taylor> DG: 1. don't do imperative API in v1 and go with content select
- # [00:02] * ebryn -1 for content select
- # [00:02] <taylor> DG: 2. Don't do imperative API and go with slots
- # [00:03] <taylor> DG: 3. Imperative API and one of the other proposals
- # [00:03] <sorvell> q+
- # [00:03] * Zakim sees anne, sorvell on the speaker queue
- # [00:03] <taylor> DG: (imperative and declarative as part of v1)
- # [00:03] * ebryn +1 imperative API as part of v1
- # [00:03] <taylor> DG: Needs to be time to fully put slots proposal through their paces and exercise it mentally
- # [00:03] * chaals suggests ebryn put that as [+1 to …] not in a /me, so it gets into the minutes
- # [00:03] * Joins: shepazu (schepers@public.cloak)
- # [00:04] <ebryn> +1 to imperative API as part of v1
- # [00:04] <taylor> DG: propose we nominate people to do due diligence and bring it to a concrete proposal
- # [00:04] <taylor> DG: s/propose/4/
- # [00:04] <taylor> JM: Could do enough design work on imperative API that we have a good answer, but do it later
- # [00:05] <taylor> DG: Should be a prerequisite for 1. or 2.
- # [00:05] <chaals> ack an
- # [00:05] * Zakim sees sorvell on the speaker queue
- # [00:05] <rniwa> +q
- # [00:05] * Zakim sees sorvell, rniwa on the speaker queue
- # [00:05] <mjs> q?
- # [00:05] * Zakim sees sorvell, rniwa on the speaker queue
- # [00:06] <taylor> AvK: If you get hold of a node inside shadow tree and dispatch the event, you can observe on the path what the distribution is
- # [00:06] <taylor> AvK: This will very synchronously require you to do this synchronously
- # [00:06] * rniwa seems to have 30,000 SVG nodes in his graph component...
- # [00:06] <taylor> DG: Yes, this is correct
- # [00:06] <chaals> ack sor
- # [00:06] * Zakim sees rniwa on the speaker queue
- # [00:06] * rniwa imagine running O(n) algorithm on that...
- # [00:07] <taylor> SO: Want to emphasize that the slot proposal is incomplete. When you just have one name, this is unacceptable for reprojection
- # [00:07] * rniwa wants DOM to be stupid fast, not kind-of-fast
- # [00:07] <taylor> SO: Slot needs to be studied more and fleshed out
- # [00:07] <taylor> RN: Qualify that imperative API is important
- # [00:07] <chaals> q+
- # [00:07] * Zakim sees rniwa, chaals on the speaker queue
- # [00:07] <chaals> ack rn
- # [00:07] * Zakim sees chaals on the speaker queue
- # [00:07] <taylor> RN: Another option - no node distribution in v1
- # [00:07] <taylor> RN: Worst case scenario
- # [00:07] <taylor> RN: Timing of distribution is very important
- # [00:08] <taylor> RN: Maybe it is better to focus on imperative API. Then each framework could emulate either syntax to figure out best declarative syntax.
- # [00:09] <taylor> CMN: is there anyone that would be happy without any distribution
- # [00:09] <taylor> [basically everyone]
- # [00:09] <taylor> RESOLUTION: We need distribution of some sort in v1
- # [00:09] <taylor> CMN: Is there anyone who can't live with starting at imperative API?
- # [00:10] <taylor> CMN: Is there anyone opposed to starting out with an imperative API?
- # [00:10] <taylor> [murmuring]
- # [00:10] <taylor> CMN: Everyone wants an imperative API. Everyone wants distribution.
- # [00:10] <taylor> CMN: Is there anyone that thinks they need to start by figuring out a declarative API?
- # [00:11] <taylor> DG: Seems like we have enough difference of opinion in declarative API, the next step is we need to talk about the imperative API
- # [00:11] <taylor> SO: We want this thing to ship.
- # [00:11] <rniwa> +q
- # [00:11] * Zakim sees chaals, rniwa on the speaker queue
- # [00:11] <chaals> q+
- # [00:11] * Zakim sees chaals, rniwa on the speaker queue
- # [00:11] <chaals> q- later
- # [00:11] * Zakim sees rniwa, chaals on the speaker queue
- # [00:11] <taylor> SO: We have a declarative API, we don't have an imperative API
- # [00:12] <hober> q?
- # [00:12] * Zakim sees rniwa, chaals on the speaker queue
- # [00:12] <chaals> ack rn
- # [00:12] * Zakim sees chaals on the speaker queue
- # [00:12] <taylor> RN: Imperative API got shot down because it wasn't compatible with content select
- # [00:12] <taylor> RN: From imperative, we can start implementing
- # [00:12] <taylor> RN: We can have more evidence from there as to what the right declarative syntax is
- # [00:13] <taylor> RN: We need to start from things we can agree on
- # [00:13] <taylor> CMN: Who cannot live with select api?
- # [00:14] <taylor> CMN: Who cannot live with slots?
- # [00:14] <taylor> [some for each]
- # [00:14] * Quits: shepazu (schepers@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [00:14] <taylor> CMN: Need to come back after working on proposals
- # [00:14] * Joins: shepazu (schepers@public.cloak)
- # [00:14] <taylor> CMN: For now, we're trying to see if we can get to imperative API
- # [00:14] <dglazkov> Zakim, agend
- # [00:14] <Zakim> I don't understand 'agend', dglazkov
- # [00:14] <taylor> CMN: So what does the imperative API look like again?
- # [00:14] <dglazkov> Zakim, agenda
- # [00:14] <Zakim> I don't understand 'agenda', dglazkov
- # [00:15] <chaals> agenda?
- # [00:15] * Zakim sees 3 items remaining on the agenda:
- # [00:15] * Zakim 4. Jan…'s proposal for named thingo [from chaals]
- # [00:15] * Zakim 6. details of imperative distribution API, don't make it impossible. [from chaals]
- # [00:15] * Zakim 8. styling [from chaals]
- # [00:15] <taylor> SM: Curious if the people at the whiteboard could say if imperative API will nerf our performance?
- # [00:15] <dglazkov> agenda?
- # [00:15] * Zakim sees 3 items remaining on the agenda:
- # [00:15] * Zakim 4. Jan…'s proposal for named thingo [from chaals]
- # [00:15] * Zakim 6. details of imperative distribution API, don't make it impossible. [from chaals]
- # [00:15] * Zakim 8. styling [from chaals]
- # [00:15] <smaug> rniwa: do you have a link to the old imperative API proposal
- # [00:15] * Quits: shepazu (schepers@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [00:15] <taylor> RN: If API's that call back to JS any time any dom was modified in light dom, not acceptable
- # [00:15] <taylor> RN: If we did it at end of microtask, like MO, perf impact is much smaller
- # [00:16] <taylor> AvK: The only observable thing is that synchronous layout getters don't work
- # [00:17] <taylor> JF: Isn't breaking the habit on layout forcing habits a bandaid we need to rip off at some point?
- # [00:17] <dglazkov> q+
- # [00:17] * Zakim sees chaals, dglazkov on the speaker queue
- # [00:17] <chaals> ack ch
- # [00:17] * Zakim sees dglazkov on the speaker queue
- # [00:17] <chaals> ack dg
- # [00:17] * Zakim sees no one on the speaker queue
- # [00:17] <taylor> JF: Need to recognize that exploring this path might not be successful
- # [00:18] <rniwa> my proposal for imperative API: https://lists.w3.org/Archives/Public/public-webapps/2014JanMar/0376.html
- # [00:18] <rniwa> +q
- # [00:18] * Zakim sees rniwa on the speaker queue
- # [00:18] <taylor> Domenic: reportValidity, scrollIntoView - isn't it OK if we delay this a microtask
- # [00:18] <taylor> DG: No, not ok. This is how developers have been using this.
- # [00:19] <chaals> ack rn
- # [00:19] * Zakim sees no one on the speaker queue
- # [00:19] <taylor> RN: Link to proposal: https://lists.w3.org/Archives/Public/public-webapps/2014JanMar/0376.html
- # [00:19] * Joins: Travis (~Travis@public.cloak)
- # [00:20] <taylor> RN: add and remove to content element (names can change), will take new element in a light dom that gets distributed to insertion point
- # [00:20] <taylor> RN: Just does exactly one time distribution
- # [00:20] <mjs> q?
- # [00:20] * Zakim sees no one on the speaker queue
- # [00:20] <mjs> q+
- # [00:20] * Zakim sees mjs on the speaker queue
- # [00:20] <taylor> RN: You would use mutation observers to update distributed nodes
- # [00:20] <sorvell> q+
- # [00:20] * Zakim sees mjs, sorvell on the speaker queue
- # [00:20] <taylor> RN: Most primitive API could come up with
- # [00:21] <taylor> DG: This would work if we said "If you decide to use this API, you're on your own, you have to figure this out."
- # [00:21] <taylor> RN: Drawback - you can't really reorder nodes inside insertion point
- # [00:21] <taylor> RN: Need array potentially to add and manipulate from arbitrary points
- # [00:21] <taylor> RN: Everything is synchronous
- # [00:22] <taylor> AvK: Component author would write mutation observers, they'd have to wait for the MO's to fire before nodes get distributed again
- # [00:22] <taylor> RN: Also lifecycle callback in CE about children being changed
- # [00:22] <taylor> RN: Maybe could update nodes when we exit C++ code of node being added
- # [00:23] <taylor> DG: Reprojection would be done by hand
- # [00:23] * Zakim taylor, you typed too many words without commas; I suspect you forgot to start with 'to ...'
- # [00:23] <taylor> MJS: What's tricky is timing
- # [00:24] <taylor> MJS: Hard to tell in abstract whether next microtask is good enough, as opposed to current style resolution timing
- # [00:24] <chaals> [straw poll - how many people ok with this idea so far - more, how many terrified so far - some]
- # [00:24] <taylor> MJS: Style resolution timing is imprecise too
- # [00:24] <taylor> MJS: Might require someone to try implementing it to see if in practice it is bad
- # [00:25] <chaals> ack mj
- # [00:25] * Zakim sees sorvell on the speaker queue
- # [00:25] <taylor> DG: Sounds like a task force
- # [00:25] * Joins: philipwalton (~philipwalton@public.cloak)
- # [00:25] <taylor> SO: If we have RN's proposal that distribution is synchronous, I would say MO information is not sufficient to do reprojection
- # [00:25] <Domenic_> It would be good to have examples of existing use cases to show that this would suffice for them and how it would be coded.
- # [00:25] <taylor> SO: Would hope we could add information about distributed nodes changed to MO
- # [00:25] <chaals> s/ MO /mutation observer
- # [00:26] <chaals> s/to MO/to mutation observer
- # [00:26] <taylor> SO: We're opening up the door for: Polymer could create a flush mechanism; all the mutation observers take records
- # [00:26] <taylor> SO: not a good signal on way to do redistribution with the information that mutation observers surface currently
- # [00:26] <slightlyoff> q?
- # [00:26] * Zakim sees sorvell on the speaker queue
- # [00:26] <slightlyoff> q+
- # [00:26] * Zakim sees sorvell, slightlyoff on the speaker queue
- # [00:27] <rniwa> q+
- # [00:27] * Zakim sees sorvell, slightlyoff, rniwa on the speaker queue
- # [00:27] * chaals thinks the weScrewedAbootHere event might be hard to type
- # [00:27] <chaals> ack sor
- # [00:27] * Zakim sees slightlyoff, rniwa on the speaker queue
- # [00:27] <chaals> ack sli
- # [00:27] * Zakim sees rniwa on the speaker queue
- # [00:27] <taylor> AR: question of imperative-only seems at odds that there's a large simplification to be had with naming slots
- # [00:27] <taylor> AR: degrees of freedom continue to accelerate as you go toward imperative
- # [00:27] * ebryn recalls this being something the polymer team was advocating for
- # [00:27] <taylor> AR: Could look at properties, for example
- # [00:28] <taylor> AR: Thinks we should definitely have imperative API's in the platform
- # [00:28] <sorvell> q+ Scott
- # [00:28] * Zakim sees rniwa, Scott on the speaker queue
- # [00:28] <chaals> [+1 to Alex' concern…]
- # [00:28] <taylor> AR: Worries this will hurt inter-framework interoperability quite a lot
- # [00:28] <ebryn> +1 to alex
- # [00:28] <chaals> ack rn
- # [00:28] * Zakim sees Scott on the speaker queue
- # [00:28] <taylor> RN: Can add synchronous event or new record to mutation observer.
- # [00:29] <Domenic_> q+
- # [00:29] * Zakim sees Scott, Domenic_ on the speaker queue
- # [00:29] <chaals> ack sc
- # [00:29] * Zakim sees Domenic_ on the speaker queue
- # [00:29] <taylor> SM: First version of Polymer had a lot of asynchronous behaviors - horrible for end-users
- # [00:30] <taylor> SM: Nervous about any change where the user doesn't know "can I talk to this node now?" will cause lots of user confusion
- # [00:30] <chaals> ack dom
- # [00:30] * Zakim sees no one on the speaker queue
- # [00:30] <taylor> SM: Cautionary tale about asynchrony as it impacts end-users
- # [00:30] <taylor> Domenic: Would really like to see all of the existing use-cases showing how you would write this. With Polymer elements, for select and option, and details and summary.
- # [00:30] <taylor> Domenic: Want to see that it addresses all the use-cases that selectors do and perhaps more complicated things
- # [00:31] <taylor> Domenic: a childrenChanged callback would make it nicer, synchronousish
- # [00:31] <taylor> Domenic; Should be able to build something at least as powerful as current select API
- # [00:31] <taylor> EB: Don' think we should have to do this
- # [00:32] <taylor> Domenic: You should be able to build anything with the imperative API
- # [00:32] <dglazkov> q+
- # [00:32] * Zakim sees dglazkov on the speaker queue
- # [00:32] <taylor> CMN: Agree with Domenic. You may decide it's a bad idea, but it is useful to be able to show you can.
- # [00:32] <taylor> CMN: Wondering if we have "champions" in the room?
- # [00:32] <taylor> RN: Yes?
- # [00:33] <taylor> CMN: I nominate you.
- # [00:33] <taylor> RN: [with understanding] Yes
- # [00:33] <taylor> EB: Would be happy to be involved in this from a framework author perspective
- # [00:33] <chaals> ack dg
- # [00:33] * Zakim sees no one on the speaker queue
- # [00:34] <taylor> DG: Need to be working with RN on this - represent strongest opinions from Polymer and existing experiences
- # [00:34] <taylor> DG: [Dimitri is singing]
- # [00:34] <taylor> CMN: [also singing]
- # [00:35] <taylor> AR: Hard to call a new low
- # [00:35] <taylor> DG: Want to ask: "what is the timeline of this"
- # [00:35] <taylor> DG: Would like to figure this out stat. Should we put a deadline on this?
- # [00:35] <taylor> consensus: yes
- # [00:36] <taylor> RN: Busy for the next few months
- # [00:37] <taylor> MJS: Can carve out time, and DG and EB offered to help
- # [00:37] <taylor> EB: Would graciously request that Safari time provide some time for this, given Safari stated that this was a blocker
- # [00:38] <taylor> RN: Beginning of July
- # [00:38] <taylor> EB: Beginning of July
- # [00:38] <chaals> agenda?
- # [00:38] * Zakim sees 3 items remaining on the agenda:
- # [00:38] * Zakim 4. Jan…'s proposal for named thingo [from chaals]
- # [00:38] * Zakim 6. details of imperative distribution API, don't make it impossible. [from chaals]
- # [00:38] * Zakim 8. styling [from chaals]
- # [00:39] * Quits: mjs (~mjs@public.cloak) (mjs)
- # [00:39] <chaals> zakim, close item 4
- # [00:39] <Zakim> agendum 4, Jan…'s proposal for named thingo, closed
- # [00:39] <Zakim> I see 2 items remaining on the agenda; the next one is
- # [00:39] <Zakim> 6. details of imperative distribution API, don't make it impossible. [from chaals]
- # [00:39] <chaals> zakim, close item 6
- # [00:39] <Zakim> agendum 6, details of imperative distribution API, don't make it impossible., closed
- # [00:39] <Zakim> I see 1 item remaining on the agenda:
- # [00:39] <Zakim> 8. styling [from chaals]
- # [00:39] * Quits: wilsonpage (~wilsonpage@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [00:41] * Joins: wilsonpage (~wilsonpage@public.cloak)
- # [00:43] * Quits: weinig (~weinig@public.cloak) (weinig)
- # [00:44] * Joins: jsbell (~jsbell@public.cloak)
- # [00:49] * Quits: LJWatson (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [00:51] * Quits: sorvell (~sorvell@public.cloak) (Ping timeout: 180 seconds)
- # [00:53] * Quits: jan (~JanMiksovsky@public.cloak) (jan)
- # [00:55] * Joins: mjs (~mjs@public.cloak)
- # [00:56] <taylor> [back]
- # [00:57] * Joins: jan (~JanMiksovsky@public.cloak)
- # [00:57] <taylor> DG: Next topic is Style
- # [00:58] <taylor> AvK: Really need Tab here for some of this
- # [00:58] <taylor> AvK: Let's discuss replacement for /deep/
- # [00:58] * Joins: sorvell (~sorvell@public.cloak)
- # [00:58] * Quits: sorvell (~sorvell@public.cloak) ("Page closed")
- # [00:58] * Joins: sorvell (~sorvell@public.cloak)
- # [00:59] <taylor> SO: Can speak to /deep/ and ::shadow
- # [00:59] <taylor> SO: "part" failed - key reason was we couldn't figure out how to target it beyond one level
- # [00:59] <taylor> SO: Had to match an element and do part
- # [00:59] <taylor> SO: "Up the tree" = nested shadow roots
- # [01:00] <taylor> SO: Want a way to turn on CSS - some way to expose styling up the tree to be able to do theming in my complicated structure
- # [01:00] <taylor> SO: deep and shadow were bad. leaky of implementation details. bad perf. brittle.
- # [01:01] <taylor> SO: Best fit that we think we have right now for cross-scope styling is custom properties
- # [01:01] <taylor> SO: They inherit. Inheritance doesn't stop a shadow root boundaries
- # [01:01] <taylor> SO: Anywhere down the tree you can intercept this and set it to something different
- # [01:01] <taylor> SO: Custom properties are implemented only in FF
- # [01:01] <taylor> SO: Practically they can only implement one value in CSS
- # [01:02] <taylor> SO: Would need X custom properties for all of the properties an element might want to expose
- # [01:02] <taylor> SO: We think custom properties should be implemented, and augmented with "mixin" property
- # [01:02] <taylor> SO: This way you can pass down a bag of properties down the tree
- # [01:02] <taylor> SO: We think this is the right direction for the browser to go
- # [01:02] <ebryn> q+
- # [01:02] * Zakim sees ebryn on the speaker queue
- # [01:02] <mjs> q+
- # [01:02] * Zakim sees ebryn, mjs on the speaker queue
- # [01:03] <taylor> AvK: Is it problematic that these are global variables?
- # [01:03] * Joins: admin (~macmaster@public.cloak)
- # [01:03] <taylor> SO: The Scope author has full control over their scope, can remap variables, reset values in my scope
- # [01:04] <Domenic_> I think it's this one: https://tabatkins.github.io/specs/css-extend-rule/
- # [01:04] <taylor> SO: Could add more control with resetStyleInheritance flag or similar
- # [01:04] * ebryn reset style inheritance flag?
- # [01:04] * ebryn link to more info?
- # [01:05] <ebryn> :root { —myColor: #ccc; }
- # [01:05] <ebryn> i think cssnext’s playground does a good job: https://cssnext.github.io/cssnext-playground/
- # [01:05] * Joins: LJWatson (~chatzilla@public.cloak)
- # [01:05] <chaals> s/[back]/Topic: Styling
- # [01:05] <mjs> q+ to ask why custom properties instead of named parts
- # [01:05] * Zakim sees ebryn, mjs on the speaker queue
- # [01:05] <taylor> SO: You document your style API. You have to do this with any proposal.
- # [01:06] <rniwa> +q
- # [01:06] * Zakim sees ebryn, mjs, rniwa on the speaker queue
- # [01:06] <taylor> AvK: so if inner tree doesn't want to expose anything, it doesn't have to?
- # [01:06] <chaals> ack eb
- # [01:06] * Zakim sees mjs, rniwa on the speaker queue
- # [01:06] <taylor> SO: Correct
- # [01:06] <taylor> EB: Recently became familiar with this proposal
- # [01:06] <taylor> EB: Extremely excited with this proposal.
- # [01:06] <taylor> EB: Began implementing a theming engine based on this proposal
- # [01:06] <taylor> EB: Hadn't heard of mixin concept - interested in this as well
- # [01:07] <hober> q+
- # [01:07] * Zakim sees mjs, rniwa, hober on the speaker queue
- # [01:07] <Domenic_> I can present an example of @extend usage
- # [01:07] <taylor> EB: This is the solution. I've heard a lot of people complain about the problem of overriding style information in shadow roots.
- # [01:07] <Domenic_> I figured out how to use it for the multiple properties thing
- # [01:07] <Domenic_> I guess I can just type it here
- # [01:07] <taylor> EB: This seems like a very elegant side-channel for propagating this information throughout the component hierarchies
- # [01:07] * chaals yes please domenic
- # [01:07] <justin> https://github.com/Polymer/polymer/blob/0.8-preview/PRIMER.md#xscope-styling
- # [01:07] <chaals> ack mj
- # [01:07] <Zakim> mjs, you wanted to ask why custom properties instead of named parts
- # [01:07] * Zakim sees rniwa, hober on the speaker queue
- # [01:08] <Domenic_> /* in shadow DOM */ <style> #internal-piece { @extend %my-component-internal-piece; }</style> <div id="internal-piece">...</div>
- # [01:08] <taylor> MJS: Why custom properties instead of named parts?
- # [01:08] <Domenic_> /* outside shadow DOM */ %my-component-internal-piece { color: blue; opacity: 0.5; }
- # [01:08] <taylor> MJS: Seems more natural to say this-element:toolbar { color: red; }
- # [01:08] <taylor> MJS: Then you're not making aliased clones of style properties
- # [01:09] <taylor> SO: That's another way to go. From our perspective, it's really close.
- # [01:09] <taylor> SO: The huge advantage is now we don't have this huge interaction with the selector engine
- # [01:09] <chaals> ack rn
- # [01:09] * Zakim sees hober on the speaker queue
- # [01:09] <ebryn> +eb
- # [01:09] * Zakim wonders where eb is
- # [01:09] <ebryn> +q
- # [01:09] * Zakim sees hober, ebryn on the speaker queue
- # [01:09] <taylor> SO: Inheritance is a totally different model that fits better
- # [01:09] <justin> q+
- # [01:09] * Zakim sees hober, ebryn, justin on the speaker queue
- # [01:09] * chaals wonders if domenic wants to q+
- # [01:10] <hober> q-
- # [01:10] * Zakim sees ebryn, justin on the speaker queue
- # [01:10] <chaals> q+ domenic
- # [01:10] * Zakim sees ebryn, justin, domenic on the speaker queue
- # [01:11] * ebryn parts proposal link?
- # [01:11] <taylor> RN: How do you specify specific values for a specific custom element that you match with a selector?
- # [01:11] <taylor> SO: The basic answer is "You don't exactly" because doing so is selector matching, and we're not using selectors
- # [01:11] <taylor> SO: If you have a button, and the button exposes a "button theme"
- # [01:12] <taylor> SO: But in your scope you have a specific set of buttons, you have to expose each one as a different name
- # [01:12] <taylor> SO: Advantage: we don't have to use complexity of style selector engine, and you don't expose details of the structure
- # [01:12] <taylor> RN: How does a component author know what kind of types of buttons you may end up using?
- # [01:13] <taylor> SO: Button just needs to expose a way of styling it
- # [01:13] <taylor> SO: It's the user of the button that has to style the buttons individually
- # [01:13] <chaals> ack ebry
- # [01:13] * Zakim sees justin, domenic on the speaker queue
- # [01:13] <taylor> MJS: What if there are lots of properties that you want the same way?
- # [01:13] <taylor> SO: You can set properties to other properties
- # [01:14] <taylor> MJS: Problem: overloading the same property names. My plan is to automatically namespace these with the component's name.
- # [01:14] <taylor> s/MJS/EB/
- # [01:14] <taylor> EB: I'm enforcing this a the framework level rather than the spec level
- # [01:14] <mjs> q+ to ask about var()
- # [01:15] * Zakim sees justin, domenic, mjs on the speaker queue
- # [01:15] <taylor> SO: I'm imagining exactly the same thing
- # [01:15] <taylor> SO: We haven't codified this yet in the system, but it's not a bad idea
- # [01:15] <Domenic_> https://gist.github.com/domenic/56da9586bb1326a05edb
- # [01:15] <mjs> q+ to ask about var() and how you update when your inherited style changes
- # [01:15] * Zakim sees justin, domenic, mjs on the speaker queue
- # [01:15] <taylor> SO: The fact that at each scope you can decide what happens gives you enough hooks
- # [01:15] * chaals wonders if domenic wants to let mjs go first on queue or not
- # [01:16] <taylor> EB: Would like to bet heavily on this API. Need to see part proposal.
- # [01:16] <mjs> Named Parts proposal: https://lists.w3.org/Archives/Public/www-style/2014Feb/0621.html
- # [01:16] <chaals> ack ju
- # [01:16] * Zakim sees domenic, mjs on the speaker queue
- # [01:16] <taylor> EB: Would love to see consensus get built. See alignment with Polymer team on this.
- # [01:16] <taylor> JF: What makes this more powerful than parts: don't need to invent blacklist
- # [01:17] <taylor> JF: Can expose a property, the value of which I might map to multiple styling points, use in a calculation, etc.
- # [01:17] <taylor> JF: You get this power over just parts
- # [01:17] <taylor> EB: Is it just me or does the parts proposal align to the named slots concept?
- # [01:17] <taylor> consensus: yes
- # [01:17] <rniwa> q+
- # [01:17] * Zakim sees domenic, mjs, rniwa on the speaker queue
- # [01:18] <taylor> EB: Seems clear to me I don't want my users to have to override CSS properties. Don't want them setting color and background color.
- # [01:18] <chaals> q+ sam
- # [01:18] * Zakim sees domenic, mjs, rniwa, sam on the speaker queue
- # [01:18] <taylor> EB: Want to provide higher-level concepts than what CSS itself provides.
- # [01:18] <mjs> Is this the actual spec for what people are talking about with custom properties and var()? http://dev.w3.org/csswg/css-variables/
- # [01:18] <taylor> AvK: As long as CSS properties are granular enough, you can have a blacklist or whitelist for parts thing
- # [01:18] <taylor> EB: I don't want granular
- # [01:18] <taylor> SO: You cant have --secondary-color. We can invent that property and have it mean something
- # [01:19] <LJWatson> q+ to say that there is an (edge) accessibility case for enabling users to override styles
- # [01:19] * Zakim sees domenic, mjs, rniwa, sam, LJWatson on the speaker queue
- # [01:19] <taylor> EB: My motivation: I want to be able to define the terminology and vocabulary that the user is using
- # [01:19] <taylor> EB: I want my UI library to abstract away the granular, nitty-gritty details and expose them as something simple.
- # [01:20] <taylor> EB: Not expose nitty gritty properties and have the user have to infer the API out
- # [01:20] <taylor> CMN: So you want to be able to do something like expose the property "theme" and take that information and apply the component to where it ends up?
- # [01:20] <hober> q+
- # [01:20] * Zakim sees domenic, mjs, rniwa, sam, LJWatson, hober on the speaker queue
- # [01:21] <taylor> EB: More of like an implicit thing than an explicit thing. The documentation for your component will have all the attributes and properties that you element has.
- # [01:21] <taylor> EB: It will also have a "themeable" section of the things that can be changed by the parent
- # [01:21] <taylor> EB: Like a side-channel
- # [01:21] <taylor> EB: Don't want to be verbose always - want nice global aspect of CSS without allowing people to globally muck with your styling logic.
- # [01:21] <Travis> q+
- # [01:21] * Zakim sees domenic, mjs, rniwa, sam, LJWatson, hober, Travis on the speaker queue
- # [01:22] <taylor> EB: You want people to muck with the styleable or themable properties of your element
- # [01:22] <chaals> ack dom
- # [01:22] * Zakim sees mjs, rniwa, sam, LJWatson, hober, Travis on the speaker queue
- # [01:22] <taylor> Domenic: Check out the gist
- # [01:22] <taylor> https://gist.github.com/domenic/56da9586bb1326a05edb
- # [01:23] <taylor> Domenic: Custom properties let you customize one thing at a time, mixins let you customize as many things as you want at one time
- # [01:23] <taylor> WP: Does mixin api let you whitelist or blacklist properties?
- # [01:23] <chaals> q?
- # [01:23] * Zakim sees mjs, rniwa, sam, LJWatson, hober, Travis on the speaker queue
- # [01:23] <taylor> Domenic: Yes, you could override it.
- # [01:23] <chaals> ack mj
- # [01:23] <Zakim> mjs, you wanted to ask about var() and to ask about var() and how you update when your inherited style changes
- # [01:23] * Zakim sees rniwa, sam, LJWatson, hober, Travis on the speaker queue
- # [01:23] <taylor> EB: Yes. Normal CSS rules apply.
- # [01:24] * Quits: jan (~JanMiksovsky@public.cloak) (jan)
- # [01:24] <mjs> http://dev.w3.org/csswg/css-variables/
- # [01:24] <taylor> MJS: I was confused about which part of this proposal is a request for UA to implement things vs. framework implementation
- # [01:24] * Quits: philipwalton (~philipwalton@public.cloak) (Ping timeout: 180 seconds)
- # [01:24] <chaals> s|http://dev.w3.org/csswg/css-variables/|-> http://dev.w3.org/csswg/css-variables/ the custom properties spec…|
- # [01:25] <wilsonpage> q+
- # [01:25] * Zakim sees rniwa, sam, LJWatson, hober, Travis, wilsonpage on the speaker queue
- # [01:25] <wilsonpage> q-
- # [01:25] * Zakim sees rniwa, sam, LJWatson, hober, Travis on the speaker queue
- # [01:25] <taylor> MJS: As presented, this thing has similarly equivalent power to named parts
- # [01:25] <taylor> MJS: But to do a whitelist of certain properties you need to invent a variable for each thing on your whitelist
- # [01:26] * ebryn i want to invent those properties
- # [01:26] <taylor> MJS: With parts people can just use the direct style property
- # [01:26] <ebryn> +q
- # [01:26] * Zakim sees rniwa, sam, LJWatson, hober, Travis, ebryn on the speaker queue
- # [01:26] <chaals> q?
- # [01:26] * Zakim sees rniwa, sam, LJWatson, hober, Travis, ebryn on the speaker queue
- # [01:26] <justin> q+
- # [01:26] * Zakim sees rniwa, sam, LJWatson, hober, Travis, ebryn, justin on the speaker queue
- # [01:27] <taylor> SO: We have psuedos for like range - is there a whitelist for that?
- # [01:27] <chaals> ack rn
- # [01:27] * Zakim sees sam, LJWatson, hober, Travis, ebryn, justin on the speaker queue
- # [01:27] <rniwa> q-
- # [01:27] * Zakim sees sam, LJWatson, hober, Travis, ebryn, justin on the speaker queue
- # [01:27] <taylor> MJS: When we allow psudoes for styling parts of elements they can only accept certain properties
- # [01:27] * rniwa was gonna say the same thing
- # [01:27] <taylor> s/psudoes/psuedos/
- # [01:27] <chaals> ack sam
- # [01:27] * Zakim sees LJWatson, hober, Travis, ebryn, justin on the speaker queue
- # [01:28] <chaals> q+ ejb
- # [01:28] * Zakim sees LJWatson, hober, Travis, ebryn, justin, ejb on the speaker queue
- # [01:28] <chaals> q- ejb
- # [01:28] * Zakim sees LJWatson, hober, Travis, ebryn, justin on the speaker queue
- # [01:28] <chaals> q+ ebryn
- # [01:28] * Zakim sees LJWatson, hober, Travis, ebryn, justin on the speaker queue
- # [01:28] <taylor> SW: Seems like this has a lot of nice properties
- # [01:28] <taylor> SW: The ability to take only a part of a thing
- # [01:28] * Quits: Travis (~Travis@public.cloak) (Ping timeout: 180 seconds)
- # [01:29] <taylor> SW: Seems like there's a nicer abstraction that's available here
- # [01:29] <taylor> SW: 2 things you might want to do: a particular property or part of a property is something that you want to change property, or something you might only want the embedder of me to change
- # [01:29] <taylor> SW: Have you run in to places where you want the author to be more or less restrictive
- # [01:30] <taylor> EB: The second argument to var is a good fallback mechanism to globals
- # [01:30] <taylor> EB: var lets you provide the fallback
- # [01:30] <taylor> EB: There is potentially some other stuff to be explored - conventional naming mechanisms
- # [01:30] <taylor> EB: Perhaps a framework idea: If you name your custom properties in a mechanism --color, perhaps you can assume that they meant to set the color property
- # [01:31] * Quits: annevk (~annevk@public.cloak) (Client closed connection)
- # [01:31] <Domenic_> Could we allow color: var(color)?
- # [01:31] <taylor> EB: Might have some nice naming conventions for how you can override things so that the user doesn't have to learn what the unique name was
- # [01:31] * Quits: misko (~misko@public.cloak) (misko)
- # [01:31] * chaals worries about accidentally overriding the new CSS7 crazypaving property…
- # [01:31] <taylor> EB: That coupled with automatic namespacing with custom element could be the convention to override a specific property
- # [01:31] <chaals> ack LJ
- # [01:31] <Zakim> LJWatson, you wanted to say that there is an (edge) accessibility case for enabling users to override styles
- # [01:31] * Zakim sees hober, Travis, ebryn, justin on the speaker queue
- # [01:31] <ebryn> q-
- # [01:31] * Zakim sees hober, Travis, justin on the speaker queue
- # [01:31] * Joins: Travis (~Travis@public.cloak)
- # [01:32] <taylor> LJW: Edge case from a11y point of view - when people with low vision want to override styles of a website
- # [01:32] * chaals doesn't think that is a stupid question
- # [01:32] <taylor> LJW: How did these proposals let us handle things like keyboard focus visibility, where at the global level it is controlled but needs to move inside component?
- # [01:32] <aboxhall> q+ to ask about separation of presentation and behaviour
- # [01:32] * Zakim sees hober, Travis, justin, aboxhall on the speaker queue
- # [01:32] <hober> q-
- # [01:32] * Zakim sees Travis, justin, aboxhall on the speaker queue
- # [01:33] <taylor> LJW: You want to be clear where your keyboard focus is. Typically global. Could it be matched up so that keyboard focus could be consistent everywhere?
- # [01:33] <mjs> q+ to comment on focus
- # [01:33] * Zakim sees Travis, justin, aboxhall, mjs on the speaker queue
- # [01:33] <taylor> CMN: Perhaps a bad idea would be to whitelist focus
- # [01:33] <taylor> MJS: No obviously good way to do it with inheritance model
- # [01:33] <taylor> MJS: Plausibly you could imagine with part selector and focus selector you could style particular focus part
- # [01:34] <taylor> SO: Using custom properties, at the point you consume the property you would match it against :focus
- # [01:34] <taylor> SO: This is not as practical for high-contrast
- # [01:35] <taylor> MJS: So if you wanted :hover :focus ... etc. you'd have to invent separate properties for each one?
- # [01:35] <taylor> JF: You can apply a whole mixin of properties
- # [01:35] <hober> q?
- # [01:35] * Zakim sees Travis, justin, aboxhall, mjs on the speaker queue
- # [01:35] <hober> q+
- # [01:35] * Zakim sees Travis, justin, aboxhall, mjs, hober on the speaker queue
- # [01:35] <mjs> q-
- # [01:35] * Zakim sees Travis, justin, aboxhall, hober on the speaker queue
- # [01:35] * Quits: zenorocha (~zenorocha@public.cloak) ("Page closed")
- # [01:35] * Joins: weinig (~weinig@public.cloak)
- # [01:36] <taylor> AvK: If it's a useragent thing you could override it
- # [01:36] <Travis> q-
- # [01:36] * Zakim sees justin, aboxhall, hober on the speaker queue
- # [01:36] <taylor> CMN: Note: We need to figure out these things for a11y
- # [01:36] <taylor> SW: What is the new thing in Shadow DOM that raises a problem?
- # [01:37] <taylor> CMN: You might be right, it might not be a new problem.
- # [01:37] <chaals> ack ju
- # [01:37] * Zakim sees aboxhall, hober on the speaker queue
- # [01:38] <chaals> ack abox
- # [01:38] <Zakim> aboxhall, you wanted to ask about separation of presentation and behaviour
- # [01:38] * Zakim sees hober on the speaker queue
- # [01:38] <taylor> AB: One thing that concerns me is separation of presentation and behavior. Make sure we're keeping this in mind. Whether it shakes out as a best practice pattern.
- # [01:38] <taylor> AB: People keep reimplementing button because they can't style it the way they want
- # [01:38] <taylor> AB: Make sure we have this on our radar - that we can separate behavior and styling with custom elements
- # [01:39] <chaals> ack hob
- # [01:39] * Zakim sees no one on the speaker queue
- # [01:39] <taylor> AvK: Domenic is working on this - reimplementing HTML as custom elements
- # [01:40] <taylor> EO: CSS variables seems like a good fit for styling focus
- # [01:40] <rniwa> q+
- # [01:40] * Zakim sees rniwa on the speaker queue
- # [01:40] <taylor> EO: Would be a mistake to think that CSS mixins are anything beyond a blog post, but variables are very far along
- # [01:40] <taylor> EO: Happy to communicate that we want them
- # [01:40] <sorvell> q+
- # [01:40] * Zakim sees rniwa, sorvell on the speaker queue
- # [01:41] <taylor> EO: How are these features helping us explain the platform: multiple shadow root issue with part proposal is a real one. With multiple form controls we have parts, and a way to take bundle of properties without CSS mixins.
- # [01:42] <taylor> RN: One problem I can see is if we want isolated components, you can see any variables in original document inside component. We need a mechanism to either whitelist or expose a list of properties you're listening to, and page needs a way to expose a list of components you want to be able to use variables
- # [01:42] <chaals> ack rn
- # [01:42] * Zakim sees sorvell on the speaker queue
- # [01:42] <chaals> ack so
- # [01:42] * Zakim sees no one on the speaker queue
- # [01:42] <taylor> SO: We feel like we needed shadow piercing because we were blocked on needing to do themeing. We feel unblocked now
- # [01:43] <taylor> SO: We don't know how to do isolated scope themeing, but we don't have isolated scopes yet.
- # [01:43] <taylor> SO: We have enough capability now to polyfill or shim additional features around it, which can inform v2
- # [01:43] <taylor> RN: Can someone write up concrete proposal and set it to mailing list?
- # [01:44] <rniwa> s/set/send/
- # [01:44] <taylor> Domenic: Summarize: don't think there's much of a proposal other than "here's what we already have, and how we could use them"
- # [01:44] <taylor> Domenic: We have a solution for blacklisting, we don't yet have one for whitelisting
- # [01:44] <taylor> Domenic: Unresolved issue around non-standard elements in form controls. Do we want to standardize them, or move towards a model where there are standard custom properties
- # [01:45] <hober> q?
- # [01:45] * Zakim sees no one on the speaker queue
- # [01:45] <taylor> DG: Want to make sure that there's nobody who feels that parts and custom properties proposals are conflicting with eachother
- # [01:45] <taylor> MJS: Seems like you could implement both
- # [01:46] <taylor> MJS: For isolated mode you probably don't want styles inheriting
- # [01:46] <taylor> Domenic: Don't think this is a foregone conclusion - seems reasonable that you might want --slider-thumb-color with the browser
- # [01:46] <taylor> MJS: Probably don't want it to inherit arbitrarily predefined properties
- # [01:47] <rniwa> q+
- # [01:47] * Zakim sees rniwa on the speaker queue
- # [01:48] <taylor> MJS: Lets say you have secure login component with image for the user to see. Inherit css in that causes it to be hidden.
- # [01:48] <taylor> Domenic: Only happens if the component specifically exposes this
- # [01:48] <taylor> JS: You inherit only inheritable properties
- # [01:48] <taylor> s/JS/JF/
- # [01:49] <taylor> SO: inheritance breaks through inheritable properties
- # [01:49] <taylor> Domenic: Set of inheritable properties should only be custom properties?
- # [01:49] * ebryn lazyweb: what are the set of inheritable properties for shadow dom?
- # [01:49] <taylor> RN: If you had a component that respects --property-one
- # [01:49] <taylor> RN: Then you add --property-2 to another componnet
- # [01:49] <chaals> ack rn
- # [01:49] * Zakim sees no one on the speaker queue
- # [01:50] <taylor> s/componnet/component
- # [01:50] <taylor> RN: But then the first component author could change the component to use --property-1
- # [01:50] <taylor> JF: Conventions around namespacing will be important here. Is it just a semantic property, or are you targeting a specific CSS property on a set of components?
- # [01:50] <taylor> JF: Sometimes you want these collisions - you want different themes to share --primary-color
- # [01:51] <taylor> JF: Yet to be determines how people do this
- # [01:51] <taylor> DG: Really productive meeting!!
- # [01:51] <taylor> [applause]
- # [01:51] <Domenic_> http://dev.w3.org/csswg/css2/propidx.html has all the properties as of 2.1...
- # [01:51] <Domenic_> azimuth is inherited woo
- # [01:51] <taylor> DG: Much smaller set of contentious problems - some concrete work items
- # [01:53] <taylor> DG: Resolutions:
- # [01:53] <taylor> DG: Multiple shadow root - remove
- # [01:53] <taylor> DG: Open-closed: Default value - explicitly declared, both open and closed in v1
- # [01:54] <taylor> DG: EB and RN will drive proposal for imperative API
- # [01:54] <taylor> DG: Event retargeting - swapping out path and the new deepPath
- # [01:54] <taylor> DG: Shadow boundary piercing combinators are gone
- # [01:54] <taylor> DG: Slot proposal blocked on imperative API resolution
- # [01:55] * Quits: LJWatson (~chatzilla@public.cloak) ("ChatZilla 0.9.91.1 [Firefox 37.0.2/20150415140819]")
- # [01:56] <taylor> DG: Lots of cool ideas on styling, don't see any big problems.
- # [01:56] <taylor> EO: Don't see any problems here with custom properties
- # [01:56] <taylor> DG: Need action item to talk about :host
- # [01:57] <taylor> DG: :host is ability for you as a component to style yourself from the inside
- # [01:58] <taylor> EB: Re; event path - if you're going to turn something on that isn't configurable, want confirmation that you have all the original information
- # [01:58] <taylor> EB: Simplest thing for my perspective is to include the original event object
- # [01:59] <taylor> EB: Would prefer non-mutated version of the original event object
- # [01:59] <taylor> AR: Seems very sugar-y
- # [01:59] <taylor> EB: Purely theoretical.
- # [01:59] <taylor> AI(EB): Find out if this is a real problem.
- # [01:59] <taylor> DG: Thanks everybody for coming!
- # [01:59] <taylor> DG: If you're not tired you're amazing
- # [02:00] <taylor> DG: Let's meet again some time.
- # [02:00] <taylor> AvK: Meeting in July again might be good, if proposal is good
- # [02:00] <taylor> DG: Let's plan for something. Good idea.
- # [02:00] <taylor> DG: Plan same thing for Custom Elements
- # [02:00] <aklein> Also should plan some sort of Custom Elements thing
- # [02:01] <taylor> Thanks everyone!
- # [02:01] * Quits: rniwa (~textual@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [02:01] <taylor> -- Fin --
- # [02:01] * Quits: mjs (~mjs@public.cloak) (mjs)
- # [02:01] * Quits: taylor (~taylor@public.cloak) ("Page closed")
- # [02:01] * Quits: weinig (~weinig@public.cloak) (weinig)
- # [02:02] * Parts: dglazkov (~sid4270@public.cloak)
- # [02:02] <chaals> [Thanks to Taylor for scribing, Dmitry for getting this together, Chris for logistics…]
- # [02:02] <chaals> rrsagent, draft minutes
- # [02:02] <RRSAgent> I have made the request to generate http://www.w3.org/2015/04/25-webapps-minutes.html chaals
- # [02:02] * Quits: aklein (~sid4454@public.cloak) ("")
- # [02:04] * Quits: wilsonpage (~wilsonpage@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [02:05] * Joins: joannawu (~JoannaWu@public.cloak)
- # [02:07] * Quits: arronei (~arronei@public.cloak) (Ping timeout: 180 seconds)
- # [02:07] * Quits: Travis (~Travis@public.cloak) (Ping timeout: 180 seconds)
- # [02:07] * Quits: sorvell (~sorvell@public.cloak) (Ping timeout: 180 seconds)
- # [02:08] * Quits: smaug (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [02:11] * Quits: markg (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [02:11] * Quits: admin (~macmaster@public.cloak) ("Bye!")
- # [02:12] * Quits: chaals (~Adium@public.cloak) ("Leaving.")
- # [02:12] * Joins: hexalys (~hexalys@public.cloak)
- # [02:12] * Quits: joannawu (~JoannaWu@public.cloak) (Ping timeout: 180 seconds)
- # [02:12] * Quits: hexalys (~hexalys@public.cloak) ("Bye!")
- # [02:38] * Joins: wilsonpage (~wilsonpage@public.cloak)
- # [02:39] * Quits: jsbell (~jsbell@public.cloak) ("There's no place like home...")
- # [02:39] * Quits: wilsonpage (~wilsonpage@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [02:40] * terri is now known as terri_offline
- # [03:12] * Joins: jan (~JanMiksovsky@public.cloak)
- # [03:14] * Quits: jan (~JanMiksovsky@public.cloak) (jan)
- # [03:36] * Joins: mjs (~mjs@public.cloak)
- # [03:44] * Joins: lizheming (~lizheming@public.cloak)
- # [03:45] * Quits: lizheming (~lizheming@public.cloak) ("Page closed")
- # [03:45] * Joins: joannawu (~JoannaWu@public.cloak)
- # [04:03] * Joins: John (~John@public.cloak)
- # [04:12] * Quits: mjs (~mjs@public.cloak) (mjs)
- # [04:30] * Joins: marcosc__ (~marcosc@public.cloak)
- # [04:30] * Quits: marcosc_ (~marcosc@public.cloak) (Client closed connection)
- # [04:36] * Joins: mjs (~mjs@public.cloak)
- # [04:38] * Quits: marcosc (~marcosc@public.cloak) (Client closed connection)
- # [04:52] * Quits: mjs (~mjs@public.cloak) (mjs)
- # [04:53] * Quits: John (~John@public.cloak) ("Page closed")
- # [05:32] * Joins: smaug (~chatzilla@public.cloak)
- # [05:34] * Joins: markg (~chatzilla@public.cloak)
- # [05:38] * Joins: marcosc (~marcosc@public.cloak)
- # [05:45] * Quits: marcosc (~marcosc@public.cloak) (Ping timeout: 180 seconds)
- # [05:50] * Quits: aboxhall (~uid20617@public.cloak) ("Connection closed for inactivity")
- # [06:11] * Joins: jyasskin (~textual@public.cloak)
- # [06:20] * Joins: mjs (~mjs@public.cloak)
- # [06:20] * Joins: arronei (~arronei@public.cloak)
- # [06:22] * Joins: woozy (~woozy@public.cloak)
- # [06:25] * Quits: woozy (~woozy@public.cloak) ("Page closed")
- # [06:30] * Quits: mjs (~mjs@public.cloak) (mjs)
- # [06:31] * Joins: rniwa (~textual@public.cloak)
- # [06:40] * Joins: smaug_ (~chatzilla@public.cloak)
- # [06:41] * Quits: smaug_ (~chatzilla@public.cloak) ("Reconnecting…")
- # [06:45] * Quits: smaug (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [06:55] * Quits: jyasskin (~textual@public.cloak) ("Textual IRC Client: www.textualapp.com")
- # [06:58] * Joins: jyasskin (~textual@public.cloak)
- # [07:13] * Quits: joannawu (~JoannaWu@public.cloak) (Client closed connection)
- # [07:18] * Joins: estellevw (~estellevw@public.cloak)
- # [07:37] * Quits: arronei (~arronei@public.cloak) (Ping timeout: 180 seconds)
- # [07:44] * Joins: joannawu (~JoannaWu@public.cloak)
- # [07:50] * Quits: estellevw (~estellevw@public.cloak) ("Snuggling with the puppies")
- # [08:07] * Joins: shepazu (schepers@public.cloak)
- # [08:11] * Quits: joannawu (~JoannaWu@public.cloak) (Client closed connection)
- # [08:12] * Joins: joannawu (~JoannaWu@public.cloak)
- # [08:20] * Parts: tantek (~tantek@public.cloak)
- # [08:49] * Quits: joannawu (~JoannaWu@public.cloak) (Client closed connection)
- # [08:54] * Quits: jyasskin (~textual@public.cloak) ("My computer has gone to sleep. ZZZzzz…")
- # [09:26] * Joins: joannawu (~JoannaWu@public.cloak)
- # [09:28] * Joins: jyasskin (~textual@public.cloak)
- # [09:42] * Quits: joannawu (~JoannaWu@public.cloak) (Client closed connection)
- # [09:43] * Joins: SteveF (~chatzilla@public.cloak)
- # [09:56] * Quits: rniwa (~textual@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [09:57] * Joins: joannawu (~JoannaWu@public.cloak)
- # [09:57] * Quits: joannawu (~JoannaWu@public.cloak) (Client closed connection)
- # [10:25] * Joins: joannawu (~JoannaWu@public.cloak)
- # [10:58] * Joins: rniwa (~textual@public.cloak)
- # [11:00] * Quits: jyasskin (~textual@public.cloak) ("My computer has gone to sleep. ZZZzzz…")
- # [11:09] * Quits: rniwa (~textual@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [11:35] * Joins: marcosc (~marcosc@public.cloak)
- # [11:42] * Quits: marcosc (~marcosc@public.cloak) (Ping timeout: 180 seconds)
- # [11:44] * Quits: joannawu (~JoannaWu@public.cloak) (Client closed connection)
- # [12:01] * Joins: joannawu (~JoannaWu@public.cloak)
- # [12:18] * Quits: joannawu (~JoannaWu@public.cloak) (Client closed connection)
- # [12:19] * Joins: joannawu (~JoannaWu@public.cloak)
- # [12:26] * Quits: joannawu (~JoannaWu@public.cloak) (Ping timeout: 180 seconds)
- # [12:54] * Quits: SteveF (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [13:19] * Joins: joannawu (~JoannaWu@public.cloak)
- # [13:27] * Quits: joannawu (~JoannaWu@public.cloak) (Ping timeout: 180 seconds)
- # [14:03] * Quits: markg (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [14:20] * Joins: joannawu (~JoannaWu@public.cloak)
- # [14:27] * Quits: joannawu (~JoannaWu@public.cloak) (Ping timeout: 180 seconds)
- # [14:40] * Joins: marcosc (~marcosc@public.cloak)
- # [14:47] * Quits: marcosc (~marcosc@public.cloak) (Ping timeout: 180 seconds)
- # [15:03] * Joins: markg (~chatzilla@public.cloak)
- # [15:36] * Joins: joannawu (~JoannaWu@public.cloak)
- # [15:41] * Quits: markg (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [15:43] * Quits: joannawu (~JoannaWu@public.cloak) (Ping timeout: 180 seconds)
- # [15:58] * Quits: shepazu (schepers@public.cloak) (Ping timeout: 180 seconds)
- # [16:05] * Joins: estellevw (~estellevw@public.cloak)
- # [16:12] * Joins: darobin (rberjon@public.cloak)
- # [16:29] * Quits: darobin (rberjon@public.cloak) (Client closed connection)
- # [16:33] * Joins: marcosc (~marcosc@public.cloak)
- # [16:33] * Quits: marcosc__ (~marcosc@public.cloak) (Client closed connection)
- # [16:41] * Joins: marcosc_ (~marcosc@public.cloak)
- # [16:44] * Joins: joannawu (~JoannaWu@public.cloak)
- # [16:49] * Quits: marcosc_ (~marcosc@public.cloak) (Ping timeout: 180 seconds)
- # [17:03] * Joins: arronei (~arronei@public.cloak)
- # [17:30] * Quits: arronei (~arronei@public.cloak) (Ping timeout: 180 seconds)
- # [17:34] * Quits: estellevw (~estellevw@public.cloak) ("Snuggling with the puppies")
- # [17:37] * Joins: estellevw (~estellevw@public.cloak)
- # [18:07] * Joins: SteveF (~chatzilla@public.cloak)
- # [18:12] * Joins: Guest70 (~textual@public.cloak)
- # [18:23] * Quits: estellevw (~estellevw@public.cloak) ("Snuggling with the puppies")
- # [18:35] * Joins: arronei (~arronei@public.cloak)
- # [18:42] * Quits: joannawu (~JoannaWu@public.cloak) (Client closed connection)
- # [18:51] * Joins: joannawu (~JoannaWu@public.cloak)
- # [18:58] * Joins: markg (~chatzilla@public.cloak)
- # [19:23] * Joins: jyasskin (~textual@public.cloak)
- # [19:31] * Joins: marcosc_ (~marcosc@public.cloak)
- # [19:32] * Quits: joannawu (~JoannaWu@public.cloak) (Client closed connection)
- # [19:38] * Quits: marcosc_ (~marcosc@public.cloak) (Ping timeout: 180 seconds)
- # [19:44] * Joins: shepazu (schepers@public.cloak)
- # [19:46] * Quits: jyasskin (~textual@public.cloak) ("My computer has gone to sleep. ZZZzzz…")
- # [19:52] * Joins: joannawu (~JoannaWu@public.cloak)
- # [19:52] * Quits: joannawu (~JoannaWu@public.cloak) (Client closed connection)
- # [19:52] * Joins: joannawu (~JoannaWu@public.cloak)
- # [20:05] * Quits: SteveF (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [20:18] * Joins: shepazu_ (schepers@public.cloak)
- # [20:18] * Quits: shepazu (schepers@public.cloak) (Client closed connection)
- # [20:19] * Joins: darobin (rberjon@public.cloak)
- # [20:25] * Quits: shepazu_ (schepers@public.cloak) (Client closed connection)
- # [20:25] * Joins: shepazu (schepers@public.cloak)
- # [20:27] * Quits: shepazu (schepers@public.cloak) (Client closed connection)
- # [20:27] * Joins: shepazu (schepers@public.cloak)
- # [20:29] * Quits: shepazu (schepers@public.cloak) (Client closed connection)
- # [20:29] * Joins: shepazu_ (schepers@public.cloak)
- # [20:32] * Quits: shepazu_ (schepers@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [20:39] * Joins: jyasskin (~textual@public.cloak)
- # [20:39] * Quits: joannawu (~JoannaWu@public.cloak) (Client closed connection)
- # [20:53] * Joins: joannawu (~JoannaWu@public.cloak)
- # [21:00] * Quits: joannawu (~JoannaWu@public.cloak) (Ping timeout: 180 seconds)
- # [21:06] * Quits: arronei (~arronei@public.cloak) (Ping timeout: 180 seconds)
- # [21:10] * Joins: SteveF (~chatzilla@public.cloak)
- # [21:44] <hallvord> I'd like some developer comments on this idea: https://lists.w3.org/Archives/Public/public-webapps/2015AprJun/0173.html - any idea how I can get it some attention? Seems Chrome is busy improving their clipboard stuff support, which is cool, but it means it would be nice to find a good feature detection story soon..
- # [21:48] * Quits: SteveF (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [21:50] * Joins: estellevw (~estellevw@public.cloak)
- # [21:57] * Joins: smaug (~chatzilla@public.cloak)
- # [22:01] * Joins: marcosc_ (~marcosc@public.cloak)
- # [22:08] * Quits: marcosc_ (~marcosc@public.cloak) (Ping timeout: 180 seconds)
- # [22:15] * Joins: shepazu (schepers@public.cloak)
- # [22:24] * Quits: darobin (rberjon@public.cloak) ("Leaving...")
- # [22:25] * Quits: shepazu (schepers@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [22:27] * Joins: shepazu (schepers@public.cloak)
- # [22:44] * Joins: rniwa (~textual@public.cloak)
- # [22:59] * Quits: shepazu (schepers@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [23:00] * Quits: rniwa (~textual@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [23:02] * Joins: marcosc_ (~marcosc@public.cloak)
- # [23:09] * Quits: marcosc_ (~marcosc@public.cloak) (Ping timeout: 180 seconds)
- # [23:14] * Quits: smaug (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [23:31] * Joins: rniwa (~textual@public.cloak)
- # [23:38] * Quits: rniwa (~textual@public.cloak) (Ping timeout: 180 seconds)
- # [23:40] * Joins: shepazu (schepers@public.cloak)
- # Session Close: Sun Apr 26 00:00:00 2015
Previous day, Next day
Think these logs are useful? Then please donate to show your gratitude (and keep them up, of course). Thanks! — Krijn