IRC log of core on 2010-06-09
Timestamps are in UTC.
- 00:03:21 [fantasai]
- Aharon writes this into the notes
- 00:04:42 [fantasai]
- We try to integrate this with CSS model
- 00:08:09 [fantasai]
- Aharon writes as various people dictate bits
- 00:15:22 [ehsan]
- ehsan has joined #core
- 00:20:30 [Norbert]
- Mark suggests checking the new model against the use cases.
- 00:23:48 [roozbeh]
- Mark suggests we break
- 00:23:59 [Norbert]
- Mark moves that the session be adjourned
- 00:24:03 [roozbeh]
- Roozbeh seconds
- 00:25:27 [fantasai]
- RRSAgent: make minutes
- 00:25:27 [RRSAgent]
- I have made the request to generate http://www.w3.org/2010/06/09-core-minutes.html fantasai
- 00:26:03 [fantasai]
- Thanks for your participation, Adil!!
- 00:26:12 [Adil]
- my pleasure!
- 00:26:25 [fantasai]
- I always enjoy your comments :P
- 00:26:35 [fantasai]
- you're good at pointing things out
- 00:29:02 [zzzzz]
- zzzzz has left #core
- 00:52:40 [Aharon]
- Aharon has joined #core
- 00:53:03 [Aharon]
- Aharon has left #core
- 02:01:16 [behdad]
- behdad has joined #core
- 20:47:29 [RRSAgent]
- RRSAgent has joined #core
- 20:47:29 [RRSAgent]
- logging to http://www.w3.org/2010/06/09-core-irc
- 20:47:33 [fantasai]
- RRSAgent: make logs public
- 20:47:43 [fantasai]
- ScribeNick: fantasai
- 20:48:46 [matial]
- matial has joined #core
- 20:49:03 [fantasai]
- Adil: I looked into what would be required to implement dir=auto in Mozilla
- 20:49:10 [fantasai]
- Adil: To get an idea of what the issues are
- 20:49:26 [fantasai]
- Adil: The main point I had was that this is a big jump from what we had in mind originally
- 20:50:25 [fantasai]
- Adil: It was originally meant to be quite limited, but now with the inheritance behavior we have something that could potentially be used on an entire page
- 20:50:45 [fantasai]
- Adil: And the first thing is, it's definitely doable, but it's not a trivial change for browsers
- 20:50:56 [fantasai]
- Adil: It might require architectural changes with how the browser deal with this attribute
- 20:51:23 [fantasai]
- Adil: Browsers I've worked with assume dir attribute to rtl or ltr, which approximates to a boolean
- 20:51:35 [fantasai]
- Adil: The other issue is the browser assumes it's working with a resolved value
- 20:51:52 [fantasai]
- Adil: So working with uba means you'd have to store two values
- 20:52:10 [fantasai]
- Adil: If I can get a working impl, we can look into seeing how many other problems would come out of this
- 20:52:18 [fantasai]
- Aharon: Yes, it is not trivial, but it seems to be useful
- 20:52:43 [fantasai]
- fantasai: I made the spec changes to CSS for this
- 20:52:58 [fantasai]
- http://dev.w3.org/csswg/css3-text-layout/#unicode-bidi
- 20:53:07 [fantasai]
- fantasai: there are not many changes required for CSS
- 20:53:15 [fantasai]
- fantasai: Most changes would be required in the HTML processing code
- 20:54:52 [fantasai]
- fantasai: The [dir] attribute currently can be handled via CSS inheritance of 'direction'
- 20:55:06 [fantasai]
- fantasai: But with changes we want, we'd need the HTML code to manage the inheritance
- 20:55:36 [fantasai]
- Adil: You'd have to be careful that CSS 'direction' and HTML [dir] did not conflict with each other
- 20:56:09 [fantasai]
- Aharon: We should take some minutes to go over some details in our spec here
- 20:56:17 [fantasai]
- Aharon: We never said explicitly what 'match-parent' does.
- 20:57:02 [fantasai]
- Aharon writes in a definition: match-parent means take the resolved direction of the parent
- 20:57:33 [behdad]
- behdad has joined #core
- 21:01:51 [fantasai]
- ...
- 21:01:57 [fantasai]
- Aharon: mapping dir to CSS
- 21:02:04 [fantasai]
- fantasai: dir implies unicode-bidi embed
- 21:02:08 [fantasai]
- Aharon: when specified explicitly
- 21:02:12 [fantasai]
- Aharon: What about 'match-parent'
- 21:02:42 [fantasai]
- roozbeh: The use case is to turn off uba
- 21:03:03 [fantasai]
- RESOLVED: rename 'match-parent' to 'normal'
- 21:03:17 [fantasai]
- Mark: So 'normal' has no effect unless I have set uba
- 21:05:42 [fantasai]
- Aharon edits the document
- 21:07:57 [fantasai]
- RESOLVED: dir=uba and dir=auto imply ubi
- 21:11:43 [behdad]
- behdad has joined #core
- 21:12:15 [behdad]
- behdad has left #core
- 21:12:32 [behdad]
- behdad has joined #core
- 21:12:52 [fantasai]
- Aharon edits points about uba
- 21:15:47 [fantasai]
- RESOLVED: An inline element can have dir=uba. Its children inherit the resolved direction, but not the uba value.
- 21:18:34 [fantasai]
- Currently wordsmithing
- 21:19:55 [fantasai]
- fantasai: Note that you don't know where UBA paragraphs start and end until layout. And you need to resolve the direction before that. So resolving the direction can't depend on splitting into UBA paragraphs
- 21:20:18 [fantasai]
- Mark draws a tree
- 21:20:22 [fantasai]
- Top of tree has uba
- 21:20:43 [fantasai]
- Mark: THe simplest thing to do is, in order to determine the direction, you take the textual content via depth-first traversal
- 21:20:53 [fantasai]
- Mark: until you hit the first strong character
- 21:20:58 [fantasai]
- Mark: And that determines what it is
- 21:21:06 [fantasai]
- Aharon: What if one of those nodes has [dir=ltr]?
- 21:21:26 [fantasai]
- Mark: You ignore the markup. Just check the text.
- 21:21:49 [fantasai]
- Mark: I think that would work in all of the common cases, and in the weird ones we don't care.
- 21:21:52 [fantasai]
- Mark: It's simple to explain
- 21:22:35 [fantasai]
- behdad writes on the board
- 21:22:37 [fantasai]
- <div dir=uba>
- 21:22:46 [fantasai]
- <p dir=normal> [persian char] </p>
- 21:22:49 [fantasai]
- <p>abcd</p>
- 21:22:51 [fantasai]
- </div>
- 21:23:00 [fantasai]
- behdad: So the div will be rtl
- 21:23:17 [fantasai]
- Mark: This is also consistent with how UBA works now -- it does not skip over embedded runs
- 21:23:26 [roozbeh]
- s/behdad/roozbeh/
- 21:23:26 [behdad]
- fantasai: oh am I there?
- 21:23:41 [behdad]
- maybe it's ehsan :D
- 21:23:44 [fantasai]
- :D
- 21:24:37 [fantasai]
- Aharon: Waitaminute, that would mean that if the first child is a <textarea>
- 21:25:13 [fantasai]
- Aharon: We would change the resolution of its ancestors
- 21:26:27 [fantasai]
- discussion of whether or not to except <textarea>
- 21:27:38 [fantasai]
- Mark: Let's add a cautionary note about editable fields inside uba
- 21:27:39 [behdad]
- tricky one
- 21:27:54 [behdad]
- what about out-of-flow ones?
- 21:28:20 [fantasai]
- this is DOM-level resolution
- 21:28:27 [fantasai]
- OOF is in the layout step
- 21:28:30 [behdad]
- ah
- 21:28:36 [behdad]
- tricky indeed
- 21:29:21 [fantasai]
- Note this model means that we do UBA resolution twice
- 21:29:26 [fantasai]
- once to get the resolved direction of the elements
- 21:29:36 [fantasai]
- once to get the resolved direction of each uba paragraph
- 21:31:25 [fantasai]
- Mark draws a jim inside the second main branch of his tree
- 21:31:45 [fantasai]
- Mark: You'd walk through all the neutral content of the entire first branch
- 21:33:16 [fantasai]
- Mark: Then down into the second branch, where you'd find the jim
- 21:34:01 [fantasai]
- Mark: That sets the resolved direction of its parent, which then pipes up to the root
- 21:34:18 [fantasai]
- fantasai: What happens to the boxes with all neutral characters, what is the resolved direction of the elements there?
- 21:34:33 [fantasai]
- Mark: They would default to ltr
- 21:35:00 [fantasai]
- roozbeh: P3 says default to ltr because you don't know anything better
- 21:35:04 [fantasai]
- roozbeh: But we know something better here
- 21:35:40 [fantasai]
- roozbeh: I suggest instead we default to inheritance
- 21:35:56 [fantasai]
- roozbeh: There are cases when you do uba, but you get nothing
- 21:36:06 [fantasai]
- roozbeh: The whole document would be empty
- 21:36:10 [fantasai]
- roozbeh: In that case, you should get ltr
- 21:37:38 [Adzilla]
- can some o
- 21:37:49 [Adzilla]
- ne describe the tree?
- 21:38:02 [Adzilla]
- here… https://docs.google.com/drawings/edit?id=1syX7LEKUFWtN9AModS3FE8b2g0ynl6BNq8yaoH3ksCg&hl=en_GB
- 21:39:23 [fantasai]
- It's roughly two main branches
- 21:39:31 [fantasai]
- each one has many sub branches
- 21:39:36 [fantasai]
- the exact structure not so important
- 21:39:43 [Adzilla]
- OK
- 21:39:45 [fantasai]
- of the subbranches
- 21:41:03 [fantasai]
- RESOLVED: If no direction-dermining characters are found, then inherit the direction
- 21:58:43 [fantasai]
- fantasai: If I have <p>text1<span>text2<br/>text3</span>text4</p>
- 21:58:55 [fantasai]
- fantasai: Do text1 and text4 belong to the same UBA paragraph?
- 21:59:15 [fantasai]
- Tab: Yeah, because the span behaves just like U+FFFC
- 22:00:07 [fantasai]
- Mark writes: <p>text1<span ubi>text2</span></p><p><span ubi>text3</span>text4</p>
- 22:00:48 [fantasai]
- Question of whether the two markups should behave the same
- 22:04:00 [fantasai]
- roozbeh is pointing to the first markup
- 22:04:11 [fantasai]
- roozbeh: There are three UBA paragraphs, two are embedded inside the third
- 22:04:20 [fantasai]
- roozbeh: In the second we have four UBA paragraphs
- 22:05:01 [fantasai]
- Confirmed that these give different renderings
- 22:06:11 [fantasai]
- Mark: So e. is saying that CSS divides the content into UBA paragraphs
- 22:06:23 [fantasai]
- Mark: And each paragraph gets its own paragraph according to UBA
- 22:07:30 [fantasai]
- fantasai reads from text-layout draft
- 22:07:34 [fantasai]
- plaintext For the purposes of the Unicode bidirectional algorithm, the base directionality of each "paragraph" for which the element is the containing block element is determined not by the element's computed ‘direction’ as usual, but by following rules P1, P2, and P3 of the Unicode bidirectional algorithm.
- 22:08:11 [fantasai]
- roozbeh: we need to override P3 with the 'direction' property value
- 22:08:44 [fantasai]
- fantasai: yes
- 22:09:01 [fantasai]
- Also, that definition doesn't handle <span dir=uba>
- 22:13:57 [fantasai]
- discussion about this
- 22:15:00 [fantasai]
- conclusion that actually, we had decided <span dir=uba> would not affect base direciton of UBA paragraphs, only of resolved direction of the element
- 22:15:09 [fantasai]
- so containing block lookup is sufficient for CSS
- 22:15:26 [fantasai]
- roozbeh: uba, if ubi is off, should imply embed
- 22:21:22 [fantasai]
- more wordsmithing
- 22:28:30 [fantasai]
- wordsmithing to fix UBA's default for not-finding-a-direction to use inherited direction
- 22:28:39 [fantasai]
- Aharon edits the bidi f2f document
- 22:28:42 [fantasai]
- fantasai edits the CSS spec
- 22:39:23 [roozbeh]
- 10 minute break
- 22:53:09 [roozbeh]
- back in meeting
- 22:53:15 [fantasai]
- Topic: Image flipping
- 22:53:28 [fantasai]
- Aharon reviews history of proposal
- 22:53:55 [fantasai]
- problem to solve is needing to change the image due to change in document's directionality
- 22:54:27 [fantasai]
- Aharon: original proposal had an option to always flip, but people didnt like it because while it was useful it was not related to this problem
- 22:55:07 [fantasai]
- Aharon: Then an alternative proposal was made to make the attribute declarative rather than instructive
- 22:55:42 [fantasai]
- Aharon: So imagedir says what direction the image is in, if it's directional, and when the imagedir doesn't match the parent's dir, then the image is flipped
- 22:56:10 [fantasai]
- Aharon: Not the image's direction, because you might want to put dir= on the image to handle alt text or title text or whatever, so that's why we check the parent
- 22:56:32 [fantasai]
- Mati: What about not displaying the image if the direction doesn't match?
- 22:56:58 [fantasai]
- Aharon: The second proposal said it's great to autoflip the image, but sometimes you want a different image
- 22:58:25 [fantasai]
- Aharon: So to summarize, original proposal had two problems: 1. instructive not declarative, 2. no way to specify a specific image
- 22:59:38 [fantasai]
- roozbeh: Just personal experience, recently I reviewed set of icons for a Yahoo product, to tell them which ones they need to change for becoming rtl
- 22:59:48 [fantasai]
- roozbeh: There were about 50 icons they needed to change.
- 23:00:05 [fantasai]
- roozbeh: About 4 or 5 needed flipping, the rest needed more involved changes
- 23:00:22 [fantasai]
- roozbeh: Only in extremely limited cases was graphical flipping sufficient
- 23:00:45 [fantasai]
- Aharon: Not everyone is Yahoo or Google. Lots of people are not so careful
- 23:01:04 [fantasai]
- roozbeh: If we give them graphical flipping, they will use it a lot, and not do the right thing because it's too easy to just flip it
- 23:01:45 [fantasai]
- roozbeh: I really do not like suggesting that purely graphical flipping is a good thing
- 23:02:12 [fantasai]
- Mark: Would it be useful not just for images, but in general, to have some kind of construct that says "only use the embedded HTML markup if I'm in an rtl environment"
- 23:03:14 [fantasai]
- roozbeh: Usually the things that you want to make appear or disappear based on the direction are things like RLM or LRM
- 23:03:21 [fantasai]
- Mark: Apart from images
- 23:03:47 [fantasai]
- roozbeh: And that use case will be handled by isolate
- 23:04:01 [fantasai]
- Mati: We have 2 levels to aim for
- 23:04:11 [fantasai]
- Mati: One is having options for alternate references or flipping
- 23:04:26 [fantasai]
- Mati: If we listen to roozbeh, we only need alternate references, not flipping
- 23:05:13 [fantasai]
- Mati: I don't quite agree with Roozbeh, because in many cases people don't aim for the pure aesthetic
- 23:05:18 [fantasai]
- Mati: I don't care much about shadows
- 23:05:33 [fantasai]
- Mati: I'm for allowing them to flip with just a keyword, but it's not critical
- 23:05:57 [fantasai]
- Tab: We could just flip. We could allow alternate images. Or we could do both, which is more complicated
- 23:08:47 [fantasai]
- fantasai: When you're localizing the text, why couldn't you just "localize" a piece of the URL to be either 'ltr' or 'rtl'.
- 23:10:26 [fantasai]
- fantasai: If we wanted to make it easy, we could have rtlregexp="s/ltr/rtl/"
- 23:10:47 [fantasai]
- fantasai: or something else that replaces a piece of the image url
- 23:10:55 [fantasai]
- fantasai: I wouldn't want to retype the whole URL anyway
- 23:10:59 [fantasai]
- fantasai: URLs are long
- 23:12:23 [fantasai]
- Adil: An important use case is if you're developing applications to be localized is keeping the rtl localized in sync with the ltr one
- 23:12:52 [fantasai]
- Adil: Every time the LTR version of the CSS changes, I have to change the RTL version
- 23:13:24 [fantasai]
- Adil: So I think this is an important feature, and image flipping is an important part of developing a neutral web application
- 23:13:42 [fantasai]
- roozbeh: I think what we're trying to do here is solving 5% use cases
- 23:13:50 [fantasai]
- Mark: I think what you're talking about is part of this
- 23:13:58 [fantasai]
- Mark: 1. Choose different images
- 23:14:06 [fantasai]
- Mark: 2. Algorithmically flip the image
- 23:16:13 [fantasai]
- fantasai: For 1, I don't see why the localization infrastructure can't handle it adequately by changing a piece of the url
- 23:16:33 [fantasai]
- fantasai: You should be organizing your images systematically so that only one little piece needs to change
- 23:16:41 [ehsan]
- ehsan has joined #core
- 23:17:21 [fantasai]
- fantasai: I understand for CSS it's a more significant problem, but for HTML I think the l10n system should be able to handle it
- 23:19:44 [fantasai]
- more discussion
- 23:19:52 [fantasai]
- Aharon: maybe we should focus on CSS then
- 23:20:25 [fantasai]
- Tab: Suppose you have arbitrary user-generated content, and you're using autodir
- 23:20:41 [fantasai]
- Tab: And you are allowing inserting of icons
- 23:20:49 [fantasai]
- Tab: and you want them to change
- 23:20:50 [fantasai]
- ...
- 23:21:19 [fantasai]
- Tab: In most cases you want to localize the text content, so localize the image content too, and in the few cases where you can't then, yeah, handling it through CSS might not be ideal but should be okay
- 23:23:14 [fantasai]
- Aharon: So in CSS, if I have :ltr and :rtl, then I can do what we want to achieve without any new features
- 23:23:20 [fantasai]
- Aharon: but you have to write oodles of code
- 23:23:36 [fantasai]
- Aharon: Do we want to provide something for the naive user?
- 23:23:51 [fantasai]
- Mark draws on the whiteboard
- 23:24:05 [fantasai]
- THE (( IMAGE ))
- 23:24:17 [fantasai]
- where (( and )) are graphical
- 23:24:42 [fantasai]
- Mark labels the first one a and the second one b
- 23:24:59 [fantasai]
- After UBA, we get (( EGAMI )) EAT
- 23:25:59 [fantasai]
- ...
- 23:26:05 [fantasai]
- but you don't have access to implicit directions anyway
- 23:26:18 [fantasai]
- roozbeh: I'd do it with a <span> and background images
- 23:26:26 [fantasai]
- Tab: or 'content'
- 23:27:24 [fantasai]
- Aharon: If I've got an RTL phrase inside an LTR paragraph
- 23:28:30 [fantasai]
- Mark: I'm hearing no consensus to adding anything to HTML or CSS
- 23:29:54 [fantasai]
- Aharon: It seems you can do everything you want to do in CSS3, but it might be rather verbose
- 23:30:01 [fantasai]
- Aharon: Is there a shortcut we can add that would help?
- 23:30:48 [fantasai]
- roozbeh: If you want to flip the images, you often also want to do the margins
- 23:30:53 [fantasai]
- s/do/flip/
- 23:32:34 [fantasai]
- http://www.w3.org/TR/css3-images/
- 23:33:16 [fantasai]
- fantasai: we could add an rtlflip keyword to the image() notation
- 23:34:47 [fantasai]
- Adil: Looking at css3-images, I can see you have a proposal for image sprites
- 23:35:19 [fantasai]
- Adil: If there's going to be an image sprites proposal, that might be interesting for rtl cases as well
- 23:37:04 [fantasai]
- fantasai: One goal of that section was to make swapping out of a sprites sheet very easy for e.g. :hover cases. Would making swapping icon sets for rtl very easy
- 23:37:34 [fantasai]
- NO CONSENSUS: that we want anything for HTML
- 23:37:49 [Adzilla]
- There is consensus of sorts on CSS
- 23:38:23 [fantasai]
- I think we have consensus that we want to make CSS authoring easier for LTR+RTL cases
- 23:38:31 [fantasai]
- but we don't have any consensus on a particular solution
- 23:38:59 [Adzilla]
- We can put it in and let the democracy of the mailing list thrash it out!
- 23:42:29 [fantasai]
- RESOLVED: Suggest adding an rtlflip-like option to image() notation in CSS3 Images
- 23:57:45 [fantasai]
- fantasai: What if you have <div uba> <span uba ubi=off> <br> </span> </div>?
- 23:57:53 [fantasai]
- roozbeh writes on the board
- 23:57:56 [fantasai]
- <div dir=ltr>
- 23:58:03 [fantasai]
- <span dir=rtl> text1
- 23:58:06 [fantasai]
- <br/> text2
- 23:58:09 [fantasai]
- </span> text3
- 23:58:11 [fantasai]
- </div>
- 23:58:57 [fantasai]
- fantasai: This is already defined. text2 and text3 are one paragraph with a base direction of ltr
- 23:59:01 [fantasai]
- fantasai question is this
- 23:59:13 [fantasai]
- <div dir=uba>
- 23:59:47 [fantasai]
- <span dir=uba ubi=off> text1
- 23:59:51 [fantasai]
- <br> text2
- 23:59:53 [fantasai]
- </span>
- 23:59:56 [fantasai]
- text3
- 23:59:57 [fantasai]
- </div>