summaryrefslogtreecommitdiffstats
path: root/webkit/api/src
Commit message (Collapse)AuthorAgeFilesLines
* Switch WebHTTPBody and WebDragData to implement copy-on-write behavior. Thisdarin@chromium.org2009-06-244-21/+48
| | | | | | | | | | | | | | | | | | | | | | allows me to return a copyable instance of these wrapper classes while preventing a consumer from modifying the WebCore objects being wrapped. A modification will just modify a copy. This is going to be especially helpful when it comes to wrapping HistoryItem. Note how this simplifies WebURLRequest a bit since it doesn't have to carry a WebHTTPBody member. The copy-on-write behavior is implemented in an ensureMutable method. This CL depends on https://bugs.webkit.org/show_bug.cgi?id=26622 BUG=none TEST=none R=dglazkov Review URL: http://codereview.chromium.org/141062 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19103 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 19009 because this prevents inserting return characters.hbono@chromium.org2009-06-231-114/+2
| | | | | | | | | | | TBR=evan BUG=10953 "IME support" BUG=11226 "Dead keys and accents input not working" BUG=13604 "Hotkeys not working in non-us keyboard layout" TEST=none Review URL: http://codereview.chromium.org/147010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19015 0039d316-1c4b-4281-b951-d872f2087c98
* Integrating GtkIMContext into the RenderWidgetHostViewGtk class.This change ↵hbono@chromium.org2009-06-231-2/+114
| | | | | | | | | | | | | | implements signal handers of the GtkIMContext object to support IMEs and dead-keys. Also, to improve compatibility with Windows Chrome, this change emulates IPC messages sent on Windows when we input characters and fixes Issue 13604 as well as Issue 10953 and 11226. Even though I notice we need more work for fixing edge cases (e.g. disabling IMEs on a password input) on Linux, I think this is the good starting point. (Supporting edge-cases requires complicated code and it makes hard to review.) BUG=10953 "IME support" BUG=11226 "Dead keys and accents input not working" BUG=13604 "Hotkeys not working in non-us keyboard layout" TEST=Open a web page which contains an <input> form (e.g. <http://www.google.com/>), type a '[{' key and an 'A' key on a Canadian-French keyboard, and see a Latin character "U+00E2" is displayed in the <input> form. TEST=Open a web page which contains an <input> form (e.g. <http://www.google.com/>), enable an Chinese Pinyin IME, type a 'W' key, type an 'O' key, and see a Chinese character is displayed in the <input> form. TEST=Change the keyboard layout to Hebrew (or Russian), open a web page which contains an <input> form, input some characters in the <input> form, type control+a, and see the text in the <input> form is selected. Review URL: http://codereview.chromium.org/126118 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19009 0039d316-1c4b-4281-b951-d872f2087c98
* Delete files from webkit/glue that have been made obsolete by correspondingdarin@chromium.org2009-06-185-12/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | files in webkit/api. Here's the mapping: webkit/glue/webdatasource.h -> webkit/api/public/WebDataSource.h webkit/glue/weberror.h -> webkit/api/public/WebURLError.h webkit/glue/weburlrequest.h -> webkit/api/public/WebURLRequest.h webkit/glue/webresponse.h -> webkit/api/public/WebURLResponse.h I kept the implementation of WebDataSource in webkit/glue for now because it helps to have it close to WebFrameImpl and WebFrameLoaderClient. To facilitate this change, I needed to make use of WrappedResourceRequest and WrappedResourceResponse from webkit/api/src within the implementation files of webkit/glue. This is only a temporary usage of webkit/api/src from the outside. It will go away when WebFrame, etc. get moved into webkit/api. I modified these wrapper classes to expose the 'bind' function so that I can re-bind a wrapper. This is used in WebDataSourceImpl::request() and related methods to allow the interface to return a const reference to a WebURLRequest and WebURLResponse. The changes here are fairly mechanical. I'm not too happy about the way WebDataSource::redirectChain now works. I would prefer a solution that didn't involve so much copying, but I'm not going to worry about optimizing that now. R=brettw BUG=10041 TEST=none Review URL: http://codereview.chromium.org/126286 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18747 0039d316-1c4b-4281-b951-d872f2087c98
* Hack to enable video on mac by creating a blank PlatformContextMac to draw on.ajwong@chromium.org2009-06-162-2/+33
| | | | | | | | This isn't a great solution, but it kinda works. Video renders, and the speed is acceptable even though we're doing an extra copy for each frame. The image shows up upside-down though. :( Review URL: http://codereview.chromium.org/126087 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18503 0039d316-1c4b-4281-b951-d872f2087c98
* Extract form related classes from the guts of WebFrameImpl.darin@chromium.org2009-06-151-0/+86
| | | | | | | | | | | | | | | | | | | Instead of having WebFrameImpl generate SearchableFormData, PasswordForm, and AutofillForm classes, allow the embedder (RenderView) to do so. This is done to help minimize the dependencies WebFrameImpl has on other code, which will make it easier to move WebFrame and WebDataSource into the WebKit API. Most significant change: Now, RenderView always sets a NavigationState on WebDataSource instances. We used to only do so for browser initiated navigations. This is done so that we can store things like SearchableFormData and friends on the NavigationState. To facilitate this change, it was necessary to add a way through the WebKit API to refer to a HTMLFormElement. This CL introduces WebForm, which is like a RefPtr<HTMLFormElement>, so you can just copy a WebForm around by value and the right thing happens. Some of the other changes are about moving more things into the webkit_glue namespace. On hindsight, I probably should have done that as a separate CL. BUG=10041 TEST=none R=brettw Review URL: http://codereview.chromium.org/126083 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18395 0039d316-1c4b-4281-b951-d872f2087c98
* Roll webkit DEPS and fix build.abarth@chromium.org2009-06-141-2/+2
| | | | | | | TBR=pkasting Review URL: http://codereview.chromium.org/125108 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18361 0039d316-1c4b-4281-b951-d872f2087c98
* Fix javascript-backslash.html layout test failure.darin@chromium.org2009-06-111-25/+0
| | | | | | | | | | | | | | | | The fix is to break WebURLLoaderImpl into two classes. It now has a reference counted inner class that is the ResourceLoaderBridge::Peer. This change allows the inner class to stick around after the loader has been destroyed. That is necessary since the Peer expects to still receive OnCompletedRequest after it calls Cancel on the bridge. R=dglazkov TEST=covered by layout test BUG=13786 Review URL: http://codereview.chromium.org/125002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18215 0039d316-1c4b-4281-b951-d872f2087c98
* Update WebKit to r44544.darin@chromium.org2009-06-091-10/+0
| | | | | | | | | | | | | | | | | | | | 1- WorkerThread::create() now takes a WorkerLoaderProxy parameter, which I implemented in a stub fashion on WebWorkerImpl. I'm sure the WebWorker guys will fix this up properly. 2- Removed expirationDate and setExpirationDate members of WebURLResponse consistent with their removal from WebCore::ResourceResponseBase. The corresponding logic for computing cache eviction time is now part of WebCore. 3- Added wtf/DateMath.{h,cpp} to the build. TEST=covered by existing tests, I hope! BUG=none R=eroman Review URL: http://codereview.chromium.org/119387 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17983 0039d316-1c4b-4281-b951-d872f2087c98
* Start using WebURLLoader, et. al. from the WebKit API.darin@chromium.org2009-06-0910-7/+1244
| | | | | | | | | | | | | | | | | | | | | | | | | | | Moves our ResourceHandle to webkit/api/src/ResourceHandle.cpp from webkit/glue/resource_handle_impl.cc. A portion of resource_handle_impl.cc was moved into weburlloader_impl.{h,cc}, which now contains our implementation of WebURLLoader. The annoying parts of this CL involve WebPluginImpl. I had to convert it over to using WebURLLoader instead of ResourceHandle so that MultipartResourceDelegate can be shared. There is some complexity in WebURLRequest / WebURLResponse to make it cheap to wrap a ResourceRequest / ResourceResponse. I think this is worth it since there is a lot of conversion between the two types. Originally reviewed here: http://codereview.chromium.org/113928 BUG=10038 TEST=covered by existing tests R=dglazkov Review URL: http://codereview.chromium.org/118438 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17962 0039d316-1c4b-4281-b951-d872f2087c98
* Revert WebURLLoader landing. Too many layout test failures.darin@chromium.org2009-05-3010-1216/+4
| | | | | | | | TBR=dglazkov Review URL: http://codereview.chromium.org/115973 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17293 0039d316-1c4b-4281-b951-d872f2087c98
* Start using WebURLLoader, et. al. from the WebKit API.darin@chromium.org2009-05-3010-4/+1216
| | | | | | | | | | | | | | | | | | | | | | | | Moves our ResourceHandle to webkit/api/src/ResourceHandle.cpp from webkit/glue/resource_handle_impl.cc. A portion of resource_handle_impl.cc was moved into weburlloader_impl.{h,cc}, which now contains our implementation of WebURLLoader. The annoying parts of this CL involve WebPluginImpl. I had to convert it over to using WebURLLoader instead of ResourceHandle so that MultipartResourceDelegate can be shared. There is some complexity in WebURLRequest / WebURLResponse to make it cheap to wrap a ResourceRequest / ResourceResponse. I think this is worth it since there is a lot of conversion between the two types. BUG=10038 TEST=covered by existing tests R=dglazkov Review URL: http://codereview.chromium.org/113928 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17290 0039d316-1c4b-4281-b951-d872f2087c98
* Handle mimetype queries for media fileshclam@chromium.org2009-05-291-4/+6
| | | | | | | | | | Added code path from WebKit to net::mimt_util to query supported mime-types for media files. BUG=12777 Review URL: http://codereview.chromium.org/114060 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17225 0039d316-1c4b-4281-b951-d872f2087c98
* Let ChromiumBridge::paintTextField check if the Color object passed in is validbrettw@chromium.org2009-05-271-1/+4
| | | | | | | | | | | | | | | | | | | or not. If not valid, just pass white to ThemeEngine. This change was motivated by the issue http://code.google.com/p/chromium/issues/detail?id=2756, but it has been resolved by only the upstream change https://bugs.webkit.org/show_bug.cgi?id=25742. However, this verification code is still useful. BUG=2756 Checked in for tyoshino@google.com Original review: http://codereview.chromium.org/113165 Review URL: http://codereview.chromium.org/113907 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17001 0039d316-1c4b-4281-b951-d872f2087c98
* Roll DEPS and fix build bustage. Propagate rename of policyBaseURL -> ↵abarth@chromium.org2009-05-221-4/+6
| | | | | | | | | | | | firstPartyForCookies a bit further. TBR=darin TEST=It complies! BUG=None Review URL: http://codereview.chromium.org/112055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16804 0039d316-1c4b-4281-b951-d872f2087c98
* Add events to windowless plugins on linux. This CL also refactors the eventevan@chromium.org2009-05-223-0/+55
| | | | | | | | | | | | | communication between WebPlugin and WebPluginDelegate, to use a cross-platform message based on WebInputEvent. BUG=8202 TEST=A lot of manual testing on Linux and Windows, with Flash plugins and a custom plugin that dumps events on Linux. Review URL: http://codereview.chromium.org/115330 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16692 0039d316-1c4b-4281-b951-d872f2087c98
* Meta key is not the same as Alt key on Windows.avi@chromium.org2009-05-211-3/+3
| | | | | | | | | | See http://trac.webkit.org/changeset/29375 http://crbug.com/2215 Review URL: http://codereview.chromium.org/113716 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16641 0039d316-1c4b-4281-b951-d872f2087c98
* Move WebMediaPlayerClientImpl files to WebKit API src location.darin@chromium.org2009-05-185-3/+566
| | | | | | | | | | | This involves adding a temporary glue function, which will be removed once WebFrame / WebView are part of the WebKit API. R=hclam Review URL: http://codereview.chromium.org/115482 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16336 0039d316-1c4b-4281-b951-d872f2087c98
* Fix typo. The right button is pressed when MK_RBUTTON is set.darin@chromium.org2009-05-181-1/+1
| | | | | | | | R=jam Review URL: http://codereview.chromium.org/115479 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16331 0039d316-1c4b-4281-b951-d872f2087c98
* Implement the triple click for the Mac.avi@google.com2009-05-123-38/+76
| | | | | | Review URL: http://codereview.chromium.org/99104 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15877 0039d316-1c4b-4281-b951-d872f2087c98
* Move WebKit API to src/webkit/api.darin@chromium.org2009-05-1021-0/+3695
R=dglazkov Review URL: http://codereview.chromium.org/113186 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15739 0039d316-1c4b-4281-b951-d872f2087c98