WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
25834
Make ChromeClient only have pure virtuals
https://bugs.webkit.org/show_bug.cgi?id=25834
Summary
Make ChromeClient only have pure virtuals
Holger Freyther
Reported
2009-05-16 03:35:07 PDT
Recent additions to ChromeClient added default implementations. From a porter point of view this is rather bad as old features might break and no runtime warning is printed and searching for notImplemented will not show anything. The approach to treat the *Client as an interface and only have pure virtual is a lot better in this regard. Change ChromeClient to be a interface again.
Attachments
Make recent additions pure virtual again
(15.49 KB, patch)
2009-05-16 03:38 PDT
,
Holger Freyther
darin
: review+
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Holger Freyther
Comment 1
2009-05-16 03:38:11 PDT
Created
attachment 30411
[details]
Make recent additions pure virtual again Make setCursor, scrollRectIntoView, requestGeolocationPermissionForFrame pure virtual.
Darin Adler
Comment 2
2009-05-16 10:39:15 PDT
Comment on
attachment 30411
[details]
Make recent additions pure virtual again
> - virtual void scrollRectIntoView(const IntRect&, const ScrollView*) const {} // Platforms other than Mac can implement this if it ever becomes necessary for them to do so. > + virtual void scrollRectIntoView(const IntRect&, const ScrollView*) const = 0; // Platforms other than Mac can implement this if it ever becomes necessary for them to do so.
I don't think the comment makes sense any more if this is a pure virtual. This change seems OK. This is the reason I used pure virtuals in the first place, but I'm not entirely sure either way whether this is a good thing or not. r=me
Holger Freyther
Comment 3
2009-05-20 09:06:24 PDT
Changed the comment to mention the implementation for mac and landed in
r43918
. With my "porters" hat on I like the pure virtual functions, they move everything relevant to the various client implementation that can be found in the kit...
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug