12:56:33 RRSAgent has joined #svg 12:56:33 logging to http://www.w3.org/2014/06/26-svg-irc 12:56:35 RRSAgent, make logs public 12:56:35 Zakim has joined #svg 12:56:37 Zakim, this will be GA_SVGWG 12:56:37 ok, trackbot; I see GA_SVGWG()9:00AM scheduled to start in 4 minutes 12:56:38 Meeting: SVG Working Group Teleconference 12:56:38 Date: 26 June 2014 12:56:41 Regrets: Rich 12:56:45 Chair: Cameron 12:56:51 Agenda: http://lists.w3.org/Archives/Public/public-svg-wg/2014AprJun/0105.html 12:57:25 GA_SVGWG()9:00AM has now started 12:57:32 +??P0 12:58:01 Smailus has joined #svg 12:58:10 +[IPcaller] 12:58:20 Zakim, [IP is me 12:58:20 +ed; got it 12:58:23 +[IPcaller] 12:58:25 Zakim, [ is me 12:58:25 +heycam; got it 12:59:05 +[IPcaller] 12:59:15 Zakim, [ is me 12:59:15 +birtles; got it 13:00:43 +??P6 13:00:54 +??P8 13:00:56 zakim, ??P6 is me 13:00:56 +stakagi; got it 13:01:24 who is on the phone 13:01:32 Zakim, who is on the phone? 13:01:32 On the phone I see ??P0, ed, heycam, birtles, stakagi, ??P8 13:01:42 Zakim, P8 is me 13:01:42 sorry, krit, I do not recognize a party named 'P8' 13:01:47 Zakim, ??P8 is me 13:01:47 +krit; got it 13:01:57 +Doug_Schepers 13:02:21 zakim, P0 is me 13:02:22 sorry, Smailus, I do not recognize a party named 'P0' 13:02:48 ChrisL has joined #svg 13:02:53 Zakim, ??P0 is Smailus 13:02:53 +Smailus; got it 13:03:49 ScribeNick: birtles 13:03:51 Scribe: birtles 13:03:52 Zakim, who is noisy? 13:04:05 heycam, listening for 10 seconds I heard sound from the following: Smailus (38%), heycam (100%) 13:04:09 Topic: Proposal: Remove altGlyph, altGlyphDef, altGlyphItem and glyphRef from SVG2 13:04:28 ed: I sent to the mailing list tests which I ran on all the different browsers I could find 13:04:28 http://lists.w3.org/Archives/Public/www-svg/2014Jun/0084.html 13:04:43 ... this test was to verify that altGlyph doesn't work on normal fonts that are not SVG fonts 13:04:48 ... I couldn't find any browser that did that 13:05:00 ... the only browsers that supported altGlyph only did so for SVG fonts 13:05:09 ... so since we're removing SVG fonts it makes sense to remove these as well 13:05:18 heycam: makes sense to me 13:05:24 ed: if you look at the test itself 13:05:34 ... I wasn't sure how to reference glyph IDs so I used various ways 13:05:38 ... but none of them worked 13:05:42 +ChrisL 13:06:04 heycam: it might have interesting the spec actually said what the syntax was for referencing glyphs from different font formats 13:06:18 ChrisL: I don't think there is an approved way of pointing into a table in a binary font format 13:06:26 ... that syntax was only ever intended for SVG fonts 13:06:43 heycam: anyone against removing these from SVG2? 13:06:49 (silence) 13:07:10 RESOLUTION: We will remove altGlyph and company from SVG2 13:07:23 +1 13:07:23 Smailus: I agree 13:07:33 ACTION: Erik to remove altGlyph and company ffrom SVG2 13:07:33 Created ACTION-3632 - Remove altglyph and company ffrom svg2 [on Erik Dahlström - due 2014-07-03]. 13:07:41 s/ffrom/from/ 13:08:01 Topic: How should the following two SVGPathElement methods work when there's no path data? 13:08:21 ed: I did what we discussed on the last call and posted to the mailing list with various options from the browsers 13:08:25 http://lists.w3.org/Archives/Public/www-svg/2014Jun/0126.html 13:08:31 ... I listed a bunch of different proposals 13:08:39 ... the email thread also had a few more suggestions 13:08:53 ... for the first one, getPointAtLength, that returns an SVGPoint 13:09:00 ... one suggestion from Dirk was to return undefined 13:09:07 http://lists.w3.org/Archives/Public/www-svg/2014Jun/0132.html 13:09:14 krit: or null? does nullable return undefined or null? 13:09:25 heycam: returning undefined is a bit difficult from IDL 13:09:36 ... it doesn't really happen in other APIs, generally we return null 13:09:44 ... I would suggest that over undefined 13:09:59 ed: would that be stringified to 0... ? 13:10:11 heycam: I would suggest we change the IDL to SVGPoint? so that null can be returned as is 13:10:12 null 13:10:36 ed: so if you're expecting to get an SVGPoint back you'd have to check the return value point for 13:10:44 heycam: sorry, I was referring to the other method 13:11:06 ... last time I think we discussed the pros and cons of objects with NaN members vs returning a null value 13:11:28 ... if the object has NaN values the code would probably continue further but it might make it harder to track down problems later 13:11:34 ... anyone prefer NaN x/y values? 13:11:58 ed: Dirk suggested in the mail that that might be ok 13:12:09 I am fine with null or SVGPoint(NaN, NaN) 13:12:18 Smailus: I prefer making something clearly an error 13:12:45 krit: if you search GitHub for these two methods you won't find any results except test cases 13:12:53 agree, returning a potentially valid value is suboptimal (even if a second call can disambiguate it) 13:12:56 ... to give you an idea how important they are 13:13:27 birtles: I slightly lean towards SVGPoint(NaN, NaN) but null may be ok too 13:13:29 https://github.com/search?q=getPointAtLength+extension%3Asvg&type=Code&ref=searchresults 13:13:37 heycam: Tab mentioned that there's a similarity with getBoundingBox 13:13:55 ... in the end we settled on making getBoundingBox on an empty group return rect(0, 0, 0, 0) 13:14:01 +Tav 13:14:12 ... but if you called getBoundingBox on a parent of that, that 0 point wouldn't contribute to the parent's bbox 13:14:29 Smailus: so that's an argument for returning 0 to keep things consistent 13:15:02 ChrisL: there's many different things we could be consistent with 13:15:08 http://lists.w3.org/Archives/Public/www-svg/2014Jun/0140.html 13:15:15 ed: Tab also mentioned that it's not defined if you use an index greater than the number of segments in the path 13:15:46 heycam: and for getPointAtLength you could use a length greater than the length of the path 13:15:56 s/ index greater than the number of segments in the path/ distance larger than the lenght of the path/ 13:16:19 q+ 13:16:23 ... Tab said in that same mail that if you defined what happened if you passed in a length that's too large then you probably would use the same behavior 13:17:08 heycam: I'm inclined for it to be 0,0 if there's no path data 13:17:25 Smailus: I support that 13:17:27 ok 13:17:49 ok but we need to include an example of that check, in the spec 13:18:23 heycam: you'd still need to check if there's any path data to disambiguate between 0,0 due to no path data or do to actually being 0,0 13:18:30 shepazu: you'd have to add a check either way 13:18:41 ... whether that be an exception or whatever 13:18:51 ... but it depends what is common practice these days 13:19:47 for getPointAtLength it makes sense to me to return 0,0 when there's no path data as that is within the bounding box 13:19:48 proposa: if you pass a distance longer than the path -> return the last point on the path, if negative/zero distance -> return the first point on the path 13:19:51 shepazu: we should put and issue with the rationale in the spec so that when we go to LC we can get feedback on this 13:19:56 s/proposa/proposal/ 13:19:57 ... we could outline both approaches 13:20:11 heycam: I'd be happy with an issue 13:20:30 ... I think WebGL or some other API has a tendency for things to go to NaN 13:20:39 ChrisL: I agree with Doug about putting it in the spec as an issue 13:20:48 ... then we can get feedback 13:21:00 yes, its fine 13:21:03 heycam: so for the interim shall we go with 0,0? 13:21:10 ... plus an issue outline the alternatives and rationale 13:21:26 zakim, mute doug 13:21:26 Doug_Schepers should now be muted 13:21:34 zakim, unmute doug 13:21:34 Doug_Schepers should no longer be muted 13:21:36 RESOLUTION: getPointAtLength will return a 0,0 point if there is no path data and we will add an issue about this to the spec 13:22:00 ed: and when the distance is longer than the path length or negative then we use the last point / first point on the path as appropriate 13:22:24 heycam: you clamp the input length value to [0, length of path] 13:23:14 ed: the second method is getPathSegAtLength 13:23:19 ... which returns an index to a path segment 13:23:27 ... that currently returns an unsigned long in the IDL 13:23:54 krit: Rik would prefer to make it unrestricted double and return NaN when there is no path data 13:24:00 ... I would prefer null 13:24:44 heycam: what about doing something like getPointAtLength where you clamp the value so you either return 0 or the last path segment? 13:25:02 (someone): agreed 13:25:34 heycam: krit what do you think? 13:25:43 krit: how does it compare to getPointAtLength? 13:25:52 heycam: it's similar in that you clamp the result at the end of the existing path 13:26:05 ... so you clamp to the first / last segment of the path 13:26:14 ... getPointAtLength clamps to the start / end point of the path 13:26:28 ed: it's only really strange when there is no real first segment if you want to be able to distinguish that case 13:26:46 heycam: but you can look at pathData.length or whatever it is to see if there are any actually segments 13:26:56 s/actually segments/actual segments/ 13:27:01 ed: yeah, that's fine, I'm ok with that 13:27:34 heycam: I think the same arguments apply as well where you might be doing some calculations and there's some error where you've gone just past the end of the path 13:27:46 ... the calculation should get corrupted from that 13:28:14 RESOLUTION: getPointAtLength and getPathSegAtLength with clamp their input to be at the start / end of the path appropriate and so always return a valid point / path segment index 13:28:26 s/should get corrupted/shoudn't get corrupted/ 13:28:56 ACTION: Erik to add text for getPointAtLength and getPathSegAtLength to describe behavior when there is not path data or when the index/length is beyond the ends of the path 13:28:56 Created ACTION-3633 - Add text for getpointatlength and getpathsegatlength to describe behavior when there is not path data or when the index/length is beyond the ends of the path [on Erik Dahlström - due 2014-07-03]. 13:29:21 topic: Filter effects and blend modes for feBlend 13:29:38 krit: I was looking into it in WebKit and it was very easy implement all blend modes for feBlend 13:29:57 ... I also checked with Vlad from Mozilla and he suggested it was easy to do with Moz2D / Direct3D 13:30:13 ... I suggest we add all blend modes to SVG 13:30:24 ... to unify across canvas/CSS/SVG 13:31:22 heycam: does canvas use different keywords for blend modes to SVG? 13:31:24 krit: no 13:31:37 heycam: is this for level 2 of filters? 13:31:42 krit: no for the current level 13:31:47 heycam: what is the status of the spec? 13:32:00 krit: there are still issues about filter regions and it still needs detailed review 13:32:05 ... and the animation part needs cleanup 13:32:20 heycam: I'm happy with adding the remaining blend modes now 13:33:18 RESOLUTION: Add all the additional blend modes to feBlend 13:33:19 http://dev.w3.org/fxtf/compositing-1/#ltblendmodegt 13:33:24 heycam: are these the ones in PDF? 13:33:37 ChrisL: so long as the equations are in a W3C spec 13:34:07 heycam: are we adding keywords supported by the property but not in SVG? or adding keywords to the property? 13:34:28 krit: I'm adding hue, saturate etc. etc. which are already on the CSS property but not yet supported by feBlend 13:34:39 heycam: does PDF define additional modes? 13:34:47 krit: maybe. And Photoshop might have more still 13:34:55 ... but initially we wanted to stick with widely-supported blend modes 13:35:07 s/might// 13:35:31 s/all the additional blend modes/all the additional modes specified for the CSS property/ 13:35:55 -ChrisL 13:36:36 +ChrisL 13:39:38 yes 13:40:46 Regrets: Richard 13:44:29 -krit 13:44:30 -Smailus 13:44:30 -Tav 13:44:31 -Doug_Schepers 13:44:32 -ChrisL 13:44:33 -stakagi 13:44:33 -birtles 13:44:34 -ed 13:44:43 -heycam 13:44:44 GA_SVGWG()9:00AM has ended 13:44:44 Attendees were [IPcaller], ed, heycam, birtles, stakagi, krit, Doug_Schepers, Smailus, ChrisL, Tav 13:44:50 RRSAgent: make minutes please 13:44:50 I have made the request to generate http://www.w3.org/2014/06/26-svg-minutes.html birtles 13:44:56 GA_SVGWG()9:00AM has now started 13:45:03 +??P0 13:45:14 -??P0 13:45:15 GA_SVGWG()9:00AM has ended 13:45:15 Attendees were 15:30:02 Zakim has left #svg 15:43:55 heycam|away: just pushed changes to svgwg.org, and the push to dvcs.w3.org seems to have failed... wrong ssh keys? 15:44:25 or maybe it's just the fingerprint that changed 15:44:49 remote: pushing to https://dvcs.w3.org/hg/svg2 15:44:49 remote: warning: dvcs.w3.org certificate with fingerprint 14:a5:f7:99:95:f8:41:9b:02:71:2c:4b:87:d2:e0:8b:f2:cf:4b:a3 not verified (check hostfingerprints or web.cacerts config setting) 15:45:02 remote: abort: authorization failed 15:45:02 remote: FAIL: error syncing dvcs.w3.org - inform jwatt or heycam ASAP! 15:45:02 remote: warning: changegroup.sync_dvcs_w3_org hook failed