On Aug 17, 2010, at 6:50 AM, Dean Jackson wrote: > > On 17/08/2010, at 12:22 AM, Maciej Stachowiak wrote: > >> >> On Aug 16, 2010, at 10:52 PM, Eric Seidel wrote: >> >>> Where-ever it goes, please don't put it on Document directly. :) >>> (Feel free to tie it to Document's lifetime, just don't add to >>> Document's 300+ methods.) >>> >>> The madness must stop... Document is long overdue for some weightloss... >> >> I assume Dean is suggesting that Document would gain a new data member >> (DeviceMotionController?) which strikes me as a reasonable approach. > > Right - either one or two (+DeviceOrientationController). I do think the > controllers of both events could be a single object - but that is another > discussion. > > If it wasn't on Document, what do you suggest otherwise? DOMWindow? Putting > it on Frame but tying it to Document seems less than perfect.
My specific advice was in the rest of my reply - trimming quotes so you can see it: >> For this sort of thing, it seems reasonable to me that there is a layer of >> the implementation that is a per-document controller, and then below that a >> singleton object in case we don't need things to happen multiple times per >> document. It doesn't seem especially helpful to have something happen at the >> Page level, in normal operation. >> >> The reason it seems a singleton would be useful is that you only want to >> register with the OS service once, and then multicast the relevant >> notifications to all clients that are listening. >> >> For purposes of substituting a mock controller: >> >> (1) If there is a singleton beneath the per-document controllers, perhaps >> the mock object can insert itself at that level. >> (2) Even if the mock controller is at the per-document level, it is likely >> still sufficient for most tests; it might mean a little extra work if we >> need to specifically test geolocation or device motion/orientation from a >> subframe. Regards, Maciej _______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev