[webkit-dev] Client-based Geolocation
mjs at apple.com
Tue Dec 14 23:16:52 PST 2010
On Dec 14, 2010, at 4:57 AM, Steve Block wrote:
>> On the one hand, getting rid of ifdefs is good. On the other hand, it seems to me there are some downsides to moving ports over to the client-based approach:
> The motivation is much more than removing ifdefs. The original
> Geolocation implementation was provided in WebCore/platform,
> presumably because it was seen as a platform-specific abstraction to
> hardware sensors. However, embedders require close control over the
> behaviour of Geolocation because there are lots of UA policy decisions
> to be made (eg handling user permissions, when to use network
> location vs GPS, when to suspend GPS to save power -
> https://bugs.webkit.org/show_bug.cgi?id=34082 etc). Trying to do this
> with the non-client based architecture caused layering violations, so
> the client-based implementation was added -
> https://bugs.webkit.org/show_bug.cgi?id=32499 - which gives embedders
> complete control over Geolocation.
> Since then, trying to maintain two versions of Geolocation has proved
> cumbersome, so I think it makes sense to switch completely to the
> client-based approach.
So that explains the upsides, but you didn't address the downsides I cited. Maybe the positives outweigh the negatives, but the potential need to duplicate code between different WebKit API layers seems like a big negative (if it applies in this case). I would like to hear what you think of the potential downsides I mentioned.
More information about the webkit-dev