- From: Rik Cabanier <cabanier@adobe.com>
- Date: Sun, 19 Aug 2012 21:55:40 -0700
- To: "'Benjamin Hawkes-Lewis'" <bhawkeslewis@googlemail.com>
- CC: Charles Pritchard <chuck@jumis.com>, Leonard Rosenthol <lrosenth@adobe.com>, Chaals McCathieNevile <w3b@chaals.com>, "public-html@w3.org" <public-html@w3.org>
> A key design goal, as I understand it, was to avoid turning canvas into > a retained mode API. The author is responsible for managing any object graph; > canvas is just a display. Isn't the new "current default path" a step towards retained graphics? > > Another issue would be with removing hit regions that previously > > overlapped others. How would you restore the previous pixels? > The WHATWG spec for "removeRegion" says: ... Yes, I hadn't noticed this before. The fact that you can remove a region and then have to 'garbage-collect' the other regions also implies retained graphics. With region removal, I can see how the hitregions fit into an immediate mode API. Maybe that was a late addition? Thanks! > -----Original Message----- > From: Benjamin Hawkes-Lewis [mailto:bhawkeslewis@googlemail.com] > Sent: Sunday, August 19, 2012 8:39 PM > To: Rik Cabanier > Cc: Charles Pritchard; Leonard Rosenthol; Chaals McCathieNevile; public- > html@w3.org > Subject: Re: hit regions > > On Mon, Aug 20, 2012 at 3:29 AM, Rik Cabanier <cabanier@adobe.com> > wrote: > > Thanks Benjamin. There's a lot of history here. > > > > Is there a discussion anywhere where pixel based hit regions are elected in > place of path based ones? > > I couldn't find any email about this apart from one on the WHATWG > mailing list. > > > > FYI since I was selected as an editor, I'm trying to get up to speed on the > Canvas2d spec. This topic seems to generate most of the email traffic and I > want to understand the design decisions. > > I suggest talking directly to Hixie about his design decisions, but … > > Background discussion on WHATWG IRC: > > http://krijnhoetmer.nl/irc-logs/whatwg/20120225#l-52 > > With respect to your specific questions: > > > 1. This set of APIs says that each region controls a set of pixels. Doesn’t > this imply that you won’t be able to have intersecting regions? > > You can't have two regions registered for the same pixels AFAICT. > > > This seems like a big limitation. > > [snip] > > > Wouldn’t it be better to just keep the paths? > > Dunno. What's the practical difference between keeping a path and keeping > a bitmap described by a path? > > > Another issue would be with removing hit regions that previously > overlapped others. How would you restore the previous pixels? > > "You" being who? The author? The browser? > > The WHATWG spec for "removeRegion" says: > > "The pixels that were covered by this region and its descendants are > effectively cleared by this operation, leaving the regions non-interactive. In > particular, regions that occupied the same pixels before the removed regions > were added, overlapping them, do not resume their previous role." > > A key design goal, as I understand it, was to avoid turning canvas into a > retained mode API. The author is responsible for managing any object graph; > canvas is just a display. > > > 2. Are hit regions subjected to the current clipping region? The newly > introduced ‘current default path’ doesn’t say so but it seems like it should. > > Pass. > > > 3. There is nothing specific to canvas about hit regions. Would it make > sense to extend them later to other content such as images? > > Maybe, but not without use cases. > > -- > Benjamin Hawkes-Lewis
Received on Monday, 20 August 2012 04:56:52 UTC