Home | History | Annotate | Download | only in WebKit2
      1 2011-02-16  Anders Carlsson  <andersca (a] apple.com>
      2 
      3         Reviewed by Adam Roben.
      4 
      5         Always disable the responsiveness timer when showing a popup menu
      6         https://bugs.webkit.org/show_bug.cgi?id=54578
      7         <rdar://problem/9009170>
      8 
      9         * UIProcess/WebPageProxy.cpp:
     10         (WebKit::WebPageProxy::showPopupMenu):
     11 
     12 2011-02-16  Anders Carlsson  <andersca (a] apple.com>
     13 
     14         Reviewed by Adam Roben.
     15 
     16         Assertion failure in DrawingAreaImpl::display when calling WKPageForceRepaint on a page that uses accelerated compositing
     17         https://bugs.webkit.org/show_bug.cgi?id=54575
     18         <rdar://problem/8979594>
     19 
     20         * WebProcess/WebPage/DrawingAreaImpl.cpp:
     21         (WebKit::DrawingAreaImpl::forceRepaint):
     22         If there is a layer tree host, ask it to force a repaint instead.
     23 
     24         * WebProcess/WebPage/LayerTreeHost.h:
     25         * WebProcess/WebPage/mac/LayerTreeHostMac.h:
     26         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
     27         (WebKit::LayerTreeHostMac::forceRepaint):
     28         Flush any layer changes, then flush and synchronize the current CA transaction.
     29 
     30 2011-02-16  Alexey Proskuryakov  <ap (a] apple.com>
     31 
     32         Reviewed by Anders Carlsson.
     33 
     34         https://bugs.webkit.org/show_bug.cgi?id=54572
     35         REGRESSION (WebKit2): Print Backgrounds checkbox has no effect for DOM initiated printing
     36 
     37         * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::preferencesDidChange): Preferences need
     38         to be propagated to Web process during synchronous printing.
     39 
     40 2011-02-15  Anders Carlsson  <andersca (a] apple.com>
     41 
     42         Reviewed by Sam Weinig.
     43 
     44         WebPluginSiteDataManager should work with plug-in process
     45         https://bugs.webkit.org/show_bug.cgi?id=54523
     46         <rdar://problem/8689312>
     47 
     48         * PluginProcess/PluginProcess.cpp:
     49         (WebKit::PluginProcess::removeWebProcessConnection):
     50         Call startShutdownTimerIfNecessary().
     51 
     52         (WebKit::PluginProcess::getSitesWithData):
     53         Ask the plug-in module for the sites with data and send them back
     54         in a PluginProcessProxy::DidGetSitesWithData message.
     55 
     56         (WebKit::PluginProcess::clearSiteData):
     57         Clear site data and send back a DidClearSiteData message.
     58 
     59         (WebKit::PluginProcess::startShutdownTimerIfNecessary):
     60         Factor code out from removeWebProcessConnection.
     61 
     62         * PluginProcess/PluginProcess.messages.in:
     63         Add new messages.
     64 
     65         * UIProcess/Plugins/PluginInfoStore.cpp:
     66         (WebKit::PluginInfoStore::plugins):
     67         New function for getting all plug-ins.
     68 
     69         * UIProcess/Plugins/PluginProcessManager.cpp:
     70         (WebKit::PluginProcessManager::getPluginProcessConnection):
     71         Call getOrCreatePluginProcess.
     72 
     73         (WebKit::PluginProcessManager::getSitesWithData):
     74         Get a plug-in process proxy and call getSitesWithData.
     75 
     76         (WebKit::PluginProcessManager::clearSiteData):
     77         Get a plug-in process proxy and call clearSiteData.
     78 
     79         (WebKit::PluginProcessManager::getOrCreatePluginProcess):
     80         Factor code to create a plug-in process out into a separate function.
     81 
     82         * UIProcess/Plugins/PluginProcessProxy.cpp:
     83         (WebKit::PluginProcessProxy::getSitesWithData):
     84         (WebKit::PluginProcessProxy::clearSiteData):
     85         Update the pending reply struct. If the process is still launching,
     86         enqueue the request. Otherwise, just send the message.
     87 
     88         (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch):
     89         Make sure that pending replies are sent out.
     90 
     91         (WebKit::PluginProcessProxy::didFinishLaunching):
     92         Send our pending requests.
     93 
     94         (WebKit::PluginProcessProxy::didGetSitesWithData):
     95         (WebKit::PluginProcessProxy::didClearSiteData):
     96         Call down to the plug-in site data manager.
     97 
     98         * UIProcess/Plugins/PluginProcessProxy.messages.in:
     99         Add DidGetSitesWithData and DidClearSiteData messages.
    100 
    101         * UIProcess/Plugins/WebPluginSiteDataManager.cpp:
    102         (WebKit::WebPluginSiteDataManager::GetSitesWithDataState::GetSitesWithDataState):
    103         Initialize the state.
    104 
    105         (WebKit::WebPluginSiteDataManager::GetSitesWithDataState::getSitesWithDataForNextPlugin):
    106         If the plug-in queue is empty, call didGetSitesWithDataForAllPlugins. Otherwise, ask
    107         the plug-in process manager to get sites for the next plug-in.
    108 
    109         (WebKit::WebPluginSiteDataManager::GetSitesWithDataState::didGetSitesWithDataForSinglePlugin):
    110         Update the sites set and get sites for the next plug-in.
    111 
    112         (WebKit::WebPluginSiteDataManager::ClearSiteDataState::ClearSiteDataState):
    113         Initialize the state.
    114 
    115         (WebKit::WebPluginSiteDataManager::ClearSiteDataState::clearSiteDataForNextPlugin):
    116         If the plug-in queue is empty, call didClearSiteDataForAllPlugins. Otherwise, ask
    117         the plug-in process manager to get sites for the next plug-in.
    118         
    119         (WebKit::WebPluginSiteDataManager::ClearSiteDataState::didClearSiteDataForSinglePlugin):
    120         Update the sites set and ask the next plug-in to clear site data.
    121 
    122         (WebKit::WebPluginSiteDataManager::~WebPluginSiteDataManager):
    123         Assert that all maps are empty.
    124 
    125         (WebKit::WebPluginSiteDataManager::invalidate):
    126         Delete and clear the pending state maps.
    127 
    128         (WebKit::WebPluginSiteDataManager::getSitesWithData):
    129         In the ENABLE(PLUGIN_PROCESS) case, allocate a new GetSitesWithDataState object and
    130         tell it to get sites for the next plug-in. Otherwise, make sure that the web process
    131         is alive before sending a GetSitesWithPluginData message.
    132         
    133         (WebKit::WebPluginSiteDataManager::clearSiteData):
    134         In the ENABLE(PLUGIN_PROCESS) case, allocate a new ClearSiteDataState object and
    135         tell it to get sites for the next plug-in. Otherwise, make sure that the web process
    136         is alive before sending a ClearPluginSiteData message.
    137         
    138         (WebKit::WebPluginSiteDataManager::didGetSitesWithDataForSinglePlugin):
    139         Call down to the GetSitesWithDataState object.
    140 
    141         (WebKit::WebPluginSiteDataManager::didGetSitesWithDataForAllPlugins):
    142         Free the GetSitesWithDataState object and invoke the callback.
    143 
    144         (WebKit::WebPluginSiteDataManager::didClearSiteDataForSinglePlugin):
    145         Call down to the GetSitesWithDataState object.
    146         
    147         (WebKit::WebPluginSiteDataManager::didClearSiteDataForAllPlugins):
    148         Free the GetSitesWithDataState object and invoke the callback.
    149 
    150         * UIProcess/WebContext.cpp:
    151         (WebKit::WebContext::processDidClose):
    152         Don't invalidate the plug-in site data manager if we're using a plug-in process.
    153 
    154         * WebProcess/WebProcess.cpp:
    155         (WebKit::WebProcess::getSitesWithPluginData):
    156         (WebKit::WebProcess::clearPluginSiteData):
    157         Call shutdownIfPossible().
    158 
    159 2011-02-15  Jon Honeycutt  <jhoneycutt (a] apple.com>
    160 
    161         Copy over new WebKit 2 header.
    162 
    163         Rubber-stamped by Alice Liu.
    164 
    165         * win/WebKit2Generated.make:
    166 
    167 2011-02-15  Anders Carlsson  <andersca (a] apple.com>
    168 
    169         Reviewed by Darin Adler.
    170 
    171         Implement WKPluginSiteDataManagerClearSiteData
    172         https://bugs.webkit.org/show_bug.cgi?id=54512
    173         <rdar://problem/8689312>
    174 
    175         * UIProcess/API/C/WKPluginSiteDataManager.cpp:
    176         (WKPluginSiteDataManagerGetTypeID):
    177         Implement this.
    178 
    179         (toNPClearSiteDataFlags):
    180         Convert WKClearSiteDataFlags to NPP_ClearSiteData flags.
    181         
    182         (WKPluginSiteDataManagerClearSiteData):
    183         (WKPluginSiteDataManagerClearAllSiteData):
    184         Call through to WebPluginSiteDataManager::clearSiteData.
    185 
    186         * UIProcess/API/C/WKPluginSiteDataManager.h:
    187         Change the clear functions to take a completion callback.
    188 
    189         * UIProcess/Plugins/WebPluginSiteDataManager.cpp:
    190         (WebKit::WebPluginSiteDataManager::clearSiteData):
    191         Ask the plug-in info store for all plug-in paths and send a
    192         ClearPluginSiteData message to the web process.
    193         
    194         (WebKit::WebPluginSiteDataManager::didClearSiteData):
    195         call the callback.
    196 
    197         * UIProcess/WebContext.cpp:
    198         (WebKit::WebContext::didClearPluginSiteData):
    199         Call through to the plug-in site data manager.
    200 
    201         * UIProcess/WebContext.messages.in:
    202         Add ClearPluginSiteData message.
    203 
    204         * WebProcess/WebProcess.cpp:
    205         (WebKit::WebProcess::clearPluginSiteData):
    206         Iterate over all the plug-in paths, creating plug-in modules and calling
    207         clearSiteData for each one.
    208 
    209         * WebProcess/WebProcess.h:
    210         * WebProcess/WebProcess.messages.in:
    211         Add DidClearPluginSiteData message.
    212 
    213 2011-02-15  Anders Carlsson  <andersca (a] apple.com>
    214 
    215         Reviewed by Jon Honeycutt.
    216 
    217         Implement WKPluginSiteDataManagerGetSitesWithData
    218         https://bugs.webkit.org/show_bug.cgi?id=54510
    219         <rdar://problem/8689312>
    220 
    221         * UIProcess/API/C/WKContext.cpp:
    222         (WKContextGetPluginSiteDataManager):
    223         Call WebContext::pluginSiteDataManager.
    224         
    225         * UIProcess/API/C/WKPluginSiteDataManager.cpp:
    226         (WKPluginSiteDataManagerGetSitesWithData):
    227         Call WebPluginSiteDataManager::getSitesWithData.
    228 
    229         * UIProcess/Plugins/PluginInfoStore.cpp:
    230         (WebKit::PluginInfoStore::getPluginPaths):
    231         * UIProcess/Plugins/PluginInfoStore.h:
    232         Populate the paths argument with the paths of all plug-ins.
    233         
    234         * UIProcess/Plugins/WebPluginSiteDataManager.cpp: Added.
    235         (WebKit::WebPluginSiteDataManager::invalidate):
    236         Invalidate the callbacks map.
    237 
    238         (WebKit::WebPluginSiteDataManager::getSitesWithData):
    239         Ask the plug-in info store for all plug-in paths and send a
    240         GetSitesWithPluginData message to the web process.
    241 
    242         (WebKit::WebPluginSiteDataManager::didGetSitesWithPluginData):
    243         Call the callback.
    244 
    245         * UIProcess/Plugins/WebPluginSiteDataManager.h: Added.
    246         (WebKit::WebPluginSiteDataManager::clearContext):
    247         Clear the context.
    248 
    249         * UIProcess/WebContext.cpp:
    250         (WebKit::WebContext::WebContext):
    251         Initialize m_pluginSiteDataManager.
    252 
    253         (WebKit::WebContext::~WebContext):
    254         Invalidate the plug-in site data manager and clear its context.
    255 
    256         (WebKit::WebContext::processDidClose):
    257         Invalidate the plug-in site data manager.
    258         
    259         (WebKit::WebContext::didGetSitesWithPluginData):
    260         Call through to the plug-in site data manager.
    261 
    262         * UIProcess/WebContext.h:
    263         * UIProcess/WebContext.messages.in:
    264         Add GetSitesWithPluginData message.
    265 
    266         * WebKit2.pro:
    267         * WebKit2.xcodeproj/project.pbxproj:
    268         * win/WebKit2.vcproj:
    269         Add new files.
    270 
    271         * WebProcess/WebProcess.cpp:
    272         (WebKit::WebProcess::getSitesWithPluginData):
    273         Iterate over all plug-in paths and get the sites from all plug-ins.
    274 
    275         * WebProcess/WebProcess.h:
    276         * WebProcess/WebProcess.messages.in:
    277         Add DidGetSitesWithPluginData.
    278 
    279 2011-02-15  Anders Carlsson  <andersca (a] apple.com>
    280 
    281         Fix Qt build.
    282 
    283         * WebKit2.pro:
    284 
    285 2011-02-15  Anders Carlsson  <andersca (a] apple.com>
    286 
    287         Fix Windows build.
    288 
    289         * win/WebKit2.vcproj:
    290 
    291 2011-02-14  Oliver Hunt  <oliver (a] apple.com>
    292 
    293         Reviewed by Gavin Barraclough and Geoff Garen.
    294 
    295         Refactor handles and weak pointers to become nicer and more automatic
    296         https://bugs.webkit.org/show_bug.cgi?id=54415
    297 
    298         Update code to new Global<> API, and refactor to get global data to
    299         necessary points.
    300 
    301         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
    302         (WebKit::NPJSObject::create):
    303         (WebKit::NPJSObject::NPJSObject):
    304         (WebKit::NPJSObject::initialize):
    305         (WebKit::NPJSObject::invokeDefault):
    306         (WebKit::NPJSObject::construct):
    307         (WebKit::NPJSObject::invoke):
    308         * WebProcess/Plugins/Netscape/NPJSObject.h:
    309         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
    310         (WebKit::NPRuntimeObjectMap::getOrCreateNPObject):
    311         (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
    312         (WebKit::NPRuntimeObjectMap::evaluate):
    313         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h:
    314         * WebProcess/Plugins/PluginView.cpp:
    315         (WebKit::PluginView::windowScriptNPObject):
    316         (WebKit::PluginView::pluginElementNPObject):
    317 
    318 2011-02-15  Anders Carlsson  <andersca (a] apple.com>
    319 
    320         Reviewed by Jon Honeycutt.
    321 
    322         Add stubbed out WKPluginSiteDataManagerRef API
    323         https://bugs.webkit.org/show_bug.cgi?id=54504
    324 
    325         * Shared/API/c/WKBase.h:
    326         * Shared/APIObject.h:
    327         * UIProcess/API/C/WKAPICast.h:
    328         * UIProcess/API/C/WKContext.cpp:
    329         (WKContextGetPluginSiteDataManager):
    330         * UIProcess/API/C/WKContext.h:
    331         * UIProcess/API/C/WKPluginSiteDataManager.cpp: Added.
    332         (WKPluginSiteDataManagerGetTypeID):
    333         (WKPluginSiteDataManagerGetSitesWithData):
    334         (WKPluginSiteDataManagerClearSiteData):
    335         (WKPluginSiteDataManagerClearAllSiteData):
    336         * UIProcess/API/C/WKPluginSiteDataManager.h: Added.
    337         * WebKit2.pro:
    338         * WebKit2.xcodeproj/project.pbxproj:
    339         * win/WebKit2.vcproj:
    340 
    341 2011-02-15  Jia Pu  <jpu (a] apple.com>
    342 
    343         Reviewed by Darin Adler.
    344 
    345         Autocorrection should respect undo.
    346         https://bugs.webkit.org/show_bug.cgi?id=52221
    347         <rdar://problem/8663399>
    348 
    349         Please see WebCore/ChangeLog for detailed description.
    350 
    351         * WebProcess/WebCoreSupport/WebEditorClient.h: Updated for the new function declared in EditorClient.
    352 
    353         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
    354         (WebKit::WebEditorClient::recordAutocorrectionResponse): Ditto.
    355 
    356         * WebProcess/WebPage/WebPage.cpp:
    357         (WebKit::WebPage::replaceSelectionWithText): Adopted new signature of ReplaceSelectionCommand::create().
    358 
    359 2011-02-15  Jessie Berlin  <jberlin (a] apple.com>
    360 
    361         Reviewed by Darin Adler.
    362 
    363         WebKit2: Use the Database directory location specified in NSUserDefaults.
    364         https://bugs.webkit.org/show_bug.cgi?id=54496
    365 
    366         * UIProcess/mac/WebContextMac.mm:
    367         (WebKit::WebContext::platformDefaultDatabaseDirectory):
    368         Use the same logic as WebKit1's WebDatabaseManager::databasesDirectoryPath.
    369 
    370 2011-02-15  Simon Fraser  <simon.fraser (a] apple.com>
    371 
    372         Reviewed by Anders Carlsson, Darin Adler.
    373 
    374         Layers stick around in DrawingAreaImpl until we switch out of compositing
    375         https://bugs.webkit.org/show_bug.cgi?id=54498
    376         
    377         When leaving compositing mode soon, remove all the child layers
    378         of the nonCompositedContent layer right away, so they don't stick
    379         around.
    380 
    381         * WebProcess/WebPage/DrawingAreaImpl.cpp:
    382         (WebKit::DrawingAreaImpl::setRootCompositingLayer):
    383         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
    384         (WebKit::LayerTreeHostMac::setRootCompositingLayer):
    385 
    386 2011-02-15  Kenneth Russell  <kbr (a] google.com>
    387 
    388         Reviewed by Darin Fisher.
    389 
    390         Allow controlling minimum DOMTimer interval on a per-page basis
    391         https://bugs.webkit.org/show_bug.cgi?id=54312
    392 
    393         * WebProcess/WebPage/WebPage.cpp:
    394         (WebKit::WebPage::WebPage):
    395 
    396 2011-02-15  Anders Carlsson  <andersca (a] apple.com>
    397 
    398         Reviewed by Sam Weinig.
    399 
    400         Add sitesWithData and clearSiteData to NetscapePluginModule
    401         https://bugs.webkit.org/show_bug.cgi?id=54492
    402 
    403         * Shared/Plugins/Netscape/NetscapePluginModule.cpp:
    404         (WebKit::NetscapePluginModule::NetscapePluginModule):
    405         (WebKit::NetscapePluginModule::pluginCreated):
    406         (WebKit::NetscapePluginModule::pluginDestroyed):
    407         (WebKit::NetscapePluginModule::sitesWithData):
    408         (WebKit::NetscapePluginModule::clearSiteData):
    409         (WebKit::NetscapePluginModule::tryGetSitesWithData):
    410         (WebKit::NetscapePluginModule::tryClearSiteData):
    411         (WebKit::NetscapePluginModule::incrementLoadCount):
    412         (WebKit::NetscapePluginModule::decrementLoadCount):
    413         * Shared/Plugins/Netscape/NetscapePluginModule.h:
    414 
    415 2011-02-15  Sam Weinig  <sam (a] webkit.org>
    416 
    417         Fix windows build.
    418 
    419         * Shared/win/WebCoreArgumentCodersWin.cpp:
    420         (CoreIPC::encodeResourceRequest):
    421 
    422 2011-02-15  Alexey Proskuryakov  <ap (a] apple.com>
    423 
    424         Reviewed by Darin Adler.
    425 
    426         https://bugs.webkit.org/show_bug.cgi?id=54480
    427         <rdar://problem/8975229> REGRESSION (WebKit2): A web page remains unresponsive for a long
    428         time after printing
    429 
    430         Nothing was painted until moving the mouse over browser chrome, deactivating the window,
    431         or taking some other drastic measure like that.
    432 
    433         * UIProcess/API/mac/PageClientImpl.mm: (WebKit::PageClientImpl::setAutodisplay):
    434         Call -[NSView displayIfNeeded] after enabling autodisplay. For some reason, this makes
    435         WebCore push updates again.
    436 
    437 2011-02-15  Sam Weinig  <sam (a] webkit.org>
    438 
    439         Reviewed by Darin Adler.
    440 
    441         Crash loading fast/loader/empty-embed-src-attribute.html
    442         <rdar://problem/9005541>
    443         https://bugs.webkit.org/show_bug.cgi?id=54483
    444 
    445         Add the ability to encode/decode and empty ResourceRequest.
    446 
    447         * Shared/mac/WebCoreArgumentCodersMac.mm:
    448         (CoreIPC::encodeResourceRequest):
    449         (CoreIPC::decodeResourceRequest):
    450         (CoreIPC::decodeResourceResponse): Add missing false check for the
    451         decode step.
    452         * Shared/win/WebCoreArgumentCodersWin.cpp:
    453         (CoreIPC::encodeResourceRequest):
    454         (CoreIPC::decodeResourceRequest):
    455         (CoreIPC::decodeResourceResponse): Add missing false check for the
    456         decode step.
    457 
    458 2011-02-15  Andreas Kling  <kling (a] webkit.org>
    459 
    460         Unreviewed Qt build fix after r78588.
    461 
    462         * UIProcess/API/qt/qwkpage.cpp:
    463         (QWKPage::QWKPage): Add WKPageLoaderClient::shouldGoToHistoryItem.
    464 
    465 2011-02-15  Enrica Casucci  <enrica (a] apple.com>
    466 
    467         Reviewed by Darin Adler.
    468 
    469         Stop using deprecated API to flip the dragImage.
    470         <rdar://problem/8930897>
    471         https://bugs.webkit.org/show_bug.cgi?id=54477
    472         
    473         NSImage setFlipped is a deprecated API. We replace it with
    474         drawInRect:fromRect:operation:fraction:respectFlipped:hints.
    475         
    476         * UIProcess/API/mac/PageClientImpl.mm:
    477         (WebKit::PageClientImpl::setDragImage): Removed call to setFlipped.
    478         * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
    479         (WebKit::WebDragClient::startDrag): The image is now drawn with
    480         drawInRect:fromRect:operation:fraction:respectFlipped:hints.
    481 
    482 2011-02-15  Brady Eidson  <beidson (a] apple.com>
    483 
    484         Reviewed by Darin Adler.
    485 
    486         <rdar://problem/9002047> and https://bugs.webkit.org/show_bug.cgi?id=54426
    487         WebFrameLoaderClient::shouldGoToHistoryItem needs implementation
    488 
    489         Expose HistoryItem -> ItemID mapping for the message:
    490         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
    491         (WebKit::WebBackForwardListProxy::idForItem):
    492         * WebProcess/WebPage/WebBackForwardListProxy.h:
    493 
    494         Sync message to the UIProcess for the answer:
    495         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
    496         (WebKit::WebFrameLoaderClient::shouldGoToHistoryItem):
    497 
    498         Call out to the WebLoaderClient for the answer:
    499         * UIProcess/WebPageProxy.cpp:
    500         (WebKit::WebPageProxy::shouldGoToBackForwardListItem):
    501         * UIProcess/WebPageProxy.h:
    502         * UIProcess/WebPageProxy.messages.in:
    503 
    504         Call out to the client application for the answer:
    505         * UIProcess/WebLoaderClient.cpp:
    506         (WebKit::WebLoaderClient::shouldGoToBackForwardListItem):
    507         * UIProcess/WebLoaderClient.h:
    508 
    509         Add API for the client application to listen for this:
    510         * UIProcess/API/C/WKPage.h:
    511 
    512 2011-02-15  Sam Weinig  <sam (a] webkit.org>
    513 
    514         Reviewed by Anders Carlsson.
    515 
    516         Fix Anders typo. false -> 0.
    517 
    518         * Platform/mac/SharedMemoryMac.cpp:
    519         (WebKit::SharedMemory::create):
    520 
    521 2011-02-15  Andras Becsi  <abecsi (a] webkit.org>
    522 
    523         Reviewed by NOBODY Csaba Osztrogonc.
    524 
    525         [Qt] Redesign the build system
    526         https://bugs.webkit.org/show_bug.cgi?id=51339
    527 
    528         Part 1.
    529 
    530         Introduce CodeGenerators.pri and add common includepaths to WebCore.pri,
    531         thus unnecessary duplications can be removed from project files.
    532 
    533         * WebKit2.pro: Simplify and deduplicate includepaths.
    534 
    535 2011-01-26  MORITA Hajime  <morrita (a] google.com>
    536 
    537         Reviewed by Ryosuke Niwa.
    538 
    539         Refactoring: Extract TextCheckerClient from EditorClient
    540         https://bugs.webkit.org/show_bug.cgi?id=53213
    541 
    542         * Shared/WebCoreArgumentCoders.h:
    543         * UIProcess/TextChecker.h:
    544         * WebProcess/WebCoreSupport/WebEditorClient.h:
    545         (WebKit::WebEditorClient::textChecker):
    546         * Scripts/webkit2/messages.py: Re-arranged the include file
    547 
    548 2011-02-07  Ryosuke Niwa  <rniwa (a] webkit.org>
    549 
    550         Reviewed by Adam Barth.
    551 
    552         Add EditorClient callbacks to override isDOMPasteAllowed and javaScriptCanAccessClipboard
    553         https://bugs.webkit.org/show_bug.cgi?id=52417
    554 
    555         Added two callback functions, canCopyCut and canPaste to EditorClient. They are currently
    556         not implemented.
    557 
    558         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
    559         (WebKit::WebEditorClient::canCopyCut): Added.
    560         (WebKit::WebEditorClient::canPaste): Added.
    561         * WebProcess/WebCoreSupport/WebEditorClient.h:
    562 
    563 2011-02-14  Anders Carlsson  <andersca (a] apple.com>
    564 
    565         Reviewed by Dan Bernstein.
    566 
    567         Add WKPageSetMemoryCacheClientCallsEnabled API
    568         https://bugs.webkit.org/show_bug.cgi?id=54422
    569 
    570         * UIProcess/API/C/WKPage.cpp:
    571         (WKPageSetMemoryCacheClientCallsEnabled):
    572         * UIProcess/API/C/WKPage.h:
    573         * UIProcess/WebPageProxy.cpp:
    574         (WebKit::WebPageProxy::setMemoryCacheClientCallsEnabled):
    575         * UIProcess/WebPageProxy.h:
    576         * WebProcess/WebPage/WebPage.cpp:
    577         (WebKit::WebPage::setMemoryCacheMessagesEnabled):
    578         * WebProcess/WebPage/WebPage.h:
    579         * WebProcess/WebPage/WebPage.messages.in:
    580 
    581 2011-02-14  Sam Weinig  <sam (a] webkit.org>
    582 
    583         Reviewed by Anders Carlsson.
    584 
    585         WebKit2: View not updated completely when coming back from a cached back/forward navigation
    586         <rdar://problem/8787264>
    587         https://bugs.webkit.org/show_bug.cgi?id=54419
    588 
    589         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
    590         (WebKit::WebFrameLoaderClient::restoreViewState): Invalidate the entire page
    591         when completing a restore from the back/forward cache.
    592 
    593 2011-02-14  Anders Carlsson  <andersca (a] apple.com>
    594 
    595         Reviewed by Dan Bernstein.
    596 
    597         Shared memory should be made shared immediately
    598         https://bugs.webkit.org/show_bug.cgi?id=54413
    599         <rdar://problem/8972153>
    600 
    601         Under some circumstances, mach_make_memory_entry_64 may only return parts of a
    602         memory allocation. Work around this by creating a mach port representing the shared memory
    603         right away. Also, hand out this mach port in createHandle when using the default memory protection.
    604 
    605         * Platform/SharedMemory.h:
    606         * Platform/mac/SharedMemoryMac.cpp:
    607         (WebKit::SharedMemory::create):
    608         (WebKit::SharedMemory::~SharedMemory):
    609         (WebKit::SharedMemory::createHandle):
    610 
    611 2011-02-14  Adam Roben  <aroben (a] apple.com>
    612 
    613         React to accelerated compositing changes and allocation failures in DrawingAreaImpl::display
    614 
    615         Fixes <http://webkit.org/b/54398> DrawingAreaImpl::display handles error cases poorly.
    616 
    617         Reviewed by Darin Adler and Anders Carlsson.
    618 
    619         * WebProcess/WebPage/DrawingAreaImpl.cpp:
    620         (WebKit::DrawingAreaImpl::display): Bail out if the layout we perform puts us into
    621         accelerated compositing mode. Moved the layout earlier in this function so we can bail
    622         before doing other work that would be unnecessary in this case. Moved the allocation of the
    623         ShareableBitmap earlier so we will leave our state (e.g., dirty region) intact even if the
    624         allocation fails.
    625 
    626 2011-02-14  Adam Roben  <aroben (a] apple.com>
    627 
    628         Add a way to flash backing store and view updates
    629 
    630         The new WKPageSetDebugPaintFlags SPI can be used to control whether backing store and/or
    631         view updates are flashed. A blueish color is used for view updates, and a purpleish color is
    632         used for backing store updates. The flashing currently only works on Windows.
    633 
    634         Fixes <http://webkit.org/b/54303>.
    635 
    636         Reviewed by Anders Carlsson.
    637 
    638         * UIProcess/API/C/WKPage.cpp:
    639         (WKPageSetDebugPaintFlags):
    640         (WKPageGetDebugPaintFlags):
    641         * UIProcess/API/C/WKPagePrivate.h:
    642         Added. These call through to WebPageProxy.
    643 
    644         * UIProcess/API/mac/PageClientImpl.h:
    645         * UIProcess/API/mac/PageClientImpl.mm:
    646         (WebKit::PageClientImpl::flashBackingStoreUpdates):
    647         * UIProcess/API/qt/qwkpage.cpp:
    648         (QWKPagePrivate::flashBackingStoreUpdates):
    649         * UIProcess/API/qt/qwkpage_p.h:
    650         Stubbed out new PageClient functions.
    651 
    652         * UIProcess/DrawingAreaProxyImpl.cpp:
    653         (WebKit::DrawingAreaProxyImpl::incorporateUpdate): Tell the WebPageProxy to flash the
    654         backing store updates we're performing.
    655 
    656         * UIProcess/PageClient.h: Added flashBackingStoreUpdates.
    657 
    658         * UIProcess/WebPageProxy.cpp:
    659         (WebKit::WebPageProxy::flashBackingStoreUpdates): Call through to the PageClient.
    660         (WebKit::WebPageProxy::viewUpdatesFlashColor): Return the blueish color used for view
    661         updates.
    662         (WebKit::WebPageProxy::backingStoreUpdatesFlashColor): Return the purpleish color used for
    663         backing store updates.
    664 
    665         * UIProcess/WebPageProxy.h:
    666         (WebKit::WebPageProxy::setDebugPaintFlags):
    667         (WebKit::WebPageProxy::debugPaintFlags):
    668         Added these simple accessors.
    669 
    670         * UIProcess/win/WebView.cpp:
    671         (WebKit::flashRects):
    672         (WebKit::createBrush):
    673         New helper functions.
    674 
    675         (WebKit::WebView::onPaintEvent): Flash the dirty region if requested.
    676         (WebKit::WebView::flashBackingStoreUpdates): Added. Calls through to flashRects.
    677 
    678         * UIProcess/win/WebView.h: Added flashBackingStoreUpdates.
    679 
    680         * win/WebKit2Generated.make: Export WKPagePrivate.h so clients can use it.
    681 
    682 2011-02-14  Adam Roben  <aroben (a] apple.com>
    683 
    684         Add some .messages.in and script files to WebKit2 projects
    685 
    686         This is just for convenience. It doesn't affect the build.
    687 
    688         * win/WebKit2.vcproj: Also let VS resort some files.
    689         * win/WebKit2Generated.vcproj:
    690 
    691 2011-02-14  Balazs Kelemen  <kbalazs (a] webkit.org>
    692 
    693         Reviewed by Csaba Osztrogonc.
    694 
    695         [Qt] Need implementation of ResourceRequest and ResourceResponse serialization
    696         https://bugs.webkit.org/show_bug.cgi?id=54339
    697 
    698         Add dummy implementation with FIXME and let the core go with it for now.
    699         * Shared/qt/WebCoreArgumentCodersQt.cpp:
    700         (CoreIPC::decodeResourceRequest):
    701         (CoreIPC::decodeResourceResponse):
    702 
    703 2011-02-13  Anders Carlsson  <andersca (a] apple.com>
    704 
    705         Reviewed by Maciej Stachowiak.
    706 
    707         Speculative fix for
    708 
    709         <rdar://problem/8995361>
    710         CrashTracer: [USER] 47 crashes in WebProcess at com.apple.WebKit2: WebKit::WebPage::layoutIfNeeded + 4
    711 
    712         * WebProcess/WebPage/DrawingAreaImpl.cpp:
    713         (WebKit::DrawingAreaImpl::~DrawingAreaImpl):
    714         Invalidate the layer tree host.
    715 
    716 2011-02-13  Anders Carlsson  <andersca (a] apple.com>
    717 
    718         Reviewed by Dan Bernstein.
    719 
    720         The plug-in process heap should be executable by default
    721         https://bugs.webkit.org/show_bug.cgi?id=54364
    722         <rdar://problem/8990563>
    723 
    724         * UIProcess/Launcher/ProcessLauncher.h:
    725         Add executableHeap flag.
    726         
    727         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
    728         (WebKit::ProcessLauncher::launchProcess):
    729         Set the right posix_spawn flag if executableHeap is true.
    730 
    731         * UIProcess/Plugins/PluginProcessProxy.cpp:
    732         (WebKit::PluginProcessProxy::PluginProcessProxy):
    733         Initialize executableHeap to true.
    734 
    735         * UIProcess/WebProcessProxy.cpp:
    736         (WebKit::WebProcessProxy::connect):
    737         Initialize executableHeap to false.
    738 
    739 2011-02-13  Anders Carlsson  <andersca (a] apple.com>
    740 
    741         Reviewed by Sam Weinig.
    742 
    743         Messages waited on are never dispatched
    744         https://bugs.webkit.org/show_bug.cgi?id=54362
    745         <rdar://problem/8995051>
    746 
    747         * Platform/CoreIPC/Connection.cpp:
    748         (CoreIPC::Connection::processIncomingMessage):
    749         Get the argument encoder from the incoming message.
    750 
    751 2011-02-13  Jeremy Moskovich  <jeremy (a] chromium.org>
    752 
    753         Reviewed by Adam Barth.
    754 
    755         Add a compile-time option to completely disable WebArchive support.
    756         https://bugs.webkit.org/show_bug.cgi?id=52712
    757 
    758         Add an ENABLE(WEB_ARCHIVE) compile-time setting and use it for all WebArchive code.
    759 
    760         * WebProcess/WebPage/WebPage.cpp:
    761         (WebKit::WebPage::updatePreferences):
    762 
    763 2011-02-13  Alexey Proskuryakov  <ap (a] apple.com>
    764 
    765         Reviewed by Dan Bernstein.
    766 
    767         https://bugs.webkit.org/show_bug.cgi?id=54348
    768         Crash when printing a document with no pages
    769 
    770         * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawPagesToPDF): Don't fail on a fake
    771         page that computePagesForPrinting() added to a pageless document.
    772 
    773 2011-02-13  Chris Fleizach  <cfleizach (a] apple.com>
    774 
    775         Reviewed and landed by Sam Weinig.
    776 
    777         AX: Update WK2 usage of remote accessibility api
    778         https://bugs.webkit.org/show_bug.cgi?id=54220
    779 
    780         Rename some of the remote accessibility methods to be more accurate.
    781         Make sure to unregister the AccessibilityWebPageObject on dealloc.
    782         Send the window remote token along with the WKView remote token.
    783 
    784         * UIProcess/API/mac/PageClientImpl.h:
    785         * UIProcess/API/mac/PageClientImpl.mm:
    786         (WebKit::PageClientImpl::accessibilityWebProcessTokenReceived):
    787         * UIProcess/API/mac/WKView.mm:
    788         (-[WKView _updateRemoteAccessibilityRegistration:]):
    789         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
    790         (-[WKView viewDidMoveToWindow]):
    791         (-[WKView _processDidCrash]):
    792         (-[WKView _pageClosed]):
    793         (-[WKView _setAccessibilityWebProcessToken:]):
    794         * UIProcess/API/mac/WKViewInternal.h:
    795         * UIProcess/PageClient.h:
    796         * UIProcess/WebPageProxy.cpp:
    797         (WebKit::WebPageProxy::registerWebProcessAccessibilityToken):
    798         (WebKit::WebPageProxy::registerUIProcessAccessibilityTokens):
    799         * UIProcess/WebPageProxy.h:
    800         * UIProcess/WebPageProxy.messages.in:
    801         * WebProcess/WebPage/WebPage.h:
    802         * WebProcess/WebPage/WebPage.messages.in:
    803         * WebProcess/WebPage/mac/AccessibilityWebPageObject.mm:
    804         (-[AccessibilityWebPageObject dealloc]):
    805         * WebProcess/WebPage/mac/WebPageMac.mm:
    806         (WebKit::WebPage::platformInitialize):
    807         (WebKit::WebPage::registerUIProcessAccessibilityTokens):
    808 
    809 2011-02-11  Alexey Proskuryakov  <ap (a] apple.com>
    810 
    811         Reviewed by Anders Carlsson.
    812 
    813         https://bugs.webkit.org/show_bug.cgi?id=54335
    814         <rdar://problem/8895141> Make window.print() work with WebKit2
    815 
    816         * Platform/CoreIPC/Connection.h: Corrected a typo in FIXME comment.
    817 
    818         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
    819         (WebKit::ChunkedUpdateDrawingAreaProxy::setPageIsVisible):
    820         (WebKit::ChunkedUpdateDrawingAreaProxy::update):
    821         (WebKit::ChunkedUpdateDrawingAreaProxy::sendSetSize):
    822         * UIProcess/TiledDrawingAreaProxy.cpp:
    823         (WebKit::TiledDrawingAreaProxy::sizeDidChange):
    824         (WebKit::TiledDrawingAreaProxy::setPageIsVisible):
    825         (WebKit::TiledDrawingAreaProxy::takeSnapshot):
    826         (WebKit::TiledDrawingAreaProxy::removeTile):
    827         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
    828         (WebKit::LayerBackedDrawingAreaProxy::sizeDidChange):
    829         (WebKit::LayerBackedDrawingAreaProxy::setPageIsVisible):
    830         (WebKit::LayerBackedDrawingAreaProxy::update):
    831         * UIProcess/WebContext.cpp:
    832         (WebKit::WebContext::ensureWebProcess):
    833         (WebKit::WebContext::postMessageToInjectedBundle):
    834         Updated for send() -> deprecatedSend() rename.
    835 
    836         * UIProcess/WebPageProxy.h:
    837         * UIProcess/WebPageProxy.cpp:
    838         (WebKit::WebPageProxy::WebPageProxy): Added a flag that's true while serving window.print().
    839         (WebKit::WebPageProxy::printFrame): Set and unset m_isPerformingDOMPrintOperation.
    840         (WebKit::WebPageProxy::beginPrinting): Force message processing in web process when serving
    841         window.print().
    842         (WebKit::WebPageProxy::endPrinting): Ditto.
    843         (WebKit::WebPageProxy::computePagesForPrinting): Ditto.
    844         (WebKit::WebPageProxy::drawRectToPDF): Ditto.
    845         (WebKit::WebPageProxy::drawPagesToPDF): Ditto.
    846 
    847         * UIProcess/WebProcessProxy.cpp:
    848         (WebKit::WebProcessProxy::~WebProcessProxy):
    849         (WebKit::WebProcessProxy::sendMessage):
    850         (WebKit::WebProcessProxy::didFinishLaunching):
    851         When waiting for a web process to launch, store message flags, too. This is not practically
    852         important for DispatchMessageEvenWhenWaitingForSyncReply, but it's easier to store flags
    853         than to remember about this pitfall.
    854 
    855         * UIProcess/WebProcessProxy.h:
    856         (WebKit::WebProcessProxy::send): Added a flags argument, matching Connection::send().
    857         (WebKit::WebProcessProxy::deprecatedSend): Renamed one of send() overloads, because it was
    858         conflicting with the other one after adding a flags argument. This matches a change previously
    859         made to CoreIPC::Connection.
    860 
    861 2011-02-12  Chris Marrin  <cmarrin (a] apple.com>
    862 
    863         Reviewed by Dan Bernstein.
    864 
    865         Crash in RenderLayerCompositor::updateCompositingLayers when loading some sites
    866         https://bugs.webkit.org/show_bug.cgi?id=54345
    867 
    868         Some sites flip between composited and non-comosited state while loading. When the timing is
    869         right, when we flip out of compositing we will need to do a display while tossing all the
    870         compositing layers. This causes us to reenter RenderLayerCompositor::computeCompositingRequirements()
    871         while we are in the middle of tossing layers, which leads to a crash.
    872 
    873         The solution is to defer the logic of exiting compositing mode until the DrawingArea is finished
    874         doing its display, using a timer.
    875 
    876         * WebProcess/WebPage/DrawingAreaImpl.cpp:
    877         (WebKit::DrawingAreaImpl::DrawingAreaImpl):
    878         (WebKit::DrawingAreaImpl::setRootCompositingLayer):
    879         (WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode):
    880         (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):
    881         (WebKit::DrawingAreaImpl::exitAcceleratedCompositingModeSoon):
    882         * WebProcess/WebPage/DrawingAreaImpl.h:
    883 
    884 2011-02-12  Kevin Decker  <kdecker (a] apple.com>
    885 
    886         Reviewed by Dan Bernstein.
    887 
    888         Follow up fix to:
    889         https://bugs.webkit.org/show_bug.cgi?id=54341 - optionally scale snapshots in document view coordinates
    890 
    891         * WebProcess/WebPage/WebPage.cpp:
    892         (WebKit::WebPage::scaledSnapshotInDocumentCoordinates): Fixed the order of the scale and translate.
    893 
    894 2011-02-12  Kevin Decker  <kdecker (a] apple.com>
    895 
    896         Reviewed by Dan Bernstein.
    897 
    898         https://bugs.webkit.org/show_bug.cgi?id=54341 - optionally scale snapshots in document view coordinates
    899         <rdar://problem/8990069>
    900         
    901         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
    902         (WKBundlePageCreateScaledSnapshotInDocumentCoordinates): Added.
    903         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Added above new function.
    904         * WebProcess/WebPage/WebPage.cpp:
    905         (WebKit::WebPage::scaledSnapshotInDocumentCoordinates): Added.
    906         (WebKit::WebPage::snapshotInDocumentCoordinates): Call scaledSnapshotInDocumentCoordinates with a scale of 1.
    907         * WebProcess/WebPage/WebPage.h: Added scaledSnapshotInDocumentCoordinates().
    908 
    909 2011-02-11  Anders Carlsson  <andersca (a] apple.com>
    910 
    911         Reviewed by Maciej Stachowiak.
    912 
    913         Cant open local files on reload or navigation from the back/forward cache
    914         https://bugs.webkit.org/show_bug.cgi?id=54332
    915         <rdar://problem/8903076>
    916 
    917         * UIProcess/WebInspectorProxy.cpp:
    918         (WebKit::WebInspectorProxy::isInspectorPage):
    919         * UIProcess/WebInspectorProxy.h:
    920         Check whether the given page is a web inspector page.
    921 
    922         * UIProcess/WebPageProxy.cpp:
    923         (WebKit::WebPageProxy::initializeSandboxExtensionHandle):
    924         If this is a web inspector page, we don't want to make a sandbox extension.
    925 
    926         (WebKit::WebPageProxy::reattachToWebProcessWithItem):
    927         (WebKit::WebPageProxy::goForward):
    928         (WebKit::WebPageProxy::goBack):
    929         (WebKit::WebPageProxy::goToBackForwardItem):
    930         Pass a sandbox extension along when sending the message.
    931 
    932         * UIProcess/WebPageProxy.h:
    933         Make initializeSandboxExtensionHandle a member function.
    934 
    935         * UIProcess/cf/WebPageProxyCF.cpp:
    936         (WebKit::WebPageProxy::restoreFromSessionStateData):
    937         Pass a sandbox extension along.
    938 
    939         * WebProcess/WebPage/WebPage.cpp:
    940         (WebKit::WebPage::goForward):
    941         (WebKit::WebPage::goBack):
    942         (WebKit::WebPage::goToBackForwardItem):
    943         Hand the sandbox extension to the sandbox extension tracker.
    944 
    945         (WebKit::WebPage::restoreSessionAndNavigateToCurrentItem):
    946         Pass the sandbox extension to goToBackForwardItem.
    947 
    948         (WebKit::shouldReuseCommittedSandboxExtension):
    949         New function that checks whether a committed sandbox extension should be re-used. We
    950         do this for page reloads, as well as regular page navigations when both the committed
    951         and provisional documents have file URLs.
    952 
    953         (WebKit::WebPage::SandboxExtensionTracker::didStartProvisionalLoad):
    954         Reuse the committed sandbox extension if necessary.
    955 
    956         * WebProcess/WebPage/WebPage.h:
    957         * WebProcess/WebPage/WebPage.messages.in:
    958 
    959 2011-02-11  Anders Carlsson  <andersca (a] apple.com>
    960 
    961         Fix Snow Leopard build.
    962 
    963         * PluginProcess/PluginProcess.cpp:
    964         (WebKit::PluginProcess::didFailToSendSyncMessage):
    965         * WebProcess/WebProcess.cpp:
    966         (WebKit::WebProcess::didFailToSendSyncMessage):
    967 
    968 2011-02-11  Yael Aharon  <yael.aharon (a] nokia.com>
    969 
    970         Unreviewed Qt webkit2 build fix after r78392.
    971 
    972         * WebProcess/WebProcess.h:
    973 
    974 2011-02-11  Anders Carlsson  <andersca (a] apple.com>
    975 
    976         Reviewed by Sam Weinig.
    977 
    978         WebProcess hung communicating with the plug-in process
    979         https://bugs.webkit.org/show_bug.cgi?id=54328
    980         <rdar://problem/8854075>
    981 
    982         * UIProcess/Plugins/PluginProcessProxy.cpp:
    983         (WebKit::PluginProcessProxy::createWebProcessConnection):
    984         Add the DispatchMessageEvenWhenWaitingForSyncReply message send flag when sending the
    985         PluginProcess::CreateWebProcessConnection message, since the plug-in process can be busy waiting
    986         for a sync reply from the web process.
    987 
    988 2011-02-11  Anders Carlsson  <andersca (a] apple.com>
    989 
    990         Reviewed by Sam Weinig.
    991 
    992         Incoming synchronous messages should always be processed regardless of connection waiting for a reply
    993         https://bugs.webkit.org/show_bug.cgi?id=54326
    994 
    995         * Platform/CoreIPC/Connection.cpp:
    996         (CoreIPC::Connection::SyncMessageState::getOrCreate):
    997         Assert that the map has a non-null SyncMessageState object.
    998 
    999         (CoreIPC::Connection::SyncMessageState::SyncMessageState):
   1000         Initialize m_waitForSyncReplyCount.
   1001 
   1002         (CoreIPC::Connection::SyncMessageState::beginWaitForSyncReply):
   1003         Increment m_waitForSyncReplyCount.
   1004 
   1005         (CoreIPC::Connection::SyncMessageState::endWaitForSyncReply):
   1006         Decrement m_waitForSyncReplyCount. If it's 0, enqueue any incoming sync messages.
   1007 
   1008         (CoreIPC::Connection::SyncMessageState::processIncomingMessage):
   1009         If this is a message that needs to be dispatched, add it to the queue and wake up the client run loop.
   1010 
   1011         (CoreIPC::Connection::SyncMessageState::dispatchMessages):
   1012         Go through the queue of incoming messages and dispatch them.
   1013 
   1014         (CoreIPC::Connection::sendSyncMessage):
   1015         call beginWaitForSyncReply/endWaitForSyncReply.
   1016 
   1017         (CoreIPC::Connection::waitForSyncReply):
   1018         Dispatch messages.
   1019 
   1020         (CoreIPC::Connection::processIncomingMessage):
   1021         Call SyncMessageState::processIncomingMessage.
   1022 
   1023         (CoreIPC::Connection::enqueueIncomingMessage):
   1024         Add helper function for enqueuing an incoming message.
   1025 
   1026         * Platform/CoreIPC/Connection.h:
   1027         (CoreIPC::Connection::Message::destinationID):
   1028 
   1029 2011-02-11  Sam Weinig  <sam (a] webkit.org>
   1030 
   1031         Reviewed by Maciej Stachowiak.
   1032 
   1033         WebKit2: Going to Ars Technica crashes WebProcess in WebCore::ResourceRequestBase::url() const + 9
   1034         <rdar://problem/8978832>
   1035 
   1036         Speculative fix for crash accessing a bad ResourceRequest in policy
   1037         client code. Remove early returns from dispatchDecidePolicyForMIMEType 
   1038         and dispatchDecidePolicyForNavigationAction that are not present in the WebKit1
   1039         equivalent code. This should be safe, now that the IPC calls are synchronous.
   1040 
   1041         Also removes some invalid assertions in WebFrameProxy that were getting hit. It is okay
   1042         for the url to empty.
   1043 
   1044         * UIProcess/WebFrameProxy.cpp:
   1045         (WebKit::WebFrameProxy::didReceiveServerRedirectForProvisionalLoad):
   1046         (WebKit::WebFrameProxy::didFailProvisionalLoad):
   1047         (WebKit::WebFrameProxy::didFailLoad):
   1048         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   1049         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
   1050         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
   1051 
   1052 2011-02-11  Alexey Proskuryakov  <ap (a] apple.com>
   1053 
   1054         Reviewed by Darin Adler and Anders Carlsson.
   1055 
   1056         https://bugs.webkit.org/show_bug.cgi?id=53593
   1057         <rdar://problem/8948380> Crash beneath HistoryController::recursiveSetProvisionalItem in web
   1058         process (preceded by assertion failure) if UI process exits while 
   1059         Messages::WebPage::RestoreSessionAndNavigateToCurrentItem is being handled
   1060 
   1061         Can't test exiting the UI process.
   1062 
   1063         * Platform/CoreIPC/Connection.cpp: (CoreIPC::Connection::sendSyncMessage):
   1064         * Platform/CoreIPC/Connection.h: (CoreIPC::Connection::Client::didFailToSendSyncMessage):
   1065         Notify connection client when the connection fails to send a sync message.
   1066 
   1067         * WebProcess/WebProcess.cpp: (WebKit::WebProcess::didFailToSendSyncMessage):
   1068         * WebProcess/WebProcess.h:
   1069         Quit the web process immediately if it tried to send a sync message to a dead UI process.
   1070         It never needs to continue and handle an unexpected null "reply".
   1071 
   1072         * PluginProcess/PluginProcess.cpp: (WebKit::PluginProcess::didFailToSendSyncMessage):
   1073         * PluginProcess/PluginProcess.h:
   1074         Ditto. There is no need for a plug-in to keep running even briefly if it couldn't get a
   1075         reply to a sync message.
   1076 
   1077 2011-02-11  Anders Carlsson  <andersca (a] apple.com>
   1078 
   1079         Reviewed by Sam Weinig.
   1080 
   1081         Add a way to send async messages that can't get out of order with sync ones
   1082         https://bugs.webkit.org/show_bug.cgi?id=54319
   1083         <rdar://problem/8894844>
   1084 
   1085         * Platform/CoreIPC/Connection.cpp:
   1086         (CoreIPC::Connection::sendMessage):
   1087         sendMessage now takes a messageSendFlags. Update the messageID if the
   1088         messageSendFlags contain DispatchMessageEvenWhenWaitingForSyncReply.
   1089 
   1090         (CoreIPC::Connection::waitForSyncReply):
   1091         Process asynchronous messages as well.
   1092 
   1093         (CoreIPC::Connection::processIncomingMessage):
   1094         Check if a message should be dispatched even when we're waiting for a
   1095         synchronous reply.
   1096 
   1097         * Platform/CoreIPC/Connection.h:
   1098         (CoreIPC::Connection::send):
   1099         Send now takes a messageSendFlags parameter.
   1100 
   1101         * Platform/CoreIPC/MessageID.h:
   1102         (CoreIPC::MessageID::messageIDWithAddedFlags):
   1103         Return a new MessageID object with the given flags added.
   1104 
   1105         (CoreIPC::MessageID::shouldDispatchMessageWhenWaitingForSyncReply):
   1106         Add getter.
   1107 
   1108 2011-02-11  Sam Weinig  <sam (a] webkit.org>
   1109 
   1110         Reviewed by Anders Carlsson.
   1111 
   1112         Crash with dynamic popup menu use
   1113         <rdar://problem/8716952>
   1114 
   1115         Invalidate popup menus when forcing them closed, since they might still be
   1116         in their tracking loop.
   1117 
   1118         * UIProcess/WebPageProxy.cpp:
   1119         (WebKit::WebPageProxy::showPopupMenu):
   1120         (WebKit::WebPageProxy::hidePopupMenu):
   1121         * UIProcess/WebPopupMenuProxy.h:
   1122         (WebKit::WebPopupMenuProxy::invalidate):
   1123         * UIProcess/mac/WebPopupMenuProxyMac.mm:
   1124         (WebKit::WebPopupMenuProxyMac::showPopupMenu):
   1125         * UIProcess/win/WebPopupMenuProxyWin.cpp:
   1126         (WebKit::WebPopupMenuProxyWin::showPopupMenu):
   1127         (WebKit::WebPopupMenuProxyWin::setFocusedIndex):
   1128 
   1129 2011-02-11  Anders Carlsson  <andersca (a] apple.com>
   1130 
   1131         Reviewed by Adam Roben.
   1132 
   1133         Actually initialize m_syncMessageState.
   1134 
   1135         * Platform/CoreIPC/Connection.cpp:
   1136         (CoreIPC::Connection::Connection):
   1137 
   1138 2011-02-11  Anders Carlsson  <andersca (a] apple.com>
   1139 
   1140         Reviewed by Adam Roben.
   1141 
   1142         Move the binary semaphore into SyncMessageState
   1143         https://bugs.webkit.org/show_bug.cgi?id=54311
   1144 
   1145         With this change, all connections that belong to the same run loop will use same binary semaphore.
   1146         This is in preparation for making any connection be able to wakeup the client run loop.
   1147 
   1148         * Platform/CoreIPC/Connection.cpp:
   1149         (CoreIPC::Connection::SyncMessageState::wakeUpClientRunLoop):
   1150         (CoreIPC::Connection::SyncMessageState::wait):
   1151         (CoreIPC::Connection::waitForSyncReply):
   1152         (CoreIPC::Connection::processIncomingMessage):
   1153         (CoreIPC::Connection::connectionDidClose):
   1154         * Platform/CoreIPC/Connection.h:
   1155 
   1156 2011-02-11  Anders Carlsson  <andersca (a] apple.com>
   1157 
   1158         Reviewed by Adam Roben.
   1159 
   1160         Add a SyncMessageState class to CoreIPC::Connection
   1161         https://bugs.webkit.org/show_bug.cgi?id=54309
   1162 
   1163         SyncMessageState objects are shared between all connections scheduled on
   1164         a given run loop. It will be used to keep track of state when waiting
   1165         for replies for a synchronous message.
   1166 
   1167         * Platform/CoreIPC/Connection.cpp:
   1168         (CoreIPC::Connection::SyncMessageState::syncMessageStateMap):
   1169         (CoreIPC::Connection::SyncMessageState::syncMessageStateMapMutex):
   1170         Add a global RunLoop -> SyncMessageState map and a mutex for locking.
   1171 
   1172         (CoreIPC::Connection::SyncMessageState::getOrCreate):
   1173         Look in the map for an existing SyncMessageState object and create a new
   1174         one if none is found.
   1175 
   1176         (CoreIPC::Connection::SyncMessageState::SyncMessageState):
   1177         Initialize m_runLoop.
   1178 
   1179         (CoreIPC::Connection::SyncMessageState::~SyncMessageState):
   1180         Remove the object from the map.
   1181 
   1182 2011-02-11  Enrica Casucci  <enrica (a] apple.com>
   1183 
   1184         Reviewed by Darin Adler.
   1185 
   1186         crashes in WebProcess at WebCore::Range::startPosition const + 16
   1187         https://bugs.webkit.org/show_bug.cgi?id=54294
   1188         <rdar://problem/8982710>
   1189         
   1190         I don't have a repro case for this bugs, but the side-by-side
   1191         comparison of the IME support implementation in WebKit and WebKi2
   1192         shows a missing null check on a Range that could very well explain
   1193         this crash.
   1194         I tried running platform/mac/editing/input tests with a version of WebKit
   1195         without the null check and I can reproduce a crash with the same signature.
   1196         These tests are not yet enabled for WebKit2.
   1197 
   1198         * WebProcess/WebPage/mac/WebPageMac.mm:
   1199         (WebKit::WebPage::firstRectForCharacterRange):
   1200 
   1201 2011-02-11  Jeff Miller  <jeffm (a] apple.com>
   1202 
   1203         Reviewed by Steve Falkenburg.
   1204 
   1205         Eliminate /DELAYLOAD:msimg32.dll ignored warning when building WebKit project
   1206         https://bugs.webkit.org/show_bug.cgi?id=54296
   1207 
   1208         * win/WebKit2Common.vsprops: Remove msimg32.dll from the list of DelayLoadDLLs.
   1209 
   1210 2011-02-11  Chandra Vallala  <chandra.vallala (a] motorola.com> and Alejandro G. Castro  <alex (a] igalia.com>
   1211 
   1212         Reviewed by Martin Robinson.
   1213 
   1214         [GTK] Implement UpdateChunk, ChunkedUpdateDrawingArea/Proxy
   1215         classes for WebKit2
   1216         https://bugs.webkit.org/show_bug.cgi?id=54080
   1217 
   1218         * GNUmakefile.am:
   1219         * Shared/gtk/UpdateChunk.cpp: Added.
   1220         (WebKit::UpdateChunk::UpdateChunk):
   1221         (WebKit::UpdateChunk::~UpdateChunk):
   1222         (WebKit::UpdateChunk::encode):
   1223         (WebKit::UpdateChunk::decode):
   1224         (WebKit::UpdateChunk::createImage):
   1225         * Shared/gtk/UpdateChunk.h: Added.
   1226         (WebKit::UpdateChunk::rect):
   1227         (WebKit::UpdateChunk::isEmpty):
   1228         (WebKit::UpdateChunk::size):
   1229         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   1230         (WebKit::ChunkedUpdateDrawingAreaProxy::ChunkedUpdateDrawingAreaProxy):
   1231         Initialize the surface.
   1232         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   1233         * UIProcess/DrawingAreaProxy.h: Added cairo variables.
   1234         * UIProcess/gtk/ChunkedUpdateDrawingAreaProxyGtk.cpp: Added.
   1235         (WebKit::ChunkedUpdateDrawingAreaProxy::page):
   1236         (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore):
   1237         (WebKit::ChunkedUpdateDrawingAreaProxy::invalidateBackingStore):
   1238         (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint):
   1239         (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore):
   1240         * WebProcess/WebPage/gtk/ChunkedUpdateDrawingAreaGtk.cpp: Added.
   1241         (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):
   1242 
   1243 2011-02-10  Anders Carlsson  <andersca (a] apple.com>
   1244 
   1245         Reviewed by Dan Bernstein.
   1246 
   1247         Repro crash with Sony Google TV ad at Gizmodo
   1248         https://bugs.webkit.org/show_bug.cgi?id=54150
   1249         <rdar://problem/8782346>
   1250 
   1251         Re-landing this fix, bug without the test case, since it causes hangs on the bots.
   1252         https://bugs.webkit.org/show_bug.cgi?id=54171 tracks adding back the test.
   1253 
   1254         Since PluginView::evaluate can cause the plug-in element to go away, we need to protect it.
   1255 
   1256         * WebProcess/Plugins/PluginView.cpp:
   1257         (WebKit::PluginView::~PluginView):
   1258         Null out m_pluginElement here so we'll catch crashes earlier.
   1259 
   1260         (WebKit::PluginView::evaluate):
   1261         Add a plug-in protector.
   1262 
   1263 2011-02-10  Alice Liu  <alice.liu (a] apple.com>
   1264 
   1265         Reviewed by Enrica Casucci and Adele Peterson.
   1266 
   1267         WebKit2 pages gobble up cmd-I as an editing command in some cases where it shouldn't
   1268         https://bugs.webkit.org/show_bug.cgi?id=54254
   1269 
   1270         * UIProcess/API/mac/WKView.mm:
   1271         (-[WKView _handleStyleKeyEquivalent:]):
   1272         Return early if we're not in an editable region.
   1273 
   1274 2011-02-10  Andreas Kling  <kling (a] webkit.org>
   1275 
   1276         Unreviewed Qt build fix.
   1277 
   1278         waitFor() -> deprecatedWaitFor()
   1279 
   1280         * UIProcess/TiledDrawingAreaProxy.cpp:
   1281         (WebKit::TiledDrawingAreaProxy::waitUntilUpdatesComplete):
   1282 
   1283 2011-02-10  Anders Carlsson  <andersca (a] apple.com>
   1284 
   1285         Reviewed by Adam Roben.
   1286 
   1287         Move code to dispatch an incoming message out into a new function
   1288         https://bugs.webkit.org/show_bug.cgi?id=54239
   1289 
   1290         This also fixes a leak where we wouldn't free ArgumentDecoder objects
   1291         after a connection has been invalidated.
   1292         
   1293         * Platform/CoreIPC/Connection.cpp:
   1294         (CoreIPC::Connection::dispatchMessage):
   1295         (CoreIPC::Connection::dispatchMessages):
   1296         * Platform/CoreIPC/Connection.h:
   1297 
   1298 2011-02-10  Anders Carlsson  <andersca (a] apple.com>
   1299 
   1300         Try again to fix the Qt build.
   1301 
   1302         * UIProcess/TiledDrawingAreaProxy.cpp:
   1303         (WebKit::TiledDrawingAreaProxy::sizeDidChange):
   1304         (WebKit::TiledDrawingAreaProxy::setPageIsVisible):
   1305         (WebKit::TiledDrawingAreaProxy::takeSnapshot):
   1306         (WebKit::TiledDrawingAreaProxy::removeTile):
   1307 
   1308 2011-02-10  Anders Carlsson  <andersca (a] apple.com>
   1309 
   1310         Attempt to fix the Qt build.
   1311 
   1312         * UIProcess/TiledDrawingAreaProxy.cpp:
   1313         (WebKit::TiledDrawingAreaProxy::sizeDidChange):
   1314         (WebKit::TiledDrawingAreaProxy::setPageIsVisible):
   1315         (WebKit::TiledDrawingAreaProxy::requestTileUpdate):
   1316         (WebKit::TiledDrawingAreaProxy::takeSnapshot):
   1317         (WebKit::TiledDrawingAreaProxy::removeTile):
   1318         * WebProcess/WebPage/TiledDrawingArea.cpp:
   1319         (WebKit::TiledDrawingArea::display):
   1320         (WebKit::TiledDrawingArea::setSize):
   1321         (WebKit::TiledDrawingArea::updateTile):
   1322         (WebKit::TiledDrawingArea::tileUpdateTimerFired):
   1323         (WebKit::TiledDrawingArea::didReceiveMessage):
   1324 
   1325 2011-02-10  Adam Roben  <aroben (a] apple.com>
   1326 
   1327         Handle a null FindIndicator correctly
   1328 
   1329         We are passed a null FindIndicator when the find indicator becomes hidden.
   1330 
   1331         Fixes <http://webkit.org/b/54213> <rdar://problem/8983261> REGRESSION (r78198): Crash in
   1332         FindIndicator::contentImage when scrolling page
   1333 
   1334         Reviewed by Steve Falkenburg.
   1335 
   1336         * Platform/win/SharedMemoryWin.cpp:
   1337         (WebKit::SharedMemory::Handle::isNull): Implemented.
   1338         (WebKit::SharedMemory::create): Bail out if the handle is null, just like Mac does.
   1339         Otherwise assert that ::MapViewOfFile succeeded. This doesn't fix the bug, but should help
   1340         catch other errors.
   1341 
   1342         * UIProcess/win/WebView.cpp:
   1343         (WebKit::WebView::setFindIndicator): Null-check the FindIndicator before dereferencing it.
   1344         Also changed the function to store the FindIndicator in a RefPtr.
   1345 
   1346 2011-02-10  Anders Carlsson  <andersca (a] apple.com>
   1347 
   1348         Reviewed by Sam Weinig.
   1349 
   1350         Add 'deprecated' to the deprecated CoreIPC functions
   1351         https://bugs.webkit.org/show_bug.cgi?id=54223
   1352 
   1353         * Platform/CoreIPC/Connection.cpp:
   1354         (CoreIPC::Connection::sendMessage):
   1355         * Platform/CoreIPC/Connection.h:
   1356         (CoreIPC::Connection::send):
   1357         (CoreIPC::Connection::deprecatedSendSync):
   1358         (CoreIPC::Connection::deprecatedSend):
   1359         (CoreIPC::Connection::deprecatedWaitFor):
   1360         * Platform/CoreIPC/mac/ConnectionMac.cpp:
   1361         (CoreIPC::Connection::open):
   1362         * PluginProcess/PluginProcess.cpp:
   1363         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   1364         (WebKit::ChunkedUpdateDrawingAreaProxy::paint):
   1365         * UIProcess/Plugins/PluginProcessProxy.cpp:
   1366         (WebKit::PluginProcessProxy::createWebProcessConnection):
   1367         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   1368         (WebKit::InjectedBundle::postMessage):
   1369         (WebKit::InjectedBundle::postSynchronousMessage):
   1370         * WebProcess/Plugins/PluginProcessConnectionManager.cpp:
   1371         (WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
   1372         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   1373         (WebKit::ChunkedUpdateDrawingArea::display):
   1374         (WebKit::ChunkedUpdateDrawingArea::setSize):
   1375         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   1376         (WebKit::LayerBackedDrawingArea::setSize):
   1377         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   1378         (WebKit::LayerBackedDrawingArea::attachCompositingContext):
   1379 
   1380 2011-02-10  Sam Weinig  <sam (a] webkit.org>
   1381 
   1382         Reviewed by Anders Carlsson.
   1383 
   1384         Window resizer does not have a border when there are scrollbars in WebKit2 windows
   1385         <rdar://problem/8488476>
   1386         https://bugs.webkit.org/show_bug.cgi?id=54222
   1387 
   1388         * UIProcess/API/mac/PageClientImpl.h:
   1389         * UIProcess/API/mac/PageClientImpl.mm:
   1390         (WebKit::PageClientImpl::didChangeScrollbarsForMainFrame):
   1391         * UIProcess/API/mac/WKView.mm:
   1392         (-[WKView _updateGrowBoxForWindowFrameChange]):
   1393         (-[WKView _didChangeScrollbarsForMainFrame]):
   1394         * UIProcess/API/mac/WKViewInternal.h:
   1395         * UIProcess/API/qt/qwkpage_p.h:
   1396         (QWKPagePrivate::didChangeScrollbarsForMainFrame):
   1397         * UIProcess/PageClient.h:
   1398         * UIProcess/WebPageProxy.cpp:
   1399         (WebKit::WebPageProxy::didChangeScrollbarsForMainFrame):
   1400         * UIProcess/win/WebView.cpp:
   1401         (WebKit::WebView::didChangeScrollbarsForMainFrame):
   1402         * UIProcess/win/WebView.h:
   1403 
   1404 2011-02-10  Ivan Krsti  <ike (a] apple.com>
   1405 
   1406         Reviewed by Adam Roben.
   1407 
   1408         Rename remaining instances of _HOME sandbox parameter.
   1409         <rdar://problem/8983428>
   1410 
   1411         * WebProcess/com.apple.WebProcess.sb:
   1412 
   1413 2011-02-10  Chris Fleizach  <cfleizach (a] apple.com>
   1414 
   1415         Reviewed by Anders Carlsson.
   1416 
   1417         AX: AX needs to stop using WebCoreViewFactory
   1418         https://bugs.webkit.org/show_bug.cgi?id=54153
   1419 
   1420         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
   1421         (InitWebCoreSystemInterface):
   1422 
   1423 2011-02-10  Sam Weinig  <sam (a] webkit.org>
   1424 
   1425         Reviewed by Anders Carlsson.
   1426 
   1427         Sandbox violations trying to read crypto preferences.
   1428         <rdar://problem/8981151>
   1429 
   1430         * WebProcess/com.apple.WebProcess.sb:
   1431 
   1432 2011-02-10  Peter Varga  <pvarga (a] webkit.org>
   1433 
   1434         Reviewed by Csaba Osztrogonc.
   1435 
   1436         Remove PCRE source from trunk
   1437         https://bugs.webkit.org/show_bug.cgi?id=54188
   1438 
   1439         * WebKit2.pro:
   1440 
   1441 2011-02-09  Adam Roben  <aroben (a] apple.com>
   1442 
   1443         Turn on the new drawing area on Windows
   1444 
   1445         Fixes <http://webkit.org/b/53805> <rdar://problem/8960666> WebKit2 on Windows should use
   1446         DrawingAreaProxyImpl
   1447 
   1448         Reviewed by Darin Adler.
   1449 
   1450         * UIProcess/win/WebView.cpp:
   1451         (WebKit::useNewDrawingArea): Return true!
   1452 
   1453 2011-02-09  Adam Roben  <aroben (a] apple.com>
   1454 
   1455         Hook up WM_PRINT to the new drawing area
   1456 
   1457         Fixes <http://webkit.org/b/54145> <rdar://problem/8979559> WM_PRINT doesn't work with new
   1458         drawing area (assertion failure in DrawingAreaProxyImpl in Debug builds)
   1459 
   1460         Reviewed by Darin Adler.
   1461 
   1462         * UIProcess/win/WebView.cpp:
   1463         (WebKit::WebView::paint): Added. Code came from onPaintEvent.
   1464 
   1465         (WebKit::WebView::onPaintEvent):
   1466         (WebKit::WebView::onPrintClientEvent):
   1467         Changed to call paint.
   1468 
   1469         * UIProcess/win/WebView.h: Added paint. Also separated message handler functions into their
   1470         own paragraph.
   1471 
   1472 2011-02-09  Adam Roben  <aroben (a] apple.com>
   1473 
   1474         Notice when the backing store goes away after DidSetSize
   1475 
   1476         Fixes <http://webkit.org/b/54142> <rdar://problem/8979365> Crash in
   1477         DrawingAreaProxyImpl::paint when WKView paints after being resized while hidden
   1478 
   1479         Reviewed by Darin Adler.
   1480 
   1481         * UIProcess/DrawingAreaProxyImpl.cpp:
   1482         (WebKit::DrawingAreaProxyImpl::paint): Null-check m_backingStore after waiting for
   1483         DidSetSize, as m_backingStore can go away when we receive that message. This is the bug fix.
   1484         Also moved the accelerated compositing check inside the block where we wait for DidSetSize.
   1485         If we didn't wait for DidSetSize, we already know that we're not in accelerated compositing
   1486         mode (and asserted so earlier in this function).
   1487 
   1488 2011-02-09  Adam Roben  <aroben (a] apple.com>
   1489 
   1490         Decode a null SharedMemory::Handle correctly on Windows
   1491 
   1492         Fixes <http://webkit.org/b/54141> <rdar://problem/8979195> WKView draws at wrong size,
   1493         performs badly if is resized while hidden (assertion fails in
   1494         BackingStore::incorporateUpdate in Debug builds)
   1495 
   1496         Reviewed by Darin Adler.
   1497 
   1498         * Platform/win/SharedMemoryWin.cpp:
   1499         (WebKit::getDuplicatedHandle): Added. Code came from decode. The only changes were to
   1500         null-check sourceHandle (this is the bug fix) and to assert when ::DuplicateHandle fails
   1501         (which would have caught the bug earlier).
   1502         (WebKit::SharedMemory::Handle::decode): Changed to use getDuplicatedHandle.
   1503 
   1504 2011-02-09  Adam Roben  <aroben (a] apple.com>
   1505 
   1506         Don't invalidate outside of the WebPage's bounds
   1507 
   1508         Fixes <http://webkit.org/b/54123> <rdar://problem/8978383> Assertion failure in
   1509         BackingStore::BackingStore if a new WebPage becomes active before receiving a size
   1510 
   1511         Reviewed by Darin Adler.
   1512 
   1513         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   1514         (WebKit::DrawingAreaImpl::setNeedsDisplay): Intersect the dirty rect with our bounds before
   1515         doing anything else.
   1516         (WebKit::DrawingAreaImpl::display): Added an assertion to help catch the bad case a little
   1517         earlier.
   1518 
   1519 2011-02-10  Eric Seidel  <eric (a] webkit.org>
   1520 
   1521         Unreviewed, rolling out r78157.
   1522         http://trac.webkit.org/changeset/78157
   1523         https://bugs.webkit.org/show_bug.cgi?id=54150
   1524 
   1525         Fails on a bunch of bots
   1526 
   1527         * WebProcess/Plugins/PluginView.cpp:
   1528         (WebKit::PluginView::~PluginView):
   1529         (WebKit::PluginView::evaluate):
   1530 
   1531 2011-02-09  Brian Weinstein  <bweinstein (a] apple.com>
   1532 
   1533         Rubber-stamped by Sam Weinig.
   1534 
   1535         Fix a typo in WebSecurityOrigin::protocol.
   1536 
   1537         * Shared/WebSecurityOrigin.h:
   1538         (WebKit::WebSecurityOrigin::protocol): This should return the protocol, not the domain.
   1539 
   1540 2011-02-09  Sam Weinig  <sam (a] webkit.org>
   1541 
   1542         Reviewed by Darin Adler.
   1543 
   1544         File uploads do not work within the sandbox
   1545         <rdar://problem/8950518>
   1546         https://bugs.webkit.org/show_bug.cgi?id=54154
   1547 
   1548         * UIProcess/WebPageProxy.cpp:
   1549         (WebKit::WebPageProxy::didChooseFilesForOpenPanel):
   1550         * WebProcess/WebPage/WebPage.cpp:
   1551         (WebKit::WebPage::extendSandboxForFileFromOpenPanel):
   1552         * WebProcess/WebPage/WebPage.h:
   1553         * WebProcess/WebPage/WebPage.messages.in:
   1554 
   1555 2011-02-09  Alexey Proskuryakov  <ap (a] apple.com>
   1556 
   1557         Reviewed by Darin Adler.
   1558 
   1559         https://bugs.webkit.org/show_bug.cgi?id=54148
   1560         <rdar://problem/8973887> REGRESSION (WebKit2): Opening two print dialogs causes havoc
   1561 
   1562         * UIProcess/API/mac/WKPrintingView.h: Moved _isForcingPreviewUpdate into a static variable,
   1563         because dispatching a notification affects all WKPrintingViews at once.
   1564         * UIProcess/API/mac/WKPrintingView.mm:
   1565         (-[WKPrintingView _updatePreview]): Updated for new variable name.
   1566         (-[WKPrintingView knowsPageRange:]): Don't break if the method is called twice in a row
   1567         (we already had this logic when printing from separate thread, but not for preview).
   1568         (-[WKPrintingView drawRect:]): Changed all LOG messages to have view object address for
   1569         easier matching.
   1570         (-[WKPrintingView rectForPage:]): Ditto.
   1571         (-[WKPrintingView beginDocument]): Ditto.
   1572         (-[WKPrintingView endDocument]): Ditto.
   1573 
   1574 2011-02-09  Anders Carlsson  <andersca (a] apple.com>
   1575 
   1576         Reviewed by Sam Weinig.
   1577 
   1578         Repro crash with Sony Google TV ad at Gizmodo
   1579         https://bugs.webkit.org/show_bug.cgi?id=54150
   1580 
   1581         Since PluginView::evaluate can cause the plug-in element to go away, we need to protect it.
   1582 
   1583         * WebProcess/Plugins/PluginView.cpp:
   1584         (WebKit::PluginView::~PluginView):
   1585         Null out m_pluginElement here so we'll catch crashes earlier.
   1586 
   1587         (WebKit::PluginView::evaluate):
   1588         Add a plug-in protector.
   1589 
   1590 2011-02-09  Sam Weinig  <sam (a] webkit.org>
   1591 
   1592         Reviewed by Maciej Stachowiak.
   1593 
   1594         Google Maps says it has horizontal scrollbars when it doesn't
   1595         <rdar://problem/8978005>
   1596 
   1597         We were updating the main frame's scrollbar state for changes to
   1598         frames other than the main frame.
   1599 
   1600         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   1601         (WebKit::WebChromeClient::contentsSizeChanged):
   1602         * WebProcess/WebCoreSupport/WebChromeClient.h:
   1603         (WebKit::WebChromeClient::WebChromeClient):
   1604         Change to bail out early if we are not looking at the main frame. Also
   1605         fix some silly typos and rename the variables to be more specific.
   1606 
   1607 2011-02-09  Ivan Krsti  <ike (a] apple.com>
   1608 
   1609         Reviewed by Sam Weinig.
   1610 
   1611         Allow read-only access to mouse preferences from sandboxed WebProcess.
   1612         <rdar://problem/8975279>
   1613 
   1614         * WebProcess/com.apple.WebProcess.sb:
   1615 
   1616 2011-02-09  Steve Falkenburg  <sfalken (a] apple.com>
   1617 
   1618         Build fix.
   1619 
   1620         * win/MainWin.cpp:
   1621         (wWinMain):
   1622 
   1623 2011-02-09  Amruth Raj  <amruthraj (a] motorola.com> and Ravi Phaneendra Kasibhatla  <ravi.kasibhatla (a] motorola.com>
   1624 
   1625         Reviewed by Martin Robinson.
   1626 
   1627         [GTK] Implement Module class for WebKit2
   1628         https://bugs.webkit.org/show_bug.cgi?id=48510
   1629 
   1630         * GNUmakefile.am:
   1631         * Platform/Module.h: Added GModule handle for GTK port.
   1632         * Platform/gtk/ModuleGtk.cpp: Initial code using GModule calls.
   1633         (WebKit::Module::load):
   1634         (WebKit::Module::unload):
   1635         (WebKit::Module::platformFunctionPointer):
   1636 
   1637 2011-02-09  Chandra Vallala  <chandra.vallala (a] motorola.com> and Alejandro G. Castro  <alex (a] igalia.com>
   1638 
   1639         Reviewed by Martin Robinson.
   1640 
   1641         [GTK] Implement WKBaseGtk API for Webkit2
   1642         https://bugs.webkit.org/show_bug.cgi?id=54081
   1643 
   1644         * GNUmakefile.am: Added new files to compilation.
   1645         * Shared/API/c/WKBase.h: Included WKBaseGtk.h in this file.
   1646         * Shared/API/c/gtk: Added.
   1647         * Shared/API/c/gtk/WKBaseGtk.h: Added. Declaration of WKViewRef
   1648         for GTK port.
   1649         * UIProcess/API/C/WKAPICast.h: Included WKAPICastGtk.h in this
   1650         file.
   1651         * UIProcess/API/C/gtk: Added.
   1652         * UIProcess/API/C/gtk/WKAPICastGtk.h: Added. Type definition
   1653         template for WKViewRef to WebView and vice-versa.
   1654         * UIProcess/API/C/gtk/WKView.cpp: Added. Implementation of WKView
   1655         API interface.
   1656         (WKViewCreate):
   1657         (WKViewGetWindow):
   1658         (WKViewGetPage):
   1659         (WKURLCreateWithURL):
   1660         * UIProcess/API/C/gtk/WKView.h: Added. Declaration of WKView API
   1661         interface.
   1662 
   1663 2011-02-09  Alejandro G. Castro  <alex (a] igalia.com>
   1664 
   1665         Reviewed by Martin Robinson.
   1666 
   1667         [GTK] Add WebGraphicsContext stub to the compilation
   1668         https://bugs.webkit.org/show_bug.cgi?id=54078
   1669 
   1670         * GNUmakefile.am:
   1671         * Shared/API/c/gtk/WKGraphicsContextGtk.cpp: Added stub just for
   1672         compilation.
   1673         (WKGraphicsContextGetGtkContext):
   1674         * Shared/API/c/gtk/WKGraphicsContextGtk.h: Added stub just for
   1675         compilation.
   1676         * Shared/WebGraphicsContext.cpp:
   1677         (WebKit::WebGraphicsContext::WebGraphicsContext):
   1678         * Shared/WebGraphicsContext.h:
   1679         (WebKit::WebGraphicsContext::platformContext):
   1680 
   1681 2011-02-09  Alejandro G. Castro  <alex (a] igalia.com>
   1682 
   1683         Reviewed by Martin Robinson.
   1684 
   1685         [GTK] Add geolocation support to the webkit2 compilation
   1686         https://bugs.webkit.org/show_bug.cgi?id=54077
   1687 
   1688         Add Geolocation files to the GTK compilation.
   1689 
   1690         * GNUmakefile.am:
   1691 
   1692 2011-02-09  Andras Becsi  <abecsi (a] webkit.org>
   1693 
   1694         Reviewed by Csaba Osztrogonc.
   1695 
   1696         [Qt][WK2] Don't generate superfluous forwarding header for config.h.
   1697 
   1698         * Scripts/generate-forwarding-headers.pl:
   1699 
   1700 2011-02-09  Adam Roben  <aroben (a] apple.com>
   1701 
   1702         Hide the ugly details of WebView::m_window initialization from WebPageProxy, and make it
   1703         less ugly
   1704 
   1705         WebView::WebView was initially creating a hidden window, then showing it. It would tell
   1706         WebPageProxy about the window while it was still hidden, and then have to inform
   1707         WebPageProxy that the window had become shown. This resulted in WebPageProxy sending
   1708         unnecessary messages to the web process, and confused code that assumed that the window
   1709         would be in the same state after WebView's constructor exited as it was when WebPageProxy
   1710         first found out about the window.
   1711 
   1712         We now don't hide the window when creating it, which simplifies the code, and only tell
   1713         WebPageProxy about the window after we're done modifying it, which fixes the bug.
   1714 
   1715         Fixes <http://webkit.org/b/53878> <rdar://problem/8977306> Assertion failure in
   1716         DrawingAreaImpl::resumePainting after window.open or when opening Web Inspector
   1717 
   1718         Reviewed by Anders Carlsson.
   1719 
   1720         * UIProcess/win/WebView.cpp:
   1721         (WebKit::WebView::WebView): Changed ::CreateWindowEx to ::CreateWindowExW, to match other
   1722         Win32 API calls in WebKit2. Pass WS_VISIBLE to ::CreateWindowExW rather than waiting until
   1723         later to show the window. Added an assertion that m_isVisible matches the window's visible
   1724         state. Don't even create our WebPageProxy, or tell it about our window, until we're done
   1725         initializing our window, so that it doesn't get informed about our window's internal state
   1726         changes that happen beneath ::CreateWindowExW.
   1727         (WebKit::WebView::onSizeEvent): Null-check m_page since we can receive this message beneath
   1728         ::CreateWindowExW.
   1729         (WebKit::WebView::onShowWindowEvent): Ditto. Replaced one FIXME with another. Always set
   1730         handled to false so that ::DefWindowProcW can do its thing. (MSDN says this is when it
   1731         actually shows/hides the window, though I couldn't find any consequences of not calling
   1732         ::DefWindowProcW here.)
   1733 
   1734 2011-02-09  Pavel Feldman  <pfeldman (a] chromium.org>
   1735 
   1736         Reviewed by Yury Semikhatsky.
   1737 
   1738         Web Inspector: follow up on InspectorAgent split -
   1739         removing unnecessary methods from InspectorController.
   1740         https://bugs.webkit.org/show_bug.cgi?id=54093
   1741 
   1742         * WebProcess/WebPage/WebInspector.cpp:
   1743         (WebKit::WebInspector::showConsole):
   1744         (WebKit::WebInspector::stopJavaScriptProfiling):
   1745 
   1746 2011-02-09  Alejandro G. Castro  <alex (a] igalia.com>
   1747 
   1748         Reviewed by Martin Robinson.
   1749 
   1750         [GTK] Avoid WebProcessMain compilation, we are used a gtk specific main
   1751         https://bugs.webkit.org/show_bug.cgi?id=54015
   1752 
   1753         Avoided the compilation of the general WebProcessMain, and added
   1754         soup initialization to WebProcessMainGtk.cpp.
   1755 
   1756         * GNUmakefile.am:
   1757         * WebProcess/gtk/WebProcessMainGtk.cpp:
   1758         (WebKit::WebProcessMainGtk):
   1759 
   1760 2011-02-08  Alejandro G. Castro  <alex (a] igalia.com>
   1761 
   1762         Reviewed by Martin Robinson.
   1763 
   1764         [GTK] Incorrect assertion in WorkQueueGtk, we need to register
   1765         more than one handle
   1766         https://bugs.webkit.org/show_bug.cgi?id=54014
   1767 
   1768         Fixed assertion condition we need to register more than one
   1769         handler for the same file descriptor.
   1770 
   1771         * Platform/gtk/WorkQueueGtk.cpp:
   1772         (WorkQueue::registerEventSourceHandler):
   1773 
   1774 2011-02-08  Alejandro G. Castro  <alex (a] igalia.com>
   1775 
   1776         Reviewed by Martin Robinson.
   1777 
   1778         Fix typo in the include guards name in ChunkedUpdateDrawingAreaProxy.h
   1779         https://bugs.webkit.org/show_bug.cgi?id=54013
   1780 
   1781         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   1782 
   1783 2011-02-08  Alejandro G. Castro  <alex (a] igalia.com>
   1784 
   1785         Reviewed by Martin Robinson.
   1786 
   1787         [GTK] Fix after r77874, m_isConnected is initialized before the
   1788         socket is opened
   1789         https://bugs.webkit.org/show_bug.cgi?id=54011
   1790 
   1791         Fixed connection breakage after r77874, we have to wait until open
   1792         the socket to open the connection.
   1793 
   1794         * Platform/CoreIPC/gtk/ConnectionGtk.cpp:
   1795         (CoreIPC::Connection::platformInitialize):
   1796         (CoreIPC::Connection::open):
   1797 
   1798 2011-02-08  Alejandro G. Castro  <alex (a] igalia.com>
   1799 
   1800         Reviewed by Martin Robinson.
   1801 
   1802         [WK2] LayerTreeContext is used outside the ACCELERATED_COMPOSITING
   1803         guards but not defined in DrawingAreaProxy.h
   1804         https://bugs.webkit.org/show_bug.cgi?id=54009
   1805 
   1806         Removed the guards in the forward declaration, this will fail if
   1807         the class is finally used in the function, but it works for the
   1808         moment.
   1809 
   1810         * UIProcess/DrawingAreaProxy.h:
   1811 
   1812 2011-02-08  Alejandro G. Castro  <alex (a] igalia.com>
   1813 
   1814         Reviewed by Martin Robinson.
   1815 
   1816         WebKit2 GTK Fails to Build #include nested too deeply
   1817         https://bugs.webkit.org/show_bug.cgi?id=52219
   1818 
   1819         * GNUmakefile.am: Removed the commands to create the directories
   1820         for the forwarding headers, the script already does it for us.
   1821         * config.h: Removed the config.h inclusion and added the
   1822         autotoolsconfig.h directly, also added a condition to share the
   1823         defines with QT.
   1824 
   1825 2011-02-08  Maciej Stachowiak  <mjs (a] apple.com>
   1826 
   1827         Reviewed by Mark Rowe.
   1828 
   1829         Crash when going back/forward when back/forward list is in a bad state.
   1830         https://bugs.webkit.org/show_bug.cgi?id=54059
   1831         <rdar://problem/8975244>
   1832         
   1833         * UIProcess/WebPageProxy.cpp:
   1834         (WebKit::WebPageProxy::goForward): Add a null check.
   1835         (WebKit::WebPageProxy::goBack): ditto
   1836 
   1837 2011-02-08  Anders Carlsson  <andersca (a] apple.com>
   1838 
   1839         Reviewed by Beth Dakin.
   1840 
   1841         Assertion failure !isInAcceleratedCompositingMode() in DrawingAreaProxyImpl::incorporateUpdate()
   1842         https://bugs.webkit.org/show_bug.cgi?id=54046
   1843         <rdar://problem/8973960>
   1844 
   1845         DrawingAreaImpl::setRootCompositingLayer can be called with a new layer even when already
   1846         in accelerated compositing mode. Similarly, it can be called with a null layer even when not
   1847         in accelerated compositing mode. Make the drawing area and layer tree host handle both these cases.
   1848 
   1849         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   1850         (WebKit::DrawingAreaImpl::setRootCompositingLayer):
   1851         Only call enterAcceleratedCompositingMode if there is no layer tree host, otherwise
   1852         just call LayerTreeHost::setRootCompositingLayer.
   1853 
   1854         (WebKit::DrawingAreaImpl::setSize):
   1855         Add an assert.
   1856 
   1857         (WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode):
   1858         Assert that we don't have a layer tree host.
   1859 
   1860         (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):
   1861         Assert that we do have a layer tree host.
   1862 
   1863         (WebKit::DrawingAreaImpl::display):
   1864         If the call to display caused the page to enter accelerated compositing mode, we don't
   1865         want to send back an Update message.
   1866 
   1867         * WebProcess/WebPage/LayerTreeHost.cpp:
   1868         (WebKit::LayerTreeHost::create):
   1869         * WebProcess/WebPage/LayerTreeHost.h:
   1870         Create no longer takes a graphics layer.
   1871 
   1872         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
   1873         (WebKit::LayerTreeHostMac::create):
   1874         (WebKit::LayerTreeHostMac::LayerTreeHostMac):
   1875         Create no longer takes a graphics layer.
   1876         
   1877         (WebKit::LayerTreeHostMac::setRootCompositingLayer):
   1878         Set the new root compositing layer.
   1879 
   1880 2011-02-08  Adam Roben  <aroben (a] apple.com>
   1881 
   1882         Implement WorkQueue::scheduleWorkAfterDelay on Windows
   1883 
   1884         Each WorkQueue now owns its own timer queue. When scheduleWorkAfterDelay is called, we
   1885         create a timer-queue timer with the given delay. When the timer fires, we schedule the work
   1886         on the queue and clean up the timer.
   1887 
   1888         Fixes <http://webkit.org/b/54040> <rdar://problem/8974230> Web process sticks around forever
   1889         if it's hung when UI process goes away
   1890 
   1891         Reviewed by Anders Carlsson.
   1892 
   1893         * Platform/WorkQueue.h: Added timerCallback and m_timerQueue.
   1894 
   1895         * Platform/win/WorkQueueWin.cpp:
   1896         (WorkQueue::platformInitialize): Initialize m_timerQueue.
   1897         (WorkQueue::platformInvalidate): Clean up m_timerQueue.
   1898         (TimerContext::TimerContext): Added this helper object to hold the context needed by the
   1899         timer callback.
   1900         (WorkQueue::timerCallback): Added. Schedules the WorkItem on the WorkQueue and cleans up the
   1901         timer.
   1902         (WorkQueue::scheduleWorkAfterDelay): Create a timer-queue timer on our timer queue that will
   1903         fire after the given delay. Pass a new TimerContext object to the timer callback that
   1904         contains the information it needs.
   1905 
   1906 2011-02-08  Anders Carlsson  <andersca (a] apple.com>
   1907 
   1908         Reviewed by Sam Weinig.
   1909 
   1910         Rename PluginProcess::initializeConnection to PluginProcess::initialize
   1911         https://bugs.webkit.org/show_bug.cgi?id=54039
   1912 
   1913         * PluginProcess/PluginProcess.cpp:
   1914         (WebKit::PluginProcess::initialize):
   1915         * PluginProcess/PluginProcess.h:
   1916         * PluginProcess/mac/PluginProcessMainMac.mm:
   1917         (WebKit::PluginProcessMain):
   1918         * WebProcess/WebProcess.h:
   1919 
   1920 2011-02-08  Brady Eidson  <beidson (a] apple.com>
   1921 
   1922         Reviewed by Darin Adler.
   1923 
   1924         <rdar://problem/8972913> and https://bugs.webkit.org/show_bug.cgi?id=54036
   1925         didChangeBackForwardList should include some context about what changed
   1926 
   1927         Update the implementation of this API to include the new item (if any) and removed items (if any):
   1928         * UIProcess/API/C/WKPage.h:
   1929         * UIProcess/WebLoaderClient.cpp:
   1930         (WebKit::WebLoaderClient::didChangeBackForwardList):
   1931         * UIProcess/WebLoaderClient.h:
   1932         * UIProcess/WebPageProxy.cpp:
   1933         (WebKit::WebPageProxy::didChangeBackForwardList):
   1934         * UIProcess/WebPageProxy.h:
   1935 
   1936         Have WebBackForwardList pass the new items and/or removed items when calling the notifier:
   1937         * UIProcess/WebBackForwardList.cpp:
   1938         (WebKit::WebBackForwardList::addItem):
   1939         (WebKit::WebBackForwardList::goToItem):
   1940         (WebKit::WebBackForwardList::clear):
   1941 
   1942 2011-02-08  Sam Weinig  <sam (a] webkit.org>
   1943 
   1944         Reviewed by Anders Carlsson.
   1945 
   1946         Sandbox violations visiting MobileMe.
   1947         <rdar://problem/8961330>
   1948 
   1949         * WebProcess/com.apple.WebProcess.sb:
   1950 
   1951 2011-02-08  Anders Carlsson  <andersca (a] apple.com>
   1952 
   1953         Reviewed by Sam Weinig.
   1954 
   1955         Rename PluginProcess::initialize to PluginProcess::initializePluginProcess
   1956         https://bugs.webkit.org/show_bug.cgi?id=54037
   1957 
   1958         Rename PluginProcess::initialize to PluginProcess::initializePluginProcess to better
   1959         match the WebProcess initialization code, in preparation of sharing more code.
   1960 
   1961         * PluginProcess/PluginProcess.cpp:
   1962         (WebKit::PluginProcess::initializePluginProcess):
   1963         * PluginProcess/PluginProcess.h:
   1964         * PluginProcess/PluginProcess.messages.in:
   1965         * UIProcess/Plugins/PluginProcessProxy.cpp:
   1966         (WebKit::PluginProcessProxy::didFinishLaunching):
   1967 
   1968 2011-02-08  Sam Weinig  <sam (a] webkit.org>
   1969 
   1970         Reviewed by Anders Carlsson.
   1971 
   1972         WK2: Add ability to pass context to policy delegate methods
   1973         https://bugs.webkit.org/show_bug.cgi?id=54031
   1974 
   1975         * Platform/CoreIPC/HandleMessage.h:
   1976         (CoreIPC::callMemberFunction):
   1977         (CoreIPC::handleMessageVariadic):
   1978         * Scripts/webkit2/messages.py:
   1979         Add ability to pass variadic messages to sync messages.
   1980 
   1981         * Shared/API/c/WKBase.h:
   1982         * Shared/APIObject.h:
   1983         Add WKBundleNavigation type.
   1984 
   1985         * UIProcess/API/C/WKPage.h:
   1986         * UIProcess/WebPageProxy.cpp:
   1987         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
   1988         (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
   1989         (WebKit::WebPageProxy::decidePolicyForMIMEType):
   1990         * UIProcess/WebPageProxy.h:
   1991         * UIProcess/WebPageProxy.messages.in:
   1992         * UIProcess/WebPolicyClient.cpp:
   1993         (WebKit::WebPolicyClient::decidePolicyForNavigationAction):
   1994         (WebKit::WebPolicyClient::decidePolicyForNewWindowAction):
   1995         (WebKit::WebPolicyClient::decidePolicyForMIMEType):
   1996         * UIProcess/WebPolicyClient.h:
   1997         Update policy client for new data.
   1998 
   1999         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   2000         * WebProcess/InjectedBundle/API/c/WKBundleNavigationAction.cpp: Added.
   2001         (WKBundleNavigationActionGetTypeID):
   2002         (WKBundleNavigationActionGetNavigationType):
   2003         (WKBundleNavigationActionGetEventModifiers):
   2004         (WKBundleNavigationActionGetEventMouseButton):
   2005         (WKBundleNavigationActionCopyHitTestResult):
   2006         (WKBundleNavigationActionCopyFormElement):
   2007         * WebProcess/InjectedBundle/API/c/WKBundleNavigationAction.h: Added.
   2008         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   2009         (WKBundlePageSetPolicyClient):
   2010         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   2011         * WebProcess/InjectedBundle/InjectedBundleNavigationAction.cpp: Added.
   2012         (WebKit::mouseEventForNavigationAction):
   2013         (WebKit::mouseButtonForMouseEvent):
   2014         (WebKit::InjectedBundleNavigationAction::modifiersForNavigationAction):
   2015         (WebKit::InjectedBundleNavigationAction::mouseButtonForNavigationAction):
   2016         (WebKit::InjectedBundleNavigationAction::create):
   2017         (WebKit::InjectedBundleNavigationAction::InjectedBundleNavigationAction):
   2018         * WebProcess/InjectedBundle/InjectedBundleNavigationAction.h: Added.
   2019         (WebKit::InjectedBundleNavigationAction::navigationType):
   2020         (WebKit::InjectedBundleNavigationAction::modifiers):
   2021         (WebKit::InjectedBundleNavigationAction::mouseButton):
   2022         (WebKit::InjectedBundleNavigationAction::hitTestResult):
   2023         (WebKit::InjectedBundleNavigationAction::formElement):
   2024         (WebKit::InjectedBundleNavigationAction::type):
   2025         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp: Added.
   2026         (WebKit::InjectedBundlePagePolicyClient::decidePolicyForNavigationAction):
   2027         (WebKit::InjectedBundlePagePolicyClient::decidePolicyForNewWindowAction):
   2028         (WebKit::InjectedBundlePagePolicyClient::decidePolicyForMIMEType):
   2029         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.h: Added.
   2030         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   2031         (WebKit::WebChromeClient::createWindow):
   2032         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   2033         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
   2034         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
   2035         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
   2036         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   2037         * WebProcess/WebPage/WebPage.cpp:
   2038         (WebKit::WebPage::initializeInjectedBundlePolicyClient):
   2039         * WebProcess/WebPage/WebPage.h:
   2040         (WebKit::WebPage::injectedBundlePolicyClient):
   2041         Pipe the policy client through the bundle to allow setting user data.
   2042 
   2043         * WebKit2.pro:
   2044         * WebKit2.xcodeproj/project.pbxproj:
   2045         * win/WebKit2.vcproj:
   2046         * win/WebKit2Generated.make:
   2047         Add new files.
   2048 
   2049 2011-02-08  Anders Carlsson  <andersca (a] apple.com>
   2050 
   2051         Reviewed by Sam Weinig.
   2052 
   2053         Crash calling -setFrame:andScrollBy: in windowDidResize
   2054         https://bugs.webkit.org/show_bug.cgi?id=54030
   2055         <rdar://problem/8969760>
   2056 
   2057         * Platform/mac/SharedMemoryMac.cpp:
   2058         (WebKit::SharedMemory::create):
   2059         Assert that size is not zero here; we never want to try to create shared memory with a zero size.
   2060         
   2061         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   2062         (WebKit::DrawingAreaImpl::setSize):
   2063         Always invalidate the entire visible page when resizing.
   2064 
   2065 2011-02-08  Adam Barth  <abarth (a] webkit.org>
   2066 
   2067         Reviewed by Eric Seidel.
   2068 
   2069         Remove orphan code from old parser
   2070         https://bugs.webkit.org/show_bug.cgi?id=53984
   2071 
   2072         * WebProcess/WebCoreSupport/WebChromeClient.cpp
   2073         * WebProcess/WebCoreSupport/WebChromeClient.h
   2074 
   2075 2011-02-08  Anders Carlsson  <andersca (a] apple.com>
   2076 
   2077         Reviewed by Sam Weinig.
   2078 
   2079         UI process crashes if web process crashes while web inspector is focused
   2080         https://bugs.webkit.org/show_bug.cgi?id=53965
   2081         <rdar://problem/8961633>
   2082 
   2083         Make sure to close the web inspector web page proxy before calling platformClose, since 
   2084         platformClose can cause the web page proxy to try to send messages (such as SetActive) 
   2085         to the web process while it's in a bad state. 
   2086 
   2087         The original fix, http://trac.webkit.org/changeset/77866, put the call to m_page->close() in
   2088         WebInspectorProxy::didClose, which was wrong and lead to crashes. The right place to close the page
   2089         is in WebInspectorProxy::invalidate.
   2090 
   2091         * UIProcess/WebInspectorProxy.cpp:
   2092         (WebKit::WebInspectorProxy::invalidate):
   2093 
   2094 2011-02-08  Jessie Berlin  <jberlin (a] apple.com>
   2095 
   2096         Reviewed by Adam Roben.
   2097 
   2098         ASSERTION FAILURE: ASSERT_NOT_REACHED() in Connection::writeEventHandler() after the Web
   2099         Process crashes.
   2100         https://bugs.webkit.org/show_bug.cgi?id=54005
   2101 
   2102         * Platform/CoreIPC/win/ConnectionWin.cpp:
   2103         (CoreIPC::Connection::writeEventHandler):
   2104         Handle ERROR_BROKEN_PIPE by calling connectionDidClose() and returning early.
   2105 
   2106 2011-02-08  Adam Roben  <aroben (a] apple.com>
   2107 
   2108         Handle WM_TIMER messages for stopped timers
   2109 
   2110         Whenever we stop a timer, we call ::KillTimer to cancel any future firings of the timer. But
   2111         ::KillTimer doesn't do anything about WM_TIMER messages that have already been posted to the
   2112         message queue. We need to handle those, too.
   2113 
   2114         Fixes <http://webkit.org/b/53999> Occasional assertion failures in
   2115         RunLoop::TimerBase::timerFired
   2116 
   2117         Reviewed by Darin Adler.
   2118 
   2119         * Platform/win/RunLoopWin.cpp:
   2120         (RunLoop::TimerBase::timerFired): Just bail if the timer has already been stopped.
   2121 
   2122 2011-02-08  Adam Roben  <aroben (a] apple.com>
   2123 
   2124         Don't mark a Connection as connected until open() is called on Windows
   2125 
   2126         This matches Mac. Even though the Connection's pipe is connected before open() is called,
   2127         the Connection itself isn't really connected to the pipe until then, and we won't actually
   2128         read any data from before that point.
   2129 
   2130         Fixes <http://webkit.org/b/53998> <rdar://problem/8971207> REGRESSION (r77874): Assertion
   2131         failure on launch in Connection::setDidCloseOnConnectionWorkQueueCallback on Windows
   2132 
   2133         Reviewed by Darin Adler.
   2134 
   2135         * Platform/CoreIPC/win/ConnectionWin.cpp:
   2136         (CoreIPC::Connection::platformInitialize): Moved code to set m_isConnected from here to
   2137         open.
   2138         (CoreIPC::Connection::platformInvalidate): Unset m_isConnected, to match Mac. (This isn't
   2139         part of the bug fix, but seemed worthwhile.)
   2140         (CoreIPC::Connection::open): Set m_isConnected now that we're going to listen on the pipe.
   2141 
   2142 2011-02-08  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   2143 
   2144         Unreviewed, rolling out r77866.
   2145         http://trac.webkit.org/changeset/77866
   2146         https://bugs.webkit.org/show_bug.cgi?id=53981
   2147 
   2148         caused all WebKit2 inspector tests to crash (Requested by
   2149         othermaciej on #webkit).
   2150 
   2151         * UIProcess/WebInspectorProxy.cpp:
   2152         (WebKit::WebInspectorProxy::didClose):
   2153 
   2154 2011-02-07  Maciej Stachowiak  <mjs (a] apple.com>
   2155 
   2156         Reviewed by Dan Bernstein.
   2157 
   2158         Add resource load client for injected bundle and move willSendRequest there
   2159         https://bugs.webkit.org/show_bug.cgi?id=53972
   2160 
   2161         * GNUmakefile.am:
   2162         * WebKit2.pro:
   2163         * WebKit2.xcodeproj/project.pbxproj:
   2164         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   2165         (WKBundlePageSetPageLoaderClient):
   2166         (WKBundlePageSetResourceLoadClient):
   2167         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   2168         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   2169         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   2170         * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp: Added.
   2171         (WebKit::InjectedBundlePageResourceLoadClient::didInitiateLoadForResource):
   2172         (WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame):
   2173         (WebKit::InjectedBundlePageResourceLoadClient::didReceiveResponseForResource):
   2174         (WebKit::InjectedBundlePageResourceLoadClient::didReceiveContentLengthForResource):
   2175         (WebKit::InjectedBundlePageResourceLoadClient::didFinishLoadForResource):
   2176         (WebKit::InjectedBundlePageResourceLoadClient::didFailLoadForResource):
   2177         * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.h: Added.
   2178         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   2179         (WebKit::WebFrameLoaderClient::assignIdentifierToInitialRequest):
   2180         (WebKit::WebFrameLoaderClient::dispatchWillSendRequest):
   2181         (WebKit::WebFrameLoaderClient::dispatchDidReceiveResponse):
   2182         (WebKit::WebFrameLoaderClient::dispatchDidReceiveContentLength):
   2183         (WebKit::WebFrameLoaderClient::dispatchDidFinishLoading):
   2184         (WebKit::WebFrameLoaderClient::dispatchDidFailLoading):
   2185         * WebProcess/WebPage/WebPage.cpp:
   2186         (WebKit::WebPage::initializeInjectedBundleResourceLoadClient):
   2187         * WebProcess/WebPage/WebPage.h:
   2188         (WebKit::WebPage::injectedBundleResourceLoadClient):
   2189         * win/WebKit2.vcproj:
   2190 
   2191 2011-02-07  Mark Rowe  <mrowe (a] apple.com>
   2192 
   2193         Fix the 32-bit build.
   2194 
   2195         * UIProcess/cf/WebBackForwardListCF.cpp:
   2196         (WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation): Add some casts
   2197         to prevent warnings about mixing signed and unsigned comparisons.
   2198 
   2199 2011-02-07  Qi Zhang  <qi.2.zhang (a] nokia.com>
   2200 
   2201         Reviewed by Andreas Kling.
   2202 
   2203         [Qt] enum QWebPage::WebAction doesn't have value QWebPage::CopyImageUrl
   2204         https://bugs.webkit.org/show_bug.cgi?id=52974
   2205 
   2206         Add ContextMenuItemTagCopyImageUrlToClipboard into standard action but Qt platform specific.
   2207 
   2208         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   2209         (WebKit::WebPlatformStrategies::contextMenuItemTagCopyImageUrlToClipboard):
   2210         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
   2211 
   2212 2011-02-07  Enrica Casucci  <enrica (a] apple.com>
   2213 
   2214         Reviewed by Sam Weinig.
   2215 
   2216         Fixing a build break on Mac caused by http://trac.webkit.org/changeset/77874
   2217         
   2218         Removed unused static function.
   2219         
   2220         * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
   2221 
   2222 2011-02-07  Anders Carlsson  <andersca (a] apple.com>
   2223 
   2224         Reviewed by Sam Weinig.
   2225 
   2226         <rdar://problem/8969888> 
   2227         The WebProcess should set LSFileQuarantineEnabled to true
   2228 
   2229         * WebProcess/Info.plist:
   2230 
   2231 2011-02-07  Anders Carlsson  <andersca (a] apple.com>
   2232 
   2233         Reviewed by Sam Weinig.
   2234 
   2235         Crash in web process after the connection had been closed
   2236         https://bugs.webkit.org/show_bug.cgi?id=51115
   2237         <rdar://problem/8964255>
   2238 
   2239         Remove didCloseOnConnectionWorkQueue from Connection::Client and add
   2240         Connection::setDidCloseOnConnectionWorkQueueCallback which takes a static
   2241         function, eliminating the race condition in connectionDidClose where m_client could be
   2242         nulled out in the client thread right before we try to dereference it.
   2243 
   2244         * Platform/CoreIPC/Connection.cpp:
   2245         (CoreIPC::Connection::Connection):
   2246         Initialize m_didCloseOnConnectionWorkQueueCallback.
   2247 
   2248         (CoreIPC::Connection::setDidCloseOnConnectionWorkQueueCallback):
   2249         Update m_didCloseOnConnectionWorkQueueCallback.
   2250 
   2251         (CoreIPC::Connection::connectionDidClose):
   2252         Call m_didCloseOnConnectionWorkQueueCallback.
   2253 
   2254         * Platform/WorkQueue.h:
   2255         Make WorkQueue noncopyable.
   2256 
   2257         * PluginProcess/PluginProcess.cpp:
   2258         (WebKit::PluginProcess::initializeConnection):
   2259         Call setDidCloseOnConnectionWorkQueueCallback.
   2260 
   2261         * Shared/ChildProcess.cpp:
   2262         (WebKit::ChildProcess::didCloseOnConnectionWorkQueue):
   2263         * Shared/ChildProcess.h:
   2264         didCloseOnConnectionWorkQueue is now a static member function.
   2265 
   2266         * WebProcess/WebProcess.cpp:
   2267         (WebKit::WebProcess::initialize):
   2268         Call setDidCloseOnConnectionWorkQueueCallback.
   2269 
   2270 2011-02-07  Enrica Casucci  <enrica (a] apple.com>
   2271 
   2272         Reviewed Adam Roben and Darin Adler.
   2273 
   2274         WebKit2: drag and drop support on Windows.
   2275         https://bugs.webkit.org/show_bug.cgi?id=52775
   2276         <rdar://problem/8514409>
   2277         
   2278         This patch contains the remaining work to support
   2279         a WebKit window as drag source on Windows.
   2280         I've added the code to generate the image for dragging a link as
   2281         well as the steps necessary to package the HBITMAP into a SharedMemory
   2282         object and send it over to the UI process where DoDragDrop is performed.
   2283 
   2284         * UIProcess/WebPageProxy.cpp:
   2285         (WebKit::WebPageProxy::setDragImage):
   2286         (WebKit::WebPageProxy::startDragDrop):
   2287         * UIProcess/WebPageProxy.h:
   2288         * UIProcess/WebPageProxy.messages.in:
   2289         * WebProcess/WebCoreSupport/WebDragClient.cpp:
   2290         (WebKit::WebDragClient::startDrag): Made startDrag for
   2291         platforms other than Windows and Mac.
   2292         * WebProcess/WebCoreSupport/WebDragClient.h:
   2293         * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
   2294         (WebKit::WebDragClient::startDrag):
   2295         * WebProcess/WebCoreSupport/win/WebDragClientWin.cpp: Added.
   2296         (WebKit::draggingSourceOperationMaskToDragCursors):
   2297         (WebKit::WebDragClient::startDrag):
   2298         * WebProcess/WebCoreSupport/win/WebDragSource.cpp: Added.
   2299         This object implements the IDropSource interface.
   2300         (WebDragSource::createInstance):
   2301         (WebDragSource::WebDragSource):
   2302         (WebDragSource::QueryInterface):
   2303         (WebDragSource::AddRef):
   2304         (WebDragSource::Release):
   2305         (WebDragSource::QueryContinueDrag):
   2306         (WebDragSource::GiveFeedback):
   2307         * WebProcess/WebCoreSupport/win/WebDragSource.h: Added.
   2308         * win/WebKit2.vcproj:
   2309 
   2310 2011-02-07  Anders Carlsson  <andersca (a] apple.com>
   2311 
   2312         Reviewed by Sam Weinig.
   2313 
   2314         UI process crashes if web process crashes while web inspector is focused
   2315         https://bugs.webkit.org/show_bug.cgi?id=53965
   2316         <rdar://problem/8961633>
   2317 
   2318         Make sure to close the web inspector web page proxy before calling platformClose, since
   2319         platformClose can cause the web page proxy to try to send messages (such as SetActive)
   2320         to the web process while it's in a bad state.
   2321 
   2322         * UIProcess/WebInspectorProxy.cpp:
   2323         (WebKit::WebInspectorProxy::didClose):
   2324 
   2325 2011-02-07  Anders Carlsson  <andersca (a] apple.com>
   2326 
   2327         Reviewed by Darin Adler.
   2328 
   2329         Find bouncy is missing content on pages with framesets
   2330         https://bugs.webkit.org/show_bug.cgi?id=53958
   2331         <rdar://problem/8904447>
   2332 
   2333         Fix paint rect computation; FrameView::paint expects the paint rect to be in the
   2334         parent widget's coordinate system.
   2335 
   2336         * WebProcess/WebPage/FindController.cpp:
   2337         (WebKit::FindController::updateFindIndicator):
   2338 
   2339 2011-02-07  Brady Eidson  <beidson (a] apple.com>
   2340 
   2341         Reviewed by Anders Carlsson.
   2342 
   2343         <rdar://problem/8960434> and https://bugs.webkit.org/show_bug.cgi?id=53957
   2344         Crash after incorrectly restoring bogus session state.
   2345 
   2346         In some cases we're writing an invalid session state for a back/forward list where the current entry is 0
   2347         but the number of entries is also 0.
   2348         In such cases the current entry should be "NoCurrentEntryIndex."
   2349 
   2350         When we later read this state in, we set ourselves up to crash later.
   2351 
   2352         Amusingly an ASSERT caught this, but we should've rejected it before the ASSERT fired.
   2353 
   2354         * UIProcess/cf/WebBackForwardListCF.cpp:
   2355         (WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation): Fail the restore if the "current index past the end
   2356           of the list" case occurs, and speculatively bail out of the case where we have no current index but do have a list.
   2357           Also remove the unhelpful ASSERT.
   2358 
   2359 2011-02-07  Sam Weinig  <sam (a] webkit.org>
   2360 
   2361         Reviewed by Anders Carlsson.
   2362 
   2363         Add bundle API to get the background color of a frame
   2364         <rdar://problem/8962670>
   2365         https://bugs.webkit.org/show_bug.cgi?id=53952
   2366 
   2367         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   2368         (WKBundleFrameGetBodyBackgroundColor):
   2369         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   2370         Add API function.
   2371 
   2372         * WebProcess/WebPage/WebFrame.cpp:
   2373         (WebKit::WebFrame::getDocumentBackgroundColor):
   2374         * WebProcess/WebPage/WebFrame.h:
   2375         Call down into the document to get either the body's, or if there is no body,
   2376         the root element's, background color.
   2377 
   2378 2011-02-07  Sam Weinig  <sam (a] webkit.org>
   2379 
   2380         Fix typo. vectical -> vertical.
   2381 
   2382         * UIProcess/WebPageProxy.cpp:
   2383         (WebKit::WebPageProxy::didChangeScrollbarsForMainFrame):
   2384 
   2385 2011-02-07  Sam Weinig  <sam (a] webkit.org>
   2386 
   2387         Reviewed by Anders Carlsson.
   2388 
   2389         Inform the UIProcess when main frame scrollbars change
   2390         <rdar://problem/8967496>
   2391         https://bugs.webkit.org/show_bug.cgi?id=53941
   2392 
   2393         * UIProcess/API/C/WKPage.cpp:
   2394         (WKPageHasHorizontalScrollbar):
   2395         (WKPageHasVerticalScrollbar):
   2396         * UIProcess/API/C/WKPage.h:
   2397         Add API to query whether the main frame has scrollbars.
   2398 
   2399         * UIProcess/WebPageProxy.cpp:
   2400         (WebKit::WebPageProxy::WebPageProxy):
   2401         (WebKit::WebPageProxy::close):
   2402         (WebKit::WebPageProxy::processDidCrash):
   2403         (WebKit::WebPageProxy::didChangeScrollbarsForMainFrame):
   2404         * UIProcess/WebPageProxy.h:
   2405         (WebKit::WebPageProxy::hasHorizontalScrollbar):
   2406         (WebKit::WebPageProxy::hasVerticalScrollbar):
   2407         Store/update main frame scrollbar state.
   2408 
   2409         * UIProcess/WebPageProxy.messages.in:
   2410         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   2411         (WebKit::WebChromeClient::contentsSizeChanged):
   2412         * WebProcess/WebCoreSupport/WebChromeClient.h:
   2413         (WebKit::WebChromeClient::WebChromeClient):
   2414         Post message when main frame scrollbar state changes.
   2415 
   2416 2011-02-07  Anders Carlsson  <andersca (a] apple.com>
   2417 
   2418         Reviewed by Sam Weinig.
   2419 
   2420         Some content is not covered by Find-on-page overlay
   2421         https://bugs.webkit.org/show_bug.cgi?id=53937
   2422         <rdar://problem/8711353>
   2423 
   2424         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   2425         (WebKit::DrawingAreaImpl::didInstallPageOverlay):
   2426         Call LayerTreeHost::didInstallPageOverlay.
   2427 
   2428         (WebKit::DrawingAreaImpl::didUninstallPageOverlay):
   2429         Call LayerTreeHost::didUninstallPageOverlay.
   2430 
   2431         (WebKit::DrawingAreaImpl::setPageOverlayNeedsDisplay):
   2432         Call LayerTreeHost::setPageOverlayNeedsDisplay.
   2433 
   2434         * WebProcess/WebPage/FindController.cpp:
   2435         (WebKit::FindController::drawRect):
   2436         Remove a bogus assertion.
   2437 
   2438         * WebProcess/WebPage/LayerTreeHost.h:
   2439         Add new pure virtual member functions.
   2440 
   2441         * WebProcess/WebPage/PageOverlay.cpp:
   2442         (WebKit::PageOverlay::setNeedsDisplay):
   2443         Call DrawingArea::setPageOverlayNeedsDisplay.
   2444 
   2445         * WebProcess/WebPage/WebPage.cpp:
   2446         (WebKit::WebPage::installPageOverlay):
   2447         Make sure to call PageOverlay::setNeedsDisplay after the page overlay has been installed.
   2448     
   2449         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
   2450         (WebKit::LayerTreeHostMac::LayerTreeHostMac):
   2451         Create the page overlay layer if needed.
   2452 
   2453         (WebKit::LayerTreeHostMac::setNonCompositedContentsNeedDisplay):
   2454         Invalidate the page overlay layer as well.
   2455 
   2456         (WebKit::LayerTreeHostMac::sizeDidChange):
   2457         Resize the page overlay layer.
   2458 
   2459         (WebKit::LayerTreeHostMac::didInstallPageOverlay):
   2460         Create the page overlay layer.
   2461 
   2462         (WebKit::LayerTreeHostMac::didUninstallPageOverlay):
   2463         Destroy the page overlay layer.
   2464 
   2465         (WebKit::LayerTreeHostMac::setPageOverlayNeedsDisplay):
   2466         Call setNeedsDisplay on the page overlay layer.
   2467 
   2468         (WebKit::LayerTreeHostMac::paintContents):
   2469         Handle painting the page overlay layer.
   2470 
   2471         (WebKit::LayerTreeHostMac::flushPendingLayerChanges):
   2472         Flush the page overlay layer changes as well.
   2473 
   2474         (WebKit::LayerTreeHostMac::createPageOverlayLayer):
   2475         Create a layer and add it as a sublayer of the root layer.
   2476 
   2477         (WebKit::LayerTreeHostMac::destroyPageOverlayLayer):
   2478         Destroy the page overlay layer.
   2479 
   2480 2011-02-06  Adam Roben  <aroben (a] apple.com>
   2481 
   2482         Make it possible to use DrawingAreaProxyImpl on Windows
   2483 
   2484         It can be optionally turned on by setting the WEBKIT2_USE_NEW_DRAWING_AREA environment
   2485         variable. Turning it on by default is covered by <http://webkit.org/b/53805>.
   2486 
   2487         Fixes <http://webkit.org/b/53879>.
   2488 
   2489         Reviewed by Anders Carlsson.
   2490 
   2491         * UIProcess/BackingStore.h: Add an m_bitmap member on Windows.
   2492 
   2493         * UIProcess/win/BackingStoreWin.cpp:
   2494         (WebKit::BitmapDC::operator HDC):
   2495         (WebKit::BitmapDC::BitmapDC):
   2496         (WebKit::BitmapDC::~BitmapDC):
   2497         Added this helper class, which uses RAII to select a bitmap into a new memory DC.
   2498         (WebKit::BackingStore::paint): Wrap our bitmap in a BitmapDC and use ::BitBlt to copy the
   2499         specified rect into the destination DC.
   2500         (WebKit::createBitmap): New helper function, just creates a DIB section with the specified
   2501         size.
   2502         (WebKit::BackingStore::incorporateUpdate): Ported from BackingStoreMac.mm. It seems like
   2503         this code could be shared at some point.
   2504         (WebKit::BackingStore::scroll): Wrap our bitmap in a BitmapDC and use ::ScrollDC to scroll
   2505         the specified rect.
   2506 
   2507         * UIProcess/win/WebView.cpp:
   2508         (WebKit::useNewDrawingArea): Added. Returns true if the WEBKIT2_USE_NEW_DRAWING_AREA
   2509         environment variable is set.
   2510         (WebKit::drawPageBackground): New helper function. Code came from onPaintEvent.
   2511         (WebKit::WebView::onPaintEvent): Ported from -[WKView drawRect:].
   2512         (WebKit::WebView::createDrawingAreaProxy): Create a DrawingAreaProxyImpl if we're using the
   2513         new drawing area.
   2514 
   2515         (WebKit::WebView::enterAcceleratedCompositingMode):
   2516         (WebKit::WebView::exitAcceleratedCompositingMode):
   2517         (WebKit::WebView::pageDidEnterAcceleratedCompositing):
   2518         (WebKit::WebView::pageDidLeaveAcceleratedCompositing):
   2519         Added some assertions to make sure these are only called when expected. We don't expect
   2520         enter/exitAcceleratedCompositingMode to be called at all right now, because accelerated
   2521         compositing is turned off in WebKit2 on Windows.
   2522 
   2523         (WebKit::WebView::switchToDrawingAreaTypeIfNecessary): Ditto, and added a case for the
   2524         DrawingAreaInfo::Impl constant.
   2525 
   2526 2011-02-07  Adam Roben  <aroben (a] apple.com>
   2527 
   2528         Start compiling DrawingArea[Proxy]Impl and dependencies on Windows
   2529 
   2530         Fixes <http://webkit.org/b/53875> WebKit2 on Windows should build DrawingArea[Proxy]Impl
   2531 
   2532         Reviewed by Sam Weinig and Darin Adler.
   2533 
   2534         * Platform/Region.cpp:
   2535         (WebKit::Region::Shape::shapeOperation): Initialize variable to avoid a bogus "potentially
   2536         uninitialized variable" warning.
   2537 
   2538         * UIProcess/BackingStore.cpp: Removed #error for non-Mac platforms.
   2539 
   2540         * UIProcess/BackingStore.h: Added a PlatformGraphicsContext typedef for Windows.
   2541 
   2542         * UIProcess/DrawingAreaProxy.h:
   2543         * UIProcess/DrawingAreaProxyImpl.cpp:
   2544         * UIProcess/WebPageProxy.cpp:
   2545         (WebKit::WebPageProxy::didReceiveMessage):
   2546         Allow Windows to compile the new drawing area code.
   2547 
   2548         * WebProcess/WebPage/DrawingArea.cpp:
   2549         (WebKit::DrawingArea::create): Allow creating a DrawingAreaImpl on Windows, too.
   2550 
   2551         * WebProcess/WebPage/DrawingArea.h:
   2552         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   2553         * WebProcess/WebPage/LayerTreeHost.cpp:
   2554         * WebProcess/WebPage/WebPage.cpp:
   2555         (WebKit::WebPage::didReceiveMessage):
   2556         Allow Windows to compile the new drawing area code.
   2557 
   2558         * Shared/win/LayerTreeContextWin.cpp: Added.
   2559         * UIProcess/win/BackingStoreWin.cpp: Added.
   2560         Stubbed out these files.
   2561 
   2562         * win/WebKit2.vcproj: Added new files.
   2563 
   2564 2011-02-07  Anders Carlsson  <andersca (a] apple.com>
   2565 
   2566         Reviewed by Dan Bernstein.
   2567 
   2568         Rename some drawing area related member functions
   2569         https://bugs.webkit.org/show_bug.cgi?id=53935
   2570 
   2571         * WebProcess/WebPage/DrawingArea.h:
   2572         (WebKit::DrawingArea::setPageOverlayNeedsDisplay):
   2573         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   2574         (WebKit::DrawingAreaImpl::setNeedsDisplay):
   2575         (WebKit::DrawingAreaImpl::setPageOverlayNeedsDisplay):
   2576         * WebProcess/WebPage/DrawingAreaImpl.h:
   2577         * WebProcess/WebPage/LayerTreeHost.h:
   2578         * WebProcess/WebPage/mac/LayerTreeHostMac.h:
   2579         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
   2580         (WebKit::LayerTreeHostMac::setNonCompositedContentsNeedDisplay):
   2581         (WebKit::LayerTreeHostMac::scrollNonCompositedContents):
   2582 
   2583 2011-02-07  Adam Roben  <aroben (a] apple.com>
   2584 
   2585         Use the right calling convention when calling WebKitMain
   2586 
   2587         Fixes <http://webkit.org/b/53923> REGRESSION (r77678): Crash on quit in web process in
   2588         wWinMain
   2589 
   2590         Reviewed by Steve Falkenburg.
   2591 
   2592         * win/MainWin.cpp:
   2593         (wWinMain): Use __cdecl instead of WINAPI (__stdcall) when calling WebKitMain, since that is
   2594         how that function is declared.
   2595 
   2596 2011-02-07  Anders Carlsson  <andersca (a] apple.com>
   2597 
   2598         Reviewed by Dan Bernstein.
   2599 
   2600         The drawing area should be in charge of drawing the page overlay
   2601         https://bugs.webkit.org/show_bug.cgi?id=53927
   2602 
   2603         * WebProcess/WebPage/DrawingArea.h:
   2604         (WebKit::DrawingArea::didInstallPageOverlay):
   2605         (WebKit::DrawingArea::didUninstallPageOverlay):
   2606         (WebKit::DrawingArea::setOverlayNeedsDisplay):
   2607         Add empty stubs.
   2608 
   2609         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   2610         (WebKit::DrawingAreaImpl::didInstallPageOverlay):
   2611         Add empty function. This will eventually ask the layer tree host to
   2612         create a GraphicsLayer for the page overlay.
   2613 
   2614         (WebKit::DrawingAreaImpl::didUninstallPageOverlay):
   2615         Tell the page that it needs to be repainted.
   2616 
   2617         (WebKit::DrawingAreaImpl::setOverlayNeedsDisplay):
   2618         Just call setNeedsDisplay for now.
   2619 
   2620         (WebKit::DrawingAreaImpl::display):
   2621         Paint the page overlay too.
   2622 
   2623         * WebProcess/WebPage/DrawingAreaImpl.h:
   2624         * WebProcess/WebPage/WebPage.cpp:
   2625         (WebKit::WebPage::drawRect):
   2626         Only call drawPageOverlay if we have an old drawing area.
   2627 
   2628         (WebKit::WebPage::drawPageOverlay):
   2629         Draw the page overlay. Code moved here from WebPage::drawRect.
   2630 
   2631         (WebKit::WebPage::installPageOverlay):
   2632         Call DrawingArea::installPageOverlay.
   2633 
   2634         (WebKit::WebPage::uninstallPageOverlay):
   2635         Call DrawingArea::uninstallPageOverlay.
   2636 
   2637         * WebProcess/WebPage/WebPage.h:
   2638         (WebKit::WebPage::hasPageOverlay):
   2639         Add getter.
   2640 
   2641 2011-02-07  Anders Carlsson  <andersca (a] apple.com>
   2642 
   2643         Reviewed by Sam Weinig.
   2644 
   2645         Add WebPage::bounds and use it
   2646         https://bugs.webkit.org/show_bug.cgi?id=53926
   2647 
   2648         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   2649         (WebKit::ChunkedUpdateDrawingArea::resumePainting):
   2650         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   2651         (WebKit::DrawingAreaImpl::resumePainting):
   2652         (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):
   2653         * WebProcess/WebPage/WebPage.h:
   2654         (WebKit::WebPage::bounds):
   2655 
   2656 2011-02-07  Anders Carlsson  <andersca (a] apple.com>
   2657 
   2658         Reviewed by Maciej Stachowiak.
   2659 
   2660         Don't exclude overlay scrollers from the page overlay bounds
   2661         https://bugs.webkit.org/show_bug.cgi?id=53924
   2662 
   2663         Don't subtract the scrollbars from the page overlay bounds if
   2664         overlay scrollers are enabled.
   2665 
   2666         * WebProcess/WebPage/PageOverlay.cpp:
   2667         (WebKit::PageOverlay::bounds):
   2668 
   2669 2011-02-07  Adam Roben  <aroben (a] apple.com>
   2670 
   2671         Windows build fix after r77794
   2672 
   2673         * win/WebKit2.def: Export WebCore symbols used by WebKitTestRunner.
   2674 
   2675 2011-02-07  Maciej Stachowiak  <mjs (a] apple.com>
   2676 
   2677         Reviewed by Antti Koivisto.
   2678 
   2679         Add WKURLRequestCopyURL API (needed for tests and also generally useful)
   2680         https://bugs.webkit.org/show_bug.cgi?id=53909
   2681 
   2682         * Shared/API/c/WKURLRequest.cpp:
   2683         (WKURLRequestCopyURL):
   2684         * Shared/API/c/WKURLRequest.h:
   2685         * Shared/WebURLRequest.h:
   2686         (WebKit::WebURLRequest::url):
   2687 
   2688 2011-02-06  Ryosuke Niwa  <rniwa (a] webkit.org>
   2689 
   2690         Unreviewed; speculative Qt build fix.
   2691 
   2692         * WebKit2.pro:
   2693 
   2694 2011-02-06  Ryosuke Niwa  <rniwa (a] webkit.org>
   2695 
   2696         Reviewed by Darin Adler.
   2697 
   2698         OwnArraryPtr.h uses deleteOwnedPtr but doesnt include OwnPtrCommon.h
   2699         https://bugs.webkit.org/show_bug.cgi?id=52867
   2700 
   2701         * Shared/Plugins/Netscape/win/NetscapePluginModuleWin.cpp:
   2702         (WebKit::NetscapePluginModule::getPluginInfo): Calls adoptArrayPtr.
   2703 
   2704 2011-02-06  Benjamin Poulain  <ikipou (a] gmail.com>
   2705 
   2706         Reviewed by Andreas Kling.
   2707 
   2708         [Qt] WebKit does not build on Mac with WebKit 2
   2709         https://bugs.webkit.org/show_bug.cgi?id=53380
   2710 
   2711         * Platform/CoreIPC/qt/ConnectionQt.cpp: Use fcntl() to set close on exec so
   2712         we do not rely on recent kernel.
   2713         (CoreIPC::Connection::readyReadHandler):
   2714         * Platform/qt/SharedMemoryQt.cpp: ditto
   2715         (WebKit::SharedMemory::create):
   2716         (WebKit::SharedMemory::createHandle):
   2717         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp: Guard prctl() since it is
   2718         a Linux specific function.
   2719         (WebKit::QtWebProcess::setupChildProcess):
   2720         * UIProcess/DrawingAreaProxy.h: Differentiate between building on Mac
   2721         and the Mac port.
   2722         * UIProcess/DrawingAreaProxyImpl.cpp: ditto
   2723         * UIProcess/WebPageProxy.cpp: ditto
   2724         (WebKit::WebPageProxy::didReceiveMessage):
   2725         * WebProcess/WebPage/DrawingArea.cpp: ditto
   2726         (WebKit::DrawingArea::create):
   2727         * WebProcess/WebPage/DrawingArea.h:
   2728         * WebProcess/WebPage/DrawingAreaImpl.cpp: ditto
   2729         * WebProcess/WebPage/WebPage.cpp: ditto
   2730         (WebKit::WebPage::didReceiveMessage):
   2731 
   2732 2011-02-05  Maciej Stachowiak  <mjs (a] apple.com>
   2733 
   2734         Reviewed by Dan Bernstein.
   2735 
   2736         REGRESSION: New drawing area is causing some WebProcess crashes in layout tests
   2737         https://bugs.webkit.org/show_bug.cgi?id=53865
   2738         <rdar://problem/8963148>
   2739         
   2740         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   2741         (WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode): Handle the case
   2742         where this is called repeatedly without exiting accelerated composting mode
   2743         first.
   2744         (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): Handle the case
   2745         of being called more than once.
   2746 
   2747 2011-02-05  Anders Carlsson  <andersca (a] apple.com>
   2748 
   2749         Reviewed by Darin Adler.
   2750 
   2751         Need a way to resize and scroll the page at the same time
   2752         https://bugs.webkit.org/show_bug.cgi?id=53814
   2753         <rdar://problem/8498008>
   2754 
   2755         Add -[WKView setFrame:andScrollBy:].
   2756 
   2757         * UIProcess/API/mac/WKView.h:
   2758         * UIProcess/API/mac/WKView.mm:
   2759         (-[WKView setFrame:andScrollBy:]):
   2760         Stash away the scroll offset and call setFrame:.
   2761 
   2762         (-[WKView _switchToDrawingAreaTypeIfNecessary:DrawingAreaInfo::]):
   2763         (-[WKView _setDrawingAreaSize:]):
   2764         * UIProcess/API/qt/qwkpage.cpp:
   2765         (QWKPage::setViewportSize):
   2766         DrawingAreaProxy::setSize now takes a scroll offset.
   2767 
   2768         * UIProcess/DrawingAreaProxy.cpp:
   2769         (WebKit::DrawingAreaProxy::setSize):
   2770         This now takes a scroll offset and stores it in m_scrollOffset.
   2771 
   2772         * UIProcess/DrawingAreaProxy.h:
   2773         * UIProcess/DrawingAreaProxyImpl.cpp:
   2774         (WebKit::DrawingAreaProxyImpl::sendSetSize):
   2775         Send along the scroll offset and set it back to zero.
   2776 
   2777         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   2778         (WebKit::LayerBackedDrawingAreaProxy::didSetSize):
   2779         * UIProcess/TiledDrawingAreaProxy.cpp:
   2780         (WebKit::TiledDrawingAreaProxy::didSetSize):
   2781         * UIProcess/win/WebView.cpp:
   2782         (WebKit::WebView::onSizeEvent):
   2783         (WebKit::WebView::switchToDrawingAreaTypeIfNecessary):
   2784         DrawingAreaProxy::setSize now takes a scroll offset.
   2785         
   2786         * WebProcess/WebPage/DrawingArea.h:
   2787         (WebKit::DrawingArea::setSize):
   2788         Add a scrollOffset parameter.
   2789 
   2790         * WebProcess/WebPage/DrawingArea.messages.in:
   2791         Add a scroll offset parameter to the SetSize message.
   2792 
   2793         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   2794         (WebKit::DrawingAreaImpl::setSize):
   2795         Call WebPage::scrollMainFrameIfNotAtMaxScrollPosition.
   2796 
   2797         * WebProcess/WebPage/DrawingAreaImpl.h:
   2798         * WebProcess/WebPage/WebPage.cpp:
   2799         (WebKit::WebPage::scrollMainFrameIfNotAtMaxScrollPosition):
   2800         Compute a scroll offset and call setScrollPosition on the main frame view.
   2801 
   2802 2011-02-04  Brian Weinstein  <bweinstein (a] apple.com>
   2803 
   2804         Reviewed by Maciej Stachowiak.
   2805 
   2806         WebKit2: Crash when InjectedBundlePageLoaderClient::willSendRequestForFrame returns a null WKURLRequestRef
   2807         https://bugs.webkit.org/show_bug.cgi?id=53829
   2808         
   2809         Store the result of m_client.willSendRequestForFrame in a RefPtr, and null check it before
   2810         calling resourceRequest() on it.
   2811 
   2812         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   2813         (WebKit::InjectedBundlePageLoaderClient::willSendRequestForFrame):
   2814 
   2815 2011-02-04  Anders Carlsson  <andersca (a] apple.com>
   2816 
   2817         Fix build.
   2818 
   2819         * WebProcess/mac/WebProcessMac.mm:
   2820 
   2821 2011-02-04  Anders Carlsson  <andersca (a] apple.com>
   2822 
   2823         Reviewed by Mark Rowe.
   2824 
   2825         Link opened in background tab fails to paint when activated if it completes loading before tab is selected
   2826         https://bugs.webkit.org/show_bug.cgi?id=53827
   2827         <rdar://problem/8962355>
   2828 
   2829         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   2830         (WebKit::DrawingAreaImpl::resumePainting):
   2831         Invalidate the entire page.
   2832 
   2833 2011-02-04  Anders Carlsson  <andersca (a] apple.com>
   2834 
   2835         Reviewed by Sam Weinig.
   2836 
   2837         Fix <rdar://problem/8961227> WebKit2 does not work with symlinked home directories.
   2838 
   2839         * WebProcess/mac/WebProcessMac.mm:
   2840         (WebKit::WebProcess::platformSetCacheModel):
   2841         Don't adopt an autoreleased pointer, this would lead to a crash.
   2842 
   2843         (WebKit::appendSandboxParameterPath):
   2844         (WebKit::appendSandboxParameterConfPath):
   2845         (WebKit::initializeSandbox):
   2846         Clean up the sandbox parameter code and make sure that realpath is called for all parameters.
   2847 
   2848 2011-02-04  Sam Weinig  <sam (a] webkit.org>
   2849 
   2850         Reviewed by Mark Rowe.
   2851 
   2852         Sandbox violations when visiting a site using HTTP authentication
   2853         <rdar://problem/8951079> 
   2854 
   2855         * WebProcess/com.apple.WebProcess.sb:
   2856 
   2857 2011-02-04  Alexey Proskuryakov  <ap (a] apple.com>
   2858 
   2859         Reviewed by Darin Adler.
   2860 
   2861         https://bugs.webkit.org/show_bug.cgi?id=53823
   2862         Print layout sometimes seen on screen
   2863 
   2864         <rdar://problem/8948742> REGRESSION (WebKit2) - When I print a page, I visually see it re-layout
   2865         <rdar://problem/8899389> REGRESSION(WebKit2): Wrong content can appear when print dialog is up
   2866 
   2867         * UIProcess/API/mac/PageClientImpl.mm: (WebKit::PageClientImpl::setAutodisplay): Removed a
   2868         branch that didn't do anything useful.
   2869 
   2870         * UIProcess/API/mac/WKPrintingView.h:
   2871         * UIProcess/API/mac/WKPrintingView.mm:
   2872         (-[WKPrintingView _suspendAutodisplay]):
   2873         (-[WKPrintingView _delayedResumeAutodisplayTimerFired]):
   2874         (-[WKPrintingView _delayedResumeAutodisplay]):
   2875         (-[WKPrintingView knowsPageRange:]):
   2876         (-[WKPrintingView beginDocument]):
   2877         (-[WKPrintingView endDocument]):
   2878         When page setup changes, or when going from print preview to actual printing, AppKit calls
   2879         -endDocument just to begin it again. Delay resuming autodisplay until the next run loop
   2880         iteration.
   2881 
   2882         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   2883         (WebKit::WebChromeClient::invalidateContentsAndWindow):
   2884         (WebKit::WebChromeClient::invalidateContentsForSlowScroll):
   2885         Tightened it up from other side - we should never send pixels to UI process while in
   2886         printing mode. This is not 100% reliable, because relayout doesn't happen immediately,
   2887         and we can still have print layout in screen mode - but it helps.
   2888 
   2889 2011-02-04  Sam Weinig  <sam (a] webkit.org>
   2890 
   2891         Reviewed by Mark Rowe.
   2892 
   2893         Fix for <rdar://problem/8961580>.
   2894         Work around for <rdar://problem/8957845>.
   2895 
   2896         * WebProcess/com.apple.WebProcess.sb:
   2897 
   2898 2011-02-04  Darin Adler  <darin (a] apple.com>
   2899 
   2900         Reviewed by Dan Bernstein.
   2901 
   2902         WebKit2 doesn't hide mouse pointer on keypress
   2903         https://bugs.webkit.org/show_bug.cgi?id=53821
   2904         rdar://problem/8630895
   2905 
   2906         * UIProcess/PageClient.h: Renamed didNotHandleKeyEvent to
   2907         doneWithKeyEvent and added a bool wasEventHandled argument.
   2908         * UIProcess/WebPageProxy.cpp:
   2909         (WebKit::WebPageProxy::didReceiveEvent): Changed code to call
   2910         doneWithKeyEvent and call even if event was handled.
   2911 
   2912         * UIProcess/API/mac/PageClientImpl.h: Updated for above change.
   2913         * UIProcess/API/mac/PageClientImpl.mm:
   2914         (WebKit::PageClientImpl::doneWithKeyEvent): Ditto. But also
   2915         call [NSCursor setHiddenUntilMouseMoves:YES] when a key down
   2916         event was handled. This matches what -[WebHTMLView keyDown:] does.
   2917         * UIProcess/API/qt/qwkpage.cpp:
   2918         (QWKPagePrivate::doneWithKeyEvent): Ditto.
   2919         * UIProcess/API/qt/qwkpage_p.h: Ditto.
   2920         * UIProcess/win/WebView.cpp:
   2921         (WebKit::WebView::doneWithKeyEvent): Ditto.
   2922         * UIProcess/win/WebView.h: Ditto.
   2923 
   2924 2011-02-04  Steve Falkenburg  <sfalken (a] apple.com>
   2925 
   2926         Reviewed by Adam Roben.
   2927 
   2928         WebKit2 clients fail to launch on Windows if client exe is in a different directory from WebKit
   2929         https://bugs.webkit.org/show_bug.cgi?id=53810
   2930         <rdar://problem/8946085>
   2931         
   2932         If WebKit2WebProcess.exe is in a different directory from the client process, and that
   2933         client process uses CreateProcess to launch WebKit2WebProcess, the DLL search path may
   2934         end up excluding the directory containing WebKit. To address this, we use SetDllDirectory
   2935         to explicitly include the WebKit directory in the DLL search path.
   2936 
   2937         * win/MainWin.cpp:
   2938         (wWinMain): Use SetDllDirectory and LoadLibrary to load WebKit.dll from WebKit2WebProcess.exe
   2939         * win/WebKit2WebProcessCommon.vsprops: Don't link directly to WebKit. Link against shlwapi.
   2940 
   2941 2011-02-04  Adam Roben  <aroben (a] apple.com>
   2942 
   2943         Allow passing a null filter callback to WKPageCopySessionState
   2944 
   2945         WebKit2 part of <http://webkit.org/b/53616> <rdar://problem/8949883>.
   2946 
   2947         Reviewed by Sam Weinig.
   2948 
   2949         * UIProcess/cf/WebBackForwardListCF.cpp:
   2950         (WebKit::WebBackForwardList::createCFDictionaryRepresentation): Check if the filter is null
   2951         before calling it.
   2952 
   2953 2011-02-04  Brian Weinstein  <bweinstein (a] apple.com>
   2954 
   2955         Reviewed by John Sullivan.
   2956 
   2957         WebKit2: DidInitiateLoadForResource needs to know if the resource is being loaded by a committed or provisional frame
   2958         https://bugs.webkit.org/show_bug.cgi?id=53794
   2959         
   2960         When we navigate from one page to another, there can be multiple subresource requests between when
   2961         the new page has started its provisional load and when it has committed the load.
   2962         
   2963         There can be:
   2964         
   2965         - The main resource load of the provisional page
   2966         - Synchronous XHR from the unload event of the loaded page.
   2967         
   2968         WebKit clients need to be able to differentiate between these loads.
   2969 
   2970         * UIProcess/API/C/WKPage.h:
   2971         * UIProcess/WebPageProxy.cpp:
   2972         (WebKit::WebPageProxy::didInitiateLoadForResource): Pass whether or not the page is provisionally loading
   2973             to the client.
   2974         * UIProcess/WebPageProxy.h:
   2975         * UIProcess/WebPageProxy.messages.in: Add a new parameter to DidInitiateLoadForResource.
   2976         * UIProcess/WebResourceLoadClient.cpp:
   2977         (WebKit::WebResourceLoadClient::didInitiateLoadForResource):  a new parameter to didInitiateLoadForResource.
   2978         * UIProcess/WebResourceLoadClient.h:
   2979         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   2980         (WebKit::WebFrameLoaderClient::assignIdentifierToInitialRequest): Pass whether or not the page is currently
   2981             in a provisional load (checked by seeing if the DocumentLoader matches the FrameLoader's provisionalDocumentLoader)
   2982             to the UI Process.
   2983 
   2984 2011-02-04  Anders Carlsson  <andersca (a] apple.com>
   2985 
   2986         Reviewed by Mark Rowe.
   2987 
   2988         Mac WebKit2 should use the new drawing area
   2989         https://bugs.webkit.org/show_bug.cgi?id=53802
   2990         <rdar://problem/7881419>
   2991         <rdar://problem/7881447>
   2992         <rdar://problem/8252632>
   2993         <rdar://problem/8479422>
   2994         <rdar://problem/8633813>
   2995         <rdar://problem/8734512>
   2996         <rdar://problem/8787660>
   2997 
   2998         * UIProcess/API/mac/WKView.mm:
   2999         (useNewDrawingArea):
   3000         Return true. Eventually this function should be removed, but let's keep it for now so
   3001         we can go back to the old drawing area if necessary.
   3002 
   3003 2011-02-04  Maciej Stachowiak  <mjs (a] apple.com>
   3004 
   3005         Reviewed by Anders Carlsson.
   3006 
   3007         WebKit2: Crash in WebPageProxy::setPendingAPIRequestURL after web process crashed
   3008         https://bugs.webkit.org/show_bug.cgi?id=53799
   3009         <rdar://problem/8943956>
   3010 
   3011         * UIProcess/WebPageProxy.cpp:
   3012         (WebKit::WebPageProxy::reload):
   3013 
   3014 2011-02-04  Anders Carlsson  <andersca (a] apple.com>
   3015 
   3016         Reviewed by Maciej Stachowiak.
   3017 
   3018         Fix a shared memory leak
   3019         https://bugs.webkit.org/show_bug.cgi?id=53800
   3020 
   3021         Move the send right representing the shared memory.
   3022 
   3023         * Platform/mac/SharedMemoryMac.cpp:
   3024         (WebKit::SharedMemory::Handle::encode):
   3025 
   3026 2011-02-04  Brady Eidson  <beidson (a] apple.com>
   3027 
   3028         Reviewed by Anders Carlsson.
   3029 
   3030         <rdar://problem/8636239> and https://bugs.webkit.org/show_bug.cgi?id=53785
   3031         WebKit2: Pages with dynamically inserted iframes can add extraneous back/forward items.
   3032 
   3033         WebCore doesn't gracefully handle the case where the decidePolicyForNavigationAction callback
   3034         does not occur synchronously. Let's make it synchronous.
   3035 
   3036         Change WebPageProxy to handle this message reply synchronously:
   3037         * UIProcess/WebPageProxy.cpp:
   3038         (WebKit::WebPageProxy::WebPageProxy):
   3039         (WebKit::WebPageProxy::receivedPolicyDecision):
   3040         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
   3041         * UIProcess/WebPageProxy.h:
   3042         * UIProcess/WebPageProxy.messages.in: Make the navigation policy action message be synchronous.
   3043 
   3044         * Platform/CoreIPC/HandleMessage.h:
   3045         (CoreIPC::callMemberFunction): Add a 6-argument varient 
   3046 
   3047         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   3048         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): Send the message synchronously.
   3049 
   3050 2011-02-04  Steve Falkenburg  <sfalken (a] apple.com>
   3051 
   3052         Windows build fix.
   3053         Correct prebuild build-stopping rule to allow project only rebuilds.
   3054 
   3055         * win/WebKit2WebProcessPreBuild.cmd:
   3056 
   3057 2011-02-04  Brian Weinstein  <bweinstein (a] apple.com>
   3058 
   3059         Reviewed by Adam Roben.
   3060 
   3061         Assertion failure in WebInspectorProxy::platformClose closing main window when inspecting a popup 
   3062         window, or when running regression tests.
   3063         https://bugs.webkit.org/show_bug.cgi?id=53798
   3064         <rdar://problem/8814364>
   3065         
   3066         Only assert about the state of m_inspectorWindow and m_inspectorView if the inspector is visible.
   3067         Also, only call ::DestroyWindow if the HWND is non-null, just to be safe.
   3068 
   3069         * UIProcess/win/WebInspectorProxyWin.cpp:
   3070         (WebKit::WebInspectorProxy::platformClose):
   3071 
   3072 2011-02-04  Anders Carlsson  <andersca (a] apple.com>
   3073 
   3074         Reviewed by Dan Bernstein.
   3075 
   3076         Go out of accelerated compositing mode when the drawing area is destroyed
   3077         https://bugs.webkit.org/show_bug.cgi?id=53788
   3078 
   3079         This fixes a crash in the UI process if a web process crashes while in accelerated compositing mode.
   3080 
   3081         * UIProcess/DrawingAreaProxyImpl.cpp:
   3082         (WebKit::DrawingAreaProxyImpl::~DrawingAreaProxyImpl):
   3083 
   3084 2011-02-03  Yury Semikhatsky  <yurys (a] chromium.org>
   3085 
   3086         Reviewed by Pavel Feldman.
   3087 
   3088         Web Inspector: remove settings related methods from InspectorClient
   3089         https://bugs.webkit.org/show_bug.cgi?id=53686
   3090 
   3091         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
   3092         (WebKit::WebInspectorFrontendClient::WebInspectorFrontendClient):
   3093 
   3094 2011-02-03  Maciej Stachowiak  <mjs (a] apple.com>
   3095 
   3096         Reviewed by Dan Bernstein.
   3097 
   3098         WebKit2: Need WebKit2 equivalent of WebResourceLoadDelegate::willSendRequest in the Bundle
   3099         https://bugs.webkit.org/show_bug.cgi?id=52897
   3100         <rdar://problem/8898294>
   3101 
   3102         * Shared/API/c/WKSharedAPICast.h:
   3103         (WebKit::toAPI):
   3104         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   3105         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   3106         (WebKit::InjectedBundlePageLoaderClient::willSendRequestForFrame):
   3107         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   3108         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   3109         (WebKit::WebFrameLoaderClient::dispatchWillSendRequest):
   3110 
   3111 2011-02-03  Ivan Krsti  <ike (a] apple.com>
   3112 
   3113         Reviewed by Maciej Stachowiak.
   3114 
   3115         Make WebProcess pass explicit homedir parameter to the sandbox
   3116         <rdar://problem/8405760>
   3117         <https://webkit.org/b/53558>
   3118 
   3119         * WebProcess/com.apple.WebProcess.sb:
   3120         * WebProcess/mac/WebProcessMac.mm:
   3121         (WebKit::initializeSandbox):
   3122 
   3123 2011-02-03  James Kozianski  <koz (a] chromium.org>
   3124 
   3125         Reviewed by Dimitri Glazkov.
   3126 
   3127         Add navigator.registerProtocolHandler behind a flag.
   3128         https://bugs.webkit.org/show_bug.cgi?id=52609
   3129 
   3130         * Configurations/FeatureDefines.xcconfig:
   3131 
   3132 2011-02-03  Adam Langley  <agl (a] chromium.org>
   3133 
   3134         Reviewed by Adam Barth.
   3135 
   3136         Plumb mixed script URL to FrameLoaderClient
   3137         https://bugs.webkit.org/show_bug.cgi?id=52384
   3138 
   3139         Regressions covered by http/tests/security/mixedContent/*
   3140 
   3141         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   3142         (WebKit::WebFrameLoaderClient::didRunInsecureContent):
   3143         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   3144 
   3145 2011-02-03  Jon Honeycutt  <jhoneycutt (a] apple.com>
   3146 
   3147         Download bundles should be moved to their final destination when they
   3148         finish.
   3149 
   3150         https://bugs.webkit.org/show_bug.cgi?id=53668
   3151 
   3152         Reviewed by Adam Roben.
   3153 
   3154         * WebProcess/Downloads/Download.cpp:
   3155         (WebKit::Download::Download):
   3156         Initialize m_allowOverwrite.
   3157         (WebKit::Download::retrieveDestinationWithSuggestedFilename):
   3158         Return the result of requesting the destination filename from the UI
   3159         process.
   3160         (WebKit::Download::decideDestinationWithSuggestedFilename):
   3161         Call retrieveDestinationWithSuggestedFilename().
   3162         (WebKit::Download::didFinish):
   3163         Call platformDidFinish().
   3164 
   3165         * WebProcess/Downloads/Download.h:
   3166         Declare retrieveDestinationWithSuggestedFilename() and
   3167         platformDidFinish(). Add a member variable to store whether the UI
   3168         process would like us to overwrite existing files.
   3169 
   3170         * WebProcess/Downloads/cf/DownloadCFNet.cpp:
   3171         (WebKit::willResumeWithResponseCallback):
   3172         Remove some trailing whitespace.
   3173 
   3174         * WebProcess/Downloads/curl/DownloadCurl.cpp:
   3175         (WebKit::Download::platformDidFinish):
   3176         Stubbed.
   3177 
   3178         * WebProcess/Downloads/mac/DownloadMac.mm:
   3179         (WebKit::Download::platformDidFinish):
   3180         Stubbed.
   3181 
   3182         * WebProcess/Downloads/qt/DownloadQt.cpp:
   3183         (WebKit::Download::platformDidFinish):
   3184         Stubbed.
   3185 
   3186         * WebProcess/Downloads/cf/win/DownloadCFNetWin.cpp:
   3187         (WebKit::Download::didDecideDestination):
   3188         Store whether the UI process would like us to overwrite existing files.
   3189         (WebKit::Download::platformDidFinish):
   3190         Try to move the bundle to the final destination. If that fails, ask the
   3191         UI process for a new destination. If we receive one, try again to move
   3192         the bundle. Call didCreateDestination() to report the updated path of
   3193         file whether it's the bundle that we failed to move, or the new final
   3194         destination.
   3195 
   3196         This is similar to what is done by WebKit 1's CFNetwork port.
   3197 
   3198         * win/WebKit2.vcproj:
   3199         Add DownloadWin.cpp.
   3200 
   3201 2011-02-01  Jon Honeycutt  <jhoneycutt (a] apple.com>
   3202 
   3203         Small clean-up in DownloadCFNet.cpp.
   3204 
   3205         Rubber-stamped by Mark Rowe.
   3206 
   3207         * WebProcess/Downloads/cf/DownloadCFNet.cpp:
   3208         (WebKit::Download::didDecideDestination):
   3209         Moved out of the section labeled "CFURLDownload callbacks" and up near
   3210         the other member functions.
   3211 
   3212 2011-02-03  Anders Carlsson  <andersca (a] apple.com>
   3213 
   3214         Reviewed by Sam Weinig.
   3215 
   3216         Paint non-composited contents in a layer
   3217         https://bugs.webkit.org/show_bug.cgi?id=53742
   3218 
   3219         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   3220         (WebKit::DrawingAreaImpl::setNeedsDisplay):
   3221         Call LayerTreeHost::setNonCompositedContentsNeedDisplayInRect.
   3222 
   3223         (WebKit::DrawingAreaImpl::scroll):
   3224         Call LayerTreeHost::scrollNonCompositedContents.
   3225 
   3226         (WebKit::DrawingAreaImpl::setSize):
   3227         Call LayerTreeHost::sizeDidChange.
   3228 
   3229         * WebProcess/WebPage/LayerTreeHost.h:
   3230         Add new pure virtual member functions.
   3231 
   3232         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
   3233         (WebKit::LayerTreeHostMac::LayerTreeHostMac):
   3234         Create the non-composited content layer.
   3235 
   3236         (WebKit::LayerTreeHostMac::setNonCompositedContentsNeedDisplayInRect):
   3237         Call setNeedsDisplay on the GraphicsLayer.
   3238 
   3239         (WebKit::LayerTreeHostMac::scrollNonCompositedContents):
   3240         Just call setNonCompositedContentsNeedDisplayInRect.
   3241 
   3242         (WebKit::LayerTreeHostMac::sizeDidChange):
   3243         Resize the layers and flush any changes.
   3244         
   3245         (WebKit::LayerTreeHostMac::paintContents):
   3246         Call WebPage::drawRect.
   3247 
   3248         (WebKit::LayerTreeHostMac::flushPendingLayerChangesRunLoopObserverCallback):
   3249         Lay out the web page.
   3250 
   3251         (WebKit::LayerTreeHostMac::flushPendingLayerChanges):
   3252         Call syncCompositingStateForThisLayerOnly on the non-composited content layer.
   3253 
   3254 2011-02-03  Anders Carlsson  <andersca (a] apple.com>
   3255 
   3256         Reviewed by Sam Weinig.
   3257 
   3258         When in accelerated compositing mode, wait for DidSetSize messages
   3259         https://bugs.webkit.org/show_bug.cgi?id=53736
   3260 
   3261         Normally we wait for DidSetSize messages from ::paint, but that's never called in 
   3262         accelerated compositing mode so we just do it right after sending the SetSize message.
   3263 
   3264         * UIProcess/DrawingAreaProxyImpl.cpp:
   3265         (WebKit::DrawingAreaProxyImpl::paint):
   3266         Call waitForAndDispatchDidSetSize.
   3267 
   3268         (WebKit::DrawingAreaProxyImpl::sendSetSize):
   3269         Call waitForAndDispatchDidSetSize when in accelerated compositing mode.
   3270 
   3271         (WebKit::DrawingAreaProxyImpl::waitForAndDispatchDidSetSize):
   3272         New utility function which waits for and dispatches a DidSetSize message.
   3273 
   3274         * UIProcess/DrawingAreaProxyImpl.h:
   3275 
   3276 2011-02-03  Anders Carlsson  <andersca (a] apple.com>
   3277 
   3278         Reviewed by Dan Bernstein.
   3279 
   3280         Pass along an UpdateInfo object to the ExitAcceleratedCompositingMode message
   3281         https://bugs.webkit.org/show_bug.cgi?id=53734
   3282 
   3283         * UIProcess/DrawingAreaProxy.h:
   3284         (WebKit::DrawingAreaProxy::exitAcceleratedCompositingMode):
   3285         Add an UpdateInfo parameter.
   3286 
   3287         * UIProcess/DrawingAreaProxy.messages.in:
   3288         Add an UpdateInfo parameter to the ExitAcceleratedCompositingMode message.
   3289 
   3290         * UIProcess/DrawingAreaProxyImpl.cpp:
   3291         (WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode):
   3292         Incorporate the passed in update.
   3293 
   3294         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   3295         (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):
   3296         Create a new UpdateInfo object, paint into it and pass it along as a parameter
   3297         to the ExitAcceleratedCompositingMode message.
   3298 
   3299 2011-02-03  Beth Dakin  <bdakin (a] apple.com>
   3300 
   3301         Reviewed by Sam Weinig.
   3302 
   3303         Fix for <rdar://problem/8944544> Ability to animate track
   3304         for WKPainter scrollers
   3305 
   3306         * WebCoreSupport/WebSystemInterface.mm:
   3307         (InitWebCoreSystemInterface):
   3308 
   3309 2011-02-03  Anders Carlsson  <andersca (a] apple.com>
   3310 
   3311         Reviewed by Dan Bernstein.
   3312 
   3313         Change DidSetSize to take a LayerTreeContext parameter
   3314         https://bugs.webkit.org/show_bug.cgi?id=53724
   3315 
   3316         Since SetSize can cause layout to happen, we need to pass along a layer tree context to 
   3317         the DidSetSize message so the UI process can enter/exit accelerated compositing mode appropriately.
   3318         
   3319         * Shared/LayerTreeContext.h:
   3320         * Shared/mac/LayerTreeContextMac.mm:
   3321         Add equality operators to LayerTreeContext.
   3322 
   3323         * UIProcess/DrawingAreaProxy.h:
   3324         (WebKit::DrawingAreaProxy::didSetSize):
   3325         This now takes a LayerTreeContext parameter.
   3326         
   3327         * UIProcess/DrawingAreaProxy.messages.in:
   3328         Add LayerTreeContext parameter.
   3329 
   3330         * UIProcess/DrawingAreaProxyImpl.cpp:
   3331         Get rid of m_isInAcceleratedCompositingMode and use the current layer context instead.
   3332 
   3333         (WebKit::DrawingAreaProxyImpl::paint):
   3334         Bail if the call to DidSetSize ended up entering accelerated compositing mode.
   3335 
   3336         (WebKit::DrawingAreaProxyImpl::didSetSize):
   3337         If the new layer tree context is different, enter/exit accelerated compositing mode accordingly.
   3338 
   3339         (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
   3340         (WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode):
   3341         Update the layer tree context.
   3342 
   3343         * UIProcess/DrawingAreaProxyImpl.h:
   3344         (WebKit::DrawingAreaProxyImpl::isInAcceleratedCompositingMode):
   3345         Add simple getter.
   3346 
   3347         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   3348         (WebKit::DrawingAreaImpl::setSize):
   3349         Pass along the layer tree context.
   3350 
   3351 2011-02-03  Anders Carlsson  <andersca (a] apple.com>
   3352 
   3353         Reviewed by Dan Bernstein.
   3354 
   3355         Get rid of LayerTreeContext::seed on Mac.
   3356         Add sequence checks to enterAcceleratedCompositingMode and exitAcceleratedCompositingMode and
   3357         have them call newly added overloads that don't have the checks.
   3358 
   3359         * Shared/LayerTreeContext.h:
   3360         * Shared/mac/LayerTreeContextMac.mm:
   3361         (WebKit::LayerTreeContext::LayerTreeContext):
   3362         (WebKit::LayerTreeContext::encode):
   3363         (WebKit::LayerTreeContext::decode):
   3364         * UIProcess/DrawingAreaProxyImpl.cpp:
   3365         (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
   3366         (WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode):
   3367         * UIProcess/DrawingAreaProxyImpl.h:
   3368         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
   3369         (WebKit::LayerTreeHostMac::LayerTreeHostMac):
   3370 
   3371 2011-02-03  Anders Carlsson  <andersca (a] apple.com>
   3372 
   3373         Reviewed by Dan Bernstein.
   3374 
   3375         Get rid of timestamps in UpdateInfo
   3376         https://bugs.webkit.org/show_bug.cgi?id=53713
   3377 
   3378         Add a 64-bit sequence number to all DrawingAreaProxy messages, and use it to
   3379         check whether Update messages should be handled or not.
   3380 
   3381         * Shared/UpdateInfo.cpp:
   3382         (WebKit::UpdateInfo::encode):
   3383         (WebKit::UpdateInfo::decode):
   3384         * Shared/UpdateInfo.h:
   3385         (WebKit::UpdateInfo::UpdateInfo):
   3386         * UIProcess/BackingStore.cpp:
   3387         (WebKit::BackingStore::BackingStore):
   3388         (WebKit::BackingStore::incorporateUpdate):
   3389         * UIProcess/BackingStore.h:
   3390         * UIProcess/DrawingAreaProxy.h:
   3391         (WebKit::DrawingAreaProxy::update):
   3392         (WebKit::DrawingAreaProxy::didSetSize):
   3393         (WebKit::DrawingAreaProxy::enterAcceleratedCompositingMode):
   3394         (WebKit::DrawingAreaProxy::exitAcceleratedCompositingMode):
   3395         * UIProcess/DrawingAreaProxy.messages.in:
   3396         * UIProcess/DrawingAreaProxyImpl.cpp:
   3397         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
   3398         (WebKit::DrawingAreaProxyImpl::update):
   3399         (WebKit::DrawingAreaProxyImpl::didSetSize):
   3400         (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
   3401         (WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode):
   3402         * UIProcess/DrawingAreaProxyImpl.h:
   3403         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   3404         (WebKit::generateSequenceNumber):
   3405         (WebKit::DrawingAreaImpl::setSize):
   3406         (WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode):
   3407         (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):
   3408         (WebKit::DrawingAreaImpl::display):
   3409 
   3410 2011-02-03  Anders Carlsson  <andersca (a] apple.com>
   3411 
   3412         Reviewed by Darin Adler.
   3413 
   3414         Don't send enter/exit accelerated compositing mode messages when handling setSize
   3415         https://bugs.webkit.org/show_bug.cgi?id=53706
   3416 
   3417         Don't send EnterAcceleratedCompositingMode/ExitAcceleratedCompositing mode when
   3418         the mode changes happen as a result of relayout in setSize, since an updated state
   3419         is going to be sent back in the DidSetSize message.
   3420         
   3421         * UIProcess/DrawingAreaProxyImpl.cpp:
   3422         (WebKit::DrawingAreaProxyImpl::didSetSize):
   3423         Add an assert.
   3424 
   3425         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   3426         (WebKit::DrawingAreaImpl::DrawingAreaImpl):
   3427         Initialize m_inSetSize.
   3428 
   3429         (WebKit::DrawingAreaImpl::setRootCompositingLayer):
   3430         Factor out code into enterAcceleratedCompositingMode and exitAcceleratedCompositingMode.
   3431 
   3432         (WebKit::DrawingAreaImpl::setSize):
   3433         Set m_inSetSize to true while handling setSize.
   3434 
   3435         (WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode):
   3436         (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):
   3437         Take over the message sending responsibility from LayerTreeHostMac, and don't send messages
   3438         if we're currently handling a SetSize message.
   3439 
   3440         * WebProcess/WebPage/DrawingAreaImpl.h:
   3441         Add m_inSetSize.
   3442 
   3443         * WebProcess/WebPage/LayerTreeHost.h:
   3444         Add layerTreeHost getter.
   3445 
   3446         * WebProcess/WebPage/mac/LayerTreeHostMac.h:
   3447         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
   3448         (WebKit::LayerTreeHostMac::LayerTreeHostMac):
   3449         Don't send EnterAcceleratedCompositingMode messages.
   3450 
   3451         (WebKit::LayerTreeHostMac::layerTreeContext):
   3452         Add getter for the current layer tree context.
   3453 
   3454         (WebKit::LayerTreeHostMac::invalidate):
   3455         Don't send ExitAcceleratedCompositingMode messages.
   3456 
   3457 2011-02-03  Anders Carlsson  <andersca (a] apple.com>
   3458 
   3459         Reviewed by Sam Weinig.
   3460 
   3461         Make the layer tree host keep track of the layer tree context
   3462         https://bugs.webkit.org/show_bug.cgi?id=53698
   3463 
   3464         Add a LayerTreeContext member variable to the LayerTreeHost object,
   3465         and also add a seed count to the LayerTreeContext so we can keep track of 
   3466         how layer tree contexts relate to each other.
   3467 
   3468         * Shared/LayerTreeContext.h:
   3469         * Shared/mac/LayerTreeContextMac.mm:
   3470         (WebKit::LayerTreeContext::LayerTreeContext):
   3471         (WebKit::LayerTreeContext::makeWithSeed):
   3472         (WebKit::LayerTreeContext::encode):
   3473         (WebKit::LayerTreeContext::decode):
   3474 
   3475         * WebProcess/WebPage/mac/LayerTreeHostMac.h:
   3476         Add the layer tree context as a member variable.
   3477 
   3478         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
   3479         (WebKit::LayerTreeHostMac::LayerTreeHostMac):
   3480         Initialize the layer tree context.
   3481 
   3482 2011-02-03  Sam Weinig  <sam (a] webkit.org>
   3483 
   3484         Fix Qt build.
   3485 
   3486         * UIProcess/API/qt/qwkpage.cpp:
   3487         (QWKPage::QWKPage):
   3488 
   3489 2011-02-02  Sam Weinig  <sam (a] webkit.org>
   3490 
   3491         Reviewed by Anders Carlsson.
   3492 
   3493         Add notification of the end of a rubber band.
   3494         <rdar://problem/8940648>
   3495 
   3496         * UIProcess/API/C/WKPage.h:
   3497         * UIProcess/WebPageProxy.cpp:
   3498         (WebKit::WebPageProxy::drawHeader):
   3499         (WebKit::WebPageProxy::drawFooter):
   3500         (WebKit::WebPageProxy::didCompleteRubberBandForMainFrame):
   3501         * UIProcess/WebPageProxy.h:
   3502         * UIProcess/WebPageProxy.messages.in:
   3503         * UIProcess/WebUIClient.cpp:
   3504         (WebKit::WebUIClient::didCompleteRubberBandForMainFrame):
   3505         * UIProcess/WebUIClient.h:
   3506         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   3507         (WebKit::WebChromeClient::didCompleteRubberBandForMainFrame):
   3508         * WebProcess/WebCoreSupport/WebChromeClient.h:
   3509         Pipe the notification up to the WKUIClient.
   3510 
   3511 2011-02-03  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   3512 
   3513         Unreviewed, rolling out r77449.
   3514         http://trac.webkit.org/changeset/77449
   3515         https://bugs.webkit.org/show_bug.cgi?id=53663
   3516 
   3517         causes many WebKit2 tests to crash (Requested by othermaciej
   3518         on #webkit).
   3519 
   3520         * Shared/API/c/WKSharedAPICast.h:
   3521         (WebKit::toAPI):
   3522         (WebKit::toCopiedAPI):
   3523         (WebKit::toURLRef):
   3524         (WebKit::toCopiedURLAPI):
   3525         * Shared/WebString.h:
   3526         (WebKit::WebString::isNull):
   3527         (WebKit::WebString::WebString):
   3528 
   3529 2011-02-02  Sam Weinig  <sam (a] webkit.org>
   3530 
   3531         Fix license block issues pointed out by Daniel Bates.
   3532 
   3533         * Shared/API/c/WKGraphicsContext.cpp:
   3534         * Shared/API/c/WKGraphicsContext.h:
   3535         * Shared/API/c/cg/WKGraphicsContextCG.cpp:
   3536         * Shared/API/c/cg/WKGraphicsContextCG.h:
   3537         * Shared/WebGraphicsContext.cpp:
   3538 
   3539 2011-02-02  Sam Weinig  <sam (a] webkit.org>
   3540 
   3541         Reviewed by Dan Bernstein.
   3542 
   3543         Add WKBundleFrameGetVisibleContentBoundsExcludingScrollbars API for WebKit2.
   3544 
   3545         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   3546         (WKBundleFrameGetContentBounds):
   3547         (WKBundleFrameGetVisibleContentBounds):
   3548         (WKBundleFrameGetVisibleContentBoundsExcludingScrollbars):
   3549         (WKBundleFrameGetScrollOffset):
   3550         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   3551         * WebProcess/WebPage/WebFrame.cpp:
   3552         (WebKit::WebFrame::contentBounds):
   3553         (WebKit::WebFrame::visibleContentBounds):
   3554         (WebKit::WebFrame::visibleContentBoundsExcludingScrollbars):
   3555         (WebKit::WebFrame::scrollOffset):
   3556         * WebProcess/WebPage/WebFrame.h:
   3557         Move implementation of frame geometry to the implementation file
   3558         instead of keeping it in the API file.
   3559 
   3560 2011-02-02  Stephanie Lewis  <slewis (a] apple.com>
   3561 
   3562         Reviewed by Geoff Garen.
   3563 
   3564         https://bugs.webkit.org/show_bug.cgi?id=53361
   3565         <rdar://problem/8921729> REGRESSION: Membuster accumulates 1GB+ memory due to autorelease 
   3566         pools not being drained.
   3567         Call into AppKit to add observers that push and pop autorelease pools on entry 
   3568         and exit from the CFRunLoop.  This will prevent memory from accumulating.
   3569 
   3570         * WebProcess/mac/WebProcessMainMac.mm:
   3571         (WebKit::WebProcessMain):
   3572 
   3573 2011-02-02  Darin Adler  <darin (a] apple.com>
   3574 
   3575         Reviewed by Sam Weinig.
   3576 
   3577         Make null WTF::String objects turn into 0 pointers for WKStringRef and WKURLRef.
   3578         rdar://problem/8948688
   3579 
   3580         * Shared/API/c/WKSharedAPICast.h:
   3581         (WebKit::toAPI): Return 0 if the passed in string is 0.
   3582         (WebKit::toCopiedAPI): Ditto.
   3583         (WebKit::toURLRef): Ditto. Old code was trying to do this but was missing a return.
   3584         (WebKit::toCopiedURLAPI): Ditto. Old code was trying to do this but had incorrect
   3585         nll check.
   3586 
   3587         * Shared/WebString.h: Removed isNull function. It can never return true.
   3588         Removed constructor code that turns the null string into the empty string.
   3589         Instead assert that the passed in string is not null.
   3590 
   3591 2011-02-02  Mark Rowe  <mrowe (a] apple.com>
   3592 
   3593         Reviewed by Beth Dakin.
   3594 
   3595         <rdar://problem/8928367> Crash when loading canvas pages inside HTMLCanvasElement::createImageBuffer().
   3596 
   3597         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
   3598         (InitWebCoreSystemInterface): Add some missing initializers.
   3599 
   3600 2011-02-02  Sam Weinig  <sam (a] webkit.org>
   3601 
   3602         Reviewed by Beth Dakin.
   3603 
   3604         Add ChromeClient function to paint custom overhang areas.
   3605         https://bugs.webkit.org/show_bug.cgi?id=53639
   3606 
   3607         * Shared/API/c/WKBase.h:
   3608         * Shared/API/c/WKGraphicsContext.cpp: Added.
   3609         (WKGraphicsContextGetTypeID):
   3610         * Shared/API/c/WKGraphicsContext.h: Added.
   3611         * Shared/API/c/WKSharedAPICast.h:
   3612         * Shared/API/c/cg/WKGraphicsContextCG.cpp: Added.
   3613         (WKGraphicsContextGetCGContext):
   3614         * Shared/API/c/cg/WKGraphicsContextCG.h: Added.
   3615         * Shared/APIObject.h:
   3616         * Shared/WebGraphicsContext.cpp: Added.
   3617         (WebKit::WebGraphicsContext::WebGraphicsContext):
   3618         * Shared/WebGraphicsContext.h: Added.
   3619         (WebKit::WebGraphicsContext::create):
   3620         (WebKit::WebGraphicsContext::platformContext):
   3621         (WebKit::WebGraphicsContext::type):
   3622         Add WebGraphicsContext API type.
   3623 
   3624         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   3625         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
   3626         (WebKit::InjectedBundlePageUIClient::pageDidScroll):
   3627         (WebKit::InjectedBundlePageUIClient::shouldPaintCustomOverhangArea):
   3628         (WebKit::InjectedBundlePageUIClient::paintCustomOverhangArea):
   3629         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
   3630         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   3631         (WebKit::WebChromeClient::paintCustomOverhangArea):
   3632         * WebProcess/WebCoreSupport/WebChromeClient.h:
   3633         Pipe paintCustomOverhangArea to the InjectedBundlePageUIClient.
   3634 
   3635         * UIProcess/API/C/WebKit2.h:
   3636         * WebKit2.pro:
   3637         * WebKit2.xcodeproj/project.pbxproj:
   3638         * win/WebKit2.vcproj:
   3639         * win/WebKit2Generated.make:
   3640         Add new files.
   3641 
   3642 2011-02-02  Anders Carlsson  <andersca (a] apple.com>
   3643 
   3644         Reviewed by Dan Bernstein.
   3645 
   3646         Work towards making the layer tree host be in charge of all painting
   3647         https://bugs.webkit.org/show_bug.cgi?id=53636
   3648 
   3649         Make sure that DrawingAreaImpl::display is never called when in accelerated compositing mode,
   3650         since the layer tree host is supposed to handle all drawing in that case.
   3651 
   3652         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   3653         (WebKit::DrawingAreaImpl::scroll):
   3654         (WebKit::DrawingAreaImpl::setRootCompositingLayer):
   3655         (WebKit::DrawingAreaImpl::setSize):
   3656         (WebKit::DrawingAreaImpl::didUpdate):
   3657 
   3658 2011-02-02  Mark Rowe  <mrowe (a] apple.com>
   3659 
   3660         Fix the 32-bit build.
   3661 
   3662         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   3663         (WebKit::computeFakeWindowBoundsRect):
   3664 
   3665 2011-02-02  Anders Carlsson  <andersca (a] apple.com>
   3666 
   3667         Reviewed by Sam Weinig.
   3668 
   3669         Make sure that we don't try to call display() when in accelerated compositing mode
   3670         https://bugs.webkit.org/show_bug.cgi?id=53629
   3671 
   3672         When in accelerated compositing mode, the layer tree host should handle all painting, so make sure that display() is never called.
   3673 
   3674         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   3675         (WebKit::DrawingAreaImpl::setNeedsDisplay):
   3676         (WebKit::DrawingAreaImpl::setRootCompositingLayer):
   3677         (WebKit::DrawingAreaImpl::display):
   3678 
   3679 2011-02-02  Adam Roben  <aroben (a] apple.com>
   3680 
   3681         Assert WebBackForwardList's current index is valid to help catch errors
   3682 
   3683         Hopefully this will help catch a crash I saw once but haven't yet been able to reproduce.
   3684 
   3685         Fixes <http://webkit.org/b/53622>.
   3686 
   3687         Reviewed by Brady Eidson.
   3688 
   3689         * UIProcess/WebBackForwardList.cpp:
   3690         (WebKit::WebBackForwardList::WebBackForwardList):
   3691         (WebKit::WebBackForwardList::addItem):
   3692         (WebKit::WebBackForwardList::goToItem):
   3693         (WebKit::WebBackForwardList::currentItem):
   3694         (WebKit::WebBackForwardList::backItem):
   3695         (WebKit::WebBackForwardList::forwardItem):
   3696         (WebKit::WebBackForwardList::itemAtIndex):
   3697         (WebKit::WebBackForwardList::backListCount):
   3698         (WebKit::WebBackForwardList::forwardListCount):
   3699         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
   3700         (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
   3701         (WebKit::WebBackForwardList::clear):
   3702         * UIProcess/cf/WebBackForwardListCF.cpp:
   3703         (WebKit::WebBackForwardList::createCFDictionaryRepresentation):
   3704         (WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation):
   3705         Assert that m_current is valid.
   3706 
   3707         * UIProcess/WebBackForwardList.h: Moved the NoCurrentItemIndex to a static data member so
   3708         that it can be used from WebBackForwardListCF.cpp.
   3709 
   3710 2011-02-02  Anders Carlsson  <andersca (a] apple.com>
   3711 
   3712         Reviewed by Sam Weinig.
   3713 
   3714         The drawing area proxy should keep track of the accelerated compositing state
   3715         https://bugs.webkit.org/show_bug.cgi?id=53624
   3716 
   3717         * UIProcess/DrawingAreaProxyImpl.cpp:
   3718         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
   3719         Initialize m_isInAcceleratedCompositingMode to false.
   3720 
   3721         (WebKit::DrawingAreaProxyImpl::paint):
   3722         Don't try to paint if we're in accelerated compositing mode.
   3723 
   3724         (WebKit::DrawingAreaProxyImpl::didSetSize):
   3725         Bail if we're in accelerated compositing mode.
   3726 
   3727         (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
   3728         Set m_isInAcceleratedCompositingMode to true, null out the backing store.
   3729 
   3730         (WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode):
   3731         Set m_isInAcceleratedCompositingMode back to false.
   3732 
   3733         (WebKit::DrawingAreaProxyImpl::incorporateUpdate):
   3734         Assert that we're not in accelerated compositing mode.
   3735 
   3736         * UIProcess/DrawingAreaProxyImpl.h:
   3737 
   3738 2011-02-02  Timothy Hatcher  <timothy (a] apple.com>
   3739 
   3740         Give the Web Process access to the Safari RSS preferences.
   3741 
   3742         <rdar://problem/8916870> Sandbox violation related to RSS during initial
   3743         page load with WebKit2 (prevents RSS from working)
   3744 
   3745         Reviewed by Darin Adler.
   3746 
   3747         * WebProcess/com.apple.WebProcess.sb:
   3748 
   3749 2011-02-02  Steve Lacey  <sjl (a] chromium.org>
   3750 
   3751         Reviewed by Eric Carlson.
   3752 
   3753         Implement basic media statistics on media elements.
   3754         https://bugs.webkit.org/show_bug.cgi?id=53322
   3755 
   3756         * Configurations/FeatureDefines.xcconfig:
   3757 
   3758 2011-02-01  Alexey Proskuryakov  <ap (a] apple.com>
   3759 
   3760         Reviewed by Sam Weinig.
   3761 
   3762         https://bugs.webkit.org/show_bug.cgi?id=53561
   3763         <rdar://problem/8900228> Stepping through print previews in WebKit2 mode steps in and out of
   3764         printing mode a lot
   3765 
   3766         Disable NSView autodisplay, so that -[WKView drawRect:] isn't called (other than when
   3767         resizing the window), so that we don't have to switch modes all the time.
   3768 
   3769         * UIProcess/API/mac/PageClientImpl.h:
   3770         * UIProcess/API/mac/PageClientImpl.mm:
   3771         (WebKit::PageClientImpl::setAutodisplay):
   3772         * UIProcess/PageClient.h:
   3773         * UIProcess/WebPageProxy.cpp:
   3774         (WebKit::WebPageProxy::setAutodisplay):
   3775         * UIProcess/WebPageProxy.h:
   3776         Pipe the call from WKPrintingView down to WKView.
   3777 
   3778         * UIProcess/API/mac/WKPrintingView.mm:
   3779         (-[WKPrintingView beginDocument]): Added. We don't want to autodisplay WKView while printing,
   3780         because layout is changed to print at the time, and drawing to screen requires relayout.
   3781         
   3782         (-[WKPrintingView endDocument]): When not printing, turn autodisplay back on. Also, call
   3783         -[super endDocument] for unknown but definitive good (oops!).
   3784 
   3785 2011-02-02  David Hyatt  <hyatt (a] apple.com>
   3786 
   3787         Reviewed by Darin Adler.
   3788 
   3789         Conversion of right()/bottom() to maxX()/maxY() as part of the removal of those accessors.
   3790 
   3791         * UIProcess/win/WebPopupMenuProxyWin.cpp:
   3792         (WebKit::WebPopupMenuProxyWin::calculatePositionAndSize):
   3793         * UIProcess/win/WebView.cpp:
   3794         (WebKit::WebView::prepareCandidateWindow):
   3795         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
   3796         (WebKit::NetscapePlugin::platformGeometryDidChange):
   3797 
   3798 2011-02-01  Darin Adler  <darin (a] apple.com>
   3799 
   3800         Reviewed by Anders Carlsson.
   3801 
   3802         Overflow in WebKit2 argument decoder buffer checking
   3803         https://bugs.webkit.org/show_bug.cgi?id=53536
   3804 
   3805         * Platform/CoreIPC/ArgumentDecoder.cpp:
   3806         (CoreIPC::roundUpToAlignment): Tweak code a bit for clarity and to replace
   3807         C casts with C++ casts.
   3808         (CoreIPC::ArgumentDecoder::alignBufferPosition): Rearrange buffer calculation
   3809         so we don't do any math with the passed-in size, because that could overflow.
   3810         (CoreIPC::ArgumentDecoder::bufferIsLargeEnoughToContain): Ditto.
   3811 
   3812 2011-02-01  Csaba Osztrogonc  <ossy (a] webkit.org>
   3813 
   3814         Unreviewed.
   3815 
   3816         Fix Qt build after r77339.
   3817 
   3818         * UIProcess/API/qt/qwkpage.cpp:
   3819         (QWKPagePrivate::enterAcceleratedCompositingMode):
   3820         (QWKPagePrivate::exitAcceleratedCompositingMode):
   3821         * UIProcess/API/qt/qwkpage_p.h:
   3822 
   3823 2011-02-01  Anders Carlsson  <andersca (a] apple.com>
   3824 
   3825         Reviewed by Dan Bernstein.
   3826 
   3827         Attach the layer tree in the UI process
   3828         https://bugs.webkit.org/show_bug.cgi?id=53560
   3829 
   3830         * UIProcess/API/mac/WKView.mm:
   3831         (-[WKView _enterAcceleratedCompositingMode:]):
   3832         Make a render layer and add it as a sublayer of our root layer.
   3833 
   3834         * WebProcess/WebPage/mac/LayerTreeHostMac.h:
   3835         Make LayerTreeHostMac a GraphicsLayerClient.
   3836 
   3837         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
   3838         (WebKit::LayerTreeHostMac::LayerTreeHostMac):
   3839         Create a root layer, add the layer subtree as a child of the root layer.
   3840 
   3841         (WebKit::LayerTreeHostMac::~LayerTreeHostMac):
   3842         Assert that m_rootLayer is null.
   3843 
   3844         (WebKit::LayerTreeHostMac::invalidate):
   3845         Null out m_rootLayer.
   3846 
   3847         (WebKit::LayerTreeHostMac::notifyAnimationStarted):
   3848         (WebKit::LayerTreeHostMac::notifySyncRequired):
   3849         (WebKit::LayerTreeHostMac::paintContents):
   3850         Add stubs.
   3851 
   3852         (WebKit::LayerTreeHostMac::showDebugBorders):
   3853         (WebKit::LayerTreeHostMac::showRepaintCounter):
   3854         Return the correct settings.
   3855 
   3856         (WebKit::LayerTreeHostMac::flushPendingLayerChanges):
   3857         Flush the root layer changes.
   3858 
   3859 2011-02-01  Anders Carlsson  <andersca (a] apple.com>
   3860 
   3861         Fix Windows build.
   3862 
   3863         * UIProcess/win/WebView.cpp:
   3864         (WebKit::WebView::enterAcceleratedCompositingMode):
   3865         (WebKit::WebView::exitAcceleratedCompositingMode):
   3866         * UIProcess/win/WebView.h:
   3867 
   3868 2011-02-01  Anders Carlsson  <andersca (a] apple.com>
   3869 
   3870         Reviewed by Dan Bernstein.
   3871 
   3872         Add a layer backed NSView for accelerated content
   3873         https://bugs.webkit.org/show_bug.cgi?id=53555
   3874 
   3875         Rename the current _layerHostingView to _oldLayerHostingView and
   3876         add a new _layerHostingView to be used with the new drawing area.
   3877 
   3878         * UIProcess/API/mac/WKView.mm:
   3879         (-[WKView hitTest:]):
   3880         (-[WKView _startAcceleratedCompositing:]):
   3881         (-[WKView _stopAcceleratedCompositing]):
   3882         (-[WKView _enterAcceleratedCompositingMode:]):
   3883         (-[WKView _exitAcceleratedCompositingMode]):
   3884 
   3885 2011-02-01  Anders Carlsson  <andersca (a] apple.com>
   3886 
   3887         Reviewed by Dan Bernstein.
   3888 
   3889         Pass enter/exit accelerated compositing mode to the WKView
   3890         https://bugs.webkit.org/show_bug.cgi?id=53552
   3891 
   3892         * UIProcess/API/mac/PageClientImpl.h:
   3893         * UIProcess/API/mac/PageClientImpl.mm:
   3894         (WebKit::PageClientImpl::enterAcceleratedCompositingMode):
   3895         (WebKit::PageClientImpl::exitAcceleratedCompositingMode):
   3896         * UIProcess/API/mac/WKView.mm:
   3897         (-[WKView _enterAcceleratedCompositingMode:]):
   3898         (-[WKView _exitAcceleratedCompositingMode]):
   3899         * UIProcess/API/mac/WKViewInternal.h:
   3900         * UIProcess/DrawingAreaProxyImpl.cpp:
   3901         (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
   3902         (WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode):
   3903         * UIProcess/PageClient.h:
   3904         * UIProcess/WebPageProxy.cpp:
   3905         (WebKit::WebPageProxy::enterAcceleratedCompositingMode):
   3906         (WebKit::WebPageProxy::exitAcceleratedCompositingMode):
   3907         * UIProcess/WebPageProxy.h:
   3908 
   3909 2011-02-01  Csaba Osztrogonc  <ossy (a] webkit.org>
   3910 
   3911         Unreviewed Qt buildfix after r77286.
   3912 
   3913         https://bugs.webkit.org/show_bug.cgi?id=53520 
   3914         Remove the physical terminology from IntRect and FloatRect.
   3915 
   3916         * UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp:
   3917         (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore):
   3918 
   3919 2011-02-01  Anders Carlsson  <andersca (a] apple.com>
   3920 
   3921         Reviewed by Adam Roben.
   3922 
   3923         Send messages when entering/exiting accelerated compositing
   3924         https://bugs.webkit.org/show_bug.cgi?id=53534
   3925 
   3926         * Shared/LayerTreeContext.h: Added.
   3927         * Shared/mac/LayerTreeContextMac.mm: Added.
   3928         Add new LayerTreeContext which holds all information needed to enter
   3929         accelerated compositing mode.
   3930 
   3931         * UIProcess/DrawingAreaProxy.h:
   3932         (WebKit::DrawingAreaProxy::enterAcceleratedCompositingMode):
   3933         (WebKit::DrawingAreaProxy::exitAcceleratedCompositingMode):
   3934         Add empty stubs.
   3935 
   3936         * UIProcess/DrawingAreaProxy.messages.in:
   3937         Add new messgaes.
   3938 
   3939         * UIProcess/DrawingAreaProxyImpl.cpp:
   3940         (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
   3941         (WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode):
   3942         * UIProcess/DrawingAreaProxyImpl.h:
   3943         Add empty stubs.
   3944 
   3945         * WebKit2.xcodeproj/project.pbxproj:
   3946         Add new files.
   3947 
   3948         * WebProcess/WebPage/mac/LayerTreeHostMac.h:
   3949         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
   3950         (WebKit::LayerTreeHostMac::LayerTreeHostMac):
   3951         (WebKit::LayerTreeHostMac::invalidate):
   3952         Send messages.
   3953 
   3954 2011-02-01  Alexey Proskuryakov  <ap (a] apple.com>
   3955 
   3956         Reviewed by Dan Bernstein and Darin Adler.
   3957 
   3958         <rdar://problem/8830594> Printed page is sometimes shifted down, making footer invisible
   3959 
   3960         * UIProcess/API/mac/WKPrintingView.mm: (-[WKPrintingView locationOfPrintRect:]): Instead of
   3961         letting AppKit compute content position on page, make the view provide it. We can do this
   3962         because WK(Printing)Views are always printed on their own, not as part of other views.
   3963 
   3964 2011-02-01  Anders Carlsson  <andersca (a] apple.com>
   3965 
   3966         Reviewed by Adam Roben.
   3967 
   3968         Make LayerTreeHost ref counted
   3969         https://bugs.webkit.org/show_bug.cgi?id=53530
   3970 
   3971         LayerTreeHostMac will soon be able to trigger layout, which could cause
   3972         the page to leave accelerated compositing mode and free the LayerTreeHostMac object.
   3973 
   3974         Making LayerTreeHost ref counted will let LayerTreeHostMac protect itself while triggering layout.
   3975 
   3976         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   3977         (WebKit::DrawingAreaImpl::setRootCompositingLayer):
   3978         * WebProcess/WebPage/DrawingAreaImpl.h:
   3979         * WebProcess/WebPage/LayerTreeHost.cpp:
   3980         (WebKit::LayerTreeHost::create):
   3981         * WebProcess/WebPage/LayerTreeHost.h:
   3982         * WebProcess/WebPage/mac/LayerTreeHostMac.h:
   3983         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
   3984         (WebKit::LayerTreeHostMac::create):
   3985         (WebKit::LayerTreeHostMac::LayerTreeHostMac):
   3986         (WebKit::LayerTreeHostMac::~LayerTreeHostMac):
   3987         (WebKit::LayerTreeHostMac::invalidate):
   3988 
   3989 2011-02-01  Sam Weinig  <sam (a] webkit.org>
   3990 
   3991         Reviewed by Beth Dakin.
   3992 
   3993         Part 2 for <rdar://problem/8492788>
   3994         Adopt WKScrollbarPainterController
   3995 
   3996         Use header detection to define scrollbar painting controller #define.
   3997 
   3998         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
   3999         (InitWebCoreSystemInterface):
   4000 
   4001 2011-02-01  David Hyatt  <hyatt (a] apple.com>
   4002 
   4003         Reviewed by Oliver Hunt.
   4004 
   4005         https://bugs.webkit.org/show_bug.cgi?id=53520
   4006         
   4007         Remove the physical terminology from IntRect and FloatRect.
   4008         
   4009         Now that we have flipped RenderBlocks for vertical-rl and horizontal-bt writing modes,
   4010         we need to update our terminology to be more accurate.
   4011 
   4012         I'm borrowing a page from AppKit here (which also supports flipped NSViews) and
   4013         renaming right() and bottom() to maxX() and maxY().  These terms remain accurate
   4014         even for flipped rectangles.
   4015 
   4016         * Platform/Region.cpp:
   4017         (WebKit::Region::Shape::Shape):
   4018         * UIProcess/API/mac/WKPrintingView.mm:
   4019         (pageDidComputePageRects):
   4020         * UIProcess/FindIndicator.cpp:
   4021         (WebKit::FindIndicator::draw):
   4022         * UIProcess/TiledDrawingAreaProxy.cpp:
   4023         (WebKit::TiledDrawingAreaProxy::invalidate):
   4024         (WebKit::TiledDrawingAreaProxy::paint):
   4025         (WebKit::TiledDrawingAreaProxy::createTiles):
   4026         * UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm:
   4027         (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore):
   4028         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   4029         (WebKit::NetscapePlugin::callSetWindow):
   4030 
   4031 2011-02-01  Anders Carlsson  <andersca (a] apple.com>
   4032 
   4033         Reviewed by Adam Roben.
   4034 
   4035         Move flushPendingLayerChanges to LayerTreeHostMac
   4036         https://bugs.webkit.org/show_bug.cgi?id=53525
   4037 
   4038         In preparation for adding more Mac specific code to flushPendingLayerChanges.
   4039 
   4040         * WebProcess/WebPage/LayerTreeHost.cpp:
   4041         * WebProcess/WebPage/LayerTreeHost.h:
   4042         * WebProcess/WebPage/mac/LayerTreeHostMac.h:
   4043         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
   4044         (WebKit::LayerTreeHostMac::flushPendingLayerChanges):
   4045 
   4046 2011-02-01  Beth Dakin  <bdakin (a] apple.com>
   4047 
   4048         Reviewed by Sam Weinig.
   4049 
   4050         Fix for <rdar://problem/8492788> Adopt WKScrollbarPainterController
   4051 
   4052         Implement NSView's viewWillStartLiveResize and
   4053         viewDidEndLiveResize and propagate the messages down
   4054         to WebCore.
   4055         * UIProcess/API/mac/WKView.mm:
   4056         (-[WKView viewWillStartLiveResize]):
   4057         (-[WKView viewDidEndLiveResize]):
   4058         * UIProcess/WebPageProxy.cpp:
   4059         (WebKit::WebPageProxy::viewWillStartLiveResize):
   4060         (WebKit::WebPageProxy::viewWillEndLiveResize):
   4061         * UIProcess/WebPageProxy.h:
   4062         * WebProcess/WebPage/WebPage.cpp:
   4063         (WebKit::WebPage::viewWillStartLiveResize):
   4064         (WebKit::WebPage::viewWillEndLiveResize):
   4065         * WebProcess/WebPage/WebPage.h:
   4066         * WebProcess/WebPage/WebPage.messages.in:
   4067 
   4068         A bunch of new WebKitSystemInterface functions.
   4069         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
   4070         (InitWebCoreSystemInterface):
   4071 
   4072 2011-02-01  Dave Hyatt  <hyatt (a] apple.com>
   4073 
   4074         Reviewed by Darin Adler.
   4075 
   4076         https://bugs.webkit.org/show_bug.cgi?id=46422, make printing and pagination work
   4077         with vertical text.
   4078 
   4079         Change printing functions to check writing-mode and properly swap width and height
   4080         as needed.
   4081 
   4082         * WebProcess/WebPage/WebPage.cpp:
   4083         (WebKit::WebPage::computePagesForPrinting):
   4084 
   4085 2011-01-31  Alexey Proskuryakov  <ap (a] apple.com>
   4086 
   4087         Reviewed by Maciej Stachowiak.
   4088 
   4089         https://bugs.webkit.org/show_bug.cgi?id=53466
   4090         Move WebKit2 to printing via API methods
   4091 
   4092         Also fixes <rdar://problem/8933724> REGRESSION: Wrong pages are printed when not printing from page 1
   4093 
   4094         Also fixes horizontal tiling (no bug filed).
   4095 
   4096         The main idea here is that we don't force AppKit to use a different scaling factor when
   4097         a Web view can't be resized to exact page size, and scale when drawing instead.
   4098 
   4099         * UIProcess/API/mac/WKPrintingView.mm:
   4100         (-[WKPrintingView _firstPrintedPageNumber]): Factored out into a separate method.
   4101         (-[WKPrintingView _lastPrintedPageNumber]): Ditto.
   4102         (pageDidDrawToPDF): Avoid crashing if data is null.
   4103         (-[WKPrintingView _preparePDFDataForPrintingOnSecondaryThread]): Use -_firstPrintedPageNumber
   4104         and -_lastPrintedPageNumber.
   4105         (pageDidComputePageRects): Set frame size to what it would have been for a normal NSView
   4106         that's been asked to resize.
   4107         (-[WKPrintingView _pageForRect:]): Check x(), because several pages can be at the same y()
   4108         when tiling horizontally.
   4109         (-[WKPrintingView _drawPDFDocument:page:atPoint:]): Point to draw at and frame size are
   4110         now using different units, translate as appropriate.
   4111         (-[WKPrintingView _drawPreview:]): Scale the rect to WebCore units.
   4112         (-[WKPrintingView drawRect:]): Correctly calculate page number when the first page to print
   4113         isn't page 1.
   4114         (-[WKPrintingView rectForPage:]): Scale the rect to AppKit units.
   4115 
   4116 2011-01-31  Darin Adler  <darin (a] apple.com>
   4117 
   4118         Reviewed by Adele Peterson.
   4119 
   4120         WKView should support scrollPageDown:, scrollPageUp:, scrollToBeg and other similar selectors
   4121         https://bugs.webkit.org/show_bug.cgi?id=53460
   4122 
   4123         * UIProcess/API/mac/WKView.mm: Added WEBCORE_COMMAND macro for lots of editor commands that
   4124         are implemented in WebCore so they will get forwarded. Many of these will probably work without
   4125         any further changes required. Added comments about the methods that we do not yet forward.
   4126         (createSelectorExceptionMap): Map scrollPageDown: to ScrollPageForward and
   4127         scrollPageUp: to ScrollPageBackward because we want the page up and page down
   4128         keys to follow the document logical order, not physical order. This is equivalent
   4129         to what we do in WebPage::performDefaultBehaviorForKeyEvent.
   4130 
   4131 2011-01-31  Jessie Berlin  <jberlin (a] apple.com>
   4132 
   4133         Reviewed by Steve Falkenburg.
   4134 
   4135         WebKit2: the cookies used by the WebKit2 Web Process should not go in a top-level
   4136         directory.
   4137         https://bugs.webkit.org/show_bug.cgi?id=53278
   4138 
   4139         Use the name WebKit2WebProcess since the default location for the cookies is determined
   4140         based on the process name (which is WebKit2WebProcess.exe on Windows).
   4141 
   4142         * win/WebKit2.make:
   4143         Copy the WebKit2WebProcess.resources directory into the AppleInternal bin.
   4144 
   4145         * win/WebKit2WebProcess.resources: Added.
   4146         * win/WebKit2WebProcess.resources/Info.plist: Added.
   4147         Copied from the WebKit version of Info.plist.
   4148 
   4149         * win/WebKit2WebProcessPostBuild.cmd:
   4150         Copy the WebKit2WebProcess.resources directory into the WebKitOutPutDir's bin.
   4151 
   4152 2011-01-31  Anders Carlsson  <andersca (a] apple.com>
   4153 
   4154         Reviewed by Adam Roben.
   4155 
   4156         Make LayerTreeHost an abstract base class and make LayerTreeHostMac inherit from it
   4157         https://bugs.webkit.org/show_bug.cgi?id=53432
   4158 
   4159         * WebKit2.xcodeproj/project.pbxproj:
   4160         Add LayerTreeHostMac.h.
   4161 
   4162         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   4163         * WebProcess/WebPage/DrawingAreaImpl.h:
   4164         Make m_layerTreeHost an OwnPtr and initialize/destroy it appropriately.
   4165 
   4166         * WebProcess/WebPage/LayerTreeHost.cpp:
   4167         (WebKit::LayerTreeHost::create):
   4168         On Mac, create a LayerTreeHostMac instance.
   4169 
   4170         (WebKit::LayerTreeHost::~LayerTreeHost):
   4171         No need to call platformInvalidate anymore.
   4172 
   4173         * WebProcess/WebPage/LayerTreeHost.h:
   4174         * WebProcess/WebPage/mac/LayerTreeHostMac.h: Added.
   4175         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
   4176         (WebKit::LayerTreeHostMac::~LayerTreeHostMac):
   4177         Invalidate the run loop observer here instead of in platformInvalidate.
   4178 
   4179         (WebKit::LayerTreeHostMac::scheduleLayerFlush):
   4180         (WebKit::LayerTreeHostMac::flushPendingLayerChangesRunLoopObserverCallback):
   4181         These are now members of LayerTreeHostMac.
   4182 
   4183 2011-01-30  Geoffrey Garen  <ggaren (a] apple.com>
   4184 
   4185         Reviewed by Sam Weinig.
   4186 
   4187         [Take 2!]
   4188         Fixed crash on window close (maybe crash on launch?) due to missing frame null checks
   4189         https://bugs.webkit.org/show_bug.cgi?id=53408
   4190 
   4191         * UIProcess/WebContext.cpp:
   4192         (WebKit::WebContext::didNavigateWithNavigationData):
   4193         (WebKit::WebContext::didPerformClientRedirect):
   4194         (WebKit::WebContext::didPerformServerRedirect):
   4195         (WebKit::WebContext::didUpdateHistoryTitle): Use MESSAGE_CHECK because
   4196         we don't think we should be able to reach this state under normal conditions.
   4197 
   4198 2011-01-30  Geoffrey Garen  <ggaren (a] apple.com>
   4199 
   4200         Reviewed by Maciej Stachowiak.
   4201 
   4202         Fixed crash on window close (maybe crash on launch?) due to missing
   4203         frame null checks
   4204         https://bugs.webkit.org/show_bug.cgi?id=53408
   4205 
   4206         * UIProcess/WebContext.cpp:
   4207         (WebKit::WebContext::didNavigateWithNavigationData):
   4208         (WebKit::WebContext::didPerformClientRedirect):
   4209         (WebKit::WebContext::didPerformServerRedirect):
   4210         (WebKit::WebContext::didUpdateHistoryTitle): Check for NULL, since we're
   4211         calling a function that can return it.
   4212 
   4213 2011-01-30  Balazs Kelemen  <kbalazs (a] webkit.org>
   4214 
   4215         Reviewed by Csaba Osztrogonc.
   4216 
   4217         [Qt][WK2]REGRESSION (r76991): Fix build errors
   4218         https://bugs.webkit.org/show_bug.cgi?id=53400
   4219 
   4220         Revert the temporary build fix (http://trac.webkit.org/changeset/77088)
   4221         and remove WebKit2Prefix.h from the build.
   4222         * UIProcess/API/qt/qwkhistory.h:
   4223         * UIProcess/API/qt/qwkpage.h:
   4224         * WebKit2.pro:
   4225 
   4226 2011-01-30  Jeff Miller  <jeffm (a] apple.com>
   4227 
   4228         Reviewed by Dan Bernstein.
   4229 
   4230         FindController::updateFindIndicator() crashes if selection isn't visible
   4231         https://bugs.webkit.org/show_bug.cgi?id=53399
   4232 
   4233         * WebProcess/WebPage/FindController.cpp:
   4234         (WebKit::FindController::updateFindIndicator): Return false if ShareableBitmap::createShareable() returns null (typically because the selection rect is empty).
   4235 
   4236 2011-01-30  Csaba Osztrogonc  <ossy (a] webkit.org>
   4237 
   4238         Unreviewed.
   4239 
   4240         [Qt][WK2] Buildfix.
   4241 
   4242         * UIProcess/API/qt/qwkhistory.h:
   4243         * UIProcess/API/qt/qwkpage.h:
   4244 
   4245 2011-01-29  Maciej Stachowiak  <mjs (a] apple.com>
   4246 
   4247         Reviewed by Geoffrey Garen.
   4248 
   4249         Add WKPageCopyPendingAPIRequestURL API
   4250         https://bugs.webkit.org/show_bug.cgi?id=53383
   4251 
   4252         This API returns the last URL requested for load via API, if neither that load nor any
   4253         other load subsequently reaches the provisional state.
   4254         
   4255         This is useful to be able to track loads initiated via the API
   4256         
   4257         * UIProcess/API/C/WKPage.cpp:
   4258         (WKPageCopyPendingAPIRequestURL): Retrieve the pending URL.
   4259         * UIProcess/API/C/WKPage.h:
   4260         * UIProcess/WebPageProxy.cpp:
   4261         (WebKit::WebPageProxy::loadURL): Set pending URL.
   4262         (WebKit::WebPageProxy::loadURLRequest): ditto
   4263         (WebKit::WebPageProxy::reload): ditto
   4264         (WebKit::WebPageProxy::goForward): ditto
   4265         (WebKit::WebPageProxy::goBack): ditto
   4266         (WebKit::WebPageProxy::estimatedProgress): Assume the initial
   4267         progress value when there is a pending URL.
   4268         (WebKit::WebPageProxy::didStartProvisionalLoadForFrame): Clear
   4269         pending URL; clients should look at the provisional URL now.
   4270         (WebKit::WebPageProxy::decidePolicyForNavigationAction): Clear
   4271         pending URL if it doesn't match the policy URL; this means we
   4272         were interrupted by another load.
   4273         * UIProcess/WebPageProxy.h:
   4274         (WebKit::WebPageProxy::pendingAPIRequestURL): Helper function.
   4275         (WebKit::WebPageProxy::clearPendingAPIRequestURL): ditto
   4276         (WebKit::WebPageProxy::setPendingAPIRequestURL): ditto
   4277 
   4278 2011-01-28  Jon Honeycutt  <jhoneycutt (a] apple.com>
   4279 
   4280         Downloads in WK2 on Windows should write resume data to bundle
   4281         https://bugs.webkit.org/show_bug.cgi?id=53282
   4282         <rdar://problem/8753077>
   4283 
   4284         Reviewed by Alice Liu.
   4285 
   4286         * WebProcess/Downloads/Download.cpp:
   4287         (WebKit::Download::decideDestinationWithSuggestedFilename):
   4288         Call didDecideDestination(), now that the destination is decided.
   4289 
   4290         * WebProcess/Downloads/Download.h:
   4291         Declare didDecideDestination(). Added member variables to hold the
   4292         destination file path and the download bundle path.
   4293         (WebKit::Download::destination):
   4294         Return the path to the final destination for this download.
   4295 
   4296         * WebProcess/Downloads/cf/DownloadCFNet.cpp:
   4297         (WebKit::Download::start):
   4298         Remove the name of an unused param.
   4299         (WebKit::Download::startWithHandle):
   4300         Ditto.
   4301         (WebKit::Download::cancel):
   4302         Tell CFNetwork not to delete the file upon failure, and tell it to
   4303         cancel the download. Copy the resume data for the download, and append
   4304         it to the download bundle. Call didCancel() with an empty
   4305         DataReference, since we have written our own resume data.
   4306         (WebKit::decideDestinationWithSuggestedObjectNameCallback):
   4307         Remove some unused param names. Removed the call to
   4308         CFURLDownloadSetDestination() - this is now handled in
   4309         Download::didDecideDestination().
   4310         (WebKit::didCreateDestinationCallback):
   4311         Report that the final destination was created, rather than the download
   4312         bundle, matching old WebKit.
   4313         (WebKit::Download::didDecideDestination):
   4314         Store the final destination and the download bundle paths, and call
   4315         CFURLDownloadSetDestination(), passing the path to the download bundle.
   4316 
   4317         * WebProcess/Downloads/curl/DownloadCurl.cpp:
   4318         (WebKit::Download::didDecideDestination):
   4319         Stubbed.
   4320 
   4321         * WebProcess/Downloads/mac/DownloadMac.mm:
   4322         (WebKit::Download::didDecideDestination):
   4323         Stubbed - unneeded on the Mac.
   4324 
   4325         * WebProcess/Downloads/qt/DownloadQt.cpp:
   4326         (WebKit::Download::didDecideDestination):
   4327         Stubbed.
   4328 
   4329 2011-01-29  Jeff Miller  <jeffm (a] apple.com>
   4330 
   4331         Reviewed by Anders Carlsson.
   4332 
   4333         Support find bouncy in WebKit2 on Windows
   4334         https://bugs.webkit.org/show_bug.cgi?id=53329
   4335         <rdar://problem/8565843>
   4336         The Mac implements the find bouncy inside of WebKit in the UI process for WebKit2, but we need to do this inside Safari for WebKit2 on Windows.
   4337         Add infrastructure to call back into the app when the find indicator changes.
   4338 
   4339         * UIProcess/API/C/win/WKView.cpp: Cleanup some code style violations.
   4340         (WKViewSetFindIndicatorCallback): Added.
   4341         (WKViewGetFindIndicatorCallback): Added.
   4342         * UIProcess/API/C/win/WKView.h: Cleanup some code style violations.
   4343         * UIProcess/FindIndicator.cpp:
   4344         (WebKit::FindIndicator::create):
   4345         (WebKit::FindIndicator::FindIndicator):
   4346         (WebKit::FindIndicator::frameRect):
   4347         (WebKit::FindIndicator::draw):
   4348         Rename m_selectionRect to m_selectionRectInWindowCoordinates and m_textRects to m_textRectsInSelectionRectCoordinates (along with similarly named local variables) to be more explict about the coordinate system.
   4349         * UIProcess/FindIndicator.h:
   4350         (WebKit::FindIndicator::selectionRectInWindowCoordinates): Added.
   4351         (WebKit::FindIndicator::textRects): Rename m_textRects to m_textRectsInSelectionRectCoordinates.
   4352         * UIProcess/WebPageProxy.cpp:
   4353         (WebKit::WebPageProxy::setFindIndicator): Rename selectionRect to selectionRectInWindowCoordinates and textRects to textRectsInSelectionRectCoordinates to be more explict about the coordinate system.
   4354         * UIProcess/WebPageProxy.h: Ditto.
   4355         * UIProcess/win/WebView.cpp:
   4356         (WebKit::WebView::WebView):
   4357         (WebKit::WebView::setFindIndicator): Added.
   4358         (WebKit::WebView::setFindIndicatorCallback): Added.
   4359         (WebKit::WebView::getFindIndicatorCallback): Added.
   4360         * UIProcess/win/WebView.h:
   4361 
   4362 2011-01-28  Alexey Proskuryakov  <ap (a] apple.com>
   4363 
   4364         Reviewed by Dan Bernstein.
   4365 
   4366         https://bugs.webkit.org/show_bug.cgi?id=53367
   4367         <rdar://problem/8926460> Remove dysfunctional code from -[WKPrintingView _isPrintingPreview].
   4368 
   4369         * UIProcess/API/mac/WKPrintingView.mm: (-[WKPrintingView _isPrintingPreview]): The common
   4370         branch works fine for now, no need to make platforms different.
   4371 
   4372 2011-01-28  Maciej Stachowiak  <mjs (a] apple.com>
   4373 
   4374         Reviewed by Dan Bernstein.
   4375 
   4376         WKPageGetEstimatedProgress returns wrong value after a mainframe provisional load has started
   4377         https://bugs.webkit.org/show_bug.cgi?id=53358
   4378 
   4379         * UIProcess/WebPageProxy.cpp:
   4380         (WebKit::WebPageProxy::didStartProgress): Start progress at the magic initial value, not 0.
   4381 
   4382 2011-01-28  Anders Carlsson  <andersca (a] apple.com>
   4383 
   4384         Yet another build fix (What was I thinking?)
   4385 
   4386         * WebProcess/Downloads/Download.h:
   4387         * WebProcess/Plugins/PluginProxy.h:
   4388 
   4389 2011-01-28  Anders Carlsson  <andersca (a] apple.com>
   4390 
   4391         Fix Windows build.
   4392 
   4393         * Shared/PrintInfo.h:
   4394 
   4395 2011-01-28  Anders Carlsson  <andersca (a] apple.com>
   4396 
   4397         Fix tyop.
   4398 
   4399         * Shared/mac/CoreAnimationRenderer.mm:
   4400 
   4401 2011-01-28  Anders Carlsson  <andersca (a] apple.com>
   4402 
   4403         Reviewed by Sam Weinig.
   4404 
   4405         Add CoreAnimationRenderer class
   4406         https://bugs.webkit.org/show_bug.cgi?id=53343
   4407 
   4408         * Shared/mac/CoreAnimationRenderer.h: Added.
   4409         * Shared/mac/CoreAnimationRenderer.mm: Added.
   4410 
   4411         (WebKit::CoreAnimationRenderer::CoreAnimationRenderer):
   4412         Initialize the underlying CARenderer object and hook up a notification observer.
   4413 
   4414         (WebKit::CoreAnimationRenderer::~CoreAnimationRenderer):
   4415         Assert that the client is null. It has been set to null by the call to invalidate().
   4416 
   4417         (WebKit::CoreAnimationRenderer::setBounds):
   4418         Update the bounds on the CARenderer and the root layer.
   4419 
   4420         (WebKit::CoreAnimationRenderer::render):
   4421         Ask the renderer to render and return the next frame time.
   4422 
   4423         (WebKit::CoreAnimationRenderer::invalidate):
   4424         Remove the change observer and reset the client.
   4425 
   4426         (WebKit::CoreAnimationRenderer::rendererDidChange):
   4427         Call the client member function.
   4428 
   4429         * WebKit2.xcodeproj/project.pbxproj:
   4430         Add new files.
   4431 
   4432 2011-01-28  Anders Carlsson  <andersca (a] apple.com>
   4433 
   4434         Reviewed by Sam Weinig.
   4435 
   4436         Add an OBJC_CLASS macro for forward declaring an Objective-C class
   4437         https://bugs.webkit.org/show_bug.cgi?id=53337
   4438 
   4439         * Shared/NativeWebKeyboardEvent.h:
   4440         * Shared/PrintInfo.h:
   4441         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   4442         * UIProcess/LayerBackedDrawingAreaProxy.h:
   4443         * UIProcess/WebInspectorProxy.h:
   4444         * UIProcess/mac/WebContextMenuProxyMac.h:
   4445         * UIProcess/mac/WebPopupMenuProxyMac.h:
   4446         * WebProcess/Downloads/Download.h:
   4447         * WebProcess/Plugins/PluginProxy.h:
   4448         * WebProcess/WebPage/LayerBackedDrawingArea.h:
   4449         * WebProcess/WebPage/WebPage.h:
   4450         * config.h:
   4451 
   4452 2011-01-28  Anders Carlsson  <andersca (a] apple.com>
   4453 
   4454         Reviewed by Sam Weinig.
   4455 
   4456         Don't put config.h in the message headers.
   4457 
   4458         * Scripts/webkit2/messages.py:
   4459         * Scripts/webkit2/messages_unittest.py:
   4460 
   4461 2011-01-28  Anders Carlsson  <andersca (a] apple.com>
   4462 
   4463         Fix build.
   4464 
   4465         * Shared/mac/ShareableSurface.cpp:
   4466 
   4467 2011-01-28  Anders Carlsson  <andersca (a] apple.com>
   4468 
   4469         Try to unbreak the Windows build.
   4470 
   4471         * UIProcess/cf/WebPageProxyCF.cpp:
   4472 
   4473 2011-01-28  Brady Eidson  <beidson (a] apple.com>
   4474 
   4475         Reviewed by John Sullivan.
   4476 
   4477         https://bugs.webkit.org/show_bug.cgi?id=53330
   4478         Need InjectedBundle API to get the response MIMEType for a URL
   4479 
   4480         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   4481         (WKBundleFrameCopyMIMETypeForResourceWithURL):
   4482         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   4483 
   4484         Get the MIMEType from the in-memory cache, or cachedResponseMIMETypeForURL() if not available:
   4485         * WebProcess/WebPage/WebFrame.cpp:
   4486         (WebKit::WebFrame::mimeTypeForResourceWithURL):
   4487         * WebProcess/WebPage/WebFrame.h:
   4488 
   4489         Get the MIMEType from the platform's disk cache if available:
   4490         * WebProcess/WebPage/WebPage.h:
   4491         * WebProcess/WebPage/mac/WebPageMac.mm:
   4492         (WebKit::WebPage::cachedResponseMIMETypeForURL):
   4493         * WebProcess/WebPage/qt/WebPageQt.cpp:
   4494         (WebKit::WebPage::cachedResponseMIMETypeForURL):
   4495         * WebProcess/WebPage/win/WebPageWin.cpp:
   4496         (WebKit::WebPage::cachedResponseMIMETypeForURL):
   4497 
   4498 2011-01-28  Anders Carlsson  <andersca (a] apple.com>
   4499 
   4500         Reviewed by Sam Weinig.
   4501 
   4502         Clean up the mess introduced when config.h was added to the project:
   4503 
   4504         - Remove the contents of WebKit2Prefix.h that is now in config.h, to avoid including everything
   4505           twice in each file, probably slowing down compile time.
   4506 
   4507         - Add config.h to all the files that were forgotten in order to keep the build from breaking.
   4508 
   4509         - Added trap to ensure that config.h is included at the top of every implementation file. If this
   4510           had been added it would have caught the previous issue.
   4511 
   4512 2011-01-28  Stephanie Lewis  <slewis (a] apple.com>
   4513 
   4514         Reviewed by Geoff Garen.
   4515 
   4516         <rdar://problem/8857651> Implement unregisterWorld for WebKit2
   4517         Rename unregisterWorld to clearWrappers.  Clearing the wrappers reduces the 
   4518         memory use of isolated worlds.
   4519 
   4520         * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.cpp:
   4521         (WKBundleScriptWorldClearWrappers):
   4522         * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.h:
   4523         * WebProcess/InjectedBundle/InjectedBundleScriptWorld.cpp:
   4524         (WebKit::InjectedBundleScriptWorld::clearWrappers):
   4525         * WebProcess/InjectedBundle/InjectedBundleScriptWorld.h:
   4526 
   4527 2011-01-28  Dan Bernstein  <mitz (a] apple.com>
   4528 
   4529         Reviewed by Sam Weinig.
   4530 
   4531         <select> can't display right-to-left (rtl) languages
   4532         https://bugs.webkit.org/show_bug.cgi?id=19785
   4533 
   4534         * Shared/WebPopupItem.cpp:
   4535         (WebKit::WebPopupItem::WebPopupItem): Added initializers for m_textDirection and m_hasTextDirectionOverride.
   4536         (WebKit::WebPopupItem::encode): Encode the item's writing direction and direction override values.
   4537         (WebKit::WebPopupItem::decode): Decode the item's writing direction and direction override values.
   4538         * Shared/WebPopupItem.h:
   4539         * UIProcess/WebPageProxy.cpp:
   4540         (WebKit::WebPageProxy::showPopupMenu): Added a parameter for the menu's text direction.
   4541         * UIProcess/WebPageProxy.h:
   4542         * UIProcess/WebPageProxy.messages.in: Ditto.
   4543         * UIProcess/WebPopupMenuProxy.h:
   4544         * UIProcess/mac/WebPopupMenuProxyMac.h:
   4545         * UIProcess/mac/WebPopupMenuProxyMac.mm:
   4546         (WebKit::WebPopupMenuProxyMac::populate): Added a parameter for the menu's text direction.
   4547         Set items' text alignment to match the menu's writing direction. Set items' writing direction
   4548         and direction override according to their styles.
   4549         (WebKit::WebPopupMenuProxyMac::showPopupMenu): Set the pop-up's layout direction.
   4550         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   4551         (WebKit::WebChromeClient::selectItemWritingDirectionIsNatural): Changed to return false.
   4552         (WebKit::WebChromeClient::selectItemAlignmentFollowsMenuWritingDirection): Added.
   4553         * WebProcess/WebCoreSupport/WebChromeClient.h:
   4554         * WebProcess/WebCoreSupport/WebPopupMenu.cpp:
   4555         (WebKit::WebPopupMenu::populateItems): Initialize items' writing direction and direction override
   4556         values.
   4557         (WebKit::WebPopupMenu::show): Pass the menu's writing direction.
   4558 
   4559 2011-01-28  Anders Carlsson  <andersca (a] apple.com>
   4560 
   4561         Reviewed by Adam Roben.
   4562 
   4563         Add ShareableSurface class
   4564         https://bugs.webkit.org/show_bug.cgi?id=53313
   4565 
   4566         * Shared/mac/ShareableSurface.cpp: Added.
   4567         (WebKit::ShareableSurface::Handle::Handle):
   4568         Initialize the mach port.
   4569 
   4570         (WebKit::ShareableSurface::Handle::~Handle):
   4571         Deallocate our send right if needed.
   4572 
   4573         (WebKit::ShareableSurface::Handle::encode):
   4574         Encode the send right, and then null it out.
   4575 
   4576         (WebKit::ShareableSurface::Handle::decode):
   4577         Decode the send right.
   4578         
   4579         (WebKit::createIOSurface):
   4580         Create an IOSurface with the given size.
   4581 
   4582         (WebKit::ShareableSurface::create):
   4583         Create an IOSurface, either from a size or from a handle.
   4584 
   4585         (WebKit::ShareableSurface::~ShareableSurface):
   4586         Delete the texture and framebuffer.
   4587 
   4588         (WebKit::ShareableSurface::createHandle):
   4589         Create a mach port from the surface.
   4590 
   4591         (WebKit::ShareableSurface::attach):
   4592         Create an FBO if needed and bind it.
   4593 
   4594         (WebKit::ShareableSurface::detach):
   4595         Unbind the FBO.
   4596 
   4597         (WebKit::ShareableSurface::textureID):
   4598         Generate a new texture and bind it to the IOSurface.
   4599 
   4600         * Shared/mac/ShareableSurface.h: Added.
   4601 
   4602         * WebKit2.xcodeproj/project.pbxproj:
   4603         Add new files.
   4604 
   4605 2011-01-27  Adam Roben  <aroben (a] apple.com>
   4606 
   4607         Change BinarySemaphore to wrap an auto-reset Win32 event on Windows
   4608 
   4609         Fixes <http://webkit.org/b/53208> <rdar://problem/8922490>.
   4610 
   4611         Reviewed by Dave Hyatt.
   4612 
   4613         * Platform/CoreIPC/BinarySemaphore.cpp: Wrap this implementation in #if !PLATFORM(WIN).
   4614 
   4615         * Platform/CoreIPC/BinarySemaphore.h: Make the Windows implementation have a single HANDLE
   4616         member that holds the event.
   4617 
   4618         * Platform/CoreIPC/win/BinarySemaphoreWin.cpp: Copied from Source/WebKit2/Platform/CoreIPC/BinarySemaphore.cpp.
   4619         (CoreIPC::BinarySemaphore::BinarySemaphore): Create our event.
   4620         (CoreIPC::BinarySemaphore::~BinarySemaphore): Destory our event.
   4621         (CoreIPC::BinarySemaphore::signal): Signal the event.
   4622         (CoreIPC::BinarySemaphore::wait): Convert the absolute time to a wait interval, then wait
   4623         for the event to be signaled or for the interval to elapse.
   4624 
   4625         * win/WebKit2.vcproj: Added BinarySemaphoreWin.cpp. Also let VS have its way with the file.
   4626 
   4627 2011-01-27  Chris Marrin  <cmarrin (a] apple.com>
   4628 
   4629         Reviewed by Anders Carlsson.
   4630 
   4631         WebKit2: Page flashes just before accelerated compositing animation
   4632         https://bugs.webkit.org/show_bug.cgi?id=53274
   4633 
   4634         When switching out of compositing mode, the new ChunkedUpdateDrawingAreaProxy
   4635         is getting created with the current page size. When the setSize() call is
   4636         subsequently made, the sizeDidChange() call is not made (which does the initial
   4637         render of the page) because the old size and new size are the same. The solution
   4638         is to skip the setting of the size in the ctor and let it go through a size
   4639         change sequence.
   4640 
   4641         * UIProcess/DrawingAreaProxy.cpp:
   4642         (WebKit::DrawingAreaProxy::DrawingAreaProxy):
   4643 
   4644 2011-01-28  Alejandro G. Castro  <alex (a] igalia.com>
   4645 
   4646         Reviewed by Xan Lopez.
   4647 
   4648         [GTK] Fix dist compilation for the release
   4649         https://bugs.webkit.org/show_bug.cgi?id=53290
   4650 
   4651         * GNUmakefile.am: Remove a file that is not in the repository
   4652         anymore.
   4653 
   4654 
   4655 2011-01-28  Andreas Kling  <kling (a] webkit.org>
   4656 
   4657         Rubber-stamped by Simon Hausmann.
   4658 
   4659         [Qt][WK2] Combine QWKPage::engine{Connected,Disconnected} into one signal.
   4660 
   4661         Having two signals for this is redundant, combine them into
   4662         QWKPage::engineConnectionChanged(bool connected).
   4663 
   4664         * UIProcess/API/qt/qwkpage.cpp:
   4665         (QWKPagePrivate::didRelaunchProcess):
   4666         (QWKPagePrivate::processDidCrash):
   4667         * UIProcess/API/qt/qwkpage.h:
   4668 
   4669 2011-01-27  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   4670 
   4671         Reviewed by Maciej Stachowiak.
   4672 
   4673         Build fix for Mac Intel Debug after r76916
   4674         https://bugs.webkit.org/show_bug.cgi?id=53284
   4675 
   4676         Fix macro redefinition by guarding the redefined macros.
   4677 
   4678         * config.h:
   4679 
   4680 2011-01-27  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   4681 
   4682         Unreviewed build fix for Mac Intel Debug after r76916.
   4683 
   4684         Fix macro redefinition by guarding the redefined macros.
   4685 
   4686         Check if the macro is already defined before defininig it.
   4687         c++config.h has the same macros with the same values.
   4688 
   4689         * config.h:
   4690 
   4691 2011-01-27  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   4692 
   4693         Reviewed by Adam Barth.
   4694 
   4695         Update the expected results for test-webkitpy after r76916.
   4696 
   4697         Include "config.h" in the expected results as well.
   4698 
   4699         * Scripts/webkit2/messages_unittest.py:
   4700 
   4701 2011-01-27  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   4702 
   4703         Unreviewed buildfix for SnowLeopard Intel Debug.
   4704 
   4705         Fix macro redefinition by not including config.h.
   4706 
   4707         Revert previous change in WebPageProxyCF.cpp.
   4708 
   4709         * UIProcess/cf/WebPageProxyCF.cpp:
   4710 
   4711 2011-01-27  Greg Coletta  <greg.coletta (a] nokia.com>
   4712 
   4713         Reviewed by Laszlo Gombos.
   4714 
   4715         Get rid of prefix header dependency for WebKit2 build system.
   4716         https://bugs.webkit.org/show_bug.cgi?id=50174
   4717 
   4718         Add config.h include explicitelly.
   4719 
   4720         * Platform/CoreIPC/ArgumentDecoder.cpp:
   4721         * Platform/CoreIPC/ArgumentEncoder.cpp:
   4722         * Platform/CoreIPC/Attachment.cpp:
   4723         * Platform/CoreIPC/BinarySemaphore.cpp:
   4724         * Platform/CoreIPC/Connection.cpp:
   4725         * Platform/CoreIPC/DataReference.cpp:
   4726         * Platform/CoreIPC/gtk/ConnectionGtk.cpp:
   4727         * Platform/CoreIPC/mac/ConnectionMac.cpp:
   4728         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   4729         * Platform/CoreIPC/win/ConnectionWin.cpp:
   4730         * Platform/Logging.cpp:
   4731         * Platform/Module.cpp:
   4732         * Platform/Region.cpp:
   4733         * Platform/RunLoop.cpp:
   4734         * Platform/WorkQueue.cpp:
   4735         * Platform/cg/CGUtilities.cpp:
   4736         * Platform/gtk/RunLoopGtk.cpp:
   4737         * Platform/gtk/SharedMemoryGtk.cpp:
   4738         * Platform/gtk/WorkQueueGtk.cpp:
   4739         * Platform/mac/MachUtilities.cpp:
   4740         * Platform/mac/SharedMemoryMac.cpp:
   4741         * Platform/mac/WorkQueueMac.cpp:
   4742         * Platform/qt/MappedMemoryPool.cpp:
   4743         * Platform/qt/ModuleQt.cpp:
   4744         * Platform/qt/RunLoopQt.cpp:
   4745         * Platform/qt/WorkQueueQt.cpp:
   4746         * Platform/win/ModuleWin.cpp:
   4747         * Platform/win/RunLoopWin.cpp:
   4748         * Platform/win/SharedMemoryWin.cpp:
   4749         * Platform/win/WorkQueueWin.cpp:
   4750         * PluginProcess/PluginControllerProxy.cpp:
   4751         * PluginProcess/PluginProcess.cpp:
   4752         * PluginProcess/WebProcessConnection.cpp:
   4753         * Scripts/webkit2/messages.py:
   4754         * Shared/API/c/WKArray.cpp:
   4755         * Shared/API/c/WKCertificateInfo.cpp:
   4756         * Shared/API/c/WKContextMenuItem.cpp:
   4757         * Shared/API/c/WKData.cpp:
   4758         * Shared/API/c/WKDictionary.cpp:
   4759         * Shared/API/c/WKError.cpp:
   4760         * Shared/API/c/WKImage.cpp:
   4761         * Shared/API/c/WKMutableArray.cpp:
   4762         * Shared/API/c/WKMutableDictionary.cpp:
   4763         * Shared/API/c/WKNumber.cpp:
   4764         * Shared/API/c/WKSecurityOrigin.cpp:
   4765         * Shared/API/c/WKSerializedScriptValue.cpp:
   4766         * Shared/API/c/WKString.cpp:
   4767         * Shared/API/c/WKType.cpp:
   4768         * Shared/API/c/WKURL.cpp:
   4769         * Shared/API/c/WKURLRequest.cpp:
   4770         * Shared/API/c/WKURLResponse.cpp:
   4771         * Shared/API/c/WKUserContentURLPattern.cpp:
   4772         * Shared/API/c/cf/WKStringCF.cpp:
   4773         * Shared/API/c/cf/WKURLCF.cpp:
   4774         * Shared/API/c/cf/WKURLRequestCF.cpp:
   4775         * Shared/API/c/cf/WKURLResponseCF.cpp:
   4776         * Shared/API/c/cg/WKImageCG.cpp:
   4777         * Shared/API/c/win/WKCertificateInfoWin.cpp:
   4778         * Shared/ChildProcess.cpp:
   4779         * Shared/ImmutableArray.cpp:
   4780         * Shared/ImmutableDictionary.cpp:
   4781         * Shared/MutableArray.cpp:
   4782         * Shared/MutableDictionary.cpp:
   4783         * Shared/OriginAndDatabases.cpp:
   4784         * Shared/PlatformPopupMenuData.cpp:
   4785         * Shared/Plugins/NPIdentifierData.cpp:
   4786         * Shared/Plugins/NPObjectMessageReceiver.cpp:
   4787         * Shared/Plugins/NPObjectProxy.cpp:
   4788         * Shared/Plugins/NPRemoteObjectMap.cpp:
   4789         * Shared/Plugins/NPVariantData.cpp:
   4790         * Shared/Plugins/Netscape/NetscapePluginModule.cpp:
   4791         * Shared/Plugins/Netscape/win/NetscapePluginModuleWin.cpp:
   4792         * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
   4793         * Shared/Plugins/PluginProcessCreationParameters.cpp:
   4794         * Shared/PrintInfo.cpp:
   4795         * Shared/SessionState.cpp:
   4796         * Shared/ShareableBitmap.cpp:
   4797         * Shared/UpdateInfo.cpp:
   4798         * Shared/VisitedLinkTable.cpp:
   4799         * Shared/WebBackForwardListItem.cpp:
   4800         * Shared/WebContextMenuItem.cpp:
   4801         * Shared/WebContextMenuItemData.cpp:
   4802         * Shared/WebError.cpp:
   4803         * Shared/WebEvent.cpp:
   4804         * Shared/WebEventConversion.cpp:
   4805         * Shared/WebGeolocationPosition.cpp:
   4806         * Shared/WebImage.cpp:
   4807         * Shared/WebKeyboardEvent.cpp:
   4808         * Shared/WebMemorySampler.cpp:
   4809         * Shared/WebMouseEvent.cpp:
   4810         * Shared/WebOpenPanelParameters.cpp:
   4811         * Shared/WebPageCreationParameters.cpp:
   4812         * Shared/WebPageGroupData.cpp:
   4813         * Shared/WebPlatformTouchPoint.cpp:
   4814         * Shared/WebPopupItem.cpp:
   4815         * Shared/WebPreferencesStore.cpp:
   4816         * Shared/WebProcessCreationParameters.cpp:
   4817         * Shared/WebTouchEvent.cpp:
   4818         * Shared/WebURLRequest.cpp:
   4819         * Shared/WebURLResponse.cpp:
   4820         * Shared/WebWheelEvent.cpp:
   4821         * Shared/cairo/ShareableBitmapCairo.cpp:
   4822         * Shared/cf/ArgumentCodersCF.cpp:
   4823         * Shared/cg/ShareableBitmapCG.cpp:
   4824         * Shared/gtk/ShareableBitmapGtk.cpp:
   4825         * Shared/gtk/WebCoreArgumentCodersGtk.cpp:
   4826         * Shared/mac/CommandLineMac.cpp:
   4827         * Shared/mac/UpdateChunk.cpp:
   4828         * Shared/qt/CleanupHandler.cpp:
   4829         * Shared/qt/NativeWebKeyboardEventQt.cpp:
   4830         * Shared/qt/ShareableBitmapQt.cpp:
   4831         * Shared/qt/UpdateChunk.cpp:
   4832         * Shared/qt/WebCoreArgumentCodersQt.cpp:
   4833         * Shared/qt/WebEventFactoryQt.cpp:
   4834         * Shared/qt/WebURLRequestQt.cpp:
   4835         * Shared/qt/WebURLResponseQt.cpp:
   4836         * Shared/win/CommandLineWin.cpp:
   4837         * Shared/win/NativeWebKeyboardEventWin.cpp:
   4838         * Shared/win/PlatformCertificateInfo.cpp:
   4839         * Shared/win/UpdateChunk.cpp:
   4840         * Shared/win/WebCoreArgumentCodersWin.cpp:
   4841         * Shared/win/WebEventFactory.cpp:
   4842         * Shared/win/WebURLRequestWin.cpp:
   4843         * Shared/win/WebURLResponseWin.cpp:
   4844         * UIProcess/API/C/WKAuthenticationChallenge.cpp:
   4845         * UIProcess/API/C/WKAuthenticationDecisionListener.cpp:
   4846         * UIProcess/API/C/WKBackForwardList.cpp:
   4847         * UIProcess/API/C/WKBackForwardListItem.cpp:
   4848         * UIProcess/API/C/WKContext.cpp:
   4849         * UIProcess/API/C/WKCredential.cpp:
   4850         * UIProcess/API/C/WKDatabaseManager.cpp:
   4851         * UIProcess/API/C/WKDownload.cpp:
   4852         * UIProcess/API/C/WKFormSubmissionListener.cpp:
   4853         * UIProcess/API/C/WKFrame.cpp:
   4854         * UIProcess/API/C/WKFramePolicyListener.cpp:
   4855         * UIProcess/API/C/WKGeolocationManager.cpp:
   4856         * UIProcess/API/C/WKGeolocationPermissionRequest.cpp:
   4857         * UIProcess/API/C/WKGeolocationPosition.cpp:
   4858         * UIProcess/API/C/WKInspector.cpp:
   4859         * UIProcess/API/C/WKNavigationData.cpp:
   4860         * UIProcess/API/C/WKOpenPanelParameters.cpp:
   4861         * UIProcess/API/C/WKOpenPanelResultListener.cpp:
   4862         * UIProcess/API/C/WKPage.cpp:
   4863         * UIProcess/API/C/WKPageGroup.cpp:
   4864         * UIProcess/API/C/WKPreferences.cpp:
   4865         * UIProcess/API/C/WKProtectionSpace.cpp:
   4866         * UIProcess/API/C/win/WKContextWin.cpp:
   4867         * UIProcess/API/C/win/WKView.cpp:
   4868         * UIProcess/API/C/win/WKViewPrivate.cpp:
   4869         * UIProcess/API/cpp/qt/WKStringQt.cpp:
   4870         * UIProcess/API/cpp/qt/WKURLQt.cpp:
   4871         * UIProcess/API/qt/ClientImpl.cpp:
   4872         * UIProcess/API/qt/qgraphicswkview.cpp:
   4873         * UIProcess/API/qt/qwkcontext.cpp:
   4874         * UIProcess/API/qt/qwkpage.cpp:
   4875         * UIProcess/API/qt/qwkpreferences.cpp:
   4876         * UIProcess/Authentication/AuthenticationChallengeProxy.cpp:
   4877         * UIProcess/Authentication/AuthenticationDecisionListener.cpp:
   4878         * UIProcess/Authentication/WebCredential.cpp:
   4879         * UIProcess/Authentication/WebProtectionSpace.cpp:
   4880         * UIProcess/BackingStore.cpp:
   4881         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   4882         * UIProcess/Downloads/DownloadProxy.cpp:
   4883         * UIProcess/DrawingAreaProxy.cpp:
   4884         * UIProcess/DrawingAreaProxyImpl.cpp:
   4885         * UIProcess/FindIndicator.cpp:
   4886         * UIProcess/GeolocationPermissionRequestManagerProxy.cpp:
   4887         * UIProcess/GeolocationPermissionRequestProxy.cpp:
   4888         * UIProcess/Launcher/ProcessLauncher.cpp:
   4889         * UIProcess/Launcher/ThreadLauncher.cpp:
   4890         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
   4891         * UIProcess/Launcher/gtk/ThreadLauncherGtk.cpp:
   4892         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   4893         * UIProcess/Launcher/qt/ThreadLauncherQt.cpp:
   4894         * UIProcess/Launcher/win/ProcessLauncherWin.cpp:
   4895         * UIProcess/Launcher/win/ThreadLauncherWin.cpp:
   4896         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   4897         * UIProcess/Plugins/PluginInfoStore.cpp:
   4898         * UIProcess/Plugins/PluginProcessManager.cpp:
   4899         * UIProcess/Plugins/PluginProcessProxy.cpp:
   4900         * UIProcess/Plugins/gtk/PluginInfoStoreGtk.cpp:
   4901         * UIProcess/Plugins/qt/PluginInfoStoreQt.cpp:
   4902         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
   4903         * UIProcess/ResponsivenessTimer.cpp:
   4904         * UIProcess/TiledDrawingAreaProxy.cpp:
   4905         * UIProcess/VisitedLinkProvider.cpp:
   4906         * UIProcess/WebBackForwardList.cpp:
   4907         * UIProcess/WebContext.cpp:
   4908         * UIProcess/WebContextInjectedBundleClient.cpp:
   4909         * UIProcess/WebContextMenuProxy.cpp:
   4910         * UIProcess/WebDatabaseManagerProxy.cpp:
   4911         * UIProcess/WebDatabaseManagerProxyClient.cpp:
   4912         * UIProcess/WebDownloadClient.cpp:
   4913         * UIProcess/WebEditCommandProxy.cpp:
   4914         * UIProcess/WebFindClient.cpp:
   4915         * UIProcess/WebFormClient.cpp:
   4916         * UIProcess/WebFormSubmissionListenerProxy.cpp:
   4917         * UIProcess/WebFrameListenerProxy.cpp:
   4918         * UIProcess/WebFramePolicyListenerProxy.cpp:
   4919         * UIProcess/WebFrameProxy.cpp:
   4920         * UIProcess/WebGeolocationManagerProxy.cpp:
   4921         * UIProcess/WebGeolocationProvider.cpp:
   4922         * UIProcess/WebHistoryClient.cpp:
   4923         * UIProcess/WebInspectorProxy.cpp:
   4924         * UIProcess/WebLoaderClient.cpp:
   4925         * UIProcess/WebNavigationData.cpp:
   4926         * UIProcess/WebOpenPanelResultListenerProxy.cpp:
   4927         * UIProcess/WebPageContextMenuClient.cpp:
   4928         * UIProcess/WebPageGroup.cpp:
   4929         * UIProcess/WebPageProxy.cpp:
   4930         * UIProcess/WebPolicyClient.cpp:
   4931         * UIProcess/WebPreferences.cpp:
   4932         * UIProcess/WebProcessManager.cpp:
   4933         * UIProcess/WebProcessProxy.cpp:
   4934         * UIProcess/WebResourceLoadClient.cpp:
   4935         * UIProcess/WebUIClient.cpp:
   4936         * UIProcess/cf/WebBackForwardListCF.cpp:
   4937         * UIProcess/cf/WebPageProxyCF.cpp:
   4938         * UIProcess/cf/WebPreferencesCF.cpp:
   4939         * UIProcess/gtk/TextCheckerGtk.cpp:
   4940         * UIProcess/gtk/WebInspectorGtk.cpp:
   4941         * UIProcess/gtk/WebPageProxyGtk.cpp:
   4942         * UIProcess/gtk/WebPreferencesGtk.cpp:
   4943         * UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp:
   4944         * UIProcess/qt/TextCheckerQt.cpp:
   4945         * UIProcess/qt/TiledDrawingAreaProxyQt.cpp:
   4946         * UIProcess/qt/TiledDrawingAreaTileQt.cpp:
   4947         * UIProcess/qt/WebContextMenuProxyQt.cpp:
   4948         * UIProcess/qt/WebContextQt.cpp:
   4949         * UIProcess/qt/WebInspectorProxyQt.cpp:
   4950         * UIProcess/qt/WebPageProxyQt.cpp:
   4951         * UIProcess/qt/WebPopupMenuProxyQt.cpp:
   4952         * UIProcess/qt/WebPreferencesQt.cpp:
   4953         * UIProcess/win/ChunkedUpdateDrawingAreaProxyWin.cpp:
   4954         * UIProcess/win/LayerBackedDrawingAreaProxyWin.cpp:
   4955         * UIProcess/win/TextCheckerWin.cpp:
   4956         * UIProcess/win/WebContextMenuProxyWin.cpp:
   4957         * UIProcess/win/WebContextWin.cpp:
   4958         * UIProcess/win/WebInspectorProxyWin.cpp:
   4959         * UIProcess/win/WebPageProxyWin.cpp:
   4960         * UIProcess/win/WebPopupMenuProxyWin.cpp:
   4961         * UIProcess/win/WebView.cpp:
   4962         * WebKit2.xcodeproj/project.pbxproj:
   4963         * WebProcess/Authentication/AuthenticationManager.cpp:
   4964         * WebProcess/Downloads/Download.cpp:
   4965         * WebProcess/Downloads/DownloadManager.cpp:
   4966         * WebProcess/Downloads/cf/DownloadCFNet.cpp:
   4967         * WebProcess/Downloads/curl/DownloadCurl.cpp:
   4968         * WebProcess/Downloads/qt/DownloadQt.cpp:
   4969         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
   4970         * WebProcess/Geolocation/WebGeolocationManager.cpp:
   4971         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   4972         * WebProcess/InjectedBundle/API/c/WKBundleBackForwardList.cpp:
   4973         * WebProcess/InjectedBundle/API/c/WKBundleBackForwardListItem.cpp:
   4974         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   4975         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:
   4976         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
   4977         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   4978         * WebProcess/InjectedBundle/API/c/WKBundlePageGroup.cpp:
   4979         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
   4980         * WebProcess/InjectedBundle/API/c/WKBundleRangeHandle.cpp:
   4981         * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.cpp:
   4982         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
   4983         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
   4984         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   4985         * WebProcess/InjectedBundle/InjectedBundleBackForwardList.cpp:
   4986         * WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.cpp:
   4987         * WebProcess/InjectedBundle/InjectedBundleClient.cpp:
   4988         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
   4989         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:
   4990         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
   4991         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
   4992         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   4993         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
   4994         * WebProcess/InjectedBundle/InjectedBundleScriptWorld.cpp:
   4995         * WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp:
   4996         * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp:
   4997         * WebProcess/InjectedBundle/qt/InjectedBundleQt.cpp:
   4998         * WebProcess/InjectedBundle/win/InjectedBundleWin.cpp:
   4999         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
   5000         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
   5001         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
   5002         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
   5003         * WebProcess/Plugins/Netscape/NPRuntimeUtilities.cpp:
   5004         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   5005         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   5006         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   5007         * WebProcess/Plugins/Netscape/gtk/NetscapePluginGtk.cpp:
   5008         * WebProcess/Plugins/Netscape/qt/NetscapePluginQt.cpp:
   5009         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
   5010         * WebProcess/Plugins/Plugin.cpp:
   5011         * WebProcess/Plugins/PluginProcessConnection.cpp:
   5012         * WebProcess/Plugins/PluginProcessConnectionManager.cpp:
   5013         * WebProcess/Plugins/PluginProxy.cpp:
   5014         * WebProcess/Plugins/PluginView.cpp:
   5015         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   5016         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
   5017         * WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
   5018         * WebProcess/WebCoreSupport/WebDragClient.cpp:
   5019         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   5020         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   5021         * WebProcess/WebCoreSupport/WebGeolocationClient.cpp:
   5022         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
   5023         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
   5024         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   5025         * WebProcess/WebCoreSupport/WebPopupMenu.cpp:
   5026         * WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp:
   5027         * WebProcess/WebCoreSupport/gtk/WebContextMenuClientGtk.cpp:
   5028         * WebProcess/WebCoreSupport/gtk/WebPopupMenuGtk.cpp:
   5029         * WebProcess/WebCoreSupport/qt/WebContextMenuClientQt.cpp:
   5030         * WebProcess/WebCoreSupport/qt/WebErrorsQt.cpp:
   5031         * WebProcess/WebCoreSupport/qt/WebFrameNetworkingContext.cpp:
   5032         * WebProcess/WebCoreSupport/qt/WebPopupMenuQt.cpp:
   5033         * WebProcess/WebCoreSupport/win/WebContextMenuClientWin.cpp:
   5034         * WebProcess/WebCoreSupport/win/WebErrorsWin.cpp:
   5035         * WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp:
   5036         * WebProcess/WebKitMain.cpp:
   5037         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   5038         * WebProcess/WebPage/DecoderAdapter.cpp:
   5039         * WebProcess/WebPage/DrawingArea.cpp:
   5040         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   5041         * WebProcess/WebPage/EncoderAdapter.cpp:
   5042         * WebProcess/WebPage/FindController.cpp:
   5043         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   5044         * WebProcess/WebPage/PageOverlay.cpp:
   5045         * WebProcess/WebPage/TiledDrawingArea.cpp:
   5046         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   5047         * WebProcess/WebPage/WebContextMenu.cpp:
   5048         * WebProcess/WebPage/WebEditCommand.cpp:
   5049         * WebProcess/WebPage/WebFrame.cpp:
   5050         * WebProcess/WebPage/WebInspector.cpp:
   5051         * WebProcess/WebPage/WebOpenPanelResultListener.cpp:
   5052         * WebProcess/WebPage/WebPage.cpp:
   5053         * WebProcess/WebPage/WebPageGroupProxy.cpp:
   5054         * WebProcess/WebPage/gtk/WebInspectorGtk.cpp:
   5055         * WebProcess/WebPage/mac/ChunkedUpdateDrawingAreaMac.cpp:
   5056         * WebProcess/WebPage/qt/ChunkedUpdateDrawingAreaQt.cpp:
   5057         * WebProcess/WebPage/qt/TiledDrawingAreaQt.cpp:
   5058         * WebProcess/WebPage/qt/WebInspectorQt.cpp:
   5059         * WebProcess/WebPage/qt/WebPageQt.cpp:
   5060         * WebProcess/WebPage/win/ChunkedUpdateDrawingAreaWin.cpp:
   5061         * WebProcess/WebPage/win/LayerBackedDrawingAreaWin.cpp:
   5062         * WebProcess/WebPage/win/WebInspectorWin.cpp:
   5063         * WebProcess/WebPage/win/WebPageWin.cpp:
   5064         * WebProcess/WebProcess.cpp:
   5065         * WebProcess/gtk/WebProcessGtk.cpp:
   5066         * WebProcess/gtk/WebProcessMainGtk.cpp:
   5067         * WebProcess/qt/WebProcessMainQt.cpp:
   5068         * WebProcess/qt/WebProcessQt.cpp:
   5069         * WebProcess/win/WebProcessMainWin.cpp:
   5070         * WebProcess/win/WebProcessWin.cpp:
   5071         * config.h: Copied from Source/WebKit2/WebKit2Prefix.h.
   5072         * win/WebKit2Common.vsprops:
   5073 
   5074 2011-01-27  Maciej Stachowiak  <mjs (a] apple.com>
   5075 
   5076         Reviewed by Darin Adler.
   5077 
   5078         execCommand("Paste") doesn't work in WebKitTestRunner
   5079         https://bugs.webkit.org/show_bug.cgi?id=52785
   5080         
   5081         Thread through the new JavaScriptCanAccessClipboard setting.
   5082 
   5083         * Shared/WebPreferencesStore.h:
   5084         * UIProcess/API/C/WKPreferences.cpp:
   5085         (WKPreferencesSetJavaScriptCanAccessClipboard):
   5086         (WKPreferencesGetJavaScriptCanAccessClipboard):
   5087         * UIProcess/API/C/WKPreferences.h:
   5088         * WebProcess/WebPage/WebPage.cpp:
   5089         (WebKit::WebPage::updatePreferences):
   5090 
   5091 2011-01-27  Nate Chapin  <japhet (a] chromium.org>
   5092 
   5093         Reviewed by Adam Barth.
   5094 
   5095         Use Document::url() instead of FrameLoader::url().
   5096         https://bugs.webkit.org/show_bug.cgi?id=41165
   5097 
   5098         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   5099         (WebKit::WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
   5100         (WebKit::WebFrameLoaderClient::dispatchDidPushStateWithinPage):
   5101         (WebKit::WebFrameLoaderClient::dispatchDidReplaceStateWithinPage):
   5102         (WebKit::WebFrameLoaderClient::dispatchDidPopStateWithinPage):
   5103         * WebProcess/WebPage/WebFrame.cpp:
   5104         (WebKit::WebFrame::url):
   5105 
   5106 2011-01-27  Sam Weinig  <sam (a] webkit.org>
   5107 
   5108         Reviewed by Anders Carlsson.
   5109 
   5110         Encode/Decode hasPreciseScrollingDeltas bit in WebWheelEvent
   5111         https://bugs.webkit.org/show_bug.cgi?id=53254
   5112 
   5113         * Shared/WebWheelEvent.cpp:
   5114         (WebKit::WebWheelEvent::WebWheelEvent):
   5115         Initialize m_phase and m_hasPreciseScrollingDeltas.
   5116 
   5117         (WebKit::WebWheelEvent::encode):
   5118         (WebKit::WebWheelEvent::decode):
   5119         Add missing coding for m_hasPreciseScrollingDeltas.
   5120 
   5121 2011-01-26  Enrica Casucci  <enrica (a] apple.com>
   5122 
   5123         Reviewed by Darin Adler and Adam Roben.
   5124 
   5125         WebKit2: add support for drag and drop on Windows
   5126         https://bugs.webkit.org/show_bug.cgi?id=52775
   5127         <rdar://problem/8514409>
   5128 
   5129         On Windows the access to the content being dragged is
   5130         provided via the IDataObject interface that is made available
   5131         to the window that registers itself as drop target.
   5132         Since this interface cannot be accessed from the WebProcess,
   5133         in every call to one of the methods of the IDropTarget interface
   5134         we serialize the content of the drag clipboard and send it over to
   5135         the WebProcess. The implementation uses the same messages as the
   5136         Mac one, with slightly different parameters to pass the serialized
   5137         clipboard.
   5138 
   5139         * UIProcess/WebPageProxy.cpp:
   5140         (WebKit::WebPageProxy::performDragControllerAction): Added Windows
   5141         specific implementation.
   5142         * UIProcess/WebPageProxy.h:
   5143         * UIProcess/win/WebView.cpp:
   5144         (WebKit::WebView::WebView): Added dropTargetHelper object creation.
   5145         (WebKit::WebView::initialize): Added to register for drag/drop with out
   5146         refcount issues.
   5147         (WebKit::WebView::close):
   5148         (WebKit::WebView::windowReceivedMessage):
   5149         (WebKit::WebView::QueryInterface):
   5150         (WebKit::WebView::AddRef):
   5151         (WebKit::WebView::Release):
   5152         (WebKit::dragOperationToDragCursor):
   5153         (WebKit::WebView::keyStateToDragOperation):
   5154         (WebKit::WebView::DragEnter):
   5155         (WebKit::WebView::DragOver):
   5156         (WebKit::WebView::DragLeave):
   5157         (WebKit::WebView::Drop):
   5158         * UIProcess/win/WebView.h:
   5159         (WebKit::WebView::create):
   5160         * WebProcess/WebPage/WebPage.cpp:
   5161         (WebKit::WebPage::performDragControllerAction):
   5162         * WebProcess/WebPage/WebPage.h:
   5163         * WebProcess/WebPage/WebPage.messages.in:
   5164 
   5165 2011-01-26  Alexey Proskuryakov  <ap (a] apple.com>
   5166 
   5167         Reviewed by Darin Adler.
   5168 
   5169         https://bugs.webkit.org/show_bug.cgi?id=53197
   5170         <rdar://problem/8895682> Make WebKit2 printing asynchronous
   5171 
   5172         <rdar://problem/8899988> REGRESSION(WebKit2): Attempting to print WHATWG HTML spec shows
   5173         1-page blank preview
   5174 
   5175         <rdar://problem/8900078> WebKit2 printing has a separate message exchange per page when
   5176         printing instead of printing all at once
   5177 
   5178         * UIProcess/API/mac/WKPrintingView.h: Store a lot more cached information.
   5179 
   5180         * UIProcess/API/mac/WKPrintingView.mm:
   5181         (-[WKPrintingView _adjustPrintingMarginsForHeaderAndFooter]): Use PrintOperation stored in
   5182         class. We generally want that now, because current operation will not be set up on other threads.
   5183         (-[WKPrintingView _isPrintingPreview]): Added. Preview is different, because it can draw
   5184         a placeholder - but actual printing need to wait until UI process has data.
   5185         (-[WKPrintingView _updatePreview]): Force AppKit to update print preview when we have real
   5186         data to replace placeholder with.
   5187         (-[WKPrintingView _hasPageRects]): Return if page rects have already been computed.
   5188         (-[WKPrintingView _expectedPreviewCallbackForRect:]): Find an existing request for this rect,
   5189         if any.
   5190         (pageDidDrawToPDF): Update preview - or if actually printing, release control to printing thread.
   5191         (-[WKPrintingView _preparePDFDataForPrintingOnSecondaryThread]): Ask for a PDF document with
   5192         pages the user asked to print.
   5193         (pageDidComputePageRects): When web process returns page geometry data, we update preview to display
   5194         a page count (which indirectly triggers a request for a preview). When actually printing,
   5195         request a PDF right away, we'll need it later.
   5196         (-[WKPrintingView _askPageToComputePageRects]): Ask web process for page geometry.
   5197         (prepareDataForPrintingOnSecondaryThread): This function starts preparing all data necessary
   5198         for actual printing on main thread.
   5199         (-[WKPrintingView knowsPageRange:]): Changed to be async for preview, and to call main
   5200         thread for actual printing.
   5201         (-[WKPrintingView _pageForRect:]): Find page number for a given range, assuming that AppKit
   5202         always asks for full pages.
   5203         (-[WKPrintingView _drawPDFDocument:page:atPoint:]): A helper function to draw a PDF document.
   5204         (-[WKPrintingView _drawPreview:]): Draw the whole page for preview.
   5205         (-[WKPrintingView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
   5206         Draw the whole page for actual printing.
   5207         (-[WKPrintingView _drawPageBorderWithSizeOnMainThread:]): Call drawPageBorderWithSize: with
   5208         correct graphics context and print operation.
   5209         (-[WKPrintingView drawPageBorderWithSize:]): Delegate work to main thread when called from a
   5210         secondary one.
   5211         (-[WKPrintingView _provideTotalScaleFactorForPrintOperation:]): Added an assertion that
   5212         our stored NSPrintOperation isn't out of sync with reality.
   5213         (-[WKPrintingView rectForPage:]): Handle the case where we don't have the data yet, drawing
   5214         a placeholder.
   5215         (-[WKPrintingView endDocument]): When page setup changes, we must reset all state.
   5216 
   5217         * UIProcess/API/mac/WKView.mm: (-[WKView printOperationWithPrintInfo:forFrame:]): Tell
   5218         NSPrintingView which operation it's serving, so that it knows it even when current operation
   5219         isn't set.
   5220 
   5221         * UIProcess/GenericCallback.h:
   5222         (WebKit::ComputedPagesCallback::create):
   5223         (WebKit::ComputedPagesCallback::~ComputedPagesCallback):
   5224         (WebKit::ComputedPagesCallback::performCallbackWithReturnValue):
   5225         (WebKit::ComputedPagesCallback::invalidate):
   5226         (WebKit::ComputedPagesCallback::callbackID):
   5227         (WebKit::ComputedPagesCallback::generateCallbackID):
   5228         (WebKit::ComputedPagesCallback::ComputedPagesCallback):
   5229         Added ComputedPagesCallback, which returns a vector of IntRects and a double. Hopefully,
   5230         it will become a specialization of GenericCallback one day.
   5231 
   5232         * UIProcess/WebPageProxy.cpp:
   5233         (WebKit::WebPageProxy::close): Added m_voidCallbacks - it looks like they were omitted
   5234         by accident.
   5235         (WebKit::WebPageProxy::computedPagesCallback): Added.
   5236         (WebKit::WebPageProxy::processDidCrash): Added m_computedPagesCallbacks.
   5237         (WebKit::WebPageProxy::computePagesForPrinting): Async now!
   5238         (WebKit::WebPageProxy::drawRectToPDF): Ditto.
   5239         (WebKit::WebPageProxy::drawPagesToPDF): Added.
   5240         * UIProcess/WebPageProxy.h:
   5241 
   5242         * UIProcess/WebPageProxy.messages.in: Added ComputedPagesCallback.
   5243 
   5244         * WebProcess/WebPage/WebPage.cpp:
   5245         (WebKit::WebPage::beginPriting): Compute page rects right away - we'll need them in
   5246         drawPagesToPDF(), which doesn't have a PrintInfo.
   5247         (WebKit::WebPage::computePagesForPrinting): Send async response.
   5248         (WebKit::WebPage::drawRectToPDF): This function used to draw into original
   5249         location at frame coordinates, and now it draws at (0, 0).
   5250         (WebKit::WebPage::drawPagesToPDF): Added - make a multi-page PDF.
   5251         * WebProcess/WebPage/WebPage.h:
   5252 
   5253         * WebProcess/WebPage/WebPage.messages.in: Added DrawPagesToPDF.
   5254 
   5255 2011-01-27  Alejandro G. Castro  <alex (a] igalia.com>
   5256 
   5257         Unreviewed GTK build fix after r76797.
   5258 
   5259         * Shared/WebPreferencesStore.h: Use Qt fonts preference for the moment.
   5260 
   5261 2011-01-27  Dan Bernstein  <mitz (a] apple.com>
   5262 
   5263         Reviewed by Anders Carlsson.
   5264 
   5265         Allow pop-up menus to contain multiple items that have the same title.
   5266 
   5267         * UIProcess/mac/WebPopupMenuProxyMac.mm:
   5268         (WebKit::WebPopupMenuProxyMac::populate): Set the items title after adding it rather than
   5269         when adding it, so that it will not replace any existing item with the same title.
   5270 
   5271 2011-01-27  Andreas Kling  <kling (a] webkit.org>
   5272 
   5273         Reviewed by Kenneth Rohde Christiansen.
   5274 
   5275         [Qt][WK2] Add QWKPage APIs regarding engine process availability
   5276         https://bugs.webkit.org/show_bug.cgi?id=53237
   5277 
   5278         QWKPage will now emit engineConnected() and engineDisconnected()
   5279         when the web process crashes and is relaunched respectively.
   5280 
   5281         Also added QWKPage::isConnectedToEngine() for convenience.
   5282 
   5283         * UIProcess/API/qt/qwkpage.cpp:
   5284         (QWKPagePrivate::QWKPagePrivate):
   5285         (QWKPagePrivate::didRelaunchProcess):
   5286         (QWKPagePrivate::processDidCrash):
   5287         (QWKPage::isConnectedToEngine):
   5288         * UIProcess/API/qt/qwkpage.h:
   5289         * UIProcess/API/qt/qwkpage_p.h:
   5290 
   5291 2011-01-27  Balazs Kelemen  <kbalazs (a] webkit.org>
   5292 
   5293         Reviewed by Andreas Kling.
   5294 
   5295         [Qt][WK2] Lots of layout test failures due to wrong font type
   5296         https://bugs.webkit.org/show_bug.cgi?id=53233
   5297 
   5298         * Shared/WebPreferencesStore.h:
   5299         Specialize default font families for Qt.
   5300 
   5301 2011-01-26  Maciej Stachowiak  <mjs (a] apple.com>
   5302 
   5303         Reviewed by Dan Bernstein.
   5304 
   5305         WebKitTestRunner needs to support layoutTestController.evaluateInWebInspector
   5306         https://bugs.webkit.org/show_bug.cgi?id=42319
   5307 
   5308         Add WKBundleInspector and APIs needed to implement WebKitTestRunner APIs.
   5309         
   5310         * GNUmakefile.am:
   5311         * Shared/API/c/WKBase.h:
   5312         * Shared/APIObject.h:
   5313         * WebKit2.pro:
   5314         * WebKit2.xcodeproj/project.pbxproj:
   5315         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   5316         * WebProcess/InjectedBundle/API/c/WKBundleInspector.cpp: Added.
   5317         (WKBundleInspectorGetTypeID):
   5318         (WKBundleInspectorShow):
   5319         (WKBundleInspectorClose):
   5320         (WKBundleInspectorEvaluateScriptForTest):
   5321         (WKBundleInspectorSetPageProfilingEnabled):
   5322         * WebProcess/InjectedBundle/API/c/WKBundleInspector.h: Added.
   5323         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   5324         (WKBundlePageGetInspector):
   5325         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   5326         * WebProcess/WebPage/WebInspector.cpp:
   5327         (WebKit::WebInspector::create):
   5328         (WebKit::WebInspector::evaluateScriptForTest):
   5329         * WebProcess/WebPage/WebInspector.h:
   5330         (WebKit::WebInspector::type):
   5331         * WebProcess/WebPage/WebPage.cpp:
   5332         (WebKit::WebPage::inspector):
   5333         * WebProcess/WebPage/WebPage.h:
   5334         * win/WebKit2.vcproj:
   5335         * win/WebKit2Generated.make:
   5336 
   5337 2011-01-26  David Kilzer  <ddkilzer (a] apple.com>
   5338 
   5339         <http://webkit.org/b/53192> Add experimental support for HTTP pipelining in CFNetwork
   5340         <rdar://problem/8821760>
   5341 
   5342         Reviewed by Antti Koivisto.
   5343 
   5344         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
   5345         (InitWebCoreSystemInterface): Added initialization for
   5346         GetHTTPPipeliningPriority and SetHTTPPipeliningPriority.
   5347 
   5348 2011-01-26  Beth Dakin  <bdakin (a] apple.com>
   5349 
   5350         Reviewed by Darin Adler.
   5351 
   5352         Fix for <rdar://problem/8895140> Adopt WKScrollbar metrics 
   5353         when using WKScrollbars.
   5354 
   5355         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
   5356         (InitWebCoreSystemInterface):
   5357 
   5358 2011-01-26  Sam Weinig  <sam (a] webkit.org>
   5359 
   5360         Reviewed by Maciej Stachowiak.
   5361 
   5362         Add events to represent the start/end of a gesture scroll
   5363         https://bugs.webkit.org/show_bug.cgi?id=53215
   5364 
   5365         * Scripts/webkit2/messages.py:
   5366         * Shared/WebEvent.h:
   5367         (WebKit::WebGestureEvent::WebGestureEvent):
   5368         (WebKit::WebGestureEvent::position):
   5369         (WebKit::WebGestureEvent::globalPosition):
   5370         * Shared/WebEventConversion.cpp:
   5371         (WebKit::WebKit2PlatformGestureEvent::WebKit2PlatformGestureEvent):
   5372         (WebKit::platform):
   5373         * Shared/WebEventConversion.h:
   5374         * Shared/WebGestureEvent.cpp: Added.
   5375         (WebKit::WebGestureEvent::WebGestureEvent):
   5376         (WebKit::WebGestureEvent::encode):
   5377         (WebKit::WebGestureEvent::decode):
   5378         (WebKit::WebGestureEvent::isGestureEventType):
   5379         * Shared/mac/WebEventFactory.h:
   5380         * Shared/mac/WebEventFactory.mm:
   5381         (WebKit::gestureEventTypeForEvent):
   5382         (WebKit::WebEventFactory::createWebGestureEvent):
   5383         * UIProcess/API/mac/WKView.mm:
   5384         (-[WKView shortCircuitedEndGestureWithEvent:]):
   5385         (-[WKView beginGestureWithEvent:]):
   5386         (-[WKView viewDidMoveToWindow]):
   5387         * UIProcess/WebPageProxy.cpp:
   5388         (WebKit::WebPageProxy::handleGestureEvent):
   5389         (WebKit::WebPageProxy::didReceiveEvent):
   5390         * UIProcess/WebPageProxy.h:
   5391         * WebKit2.xcodeproj/project.pbxproj:
   5392         * WebProcess/WebPage/WebPage.cpp:
   5393         (WebKit::handleGestureEvent):
   5394         (WebKit::WebPage::gestureEvent):
   5395         * WebProcess/WebPage/WebPage.h:
   5396         * WebProcess/WebPage/WebPage.messages.in:
   5397         Pipe gesture events down to WebCore.
   5398 
   5399 2011-01-26  Dan Bernstein  <mitz (a] apple.com>
   5400 
   5401         Reviewed by Dave Hyatt.
   5402 
   5403         <rdar://problem/8446709> Allow inter-ideograph justification for CJK
   5404         https://bugs.webkit.org/show_bug.cgi?id=53184
   5405 
   5406         * WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp:
   5407         (WebKit::WebPopupMenu::setUpPlatformData): Added a TrailingExpansionBehavior parameter to the
   5408         RenderText constructor.
   5409 
   5410 2011-01-26  Jing Jin  <jjin (a] apple.com>
   5411 
   5412         Reviewed by Darin Adler.
   5413 
   5414         Methods to temporarily disable size updates to the page drawing area in WKView.
   5415         https://bugs.webkit.org/show_bug.cgi?id=53206
   5416         Part of <rdar://problem/8818585>
   5417 
   5418         * UIProcess/API/mac/WKView.h: Added _frameSizeUpdateDisabledCount.
   5419         * UIProcess/API/mac/WKView.mm:
   5420         (-[WKView setFrameSize:]): Only update page size if frame size updates are enabled.
   5421         (-[WKView _setDrawingAreaSize:]): Helper method to set the page's drawing area's size.
   5422         (-[WKView disableFrameSizeUpdates]): Increment _frameSizeUpdateDisabledCount
   5423         (-[WKView enableFrameSizeUpdates]): Decrement _frameSizeUpdateDisabledCount, and if the count is 0, meaning
   5424         that no one is disabling frame size updates anymore, update the drawing area's size to match the current frame.
   5425         (-[WKView frameSizeUpdatesDisabled]): Returns YES if at least one caller is disabling frame size updates.
   5426         * UIProcess/API/mac/WKViewInternal.h: Declared -disableFrameSizeUpdates, -enableFrameSizeUpdates, and -frameSizeUpdatesDisabled.
   5427         * UIProcess/API/mac/WKViewPrivate.h: Added.
   5428         * WebKit2.xcodeproj/project.pbxproj: Added WKViewPrivate.h
   5429 
   5430 2011-01-26  Jing Jin  <jjin (a] apple.com>
   5431 
   5432         Rubber-stamped by Dan Bernstein.
   5433         
   5434         Several WKView Internal category methods are implemented in the main category.
   5435         https://bugs.webkit.org/show_bug.cgi?id=53195
   5436 
   5437         * UIProcess/API/mac/WKView.mm:
   5438         (-[WKView _setEventBeingResent:]): Moved into implementation of WKView (Internal).
   5439         (-[WKView _interceptKeyEvent:]): Moved into implementation of WKView (Internal).
   5440         (-[WKView _getTextInputState:selectionEnd:underlines:WebCore::]): Moved into implementation of WKView (Internal).
   5441         (-[WKView _setAccessibilityChildToken:]): Moved into implementation of WKView (Internal).
   5442 
   5443 2011-01-26  Brian Weinstein  <bweinstein (a] apple.com>
   5444 
   5445         Reviewed by John Sullivan.
   5446 
   5447         WebKit2: Need API to get the frame load state of a BundleFrame
   5448         https://bugs.webkit.org/show_bug.cgi?id=53193
   5449 
   5450         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   5451         (WKBundleFrameGetFrameLoadState): Call through to the FrameLoader to get the frame load state.
   5452         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   5453 
   5454 2011-01-25  Brian Weinstein  <bweinstein (a] apple.com>
   5455 
   5456         Reviewed by Antti Koivisto.
   5457 
   5458         Crashes loading pages when cancelling subresource loads through WebKit
   5459         https://bugs.webkit.org/show_bug.cgi?id=53123
   5460         <rdar://problem/8914361>
   5461 
   5462         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   5463         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForMIMEType): If our URL is null, return early instead of dispatching
   5464             a message.
   5465 
   5466 2011-01-25  Chris Fleizach  <cfleizach (a] apple.com>
   5467 
   5468         Reviewed by Darin Adler.
   5469 
   5470         WK2 leaks when a page is closed
   5471         https://bugs.webkit.org/show_bug.cgi?id=53100
   5472 
   5473         Allow the WKView a chance to clean up on a page close. In this case,
   5474         cleaning up means removing the references the accessibility token has
   5475         to the window.
   5476 
   5477         * UIProcess/API/mac/PageClientImpl.h:
   5478         * UIProcess/API/mac/PageClientImpl.mm:
   5479         (WebKit::PageClientImpl::pageClosed):
   5480         * UIProcess/API/mac/WKView.mm:
   5481         (-[WKView _setRemoteAccessibilityWindow:]):
   5482         (-[WKView _setAccessibilityChildToken:]):
   5483         (-[WKView _processDidCrash]):
   5484         (-[WKView _pageClosed]):
   5485         * UIProcess/API/mac/WKViewInternal.h:
   5486         * UIProcess/API/qt/qwkpage_p.h:
   5487         (QWKPagePrivate::pageClosed):
   5488         * UIProcess/PageClient.h:
   5489         * UIProcess/WebPageProxy.cpp:
   5490         (WebKit::WebPageProxy::close):
   5491         * UIProcess/win/WebView.cpp:
   5492         (WebKit::WebView::pageClosed):
   5493         * UIProcess/win/WebView.h:
   5494 
   5495 2011-01-25  Chris Marrin  <cmarrin (a] apple.com>
   5496 
   5497         Reviewed by Adam Roben.
   5498 
   5499         Expose WebGL flag set/get in WK2
   5500         https://bugs.webkit.org/show_bug.cgi?id=53096
   5501 
   5502         * Shared/WebPreferencesStore.h:
   5503         * UIProcess/API/C/WKPreferences.cpp:
   5504         (WKPreferencesSetWebGLEnabled):
   5505         (WKPreferencesGetWebGLEnabled):
   5506         * UIProcess/API/C/WKPreferencesPrivate.h:
   5507         * WebProcess/WebPage/WebPage.cpp:
   5508         (WebKit::WebPage::updatePreferences):
   5509 
   5510 2011-01-25  Anders Carlsson  <andersca (a] apple.com>
   5511 
   5512         Reviewed by Adam Roben.
   5513 
   5514         Add and implement LayerTreeHost::scheduleLayerFlush
   5515         https://bugs.webkit.org/show_bug.cgi?id=53135
   5516 
   5517         * WebKit2.xcodeproj/project.pbxproj:
   5518         Add LayerTreeHostMac.mm.
   5519 
   5520         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   5521         (WebKit::DrawingAreaImpl::scheduleCompositingLayerSync):
   5522         Call LayerTreeHost::scheduleLayerFlush.
   5523 
   5524         * WebProcess/WebPage/LayerTreeHost.cpp:
   5525         (WebKit::LayerTreeHost::~LayerTreeHost):
   5526         Call platformInvalidate().
   5527 
   5528         (WebKit::LayerTreeHost::flushPendingLayerChanges):
   5529         Rename from syncCompositingLayers.
   5530 
   5531         * WebProcess/WebPage/mac/LayerTreeHostMac.mm: Added.
   5532         (WebKit::LayerTreeHost::scheduleLayerFlush):
   5533         Create a run loop observer if needed. This code is copied from LayerBackedDrawingAreaMac.mm
   5534 
   5535         (WebKit::LayerTreeHost::platformInvalidate):
   5536         Invalidate the run loop observer.
   5537 
   5538         (WebKit::LayerTreeHost::flushPendingLayerChangesRunLoopObserverCallback):
   5539         Call flushPendingChanges() and remove the run loop observer if it succeeded.
   5540 
   5541 2011-01-25  Anders Carlsson  <andersca (a] apple.com>
   5542 
   5543         Reviewed by Simon Fraser.
   5544 
   5545         Add LayerTreeHost class
   5546         https://bugs.webkit.org/show_bug.cgi?id=53132
   5547 
   5548         * WebKit2.xcodeproj/project.pbxproj:
   5549         Add LayerTreeHost files.
   5550 
   5551         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   5552         (WebKit::DrawingAreaImpl::DrawingAreaImpl):
   5553         Initialize m_layerTreeHost.
   5554 
   5555         (WebKit::DrawingAreaImpl::setRootCompositingLayer):
   5556         Call the m_layerTreeHost.
   5557 
   5558         * WebProcess/WebPage/LayerTreeHost.cpp: Added.
   5559         (WebKit::LayerTreeHost::attachRootCompositingLayer):
   5560         (WebKit::LayerTreeHost::detachRootCompositingLayer):
   5561         Add stubbed out functions.
   5562 
   5563         (WebKit::LayerTreeHost::syncCompositingLayers):
   5564         Sync the compositing layers in the main frame.
   5565 
   5566         * WebProcess/WebPage/LayerTreeHost.h: Added.
   5567 
   5568 2011-01-25  Steve Falkenburg  <sfalken (a] apple.com>
   5569 
   5570         Rubber-stamped by Adam Roben.
   5571 
   5572         Windows production build fix.
   5573         Use correct environment variable escaping
   5574 
   5575         * win/WebKit2.make:
   5576         * win/WebKit2Generated.make:
   5577 
   5578 2011-01-25  Anders Carlsson  <andersca (a] apple.com>
   5579 
   5580         Reviewed by Sam Weinig.
   5581 
   5582         Don't inform the UI process about compositing changes when using the new drawing area
   5583         https://bugs.webkit.org/show_bug.cgi?id=53120
   5584 
   5585         * WebProcess/WebPage/WebPage.cpp:
   5586         (WebKit::WebPage::changeAcceleratedCompositingMode):
   5587         Return early if we're using the new drawing area.
   5588 
   5589         (WebKit::WebPage::exitAcceleratedCompositingMode):
   5590         Call setRootCompositingLayer(0) so the drawing area knows when we leave accelerated compositing.
   5591 
   5592 2011-01-25  Sam Weinig  <sam (a] webkit.org>
   5593 
   5594         Reviewed by Anders Carlsson.
   5595 
   5596         Pipe a timestamp down into the PlatformWheelEvent for the Mac.
   5597         https://bugs.webkit.org/show_bug.cgi?id=53111
   5598 
   5599         * Shared/WebEventConversion.cpp:
   5600         (WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent):
   5601         Assign the timestamp.
   5602 
   5603 2011-01-25  Sam Weinig  <sam (a] webkit.org>
   5604 
   5605         Reviewed by Anders Carlsson.
   5606 
   5607         Add hasPreciseScrollingDeltas bit to PlatformWheelEvent on the Mac.
   5608         https://bugs.webkit.org/show_bug.cgi?id=53107
   5609 
   5610         * Shared/WebEvent.h:
   5611         (WebKit::WebWheelEvent::hasPreciseScrollingDeltas):
   5612         * Shared/WebEventConversion.cpp:
   5613         (WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent):
   5614         * Shared/WebWheelEvent.cpp:
   5615         (WebKit::WebWheelEvent::WebWheelEvent):
   5616         * Shared/mac/WebEventFactory.mm:
   5617         (WebKit::WebEventFactory::createWebWheelEvent):
   5618 
   5619 2011-01-25  Anders Carlsson  <andersca (a] apple.com>
   5620 
   5621         Reviewed by Sam Weinig.
   5622 
   5623         need a way to request the host CALayer render server port
   5624         https://bugs.webkit.org/show_bug.cgi?id=53101
   5625         <rdar://problem/8913620>
   5626 
   5627         * PluginProcess/PluginControllerProxy.cpp:
   5628         (WebKit::PluginControllerProxy::compositingRenderServerPort):
   5629         Get the render server port from the plug-in process.
   5630 
   5631         * PluginProcess/PluginControllerProxy.h:
   5632         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   5633         (WebKit::NPN_GetValue):
   5634         Call NetscapePlugin::compositingRenderServerPort.
   5635 
   5636         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   5637         (WebKit::NetscapePlugin::compositingRenderServerPort):
   5638         Call PluginController::compositingRenderServerPort.
   5639 
   5640         * WebProcess/Plugins/PluginView.cpp:
   5641         (WebKit::PluginView::compositingRenderServerPort):
   5642         Get the render server port from the web process.
   5643 
   5644         * WebProcess/Plugins/PluginView.h:
   5645         Add compositingRenderServerPort.
   5646 
   5647 2011-01-25  Maciej Stachowiak  <mjs (a] apple.com>
   5648 
   5649         Rubber stamped by Dan Bernstein.
   5650 
   5651         Change some floating point constants from 1.0 to 1.
   5652 
   5653         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   5654         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
   5655 
   5656 2011-01-25  Maciej Stachowiak  <mjs (a] apple.com>
   5657 
   5658         Reviewed by Anders Carlsson.
   5659 
   5660         Improve scale factor resetting
   5661         https://bugs.webkit.org/show_bug.cgi?id=53093
   5662         
   5663         Two key changes:
   5664         - Don't set the scale factor to what it already is, as this causes an
   5665         uneeded force layout and scroll
   5666         - Don't ever set the scale factor based on a non-main frame committing
   5667         
   5668         This fixes two WebKit2 layout tests.
   5669 
   5670         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   5671         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
   5672 
   5673 2011-01-24  Chris Marrin  <cmarrin (a] apple.com>
   5674 
   5675         Reviewed by Eric Seidel.
   5676 
   5677         Change ENABLE_3D_CANVAS to ENABLE_WEBGL
   5678         https://bugs.webkit.org/show_bug.cgi?id=53041
   5679 
   5680         * Configurations/FeatureDefines.xcconfig:
   5681 
   5682 2011-01-25  Andreas Kling  <kling (a] webkit.org>
   5683 
   5684         Reviewed by Kenneth Rohde Christiansen.
   5685 
   5686         [Qt][WK2] Add QWKPage::processCrashed() signal
   5687         https://bugs.webkit.org/show_bug.cgi?id=53076
   5688 
   5689         * UIProcess/API/qt/qwkpage.cpp:
   5690         (QWKPagePrivate::processDidCrash):
   5691         * UIProcess/API/qt/qwkpage.h:
   5692         * UIProcess/API/qt/qwkpage_p.h:
   5693 
   5694 2011-01-24  Anders Carlsson  <andersca (a] apple.com>
   5695 
   5696         Fix build.
   5697         
   5698         * WebProcess/mac/WebProcessMac.mm:
   5699         (WebKit::initializeSandbox):
   5700 
   5701 2011-01-24  Anders Carlsson  <andersca (a] apple.com>
   5702 
   5703         Reviewed by Dan Bernstein.
   5704 
   5705         Reset the page scale factor on standard frame loads
   5706         https://bugs.webkit.org/show_bug.cgi?id=53058
   5707         <rdar://problem/8908844>
   5708 
   5709         * UIProcess/WebPageProxy.cpp:
   5710         (WebKit::WebPageProxy::scaleWebView):
   5711         Don't set m_viewScaleFactor here. It will be set in viewScaleFactorDidChange.
   5712 
   5713         (WebKit::WebPageProxy::viewScaleFactorDidChange):
   5714         Update m_viewScaleFactor.
   5715 
   5716         * UIProcess/WebPageProxy.h:
   5717         Add viewScaleFactorDidChange.
   5718 
   5719         * UIProcess/WebPageProxy.messages.in:
   5720         Add ViewScaleFactorDidChange message.
   5721 
   5722         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   5723         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
   5724         Set the scale factor.
   5725 
   5726         (WebKit::WebFrameLoaderClient::restoreViewState):
   5727         Inform the UI process about the new view scale factor.
   5728 
   5729         * WebProcess/WebPage/WebPage.cpp:
   5730         (WebKit::WebPage::scaleWebView):
   5731         Send a ViewScaleFactorDidChange message.
   5732 
   5733 2011-01-24  Maciej Stachowiak  <mjs (a] apple.com>
   5734 
   5735         Reviewed by Anders Carlsson.
   5736 
   5737         Use designated temp directory for the database for WebKit2
   5738         https://bugs.webkit.org/show_bug.cgi?id=53052
   5739         
   5740         Add the API necessary to support this. Database path is now
   5741         determined on the UI process side and passed to the Web process.
   5742         Reviewed by Anders Carlsson.
   5743 
   5744         * GNUmakefile.am:
   5745         * Shared/WebProcessCreationParameters.cpp:
   5746         (WebKit::WebProcessCreationParameters::encode):
   5747         (WebKit::WebProcessCreationParameters::decode):
   5748         * Shared/WebProcessCreationParameters.h:
   5749         * UIProcess/API/C/WKContext.cpp:
   5750         (WKContextSetDatabaseDirectory):
   5751         * UIProcess/API/C/WKContextPrivate.h:
   5752         * UIProcess/WebContext.cpp:
   5753         (WebKit::WebContext::ensureWebProcess):
   5754         (WebKit::WebContext::databaseDirectory):
   5755         * UIProcess/WebContext.h:
   5756         (WebKit::WebContext::setDatabaseDirectory):
   5757         * UIProcess/mac/WebContextMac.mm:
   5758         (WebKit::WebContext::platformDefaultDatabaseDirectory):
   5759         * UIProcess/qt/WebContextQt.cpp:
   5760         (WebKit::WebContext::platformDefaultDatabaseDirectory):
   5761         * UIProcess/win/WebContextWin.cpp:
   5762         (WebKit::WebContext::platformDefaultDatabaseDirectory):
   5763         * WebKit2.pro:
   5764         * WebKit2.xcodeproj/project.pbxproj:
   5765         * WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
   5766         (WebKit::WebDatabaseManager::initialize):
   5767         (WebKit::WebDatabaseManager::WebDatabaseManager):
   5768         * WebProcess/WebCoreSupport/WebDatabaseManager.h:
   5769         * WebProcess/WebCoreSupport/gtk/WebDatabaseManagerGtk.cpp: Removed.
   5770         * WebProcess/WebCoreSupport/mac/WebDatabaseManagerMac.mm: Removed.
   5771         * WebProcess/WebCoreSupport/qt/WebDatabaseManagerQt.cpp: Removed.
   5772         * WebProcess/WebCoreSupport/win/WebDatabaseManagerWin.cpp: Removed.
   5773         * WebProcess/WebProcess.cpp:
   5774         (WebKit::WebProcess::WebProcess):
   5775         (WebKit::WebProcess::initializeWebProcess):
   5776         * WebProcess/com.apple.WebProcess.sb:
   5777         * WebProcess/mac/WebProcessMac.mm:
   5778         (WebKit::initializeSandbox):
   5779         * win/WebKit2.vcproj:
   5780 
   5781 2011-01-24  Brent Fulgham  <bfulgham (a] webkit.org>
   5782 
   5783         Unreviewed build fix.
   5784 
   5785         * win/WebKit2.vcproj: Don't build the CG Utilities when building
   5786         without CG support.
   5787 
   5788 2011-01-24  Anders Carlsson  <andersca (a] apple.com>
   5789 
   5790         Reviewed by John Sullivan.
   5791 
   5792         Don't use the timeout checker for non-user-interaction messages
   5793         https://bugs.webkit.org/show_bug.cgi?id=53046
   5794 
   5795         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   5796         (WebKit::ChunkedUpdateDrawingAreaProxy::didSetSize):
   5797         (WebKit::ChunkedUpdateDrawingAreaProxy::sendSetSize):
   5798         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   5799         (WebKit::LayerBackedDrawingAreaProxy::sizeDidChange):
   5800         (WebKit::LayerBackedDrawingAreaProxy::didSetSize):
   5801 
   5802 2011-01-24  Adam Roben  <aroben (a] apple.com>
   5803 
   5804         Windows Production build fix
   5805 
   5806         * win/WebKit2.make: Update for move of WebKit2 into Source.
   5807 
   5808 2011-01-24  Jessie Berlin  <jberlin (a] apple.com>
   5809 
   5810         Reviewed by Adam Roben.
   5811 
   5812         WebKit2: LayoutTests: The UNIMPLEMENTED warnings in TextCheckerWin should be disabled
   5813         https://bugs.webkit.org/show_bug.cgi?id=53029
   5814 
   5815         * UIProcess/win/TextCheckerWin.cpp:
   5816         Disable the warnings for this file.
   5817 
   5818 2011-01-24  Anders Carlsson  <andersca (a] apple.com>
   5819 
   5820         Reviewed by Sam Weinig.
   5821 
   5822         Wait for half a second if we're asked to paint when receiving a DidSetSize message
   5823         https://bugs.webkit.org/show_bug.cgi?id=53028
   5824 
   5825         * UIProcess/DrawingAreaProxyImpl.cpp:
   5826         (WebKit::DrawingAreaProxyImpl::paint):
   5827 
   5828 2011-01-24  Anders Carlsson  <andersca (a] apple.com>
   5829 
   5830         Reviewed by Sam Weinig.
   5831 
   5832         Implement forceRedisplay in the new drawing area
   5833         https://bugs.webkit.org/show_bug.cgi?id=53026
   5834 
   5835         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   5836         (WebKit::DrawingAreaImpl::forceRepaint):
   5837         * WebProcess/WebPage/DrawingAreaImpl.h:
   5838 
   5839 2011-01-24  Anders Carlsson  <andersca (a] apple.com>
   5840 
   5841         Reviewed by Sam Weinig.
   5842 
   5843         Fill unpainted rects with the background color.
   5844         https://bugs.webkit.org/show_bug.cgi?id=53025
   5845 
   5846         * UIProcess/API/mac/WKView.mm:
   5847         (drawPageBackground):
   5848         Add new helper function.
   5849 
   5850         (-[WKView drawRect:]):
   5851         Iterate over the unpainted rects and fill them with the background color.
   5852 
   5853 2011-01-24  Dan Bernstein  <mitz (a] apple.com>
   5854 
   5855         Reviewed by John Sullivan.
   5856 
   5857         WebKit2 version of <rdar://problem/6097826> Mail's cursor does not become a resize cursor when moving mouse from scrolled email to the horizontal splitter
   5858 
   5859         * UIProcess/API/mac/PageClientImpl.mm:
   5860         (WebKit::PageClientImpl::setCursor): If the current cursor comes from a cursor rect, do not override it.
   5861 
   5862 2011-01-24  Balazs Kelemen  <kbalazs (a] webkit.org>
   5863 
   5864         Rubber-stamped by Csaba Osztrogonc.
   5865 
   5866         Typo fix.
   5867 
   5868         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   5869         (WebKit::ProcessLauncher::launchProcess): Move the bracket to the right place.
   5870 
   5871 2011-01-24  Kimmo Kinnunen  <kimmo.t.kinnunen (a] nokia.com>
   5872 
   5873         Reviewed by Kenneth Rohde Christiansen.
   5874 
   5875         [Qt] Remove CleanupHandler by passing file descriptors.
   5876 
   5877         Deleting files in signal handler of UI process is not a good idea,
   5878         because the memory where filenames are stored might not be valid
   5879         after a crash.
   5880 
   5881         To avoid the need of using signal handlers for cleanup,
   5882         change following:
   5883           1) Avoid passing filenames between processes, pass fds
   5884           2) When mmap'ing files, delete them immediately after
   5885              opening and mmap'ing them.
   5886           3) Pass sockets with fds during fork+exec instead of
   5887              passing them via the filesystem.
   5888           4) Use mmap'ed files for implementation of SharedMemory.
   5889              QSharedMemory does not support cleanup correctly.
   5890 
   5891         Consquences:
   5892           - Move MappedMemory to SharedMemory, make UpdateChunk use this.
   5893           - Implement CoreIPC::Attachment using mmaped files.
   5894           - Send messages using datagram socket. This solution works
   5895             similiarly to Mach ports on Mac.
   5896           - Send big messages out-of-line and thus avoid increasing
   5897             the receive buffer.
   5898           - Remove MemoryMappedPool and rely on libc/kernel caching
   5899             of mmapped areas.
   5900           - Unmap memory areas after use.
   5901           - When UI process crashes, kill the web process using SIGKILL.
   5902             This is possible again because cleanup handler is not needed.
   5903 
   5904         [WK2][Qt] Multiple problems with MemoryMappedPool
   5905         https://bugs.webkit.org/show_bug.cgi?id=51984
   5906 
   5907         * Platform/CoreIPC/Attachment.cpp:
   5908         (CoreIPC::Attachment::Attachment):
   5909         * Platform/CoreIPC/Attachment.h:
   5910         (CoreIPC::Attachment::size):
   5911         (CoreIPC::Attachment::releaseFileDescriptor):
   5912         (CoreIPC::Attachment::fileDescriptor):
   5913         * Platform/CoreIPC/Connection.h:
   5914         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   5915         (CoreIPC::MessageInfo::MessageInfo):
   5916         (CoreIPC::MessageInfo::setMessageBodyOOL):
   5917         (CoreIPC::MessageInfo::isMessageBodyOOL):
   5918         (CoreIPC::MessageInfo::bodySize):
   5919         (CoreIPC::MessageInfo::messageID):
   5920         (CoreIPC::MessageInfo::attachmentCount):
   5921         (CoreIPC::Connection::platformInitialize):
   5922         (CoreIPC::Connection::platformInvalidate):
   5923         (CoreIPC::SocketNotifierDisableGuard::SocketNotifierDisableGuard):
   5924         (CoreIPC::SocketNotifierDisableGuard::~SocketNotifierDisableGuard):
   5925         (CoreIPC::Connection::readyReadHandler):
   5926         (CoreIPC::Connection::open):
   5927         (CoreIPC::Connection::platformCanSendOutgoingMessages):
   5928         (CoreIPC::Connection::sendOutgoingMessage):
   5929         * Platform/SharedMemory.h:
   5930         * Platform/WorkQueue.h:
   5931         * Platform/qt/MappedMemoryPool.cpp: Removed.
   5932         * Platform/qt/MappedMemoryPool.h: Removed.
   5933         * Platform/qt/SharedMemoryQt.cpp:
   5934         (WebKit::SharedMemory::Handle::Handle):
   5935         (WebKit::SharedMemory::Handle::~Handle):
   5936         (WebKit::SharedMemory::Handle::isNull):
   5937         (WebKit::SharedMemory::Handle::encode):
   5938         (WebKit::SharedMemory::Handle::decode):
   5939         (WebKit::SharedMemory::Handle::releaseToAttachment):
   5940         (WebKit::SharedMemory::Handle::adoptFromAttachment):
   5941         (WebKit::SharedMemory::create):
   5942         (WebKit::accessModeMMap):
   5943         (WebKit::SharedMemory::~SharedMemory):
   5944         (WebKit::accessModeFile):
   5945         (WebKit::SharedMemory::createHandle):
   5946         * Platform/qt/WorkQueueQt.cpp:
   5947         (WorkQueue::registerSocketEventHandler):
   5948         * Shared/qt/UpdateChunk.cpp:
   5949         (WebKit::UpdateChunk::UpdateChunk):
   5950         (WebKit::UpdateChunk::~UpdateChunk):
   5951         (WebKit::UpdateChunk::encode):
   5952         (WebKit::UpdateChunk::decode):
   5953         (WebKit::UpdateChunk::createImage):
   5954         * Shared/qt/UpdateChunk.h:
   5955         * UIProcess/Launcher/ProcessLauncher.h:
   5956         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   5957         (WebKit::QtWebProcess::QtWebProcess):
   5958         (WebKit::QtWebProcess::setupChildProcess):
   5959         (WebKit::ProcessLauncher::launchProcess):
   5960         (WebKit::ProcessLauncher::platformInvalidate):
   5961         * UIProcess/Launcher/qt/ThreadLauncherQt.cpp:
   5962         (WebKit::webThreadBody):
   5963         (WebKit::ThreadLauncher::createWebThread):
   5964         * WebKit2.pro:
   5965         * WebProcess/qt/WebProcessMainQt.cpp:
   5966         (WebKit::WebProcessMainQt):
   5967 
   5968 2011-01-24  Andras Becsi  <abecsi (a] webkit.org>
   5969 
   5970         Reviewed by Csaba Osztrogonc.
   5971 
   5972         [Qt] Move project files into Source
   5973         https://bugs.webkit.org/show_bug.cgi?id=52891
   5974 
   5975         * DerivedSources.pro:
   5976         * WebKit2.pro:
   5977         * WebProcess.pro:
   5978 
   5979 2011-01-23  Damian Kaleta  <dkaleta (a] apple.com>
   5980 
   5981         Reviewed by Kevin Decker.
   5982 
   5983         <rdar://problem/8905171>
   5984         https://bugs.webkit.org/show_bug.cgi?id=52985 
   5985 
   5986         * UIProcess/WebPageProxy.cpp:
   5987         (WebKit::WebPageProxy::scaleWebView): Eliminated early return inside WebPageProxy::scaleWebView, making it 
   5988         consistent with WebKit1.
   5989 
   5990 2011-01-23  Alexey Proskuryakov  <ap (a] apple.com>
   5991 
   5992         Reviewed by Dan Bernstein.
   5993 
   5994         https://bugs.webkit.org/show_bug.cgi?id=52968
   5995         Use a separate NSView for printing
   5996 
   5997         Also addresses <rdar://problem/8900148> Improper check for 
   5998         -[NSGraphicsContext currentContextDrawingToScreen]
   5999 
   6000         * UIProcess/API/mac/WKPrintingView.h: Added.
   6001         * UIProcess/API/mac/WKPrintingView.mm: Added.
   6002         (-[WKPrintingView initWithFrameProxy:]):
   6003         (-[WKPrintingView isFlipped]):
   6004         (-[WKPrintingView _adjustPrintingMarginsForHeaderAndFooter]):
   6005         (-[WKPrintingView knowsPageRange:]):
   6006         (-[WKPrintingView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
   6007         (-[WKPrintingView drawPageBorderWithSize:]):
   6008         (-[WKPrintingView _provideTotalScaleFactorForPrintOperation:]):
   6009         (-[WKPrintingView rectForPage:]):
   6010         * UIProcess/API/mac/WKView.mm:
   6011         (-[WKView drawRect:]):
   6012         (-[WKView canChangeFrameLayout:]):
   6013         (-[WKView printOperationWithPrintInfo:forFrame:]):
   6014         * WebKit2.xcodeproj/project.pbxproj:
   6015         Moved printing code to a separate view, simplifying as appropriate. The view is currently not
   6016         referenced by anything in WebKit2 directly, being owned by NSPrintOperation.
   6017 
   6018 2011-01-22  Anders Carlsson  <andersca (a] apple.com>
   6019 
   6020         Reviewed by Sam Weinig.
   6021 
   6022         Transparent windows with compositing WebKit2 content show garbage
   6023         https://bugs.webkit.org/show_bug.cgi?id=52966
   6024         <rdar://problem/8765051>
   6025 
   6026         * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm:
   6027         (WebKit::LayerBackedDrawingAreaProxy::paint):
   6028         If the WKView should draw transparent background, do so.
   6029 
   6030 2011-01-22  Anders Carlsson  <andersca (a] apple.com>
   6031 
   6032         Reviewed by Sam Weinig.
   6033 
   6034         Add an asynchronous WKPageForceRepaint
   6035         https://bugs.webkit.org/show_bug.cgi?id=52964
   6036         <rdar://problem/8898527>
   6037 
   6038         * UIProcess/API/C/WKPage.cpp:
   6039         (WKPageForceRepaint):
   6040         Call WebPageProxy::forceRepaint.
   6041 
   6042         * UIProcess/API/C/WKPage.h:
   6043         Add WKPageForceRepaint.
   6044 
   6045         * UIProcess/GenericCallback.h:
   6046         Add a "generic" VoidCallback class.
   6047 
   6048         * UIProcess/WebPageProxy.cpp:
   6049         (WebKit::WebPageProxy::forceRepaint):
   6050         Insert the callback in the m_voidCallbacks map and send a forceRepaint message.
   6051 
   6052         (WebKit::WebPageProxy::voidCallback):
   6053         Call the right void callback.
   6054 
   6055         (WebKit::WebPageProxy::processDidCrash):
   6056         Invalidate m_voidCallbacks.
   6057 
   6058         * UIProcess/WebPageProxy.messages.in:
   6059         Add a VoidCallback message.
   6060 
   6061         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   6062         (WebKit::ChunkedUpdateDrawingArea::forceRepaint):
   6063         Force a repaint.
   6064 
   6065         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h:
   6066         Add forceRepaint.
   6067 
   6068         * WebProcess/WebPage/WebPage.cpp:
   6069         (WebKit::WebPage::forceRepaint):
   6070         Call forceRepaint on the drawing area.
   6071 
   6072         * WebProcess/WebPage/WebPage.messages.in:
   6073         Add a ForceRepaint message.
   6074 
   6075 2011-01-21  Nikolas Zimmermann  <nzimmermann (a] rim.com>
   6076 
   6077         Reviewed by Dirk Schulze.
   6078 
   6079         Introduce FontMetrics abstraction
   6080         https://bugs.webkit.org/show_bug.cgi?id=51456
   6081 
   6082         * WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp: Use FontMetrics instead of Font to access the metrics.
   6083         (WebKit::WebPopupMenu::setUpPlatformData):
   6084 
   6085 2011-01-22  Alexey Proskuryakov  <ap (a] apple.com>
   6086 
   6087         Reviewed by Dan Bernstein.
   6088 
   6089         https://bugs.webkit.org/show_bug.cgi?id=52950
   6090         Leak in WebPage::drawRectToPDF
   6091 
   6092         * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawRectToPDF): Use RetainPtr here, too.
   6093 
   6094 2011-01-22  Alexey Proskuryakov  <ap (a] apple.com>
   6095 
   6096         Reviewed by Dan Bernstein.
   6097 
   6098         https://bugs.webkit.org/show_bug.cgi?id=52951
   6099         WebKit2 generates a bad PDF for cross process messaging
   6100 
   6101         * UIProcess/API/mac/WKView.mm:
   6102         (-[WKView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
   6103         Use a correct offset when flipping.
   6104 
   6105 2011-01-21  Alexey Proskuryakov  <ap (a] apple.com>
   6106 
   6107         Reviewed by Dan Bernstein.
   6108 
   6109         https://bugs.webkit.org/show_bug.cgi?id=52943
   6110         Objective-C files should use #import, not #include
   6111 
   6112         * UIProcess/API/C/WebKit2.h: This is an interesting one, because it's cross-platform, and
   6113         there is more than one WKView.h.
   6114 
   6115         * Platform/mac/ModuleMac.mm:
   6116         * Platform/mac/RunLoopMac.mm:
   6117         * PluginProcess/mac/PluginControllerProxyMac.mm:
   6118         * PluginProcess/mac/PluginProcessMac.mm:
   6119         * PluginProcess/mac/PluginProcessMainMac.mm:
   6120         * Shared/API/c/mac/WKCertificateInfoMac.mm:
   6121         * Shared/API/c/mac/WKURLRequestNS.mm:
   6122         * Shared/API/c/mac/WKURLResponseNS.mm:
   6123         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
   6124         * Shared/mac/PlatformCertificateInfo.mm:
   6125         * Shared/mac/SandboxExtensionMac.mm:
   6126         * Shared/mac/WebCoreArgumentCodersMac.mm:
   6127         * Shared/mac/WebMemorySampler.mac.mm:
   6128         * Shared/mac/WebURLRequestMac.mm:
   6129         * Shared/mac/WebURLResponseMac.mm:
   6130         * UIProcess/API/mac/FindIndicatorWindow.mm:
   6131         * UIProcess/API/mac/WKTextInputWindowController.mm:
   6132         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   6133         * UIProcess/Launcher/mac/ThreadLauncherMac.mm:
   6134         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
   6135         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
   6136         * UIProcess/mac/BackingStoreMac.mm:
   6137         * UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm:
   6138         * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm:
   6139         * UIProcess/mac/TextCheckerMac.mm:
   6140         * UIProcess/mac/WebContextMac.mm:
   6141         * UIProcess/mac/WebContextMenuProxyMac.mm:
   6142         * UIProcess/mac/WebPageProxyMac.mm:
   6143         * UIProcess/mac/WebPopupMenuProxyMac.mm:
   6144         * UIProcess/mac/WebPreferencesMac.mm:
   6145         * WebProcess/Downloads/mac/DownloadMac.mm:
   6146         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   6147         * WebProcess/Plugins/Netscape/mac/PluginProxyMac.mm:
   6148         * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
   6149         * WebProcess/WebCoreSupport/mac/WebDatabaseManagerMac.mm:
   6150         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
   6151         * WebProcess/WebCoreSupport/mac/WebErrorsMac.mm:
   6152         * WebProcess/WebCoreSupport/mac/WebPopupMenuMac.mm:
   6153         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   6154         * WebProcess/WebPage/mac/WebPageMac.mm:
   6155         * WebProcess/mac/WebProcessMac.mm:
   6156 
   6157 2011-01-21  Mark Rowe  <mrowe (a] apple.com>
   6158 
   6159         Reviewed by Sam Weinig.
   6160 
   6161         Fix the WebKit2 build with clang.
   6162 
   6163         * Scripts/webkit2/messages.py: Add some more structs to the list.
   6164         * UIProcess/DrawingAreaProxy.h: Forward-declare UpdateInfo as a class.
   6165         * UIProcess/TextChecker.h: Forward-declare TextCheckerState as a struct.
   6166         * UIProcess/WebPageProxy.h: Forward-declare ContextMenuState as a struct.
   6167         * UIProcess/mac/TextCheckerMac.mm: Fix the type of the string constants so that they can be passed to
   6168         functions expecting NSString* without generating warnings.
   6169         * WebProcess/WebPage/DrawingArea.h: Forward-declare WebPageCreationParameters as a struct.
   6170         * WebProcess/WebPage/DrawingAreaImpl.h: Forward-declare UpdateInfo as a class.
   6171         * WebProcess/WebPage/WebPage.cpp:
   6172         (WebKit::WebPage::getResourceDataFromFrame): Add parens around the assignment in the condition of
   6173         the if statement to suppress a warning.
   6174 
   6175 2011-01-21  Brian Weinstein  <bweinstein (a] apple.com>
   6176 
   6177         Reviewed by Adam Roben.
   6178 
   6179         WebKit2: Need API to stop loading a WKFrame
   6180         https://bugs.webkit.org/show_bug.cgi?id=52925
   6181 
   6182         * UIProcess/API/C/WKFrame.cpp:
   6183         (WKFrameStopLoading): Call through to WebFrameProxy::stopLoading.
   6184         * UIProcess/API/C/WKFrame.h:
   6185         * UIProcess/WebFrameProxy.cpp:
   6186         (WebKit::WebFrameProxy::stopLoading): Send a message to the WebProcess to stop loading the frame
   6187             with the passed in ID.
   6188         * UIProcess/WebFrameProxy.h:
   6189         * WebProcess/WebPage/WebPage.cpp:
   6190         (WebKit::WebPage::stopLoadingFrame): Call stopForUserCancel on the passed-in frame.
   6191         * WebProcess/WebPage/WebPage.h:
   6192         * WebProcess/WebPage/WebPage.messages.in: Add StopLoadingFrame.
   6193 
   6194 2011-01-21  Brady Eidson  <beidson (a] apple.com>
   6195 
   6196         Reviewed by Adam Roben.
   6197 
   6198         <rdar://problem/8894125> and https://bugs.webkit.org/show_bug.cgi?id=52916
   6199         Expose "suggested filename" for a resource based on its resource response.
   6200 
   6201         API pieces:
   6202         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   6203         (WKBundleFrameCopySuggestedFilenameForResourceURL):
   6204         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   6205         
   6206         Implementation:
   6207         * WebProcess/WebPage/WebFrame.cpp:
   6208         (WebKit::WebFrame::suggestedFilenameForResourceURL): See if the DocumentLoader has
   6209           a resource for this URL and, if so, return the response's suggested filename.
   6210         * WebProcess/WebPage/WebFrame.h:
   6211 
   6212 2011-01-21  Anders Carlsson  <andersca (a] apple.com>
   6213 
   6214         Reviewed by Dan Bernstein.
   6215 
   6216         DrawingAreaProxyImpl::paint should return the unpainted region
   6217         https://bugs.webkit.org/show_bug.cgi?id=52918
   6218 
   6219         * UIProcess/API/mac/WKView.mm:
   6220         (-[WKView drawRect:]):
   6221         Add unpaintedRegion parameter.
   6222 
   6223         * UIProcess/BackingStore.h:
   6224         (WebKit::BackingStore::size):
   6225         Add a size getter.
   6226 
   6227         * UIProcess/DrawingAreaProxyImpl.cpp:
   6228         (WebKit::DrawingAreaProxyImpl::paint):
   6229         Initialize the unpainted region to the dirty region, then subtract the painted region.
   6230 
   6231 2011-01-21  Anders Carlsson  <andersca (a] apple.com>
   6232 
   6233         Reviewed by Dan Bernstein and Maciej Stachowiak.
   6234 
   6235         Fix for <rdar://problem/8896057>
   6236 
   6237         Give the Web Process access to the PubSub agent.
   6238 
   6239         * WebProcess/com.apple.WebProcess.sb:
   6240 
   6241 2011-01-21  Sam Weinig  <sam (a] webkit.org>
   6242 
   6243         Reviewed by Anders Carlsson.
   6244 
   6245         Part 2 of "Cleanup Scrollbar/ScrollbarClient relationship"
   6246         https://bugs.webkit.org/show_bug.cgi?id=52779
   6247 
   6248         Rename ScrollbarClient -> ScrollableArea.
   6249 
   6250         * UIProcess/win/WebPopupMenuProxyWin.cpp:
   6251         (WebKit::WebPopupMenuProxyWin::onMouseWheel):
   6252         (WebKit::WebPopupMenuProxyWin::scrollToRevealSelection):
   6253         * UIProcess/win/WebPopupMenuProxyWin.h:
   6254 
   6255 2011-01-21  Adam Roben  <aroben (a] apple.com>
   6256 
   6257         Update for WKCACFLayerRenderer -> CACFLayerView rename
   6258 
   6259         Fixes <http://webkit.org/b/52898> WKCACFLayerRenderer sounds like a render object, but isn't
   6260 
   6261         Reviewed by Simon Fraser.
   6262 
   6263         * WebProcess/WebPage/win/LayerBackedDrawingAreaWin.cpp: Just removed all the unnecessary
   6264         #includes.
   6265 
   6266 2011-01-20  Darin Adler  <darin (a] apple.com>
   6267 
   6268         Reviewed by Dan Bernstein.
   6269 
   6270         WebKit2: Implement showModalDialog
   6271         https://bugs.webkit.org/show_bug.cgi?id=52855
   6272 
   6273         * Shared/WebPageCreationParameters.h: Added canRunModal.
   6274 
   6275         * UIProcess/API/C/WKPage.h: Added a runModal function pointer to
   6276         WKPageUIClient. Also removed a lot of redundant typedefs and added
   6277         a new one, WKPageCallback, for callbacks without arguments or return
   6278         values.
   6279 
   6280         * UIProcess/API/qt/qwkpage.cpp:
   6281         (QWKPage::QWKPage): Added a runModal function pointer of 0.
   6282 
   6283         * UIProcess/WebPageProxy.cpp:
   6284         (WebKit::WebPageProxy::creationParameters): Set canRunModal
   6285         based on return value of WebUIClient::canRunModal.
   6286 
   6287         * UIProcess/WebPageProxy.h: Added runModal.
   6288         Calls WebUIClient::runModal.
   6289 
   6290         * UIProcess/WebPageProxy.messages.in: Added RunModal message.
   6291         Also removed the periods from the phrases in the comments
   6292         as Maciej requested a while back.
   6293 
   6294         * UIProcess/WebUIClient.cpp:
   6295         (WebKit::WebUIClient::canRunModal): Added. Returns true or false
   6296         based on whether a runModal function was supplied in the
   6297         WKPageUIClient structure.
   6298         (WebKit::WebUIClient::runModal): Added. Calls the runModal
   6299         function from the WKPageUIClient structure.
   6300         * UIProcess/WebUIClient.h: Declared the above functions.
   6301 
   6302         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   6303         (WebKit::WebChromeClient::canRunModal): Call through to WebPage.
   6304         (WebKit::WebChromeClient::runModal): Ditto.
   6305 
   6306         * WebProcess/WebPage/WebPage.cpp:
   6307         (WebKit::WebPage::WebPage): Initialize m_canRunModal based on the
   6308         creation parameters. Initialize m_isRunningModal to false.
   6309         (WebKit::WebPage::close): Stop the nested run loop if we are running modal.
   6310         (WebKit::WebPage::runModal): Send a message to ask the UI process to run
   6311         modal and then start a nested run loop. It gets stopped when the page is closed.
   6312         * WebProcess/WebPage/WebPage.h: Defined the canRunModal function
   6313         and declared the runModal function.
   6314 
   6315 2011-01-20  Alexey Proskuryakov  <ap (a] apple.com>
   6316 
   6317         Reviewed by Darin Adler.
   6318 
   6319         https://bugs.webkit.org/show_bug.cgi?id=52849
   6320         Make window.print work with WebKit2
   6321 
   6322         * UIProcess/API/qt/qwkpage.cpp:
   6323         (QWKPage::QWKPage):
   6324         * UIProcess/WebPageProxy.cpp:
   6325         (WebKit::WebPageProxy::printFrame):
   6326         * UIProcess/WebPageProxy.h:
   6327         * UIProcess/WebPageProxy.messages.in:
   6328         * UIProcess/WebUIClient.cpp:
   6329         (WebKit::WebUIClient::printFrame):
   6330         * UIProcess/WebUIClient.h:
   6331         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   6332         (WebKit::WebChromeClient::print):
   6333         Just pass through deelagte call to a WebKit2 client.
   6334 
   6335         * UIProcess/API/C/WKPage.h: Also added "Callback" suffix to other printing related function
   6336         types.
   6337 
   6338 2011-01-20  Anders Carlsson  <andersca (a] apple.com>
   6339 
   6340         Reviewed by Darin Adler.
   6341 
   6342         Keep track of the latest update timestamp in the backing store
   6343         https://bugs.webkit.org/show_bug.cgi?id=52848
   6344 
   6345         * Shared/UpdateInfo.h:
   6346         (WebKit::UpdateInfo::UpdateInfo):
   6347         Initialize timestamp to 0.
   6348 
   6349         * UIProcess/BackingStore.cpp:
   6350         (WebKit::BackingStore::BackingStore):
   6351         Initialize m_latestUpdateTimestamp to 0.
   6352 
   6353         (WebKit::BackingStore::incorporateUpdate):
   6354         If the update is too old, discard it. Otherwise, create a bitmap
   6355         and pass it to platformIncorporateUpdate. Finally update the timestamp.
   6356 
   6357         * UIProcess/BackingStore.h:
   6358         Add m_latestUpdateTimestamp.
   6359 
   6360         * UIProcess/mac/BackingStoreMac.mm:
   6361         (WebKit::BackingStore::platformIncorporateUpdate):
   6362         Update now that we are already given the shareable bitmap.
   6363 
   6364 2011-01-20  Beth Dakin  <bdakin (a] apple.com>
   6365 
   6366         Reviewed by Geoffrey Garen.
   6367 
   6368         Fix for <rdar://problem/8890255>
   6369 
   6370         Allow WebKitSystemInterface to draw scrollbars 
   6371         when appropriate.
   6372         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
   6373         (InitWebCoreSystemInterface):
   6374 
   6375 2011-01-20  Sam Weinig  <sam (a] webkit.org>
   6376 
   6377         Reviewed by Dave Hyatt.
   6378 
   6379         Cleanup Scrollbar/ScrollbarClient relationship
   6380         https://bugs.webkit.org/show_bug.cgi?id=52779
   6381 
   6382         * UIProcess/win/WebPopupMenuProxyWin.cpp:
   6383         (WebKit::WebPopupMenuProxyWin::scrollPosition):
   6384         (WebKit::WebPopupMenuProxyWin::setScrollOffset):
   6385         (WebKit::WebPopupMenuProxyWin::scrollTo):
   6386         (WebKit::WebPopupMenuProxyWin::onMouseWheel):
   6387         (WebKit::WebPopupMenuProxyWin::scrollToRevealSelection):
   6388         * UIProcess/win/WebPopupMenuProxyWin.h:
   6389         (WebKit::WebPopupMenuProxyWin::verticalScrollbar):
   6390 
   6391 2011-01-20  Anders Carlsson  <andersca (a] apple.com>
   6392 
   6393         Reviewed by Adam Roben.
   6394 
   6395         Add a timestamp to UpdateInfo
   6396         https://bugs.webkit.org/show_bug.cgi?id=52844
   6397 
   6398         * Shared/UpdateInfo.cpp:
   6399         (WebKit::UpdateInfo::encode):
   6400         (WebKit::UpdateInfo::decode):
   6401         * Shared/UpdateInfo.h:
   6402         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   6403         (WebKit::DrawingAreaImpl::setSize):
   6404         (WebKit::DrawingAreaImpl::display):
   6405 
   6406 2011-01-20  Anders Carlsson  <andersca (a] apple.com>
   6407 
   6408         Reviewed by Beth Dakin.
   6409 
   6410         Add Connection::waitForAndDispatchImmediately
   6411         https://bugs.webkit.org/show_bug.cgi?id=52841
   6412 
   6413         * Platform/CoreIPC/Connection.h:
   6414         (CoreIPC::Connection::waitForAndDispatchImmediately):
   6415 
   6416 2011-01-20  Kevin Decker  <kdecker (a] apple.com>
   6417 
   6418         Reviewed by Anders Carlsson.
   6419 
   6420         <rdar://problem/8880689> need a way to obtain the rendered rectangle for box elements
   6421         https://bugs.webkit.org/show_bug.cgi?id=52823
   6422         
   6423         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
   6424         (WKBundleNodeHandleGetRenderRect): Added new method that will return a rendered rectangle for box elements
   6425         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h: Ditto.
   6426         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp: Ditto.
   6427         (WebKit::InjectedBundleNodeHandle::renderRect): Ditto.
   6428         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h: Ditto.
   6429 
   6430 2011-01-20  Kimmo Kinnunen  <kimmo.t.kinnunen (a] nokia.com>
   6431 
   6432         Reviewed by Andreas Kling.
   6433 
   6434         Remove null ptr deref that happens when reattaching to
   6435         a new web process.
   6436 
   6437         Implement didRelaunchProcess that sets the drawing area size
   6438         after the drawing area is re-instantiated.
   6439 
   6440         [Qt][WK2] Null ptr deref in UI process after web process has crashed
   6441         https://bugs.webkit.org/show_bug.cgi?id=52796
   6442 
   6443         * UIProcess/API/qt/qgraphicswkview.cpp:
   6444         (QGraphicsWKView::QGraphicsWKView):
   6445         * UIProcess/API/qt/qwkpage.cpp:
   6446         (QWKPagePrivate::QWKPagePrivate):
   6447         (QWKPagePrivate::init):
   6448         (QWKPagePrivate::createDrawingAreaProxy):
   6449         (QWKPagePrivate::didRelaunchProcess): Reset drawing area size after crash.
   6450         * UIProcess/API/qt/qwkpage_p.h:
   6451 
   6452 2011-01-20  Maciej Stachowiak  <mjs (a] apple.com>
   6453 
   6454         Reviewed by Adam Roben.
   6455 
   6456         WebKitTestRunner needs to support layoutTestController.evaluateScriptInIsolatedWorld
   6457         https://bugs.webkit.org/show_bug.cgi?id=42327
   6458         
   6459         Added a new API call, WKBundleFrameForJavaScriptContext, that gets the WKBundleFrameRef
   6460         that corresponds to a JSContextRef (or null if none).
   6461 
   6462         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   6463         (WKBundleFrameForJavaScriptContext): Simple wrapper, defers to a WebFrame
   6464         static method.
   6465         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   6466         * WebProcess/WebPage/WebFrame.cpp:
   6467         (WebKit::WebFrame::frameForContext): Follow the maze of twisty pointers.
   6468         * WebProcess/WebPage/WebFrame.h:
   6469 
   6470 2011-01-20  Alejandro G. Castro  <alex (a] igalia.com>
   6471 
   6472         Fix compilation error in GTK WebKit2.
   6473 
   6474         * Platform/CoreIPC/gtk/ConnectionGtk.cpp:
   6475         (CoreIPC::readBytesFromSocket):
   6476         (CoreIPC::writeBytesToSocket):
   6477 
   6478 2011-01-20  Zoltan Horvath  <zoltan (a] webkit.org>
   6479 
   6480         Reviewed by Csaba Osztrogonc.
   6481 
   6482         Refactoring of the custom allocation framework
   6483         https://bugs.webkit.org/show_bug.cgi?id=49897
   6484 
   6485         Inheriting from FastAllocBase can result in objects getting larger (bug #33896, #46589).
   6486         The modification replaces Noncopyable and FastAllocBase classes and these inherits with their
   6487         equivalent macro implementation at the necessary places.
   6488 
   6489 2011-01-19  Simon Fraser  <simon.fraser (a] apple.com>
   6490 
   6491         Fix the WebKit2 build.
   6492 
   6493         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   6494         (WebKit::LayerBackedDrawingArea::syncCompositingLayers):
   6495 
   6496 2011-01-19  Brian Weinstein  <bweinstein (a] apple.com>
   6497 
   6498         Reviewed by Darin Adler.
   6499 
   6500         WebKit2: Need API to get the parent frame of a frame
   6501         https://bugs.webkit.org/show_bug.cgi?id=52774
   6502         
   6503         Add the API to get the parent frame of a frame.
   6504 
   6505         * UIProcess/API/C/WKFrame.cpp:
   6506         (WKFrameGetParentFrame):
   6507         * UIProcess/API/C/WKFrame.h:
   6508 
   6509 2011-01-19  Enrica Casucci  <enrica (a] apple.com>
   6510 
   6511         Reviewed by Darin Adler.
   6512 
   6513         WebKit2: add support for drag and drop
   6514         https://bugs.webkit.org/show_bug.cgi?id=52343
   6515         <rdar://problem/7660558>
   6516         
   6517         This patch contains the remaining work to support drag and drop on Mac.
   6518         I've added a PasteboardTypes class to encapsulate all the pasteboard formats
   6519         supported for drag and drop.
   6520         In this implementation we don't support the promised types, since I could not
   6521         find an efficient way to do this across processes.
   6522         The bulk of the patch consists in creating a shareable bitmap for the drag image,
   6523         pass its handle to the UI process and create a new NSImage from it to be given to
   6524         AppKit for dragging.
   6525         I've added the missing implementation of the methods in the drag client to hook
   6526         up the placement of the data in the pasteboard.
   6527         
   6528         * Shared/mac/PasteboardTypes.h: Added.
   6529         * Shared/mac/PasteboardTypes.mm: Added.
   6530         (WebKit::PasteboardTypes::forEditing):
   6531         (WebKit::PasteboardTypes::forURL):
   6532         (WebKit::PasteboardTypes::forImages):
   6533         (WebKit::PasteboardTypes::forImagesWithArchive):
   6534         * UIProcess/API/mac/PageClientImpl.h:
   6535         * UIProcess/API/mac/PageClientImpl.mm:
   6536         (WebKit::PageClientImpl::setDragImage): Added.
   6537         * UIProcess/API/mac/WKView.mm:
   6538         (-[WKView _registerDraggedTypes]): Refactored to use the new PasteboardTypes class.
   6539         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
   6540         (-[WKView _setMouseDownEvent:]):
   6541         (-[WKView _mouseHandler:]):
   6542         (-[WKView mouseDown:]):
   6543         (-[WKView mouseUp:]):
   6544         (-[WKView mouseDragged:]):
   6545         (-[WKView draggedImage:endedAt:operation:]):
   6546         (-[WKView draggingEntered:]):
   6547         (-[WKView _setDragImage:at:linkDrag:]):
   6548         * UIProcess/API/mac/WKViewInternal.h:
   6549         * UIProcess/PageClient.h:
   6550         * UIProcess/WebPageProxy.cpp:
   6551         (WebKit::WebPageProxy::setDragImage):
   6552         (WebKit::WebPageProxy::dragEnded):
   6553         * UIProcess/WebPageProxy.h:
   6554         * UIProcess/WebPageProxy.messages.in:
   6555         * WebKit2.xcodeproj/project.pbxproj:
   6556         * WebProcess/WebCoreSupport/WebDragClient.cpp:
   6557         * WebProcess/WebCoreSupport/WebDragClient.h:
   6558         * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: Added.
   6559         (WebKit::fontFromNSFont):
   6560         (WebKit::WebDragClient::startDrag): Added implementation.
   6561         (WebKit::WebDragClient::createDragImageForLink): Ditto.
   6562         (WebKit::writeURL): Helper function.
   6563         (WebKit::writeImage): Helper function.
   6564         (WebKit::WebDragClient::declareAndWriteDragImage): Added implementation.
   6565         * WebProcess/WebPage/WebPage.cpp:
   6566         (WebKit::WebPage::dragEnded):
   6567         * WebProcess/WebPage/WebPage.h:
   6568         * WebProcess/WebPage/WebPage.messages.in:
   6569 
   6570 2011-01-19  Anders Carlsson  <andersca (a] apple.com>
   6571 
   6572         Reviewed by Dan Bernstein.
   6573 
   6574         Put the deprecated Connection member functions next to eachother
   6575         https://bugs.webkit.org/show_bug.cgi?id=52767
   6576 
   6577         * Platform/CoreIPC/Connection.h:
   6578         (CoreIPC::Connection::sendSync):
   6579         (CoreIPC::Connection::send):
   6580 
   6581 2011-01-19  Anders Carlsson  <andersca (a] apple.com>
   6582 
   6583         Reviewed by Sam Weinig.
   6584 
   6585         When resizing, the web process should repaint the page
   6586         https://bugs.webkit.org/show_bug.cgi?id=52764
   6587 
   6588         * UIProcess/DrawingAreaProxyImpl.cpp:
   6589         (WebKit::DrawingAreaProxyImpl::didSetSize):
   6590         Incorporate the update.
   6591 
   6592         (WebKit::DrawingAreaProxyImpl::incorporateUpdate):
   6593         Return early if the update bounds rect is empty. This can happen if painting is
   6594         disabled and we get a DidSetSize message.
   6595 
   6596         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   6597         (WebKit::DrawingAreaImpl::setSize):
   6598         If painting is disabled, just send back an empty UpdateInfo struct. Otherwise,
   6599         paint and fill in the UpdateInfo struct.
   6600 
   6601         (WebKit::DrawingAreaImpl::display):
   6602         Assert that painting is not disabled.
   6603 
   6604 2011-01-19  Alexey Proskuryakov  <ap (a] apple.com>
   6605 
   6606         Reviewed by Darin Adler.
   6607 
   6608         https://bugs.webkit.org/show_bug.cgi?id=52739
   6609         Make it possible for a WebKit2 client to print headers and footers
   6610 
   6611         * UIProcess/API/C/WKPage.h:
   6612         * UIProcess/WebPageProxy.cpp:
   6613         (WebKit::WebPageProxy::headerHeight):
   6614         (WebKit::WebPageProxy::footerHeight):
   6615         (WebKit::WebPageProxy::drawHeader):
   6616         (WebKit::WebPageProxy::drawFooter):
   6617         * UIProcess/WebPageProxy.h:
   6618         * UIProcess/WebUIClient.cpp:
   6619         (WebKit::WebUIClient::headerHeight):
   6620         (WebKit::WebUIClient::footerHeight):
   6621         (WebKit::WebUIClient::drawHeader):
   6622         (WebKit::WebUIClient::drawFooter):
   6623         * UIProcess/WebUIClient.h:
   6624         Pass UIClient calls through.
   6625 
   6626         * UIProcess/API/mac/WKView.mm:
   6627         (currentPrintOperationScale): A helper to extract scale factor from the current NSPrintOperation.
   6628         (-[WKView _adjustPrintingMarginsForHeaderAndFooter]): Copied from WebKit1. Change current
   6629         print info to account for header and footer height as provided by the client.
   6630         (-[WKView knowsPageRange:]): Call -[self _adjustPrintingMarginsForHeaderAndFooter].
   6631         (-[WKView drawPageBorderWithSize:]): When AppKit asks to print page border, call the client
   6632         to do that. Code adapted form WebKit1.
   6633 
   6634         * UIProcess/API/qt/qwkpage:
   6635         (QWKPage::QWKPage): Added zeroes for new WKPageUIClient members to avoid breaking the build.
   6636 
   6637 2011-01-19  Jessie Berlin  <jberlin (a] apple.com>
   6638 
   6639         Reviewed by Darin Adler.
   6640 
   6641         Crash in WebDatabaseManagerProxy::getDatabaseOrigins when called after the WebProcess has
   6642         died at least once
   6643         https://bugs.webkit.org/show_bug.cgi?id=52730
   6644 
   6645         WebDatabaseManagerProxy::invalidate was setting m_webContext to 0, and invalidate gets
   6646         called in WebContext::processDidClose. However, m_webContext is only set in the
   6647         constructor, which is only called from the constructor of WebContext, so attempting to send
   6648         a message to any new WebProcess after the first one died was causing a null deref.
   6649 
   6650         This patch moves setting m_webcontext into clearContext and clearContext is only called in
   6651         the WebContext destructor.
   6652 
   6653         This patch also adds checks for a valid WebProcessProxy before attempting to send messages to
   6654         the WebProcessProxy so that if the WebProcess has died and has not been revived, it does not
   6655         attempt to dereference a null WebProcessProxy.
   6656 
   6657         * UIProcess/WebContext.cpp:
   6658         (WebKit::WebContext::~WebContext):
   6659         Call WebDatabaseManagerProxy::clearContext.
   6660         * UIProcess/WebContext.h:
   6661         (WebKit::WebContext::hasValidProcess):
   6662         Make this method public so that it can be called from WebDatabaseManagerProxy.
   6663 
   6664         * UIProcess/WebDatabaseManagerProxy.cpp:
   6665         (WebKit::WebDatabaseManagerProxy::getDatabasesByOrigin):
   6666         If there isn't a valid process, invalidate the callback and return early.
   6667         (WebKit::WebDatabaseManagerProxy::getDatabaseOrigins):
   6668         Ditto.
   6669         (WebKit::WebDatabaseManagerProxy::deleteDatabaseWithNameForOrigin):
   6670         If tehre isn't a valid process return early.
   6671         (WebKit::WebDatabaseManagerProxy::deleteDatabasesForOrigin):
   6672         Ditto.
   6673         (WebKit::WebDatabaseManagerProxy::deleteAllDatabases):
   6674         Ditto.
   6675         (WebKit::WebDatabaseManagerProxy::setQuotaForOrigin):
   6676         Ditto.
   6677         (WebKit::WebDatabaseManagerProxy::invalidate):
   6678         Move setting m_webContext to 0 from here ...
   6679         * UIProcess/WebDatabaseManagerProxy.h:
   6680         (WebKit::WebDatabaseManagerProxy::clearContext):
   6681         ... to here.
   6682 
   6683 2011-01-19  Anders Carlsson  <andersca (a] apple.com>
   6684 
   6685         Reviewed by Sam Weinig.
   6686 
   6687         Suspend/resume painting as the WKView visibility changes
   6688         https://bugs.webkit.org/show_bug.cgi?id=52738
   6689 
   6690         * UIProcess/DrawingAreaProxy.h:
   6691         (WebKit::DrawingAreaProxy::visibilityDidChange):
   6692         Add new member function. It should really be pure virtual once setPageIsVisible
   6693         is removed.
   6694 
   6695         * UIProcess/DrawingAreaProxyImpl.cpp:
   6696         (WebKit::DrawingAreaProxyImpl::visibilityDidChange):
   6697         Send SuspendPainting/ResumePainting messages based on whether the view is visible or not.
   6698 
   6699         (WebKit::DrawingAreaProxyImpl::setPageIsVisible):
   6700         Make this a stub; it should really be removed.
   6701 
   6702         * UIProcess/WebPageProxy.cpp:
   6703         (WebKit::WebPageProxy::viewStateDidChange):
   6704         Call visibilityDidChange.
   6705 
   6706         * UIProcess/WebPageProxy.h:
   6707         (WebKit::WebPageProxy::isViewVisible):
   6708         Add new getter.
   6709 
   6710         * WebProcess/WebPage/DrawingArea.messages.in:
   6711         Add SuspendPainting and ResumePainting messages.
   6712 
   6713         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   6714         (WebKit::DrawingAreaImpl::DrawingAreaImpl):
   6715         Initialize m_isPaintingSuspended.
   6716 
   6717         (WebKit::DrawingAreaImpl::suspendPainting):
   6718         Set m_isPaintingSuspended to true and stop the display timer.
   6719 
   6720         (WebKit::DrawingAreaImpl::resumePainting):
   6721         Set m_isPaintingSuspended to false.
   6722 
   6723         (WebKit::DrawingAreaImpl::scheduleDisplay):
   6724         (WebKit::DrawingAreaImpl::display):
   6725         Bail if m_isPaintingSuspended is true.
   6726 
   6727 2011-01-19  Andreas Kling  <kling (a] webkit.org>
   6728 
   6729         Reviewed by Simon Hausmann.
   6730 
   6731         [Qt][WK2] Implement formatLocalizedString() for Qt.
   6732 
   6733         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   6734         (WebKit::formatLocalizedString):
   6735 
   6736 2011-01-19  Chris Marrin  <cmarrin (a] apple.com>
   6737 
   6738         Reviewed by Simon Fraser.
   6739 
   6740         WK2 - Multiple crashes in PlatformCALayer::replaceSublayer
   6741         https://bugs.webkit.org/show_bug.cgi?id=52695
   6742 
   6743         Added a hostingLayer as the parent of the existing drawingLayer.
   6744         The hostingLayer is now the root which is passed to the 
   6745         remote context. It never changes except to track the size
   6746         of the window. The backingLayer is now a child of the 
   6747         hostingLayer, which allow it to switch between tiled and
   6748         non-tiled.
   6749 
   6750         I also now give back accurate settings for debug borders and
   6751         repaint counters.
   6752 
   6753         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   6754         (WebKit::LayerBackedDrawingArea::LayerBackedDrawingArea):
   6755         (WebKit::LayerBackedDrawingArea::setSize):
   6756         (WebKit::LayerBackedDrawingArea::showDebugBorders):
   6757         (WebKit::LayerBackedDrawingArea::showRepaintCounter):
   6758         * WebProcess/WebPage/LayerBackedDrawingArea.h:
   6759         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   6760         (WebKit::LayerBackedDrawingArea::platformInit):
   6761         (WebKit::LayerBackedDrawingArea::attachCompositingContext):
   6762         (WebKit::LayerBackedDrawingArea::syncCompositingLayers):
   6763 
   6764 2011-01-19  Anders Carlsson  <andersca (a] apple.com>
   6765 
   6766         Reviewed by Sam Weinig.
   6767 
   6768         Send a new SetSize message if the size differs from the current size
   6769         https://bugs.webkit.org/show_bug.cgi?id=52728
   6770 
   6771         * UIProcess/DrawingAreaProxy.h:
   6772         (WebKit::DrawingAreaProxy::didSetSize):
   6773         Add UpdateInfo parameter.
   6774 
   6775         * UIProcess/DrawingAreaProxy.messages.in:
   6776         Add UpdateInfo parameter to the DidSetSize message.
   6777 
   6778         * UIProcess/DrawingAreaProxyImpl.cpp:
   6779         (WebKit::DrawingAreaProxyImpl::didSetSize):
   6780         If the view size differs from the current size send another SetSize message.
   6781 
   6782         * UIProcess/DrawingAreaProxyImpl.h:
   6783         Add UpdateInfo parameter to didSetSize.
   6784 
   6785         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   6786         (WebKit::DrawingAreaImpl::setSize):
   6787         The DidSetSize message now takes an UpdateInfo parameter.
   6788 
   6789 2011-01-19  Anders Carlsson  <andersca (a] apple.com>
   6790 
   6791         Reviewed by Darin Adler.
   6792 
   6793         Throttle sending of SetSize messages
   6794         https://bugs.webkit.org/show_bug.cgi?id=52727
   6795 
   6796         * UIProcess/DrawingAreaProxyImpl.cpp:
   6797         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
   6798         Initialize m_isWaitingForDidSetSize to false.
   6799 
   6800         (WebKit::DrawingAreaProxyImpl::didSetSize):
   6801         Null out the backing store.
   6802 
   6803         (WebKit::DrawingAreaProxyImpl::sendSetSize):
   6804         If m_isWaitingForDidSetSize is true, do nothing. Otherwise, set m_isWaitingForDidSetSize
   6805         to true and send a SetSize message.
   6806 
   6807         * UIProcess/DrawingAreaProxyImpl.h:
   6808         Add m_isWaitingForDidSetSize.
   6809 
   6810 2011-01-19  Anders Carlsson  <andersca (a] apple.com>
   6811 
   6812         Reviewed by Darin Adler.
   6813 
   6814         Pass WebPageCreationParameters to DrawingArea::create
   6815         https://bugs.webkit.org/show_bug.cgi?id=52726
   6816 
   6817         * WebProcess/WebPage/DrawingArea.cpp:
   6818         (WebKit::DrawingArea::create):
   6819         * WebProcess/WebPage/DrawingArea.h:
   6820         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   6821         (WebKit::DrawingAreaImpl::create):
   6822         (WebKit::DrawingAreaImpl::DrawingAreaImpl):
   6823         * WebProcess/WebPage/DrawingAreaImpl.h:
   6824         * WebProcess/WebPage/WebPage.cpp:
   6825         (WebKit::WebPage::WebPage):
   6826         (WebKit::WebPage::changeAcceleratedCompositingMode):
   6827 
   6828 2011-01-19  Csaba Osztrogonc  <ossy (a] webkit.org>
   6829 
   6830         Reviewed by Laszlo Gombos and Tor Arne Vestb.
   6831 
   6832         [Qt] Remove unnecessary "../Source" from paths
   6833         after moving source files into Source is finished.
   6834 
   6835         * DerivedSources.pro:
   6836         * WebKit2.pro:
   6837 
   6838 2011-01-18  Maciej Stachowiak  <mjs (a] apple.com>
   6839 
   6840         Reviewed by Sam Weinig.
   6841 
   6842         WebKitTestRunner should track loading more like DumpRenderTree
   6843         https://bugs.webkit.org/show_bug.cgi?id=52692
   6844         
   6845         Relax the message check in didSaveFrameToPageCache a bit more, since
   6846         layout tests were still hitting the old one.
   6847 
   6848         * UIProcess/WebPageProxy.cpp:
   6849         (WebKit::isDisconnectedFrame):
   6850         (WebKit::WebPageProxy::didSaveFrameToPageCache):
   6851 
   6852 2011-01-18  Brady Eidson  <beidson (a] apple.com>
   6853 
   6854         Reviewed by Darin Adler.
   6855 
   6856         <rdar://problem/8860833> and https://bugs.webkit.org/show_bug.cgi?id=52599
   6857         UIProcess crash in WebPageProxy::reattachToWebProcess when web process crashes with a new tab/window.
   6858 
   6859         * UIProcess/WebPageProxy.cpp:
   6860         (WebKit::WebPageProxy::reattachToWebProcessWithItem): Null check item *both* places it is used.
   6861 
   6862 2011-01-18  Brady Eidson  <beidson (a] apple.com>
   6863 
   6864         Reviewed by Maciej Stachowiak. 
   6865 
   6866         <rdar://problem/8752200> and https://bugs.webkit.org/show_bug.cgi?id=52664
   6867         Need WebKit2 API to asynchronously get the resource data for a URL
   6868 
   6869         Rename WKFrameGetMainResourceDataFunction to WKFrameGetResourceDataFunction, and add
   6870         new API to get a resource by URL:
   6871         * UIProcess/API/C/WKFrame.cpp:
   6872         (WKFrameGetMainResourceData):
   6873         (WKFrameGetResourceData):
   6874         (callGetResourceDataBlockAndDispose):
   6875         (WKFrameGetMainResourceData_b):
   6876         (WKFrameGetResourceData_b):
   6877         * UIProcess/API/C/WKFrame.h:
   6878 
   6879         Implement the new API in the UIProcess side:
   6880         * UIProcess/WebFrameProxy.cpp:
   6881         (WebKit::WebFrameProxy::getResourceData):
   6882         * UIProcess/WebFrameProxy.h:
   6883         * UIProcess/WebPageProxy.cpp:
   6884         (WebKit::WebPageProxy::getResourceDataFromFrame):
   6885         * UIProcess/WebPageProxy.h:
   6886 
   6887         Have the WebProcess get the data and call back to the UIProcess:
   6888         * WebProcess/WebPage/WebPage.cpp:
   6889         (WebKit::WebPage::getResourceDataFromFrame):
   6890         * WebProcess/WebPage/WebPage.h:
   6891         * WebProcess/WebPage/WebPage.messages.in:
   6892 
   6893 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   6894 
   6895         Reviewed by Dan Bernstein.
   6896 
   6897         Make PageClientImpl::scrollView do hardware blitting
   6898         https://bugs.webkit.org/show_bug.cgi?id=52689
   6899 
   6900         * UIProcess/API/mac/PageClientImpl.mm:
   6901         (WebKit::PageClientImpl::scrollView):
   6902         Clip the scroll rect and scroll the view.
   6903 
   6904         * UIProcess/DrawingAreaProxyImpl.cpp:
   6905         (WebKit::DrawingAreaProxyImpl::incorporateUpdate):
   6906         Scroll before painting.
   6907 
   6908 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   6909 
   6910         Reviewed by Darin Adler.
   6911 
   6912         Artifacts when scrolling with new drawing area
   6913         https://bugs.webkit.org/show_bug.cgi?id=52682
   6914 
   6915         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   6916         (WebKit::WebChromeClient::scroll):
   6917         When scrolling, we want the intersection of the scroll rect and clip rect.
   6918 
   6919 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   6920 
   6921         Reviewed by Darin Adler.
   6922 
   6923         Use a CGLayer for the backing store when possible
   6924         https://bugs.webkit.org/show_bug.cgi?id=52679
   6925 
   6926         * UIProcess/mac/BackingStoreMac.mm:
   6927         (WebKit::BackingStore::paint):
   6928         If there is a layer, paint it into the given context.
   6929 
   6930         (WebKit::BackingStore::backingStoreContext):
   6931         If we can get the containing window graphics context, use it to create a 
   6932         CGLayer that we'll use for the backing store.
   6933 
   6934         (WebKit::BackingStore::scroll):
   6935         Paint the layer into itself.
   6936 
   6937         * UIProcess/mac/WebPageProxyMac.mm:
   6938         (WebKit::WebPageProxy::containingWindowGraphicsContext):
   6939         Call the page client.
   6940 
   6941 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   6942 
   6943         Reviewed by Dan Bernstein.
   6944 
   6945         Pass the web page proxy to BackingStore::create
   6946         https://bugs.webkit.org/show_bug.cgi?id=52673
   6947 
   6948         * UIProcess/BackingStore.cpp:
   6949         (WebKit::BackingStore::create):
   6950         Add WebPageProxy parameter.
   6951     
   6952         (WebKit::BackingStore::BackingStore):
   6953         Add WebPageProxy parameter.
   6954 
   6955         * UIProcess/BackingStore.h:
   6956         Add WebPageProxy member variable.
   6957 
   6958         * UIProcess/DrawingAreaProxyImpl.cpp:
   6959         (WebKit::DrawingAreaProxyImpl::incorporateUpdate):
   6960         Pass the web page proxy when creating the backing store.
   6961 
   6962         * UIProcess/mac/BackingStoreMac.mm:
   6963         (WebKit::BackingStore::backingStoreContext):
   6964         Set the default blend mode.
   6965 
   6966 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   6967 
   6968         Reviewed by Darin Adler.
   6969 
   6970         Factor code to create the backing store bitmap context out into a new function
   6971         https://bugs.webkit.org/show_bug.cgi?id=52670
   6972 
   6973         * UIProcess/BackingStore.h:
   6974         * UIProcess/mac/BackingStoreMac.mm:
   6975         (WebKit::BackingStore::backingStoreContext):
   6976         Create the backing store context.
   6977 
   6978         (WebKit::BackingStore::incorporateUpdate):
   6979         Call backingStoreContext.
   6980 
   6981         (WebKit::BackingStore::scroll):
   6982         Assert that the context is not null.
   6983 
   6984 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   6985 
   6986         Reviewed by Dan Bernstein.
   6987 
   6988         Add PageClientImpl::containingWindowGraphicsContext
   6989         https://bugs.webkit.org/show_bug.cgi?id=52666
   6990 
   6991         * UIProcess/API/mac/PageClientImpl.h:
   6992         * UIProcess/API/mac/PageClientImpl.mm:
   6993         (WebKit::PageClientImpl::containingWindowGraphicsContext):
   6994         * UIProcess/PageClient.h:
   6995         * UIProcess/WebPageProxy.h:
   6996 
   6997 2011-01-18  Damian Kaleta  <dkaleta (a] apple.com>
   6998 
   6999         Reviewed by Sam Weinig.
   7000 
   7001         WK2 methods WKPageScaleWebView and WKPageGetViewScaleFactor need to have consistent names
   7002         https://bugs.webkit.org/show_bug.cgi?id=52647
   7003 
   7004         * UIProcess/API/C/WKPage.cpp:
   7005         (WKPageSetScaleFactor):
   7006         (WKPageGetScaleFactor):
   7007         * UIProcess/API/C/WKPage.h:
   7008 
   7009 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   7010 
   7011         Reviewed by Dan Bernstein.
   7012 
   7013         Ask the web page proxy to scroll the view when needed
   7014         https://bugs.webkit.org/show_bug.cgi?id=52665
   7015 
   7016         * UIProcess/DrawingAreaProxyImpl.cpp:
   7017         (WebKit::DrawingAreaProxyImpl::incorporateUpdate):
   7018         * UIProcess/WebPageProxy.cpp:
   7019         (WebKit::WebPageProxy::scrollView):
   7020         * UIProcess/WebPageProxy.h:
   7021 
   7022 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   7023 
   7024         Fix build.
   7025 
   7026         * UIProcess/win/WebView.cpp:
   7027         (WebKit::WebView::scrollView):
   7028 
   7029 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   7030 
   7031         Reviewed by Sam Weinig.
   7032 
   7033         Add PageClient::scrollView
   7034         https://bugs.webkit.org/show_bug.cgi?id=52663
   7035 
   7036         * UIProcess/API/mac/PageClientImpl.h:
   7037         * UIProcess/API/mac/PageClientImpl.mm:
   7038         (WebKit::PageClientImpl::scrollView):
   7039         * UIProcess/API/qt/qwkpage.cpp:
   7040         (QWKPagePrivate::scrollView):
   7041         * UIProcess/API/qt/qwkpage_p.h:
   7042         * UIProcess/PageClient.h:
   7043         * UIProcess/win/WebView.cpp:
   7044         (WebKit::PageClientImpl::scrollView):
   7045         * UIProcess/win/WebView.h:
   7046 
   7047 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   7048 
   7049         Reviewed by Sam Weinig.
   7050 
   7051         Rename scrollDelta to scrollOffset everywhere.
   7052 
   7053         * Shared/UpdateInfo.cpp:
   7054         (WebKit::UpdateInfo::encode):
   7055         (WebKit::UpdateInfo::decode):
   7056         * Shared/UpdateInfo.h:
   7057         * UIProcess/BackingStore.h:
   7058         * UIProcess/mac/BackingStoreMac.mm:
   7059         (WebKit::BackingStore::incorporateUpdate):
   7060         (WebKit::BackingStore::scroll):
   7061         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   7062         (WebKit::WebChromeClient::scroll):
   7063         (WebKit::WebChromeClient::delegatedScrollRequested):
   7064         * WebProcess/WebCoreSupport/WebChromeClient.h:
   7065         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   7066         (WebKit::ChunkedUpdateDrawingArea::scroll):
   7067         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h:
   7068         * WebProcess/WebPage/DrawingArea.h:
   7069         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   7070         (WebKit::DrawingAreaImpl::scroll):
   7071         (WebKit::DrawingAreaImpl::display):
   7072         * WebProcess/WebPage/DrawingAreaImpl.h:
   7073         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   7074         (WebKit::LayerBackedDrawingArea::scroll):
   7075         * WebProcess/WebPage/LayerBackedDrawingArea.h:
   7076 
   7077 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   7078 
   7079         Reviewed by Sam Weinig.
   7080 
   7081         Get and paint each individual rect in -[WKView drawRect:]
   7082         https://bugs.webkit.org/show_bug.cgi?id=52660
   7083 
   7084         * UIProcess/API/mac/WKView.mm:
   7085         (-[WKView drawRect:]):
   7086 
   7087 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   7088 
   7089         Reviewed by Darin Adler.
   7090 
   7091         Assertion when loading two URLs in quick succession
   7092         https://bugs.webkit.org/show_bug.cgi?id=52649
   7093         <rdar://problem/8764645>
   7094 
   7095         If beginLoad is called twice without didStartProvisionalLoad being called in between,
   7096         m_pendingProvisionalSandboxExtension would be non-null and an assert would fire.
   7097 
   7098         * WebProcess/WebPage/WebPage.cpp:
   7099         (WebKit::WebPage::SandboxExtensionTracker::beginLoad):
   7100         Instead of asserting that m_pendingProvisionalSandboxExtension is null, invalidate it
   7101         if it is not null, since that's valid.
   7102 
   7103 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   7104 
   7105         Reviewed by Sam Weinig.
   7106 
   7107         Implement NPN_PopUpContextMenu
   7108         https://bugs.webkit.org/show_bug.cgi?id=52646
   7109         <rdar://problem/8735616>
   7110 
   7111         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   7112         (WebKit::NPN_PopUpContextMenu):
   7113         Call NetscapePlugin::popUpContextMenu.
   7114 
   7115         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   7116         (WebKit::NetscapePlugin::NetscapePlugin):
   7117         Initialize m_currentMouseEvent.
   7118 
   7119         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   7120         Add m_currentMouseEvent.
   7121 
   7122         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   7123         (WebKit::NetscapePlugin::popUpContextMenu):
   7124         Convert the coordinates from the current mouse event to screen coordinates and call
   7125         WKPopupContextMenu.
   7126 
   7127         (WebKit::NetscapePlugin::platformHandleMouseEvent):
   7128         Update m_currentMouseEvent.
   7129 
   7130 2011-01-18  Jessie Berlin  <jberlin (a] apple.com>
   7131 
   7132         Reviewed by Darin Adler.
   7133 
   7134         WebKit2: Do not assert that the provisional and committed URLs cannot be empty/null
   7135         https://bugs.webkit.org/show_bug.cgi?id=52641
   7136 
   7137         * UIProcess/WebFrameProxy.cpp:
   7138         (WebKit::WebFrameProxy::didStartProvisionalLoad):
   7139         (WebKit::WebFrameProxy::didCommitLoad):
   7140         (WebKit::WebFrameProxy::didFinishLoad):
   7141 
   7142 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   7143 
   7144         Reviewed by Sam Weinig.
   7145 
   7146         ASSERT in plug-in code when going to youtube
   7147         https://bugs.webkit.org/show_bug.cgi?id=52638
   7148 
   7149         * PluginProcess/PluginControllerProxy.cpp:
   7150         (WebKit::PluginControllerProxy::paintEntirePlugin):
   7151         Don't try to paint the plug-in if the plug-in frame is empty.
   7152 
   7153 2011-01-18  Anders Carlsson  <andersca (a] apple.com>
   7154 
   7155         Reviewed by Dan Bernstein.
   7156 
   7157         Plug-in hosting WebProcess instances appear in Activity Monitor as WebProcess
   7158         https://bugs.webkit.org/show_bug.cgi?id=52635
   7159         <rdar://problem/8731337>
   7160 
   7161         * PluginProcess/PluginProcess.cpp:
   7162         (WebKit::PluginProcess::initialize):
   7163         Call platformInitialize.
   7164 
   7165         * PluginProcess/PluginProcess.h:
   7166         Add platformInitialize.
   7167 
   7168         * PluginProcess/mac/PluginProcessMac.mm:
   7169         (WebKit::PluginProcess::platformInitialize):
   7170         Set the compositing render server port and the visible application name.
   7171 
   7172         * Shared/Plugins/PluginProcessCreationParameters.cpp:
   7173         (WebKit::PluginProcessCreationParameters::encode):
   7174         (WebKit::PluginProcessCreationParameters::decode):
   7175         Encode/decode the parent process name.
   7176 
   7177         * Shared/Plugins/PluginProcessCreationParameters.h:
   7178         Add parentProcessName.
   7179 
   7180         * Shared/WebProcessCreationParameters.cpp:
   7181         (WebKit::WebProcessCreationParameters::encode):
   7182         (WebKit::WebProcessCreationParameters::decode):
   7183         Encode/decode the parent process name.
   7184 
   7185         * Shared/WebProcessCreationParameters.h:
   7186         Add parentProcessName.
   7187 
   7188         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   7189         (WebKit::ProcessLauncher::launchProcess):
   7190         Don't pass the parent process name here.
   7191 
   7192         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
   7193         (WebKit::PluginProcessProxy::platformInitializePluginProcess):
   7194         Set the visible name.
   7195 
   7196         * UIProcess/mac/WebContextMac.mm:
   7197         (WebKit::WebContext::platformInitializeWebProcess):
   7198         Pass along the parent process name.
   7199 
   7200         * WebProcess/mac/WebProcessMac.mm:
   7201         (WebKit::WebProcess::platformInitializeWebProcess):
   7202         Set the visible name.
   7203 
   7204         * WebProcess/mac/WebProcessMainMac.mm:
   7205         (WebKit::WebProcessMain):
   7206         Don't set the visible name here. It's done in platformInitializeWebProcess.
   7207 
   7208 2011-01-18  Balazs Kelemen  <kbalazs (a] webkit.org>
   7209 
   7210         Reviewed by Csaba Osztrogonc.
   7211 
   7212         [Qt][WK2] Not implemented warnings should not break layout tests
   7213         https://bugs.webkit.org/show_bug.cgi?id=52616
   7214 
   7215         * WebKit2Prefix.h: Define DISABLE_NOT_IMPLEMENTED_WARNINGS on Qt.
   7216 
   7217 2011-01-17  Jon Honeycutt  <jhoneycutt (a] apple.com>
   7218 
   7219         Windows build fix. Unreviewed.
   7220 
   7221         * Shared/PrintInfo.cpp:
   7222         Use #include, not #import.
   7223 
   7224 2011-01-17  Alexey Proskuryakov  <ap (a] apple.com>
   7225 
   7226         Actually wrote a FIXME promised for a review comment.
   7227 
   7228         * UIProcess/API/mac/WKView.mm:
   7229         (-[WKView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
   7230 
   7231 2011-01-17  Alexey Proskuryakov  <ap (a] apple.com>
   7232 
   7233         Reviewed by Anders Carlsson and Darin Adler.
   7234 
   7235         https://bugs.webkit.org/show_bug.cgi?id=52595
   7236         Make basic printing work in WebKit2
   7237 
   7238         * Shared/WebPreferencesStore.h:
   7239         * UIProcess/API/C/WKPreferences.cpp:
   7240         (WKPreferencesSetShouldPrintBackgrounds):
   7241         (WKPreferencesGetShouldPrintBackgrounds):
   7242         * UIProcess/API/C/WKPreferences.h:
   7243         Implement a preference for printing backgrounds.
   7244 
   7245         * Shared/PrintInfo.cpp: Added.
   7246         (WebKit::PrintInfo::encode):
   7247         (WebKit::PrintInfo::decode):
   7248         * Shared/PrintInfo.h: Added.
   7249         * Shared/mac/PrintInfoMac.mm: Added.
   7250         (WebKit::PrintInfo::PrintInfo):
   7251         A new class for passing page setup information down to the web process.
   7252 
   7253         * WebKit2.xcodeproj/project.pbxproj:
   7254         * GNUmakefile.am:
   7255         * WebKit2.pro:
   7256         * win/WebKit2.vcproj:
   7257         Added PrintInfo.
   7258 
   7259         * Scripts/webkit2/messages.py: Added PrintInfo.h to a list of structs.
   7260 
   7261         * UIProcess/API/mac/WKView.mm:
   7262         (WKViewData): Cache page count and geometry.
   7263         (WebFrameWrapper): Added a wrapper class for adding a WebFrameProxy to an NSDictionary.
   7264         (-[WKView drawRect:]): Added logging.
   7265         (setFrameBeingPrinted): Store a frame into NSPrintOperation's NSPrintInfo, so that all 
   7266         methods invoked for this operation would know what's being printed.
   7267         (frameBeingPrinted): Retrieve this data.
   7268         (-[WKView printOperationWithPrintInfo:forFrame:]): Create a print operation that's appropriate
   7269         for the frame.
   7270         (-[WKView knowsPageRange:]): Ask the web process.
   7271         (-[WKView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
   7272         Take over printing, because I couldn't make drawRect: work correctly with WebKit custom fit
   7273         to page implementation.
   7274         (-[WKView _provideTotalScaleFactorForPrintOperation:]): Help AppKit clip correctly.
   7275         (-[WKView rectForPage:]): Return a pre-calculated rect.
   7276 
   7277         * UIProcess/WebPageProxy.h: Added m_isInPrintingMode to track whether the web page is in
   7278         printing mode. The UI process controls that.
   7279 
   7280         * UIProcess/WebPageProxy.cpp:
   7281         (WebKit::WebPageProxy::WebPageProxy): Initialize m_isInPrintingMode.
   7282         (WebKit::WebPageProxy::beginPrinting): Change printing mode in web process if the value changes.
   7283         (WebKit::WebPageProxy::endPrinting): Ditto.
   7284         (WebKit::WebPageProxy::computePagesForPrinting): Ask the web process about output page geometry.
   7285         (WebKit::WebPageProxy::drawRectToPDF): Ask the web process about printed page data.
   7286 
   7287         * WebProcess/WebPage/WebPage.cpp:
   7288         (WebKit::WebPage::close): Delete m_printContext while there is still a Frame pointer.
   7289         (WebKit::WebPage::updatePreferences): Pass through ShouldPrintBackgrounds.
   7290         (WebKit::WebPage::beginPrinting): Switch into printing mode (or update parameters if we're
   7291         already in printing mode).
   7292         (WebKit::WebPage::endPrinting): Delete m_printContext, implicitly calling end().
   7293         (WebKit::WebPage::computePagesForPrinting): Make sure that we're in printing mode, and
   7294         copmute page rects.
   7295         (WebKit::WebPage::drawRectToPDF): Added a CG specific function to create a PDF document out
   7296         of a page rect. It should really work for onscreen content, but we only need it for printing.
   7297 
   7298         * WebProcess/WebPage/WebPage.h:
   7299 
   7300         * WebProcess/WebPage/WebPage.messages.in: Added BeginPrinting, EndPrinting,
   7301         ComputePagesForPrinting and DrawRectToPDF.
   7302 
   7303 2011-01-17  Tony Gentilcore  <tonyg (a] chromium.org>
   7304 
   7305         Reviewed by Alexey Proskuryakov.
   7306 
   7307         Fix some headers with missing or misspelled #ifndef guards
   7308         https://bugs.webkit.org/show_bug.cgi?id=52545
   7309 
   7310         * Shared/UserMessageCoders.h:
   7311         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
   7312         * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
   7313         * WebProcess/WebProcessMain.h:
   7314 
   7315 2011-01-17  Alexey Proskuryakov  <ap (a] apple.com>
   7316 
   7317         Build fix.
   7318 
   7319         * Platform/Logging.cpp:
   7320 
   7321 2011-01-17  Alexey Proskuryakov  <ap (a] apple.com>
   7322 
   7323         Reviewed by Dan Bernstein.
   7324 
   7325         https://bugs.webkit.org/show_bug.cgi?id=52592
   7326         Add a logging channel for WKView
   7327 
   7328         * Platform/Logging.cpp:
   7329         * Platform/Logging.h:
   7330 
   7331 2011-01-17  Anders Carlsson  <andersca (a] apple.com>
   7332 
   7333         Reviewed by Sam Weinig.
   7334 
   7335         Factor bitmap context drawing code out into a shared function
   7336         https://bugs.webkit.org/show_bug.cgi?id=52589
   7337 
   7338         * Platform/cg/CGUtilities.h: Added.
   7339         * Platform/cg/CGUtilities.cpp: Added.
   7340         (WebKit::paintBitmapContext):
   7341         New function that will paint a bitmap context into a CGContext.
   7342 
   7343         * Shared/cg/ShareableBitmapCG.cpp:
   7344         (WebKit::ShareableBitmap::paint):
   7345         Use paintBitmapContext.
   7346 
   7347         * UIProcess/mac/BackingStoreMac.mm:
   7348         (WebKit::BackingStore::paint):
   7349         (WebKit::BackingStore::scroll):
   7350         Use paintBitmapContext.
   7351 
   7352         * WebKit2.xcodeproj/project.pbxproj:
   7353         * win/WebKit2.vcproj:
   7354         * win/WebKit2Common.vsprops:
   7355         Add CGUtilities.{cpp|h}.
   7356 
   7357 2011-01-17  Dan Bernstein  <mitz (a] apple.com>
   7358 
   7359         Rubber-stamped by Mark Rowe.
   7360 
   7361         Update xcodeproj svn:ignore to include xcuserdata.
   7362 
   7363         * WebKit2.xcodeproj: Modified property svn:ignore.
   7364 
   7365 2011-01-17  Alexey Proskuryakov  <ap (a] apple.com>
   7366 
   7367         Fixing a typo from a bad merge.
   7368 
   7369         * UIProcess/API/mac/WKView.mm: (-[WKView canChangeFrameLayout:]):
   7370 
   7371 2011-01-17  Alexey Proskuryakov  <ap (a] apple.com>
   7372 
   7373         Reviewed by John Sullivan.
   7374 
   7375         https://bugs.webkit.org/show_bug.cgi?id=52590
   7376         Should pass a frame into -[WKView canPrintHeadersAndFooters]
   7377 
   7378         * UIProcess/API/mac/WKView.h:
   7379         * UIProcess/API/mac/WKView.mm: (-[WKView canChangeFrameLayout:]): Also, renamed the method
   7380         to canChangeFrameLayout.
   7381 
   7382 2011-01-17  Anders Carlsson  <andersca (a] apple.com>
   7383 
   7384         Reviewed by Sam Weinig.
   7385 
   7386         Implement scrolling support
   7387         https://bugs.webkit.org/show_bug.cgi?id=52502
   7388 
   7389         * Shared/UpdateInfo.cpp:
   7390         (WebKit::UpdateInfo::encode):
   7391         (WebKit::UpdateInfo::decode):
   7392         * Shared/UpdateInfo.h:
   7393         Add scrollRect and scrollDelta member variables.
   7394 
   7395         * UIProcess/BackingStore.h:
   7396         Add scroll member function.
   7397 
   7398         * UIProcess/DrawingAreaProxyImpl.cpp:
   7399         (WebKit::DrawingAreaProxyImpl::incorporateUpdate):
   7400         Repaint the scroll rect. Force a display of the view when the update info contains a scroll rect.
   7401 
   7402         * UIProcess/mac/BackingStoreMac.mm:
   7403         (WebKit::BackingStore::incorporateUpdate):
   7404         Call scroll.
   7405 
   7406         (WebKit::BackingStore::scroll):
   7407         Paint the backing store into itself.
   7408 
   7409         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   7410         (WebKit::DrawingAreaImpl::display):
   7411         Pass the scroll information in the update info.
   7412 
   7413 2011-01-17  Andrey Kosyakov  <caseq (a] chromium.org>
   7414 
   7415         Unreviewed. Fixed malformed reference to WebKitVSPropsRedirectionDir that broke win build.
   7416 
   7417         * win/WebKit2.vcproj:
   7418         * win/WebKit2GeneratedCommon.vsprops:
   7419         * win/WebKit2WebProcess.vcproj:
   7420 
   7421 2011-01-17  Pavel Feldman  <pfeldman (a] chromium.org>
   7422 
   7423         Reviewed by Yury Semikhatsky.
   7424 
   7425         Web Inspector: simplify debugger enabling routine.
   7426         https://bugs.webkit.org/show_bug.cgi?id=52472
   7427 
   7428         * WebProcess/WebPage/WebInspector.cpp:
   7429         (WebKit::WebInspector::startJavaScriptDebugging):
   7430 
   7431 2011-01-17  Balazs Kelemen  <kbalazs (a] webkit.org>
   7432 
   7433         Reviewed by Andreas Kling.
   7434 
   7435         [Qt][WK2] Crash due to double destruction of QSharedMemory
   7436         https://bugs.webkit.org/show_bug.cgi?id=52569
   7437 
   7438         Avoid deleting the QSharedMemory twice.
   7439         * Platform/qt/SharedMemoryQt.cpp:
   7440         (WebKit::SharedMemory::~SharedMemory):
   7441         * Shared/qt/CleanupHandler.cpp:
   7442         Renamed m_inDeleteObjects to m_hasStartedDeleting and
   7443         added a getter for it.
   7444         (WebKit::CleanupHandler::CleanupHandler):
   7445         (WebKit::CleanupHandler::deleteObjects):
   7446         * Shared/qt/CleanupHandler.h:
   7447         (WebKit::CleanupHandler::unmark):
   7448         (WebKit::CleanupHandler::hasStartedDeleting):
   7449 
   7450 2011-01-15  Adam Barth  <abarth (a] webkit.org>
   7451 
   7452         Rubber-stamped by Eric Seidel.
   7453 
   7454         Move WebKit2 into Source
   7455         https://bugs.webkit.org/show_bug.cgi?id=52438
   7456 
   7457         * DerivedSources.pro:
   7458         * GNUmakefile.am:
   7459         * WebKit2.pro:
   7460         * WebProcess.pro:
   7461         * win/WebKit2.vcproj:
   7462         * win/WebKit2WebProcess.vcproj:
   7463 
   7464 2011-01-14  Yuzo Fujishima  <yuzo (a] google.com>
   7465 
   7466         Reviewed by Antti Koivisto.
   7467 
   7468         Rename cache() to memoryCache()
   7469         https://bugs.webkit.org/show_bug.cgi?id=52433
   7470 
   7471         * WebProcess/WebProcess.cpp:
   7472         (WebKit::WebProcess::shutdownIfPossible):
   7473         (WebKit::WebProcess::didClose):
   7474         * WebProcess/mac/WebProcessMac.mm:
   7475         (WebKit::WebProcess::platformSetCacheModel):
   7476         * WebProcess/win/WebProcessWin.cpp:
   7477         (WebKit::WebProcess::platformSetCacheModel):
   7478 
   7479 2011-01-13  Geoffrey Garen  <ggaren (a] apple.com>
   7480 
   7481         Reviewed by Oliver Hunt.
   7482 
   7483         Split out a MarkedSpace strategy object from Heap.
   7484         https://bugs.webkit.org/show_bug.cgi?id=52421
   7485 
   7486         * Shared/mac/WebMemorySampler.mac.mm:
   7487         (WebKit::WebMemorySampler::sampleWebKit): Updated for class move.
   7488 
   7489 2011-01-14  Anders Carlsson  <andersca (a] apple.com>
   7490 
   7491         Reviewed by Dan Bernstein.
   7492 
   7493         Add a new PageClient::displayView function and expose it on WebPageProxy
   7494         https://bugs.webkit.org/show_bug.cgi?id=52500
   7495 
   7496         * UIProcess/API/mac/PageClientImpl.h:
   7497         * UIProcess/API/mac/PageClientImpl.mm:
   7498         (WebKit::PageClientImpl::displayView):
   7499         * UIProcess/API/qt/qwkpage.cpp:
   7500         (QWKPagePrivate::displayView):
   7501         * UIProcess/API/qt/qwkpage_p.h:
   7502         * UIProcess/PageClient.h:
   7503         * UIProcess/WebPageProxy.cpp:
   7504         (WebKit::WebPageProxy::displayView):
   7505         * UIProcess/WebPageProxy.h:
   7506         * UIProcess/win/WebView.cpp:
   7507         (WebKit::WebView::displayView):
   7508         * UIProcess/win/WebView.h:
   7509 
   7510 2011-01-14  Anders Carlsson  <andersca (a] apple.com>
   7511 
   7512         Reviewed by Sam Weinig.
   7513 
   7514         Implement the "should paint bounds instead of indiviual rects" algorithm from WebKit1
   7515         https://bugs.webkit.org/show_bug.cgi?id=52499
   7516 
   7517         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   7518         (WebKit::shouldPaintBoundsRect):
   7519         Port code from -[WebView _mustDrawUnionedRect:singleRects:count:].
   7520 
   7521         (WebKit::DrawingAreaImpl::display):
   7522         If shouldPaintBoundsRect returns true, clear the rects vector and append the bounds rect.
   7523 
   7524 2011-01-14  Brian Weinstein  <bweinstein (a] apple.com>
   7525 
   7526         Reviewed by Geoff Garen.
   7527 
   7528         ShouldLoadResourceForFrame should use strings, not URLs.
   7529         https://bugs.webkit.org/show_bug.cgi?id=52476
   7530 
   7531         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   7532         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   7533         (WebKit::InjectedBundlePageLoaderClient::shouldLoadResourceForFrame): Pass resourceURL as a string instead of
   7534             a URL, and rename from subresourceURL to resourceURL.
   7535 
   7536 2011-01-14  Anders Carlsson  <andersca (a] apple.com>
   7537 
   7538         Reviewed by Sam Weinig.
   7539 
   7540         Fix for <rdar://problem/8711576> The web process should be able to read resources from the UI process.
   7541 
   7542         Based on a patch by Ivan Krsti. This also makes the NSURLCache path a sandbox parameter.
   7543 
   7544         * Shared/WebProcessCreationParameters.cpp:
   7545         (WebKit::WebProcessCreationParameters::encode):
   7546         (WebKit::WebProcessCreationParameters::decode):
   7547         Encode and decode the uiProcessBundleResourcePath member variable.
   7548 
   7549         * Shared/WebProcessCreationParameters.h:
   7550         Add uiProcessBundleResourcePath member variable.
   7551 
   7552         * UIProcess/mac/WebContextMac.mm:
   7553         (WebKit::WebContext::platformInitializeWebProcess):
   7554         Set the uiProcessBundleResourcePath member variable.
   7555 
   7556         * WebProcess/com.apple.WebProcess.sb:
   7557         Allow read-only access to UI_PROCESS_BUNDLE_RESOURCE_DIR and all subdirectories.
   7558 
   7559         * WebProcess/mac/WebProcessMac.mm:
   7560         (WebKit::initializeSandbox):
   7561         When initializing the sandbox, pass UI_PROCESS_BUNDLE_RESOURCE_DIR.
   7562 
   7563         (WebKit::WebProcess::platformInitializeWebProcess):
   7564         Remove the code that would consume a sandbox extension for the url cache path.
   7565 
   7566 2011-01-14  Anders Carlsson  <andersca (a] apple.com>
   7567 
   7568         Reviewed by Sam Weinig.
   7569 
   7570         Delay initializing the sandbox until we get the InitializeWebProcess message.
   7571 
   7572         * WebProcess/mac/WebProcessMac.mm:
   7573         (WebKit::initializeSandbox):
   7574         (WebKit::WebProcess::platformInitializeWebProcess):
   7575         * WebProcess/mac/WebProcessMainMac.mm:
   7576         (WebKit::WebProcessMain):
   7577 
   7578 2011-01-14  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   7579 
   7580         Reviewed by Kenneth Rohde Christiansen.
   7581 
   7582         Align import/export directives
   7583         https://bugs.webkit.org/show_bug.cgi?id=52208
   7584 
   7585         * Shared/API/c/WKBase.h: Align import/export directives with
   7586         JavaScriptCore/API/JSBase.h.
   7587 
   7588 2011-01-14  Pavel Feldman  <pfeldman (a] chromium.org>
   7589 
   7590         Reviewed by Yury Semikhatsky.
   7591 
   7592         Web Inspector: extract InspectorSettings from InspectorState, 
   7593         simplify it.
   7594         https://bugs.webkit.org/show_bug.cgi?id=52429
   7595 
   7596         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
   7597 
   7598 2011-01-13  Enrica Casucci  <enrica (a] apple.com>
   7599 
   7600         Reviewed by Darin Adler.
   7601 
   7602         WebKit2: Add support for drag and drop
   7603         https://bugs.webkit.org/show_bug.cgi?id=52343
   7604         <rdar://problem/7660558>
   7605                
   7606         This patch contains the changes required to support dropping content
   7607         in WebKit on the Mac. The DragData class has been extended to provide
   7608         additional context from the application (keyboard state, modal windows, etc.)
   7609         as well as information of the drag pasteboard being used.
   7610         The support for WebKit as drag source will be added with a separate patch.
   7611 
   7612         * Shared/DragControllerAction.h: Added.
   7613         * UIProcess/API/mac/WKView.mm:
   7614         Added implemention of the methods required to add suport for a drop target.
   7615         To maintain asynchronous communication with the WebProcess, we always return
   7616         the previous calculated value for the drag operation.
   7617         (-[WKView _registerDraggedTypes]):
   7618         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
   7619         (-[WKView applicationFlags:]):
   7620         (-[WKView draggingEntered:]):
   7621         (-[WKView draggingUpdated:]):
   7622         (-[WKView draggingExited:]):
   7623         (-[WKView prepareForDragOperation:]):
   7624         (-[WKView performDragOperation:]):
   7625         * UIProcess/WebPageProxy.cpp:
   7626         (WebKit::WebPageProxy::WebPageProxy):
   7627         (WebKit::WebPageProxy::performDragControllerAction):
   7628         (WebKit::WebPageProxy::didPerformDragControllerAction):
   7629         * UIProcess/WebPageProxy.h:
   7630         (WebKit::WebPageProxy::dragOperation):
   7631         (WebKit::WebPageProxy::resetDragOperation):
   7632         * UIProcess/WebPageProxy.messages.in:
   7633         * WebKit2.xcodeproj/project.pbxproj:
   7634         * WebProcess/WebCoreSupport/WebDragClient.cpp:
   7635         (WebKit::WebDragClient::willPerformDragDestinationAction):
   7636         (WebKit::WebDragClient::willPerformDragSourceAction):
   7637         (WebKit::WebDragClient::actionMaskForDrag):
   7638         (WebKit::WebDragClient::dragSourceActionMaskForPoint):
   7639         (WebKit::WebDragClient::startDrag):
   7640         * WebProcess/WebPage/WebPage.cpp:
   7641         (WebKit::WebPage::performDragControllerAction):
   7642         * WebProcess/WebPage/WebPage.h:
   7643         * WebProcess/WebPage/WebPage.messages.in:
   7644 
   7645 2011-01-13  Dan Bernstein  <mitz (a] apple.com>
   7646 
   7647         Reviewed by John Sullivan.
   7648 
   7649         Incorrect assertion in DrawingAreaImpl::scroll()
   7650         https://bugs.webkit.org/show_bug.cgi?id=52376
   7651 
   7652         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   7653         (WebKit::DrawingAreaImpl::scroll): Changed to take the fast path if the rects have the same area.
   7654         This made the assertion valid, but I removed it anyway.
   7655 
   7656 2011-01-12  Balazs Kelemen  <kbalazs (a] webkit.org>
   7657 
   7658         Unreviewed.
   7659 
   7660         Getting rid of the unused 'viewportSize' argument in QWKPagePrivate:init.
   7661         The argument is unused since http://trac.webkit.org/changeset/75468.
   7662 
   7663         * UIProcess/API/qt/qgraphicswkview.cpp:
   7664         (QGraphicsWKView::QGraphicsWKView):
   7665         * UIProcess/API/qt/qwkpage.cpp:
   7666         (QWKPagePrivate::init):
   7667         * UIProcess/API/qt/qwkpage_p.h:
   7668 
   7669 2011-01-12  Anders Carlsson  <andersca (a] apple.com>
   7670 
   7671         Reviewed by Sam Weinig.
   7672 
   7673         Implement DrawingAreaImpl::scroll
   7674         https://bugs.webkit.org/show_bug.cgi?id=52346
   7675 
   7676         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   7677         (WebKit::DrawingAreaImpl::scroll):
   7678         If there is already an active scroll, compute the area of both scroll rects and
   7679         invalidate the smallest one. Compute a new dirty region if necessary and also
   7680         add the scroll repaint region to the dirty region.
   7681 
   7682         (WebKit::DrawingAreaImpl::display):
   7683         Reset the scroll area and scroll delta.
   7684 
   7685         * WebProcess/WebPage/DrawingAreaImpl.h:
   7686         Add scroll area and scroll delta member variables.
   7687 
   7688 2011-01-12  Anders Carlsson  <andersca (a] apple.com>
   7689 
   7690         Reviewed by Dan Bernstein.
   7691 
   7692         Region improvements
   7693         https://bugs.webkit.org/show_bug.cgi?id=52344
   7694 
   7695         * Platform/Region.cpp:
   7696         (WebKit::Region::Shape::move):
   7697         (WebKit::Region::move):
   7698         Change Region::move to take an IntSize.
   7699 
   7700         * Platform/Region.h:
   7701         (WebKit::intersect):
   7702         (WebKit::subtract):
   7703         (WebKit::move):
   7704         Add convenience functions.
   7705 
   7706 2011-01-12  Ryosuke Niwa  <rniwa (a] webkit.org>
   7707 
   7708         Unreviewed Qt build fix for r75661
   7709 
   7710         * Shared/WebEvent.h: Don't declare phase() on non-Mac platforms.
   7711 
   7712 2011-01-12  Beth Dakin  <bdakin (a] apple.com>
   7713 
   7714         Reviewed by Anders Carlsson.
   7715 
   7716         Add-on for https://bugs.webkit.org/show_bug.cgi?id=52309 
   7717         Expose fixed layout through WebKit SPI
   7718         -and corresponding-
   7719         <rdar://problem/8844464>
   7720 
   7721         And now with getters!
   7722         * UIProcess/API/C/WKPage.cpp:
   7723         (WKPageUseFixedLayout):
   7724         (WKPageFixedLayoutSize):
   7725         * UIProcess/API/C/WKPage.h:
   7726         * UIProcess/WebPageProxy.h:
   7727         (WebKit::WebPageProxy::useFixedLayout):
   7728         (WebKit::WebPageProxy::fixedLayoutSize):
   7729 
   7730 2011-01-12  Sam Weinig  <sam (a] webkit.org>
   7731 
   7732         Reviewed by Anders Carlsson.
   7733 
   7734         https://bugs.webkit.org/show_bug.cgi?id=52337
   7735         PlatformWheelEvent should know about the scroll phase on the Mac
   7736 
   7737         Add a phase parameter on Mac WebWheelEvent and pipe it down to PlatformWheelEvent.
   7738 
   7739         * Shared/WebEvent.h:
   7740         (WebKit::WebWheelEvent::phase):
   7741         * Shared/WebEventConversion.cpp:
   7742         (WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent):
   7743         * Shared/WebWheelEvent.cpp:
   7744         (WebKit::WebWheelEvent::WebWheelEvent):
   7745         (WebKit::WebWheelEvent::encode):
   7746         (WebKit::WebWheelEvent::decode):
   7747         * Shared/mac/WebEventFactory.mm:
   7748         (WebKit::phaseForEvent):
   7749         (WebKit::WebEventFactory::createWebWheelEvent):
   7750 
   7751 2011-01-12  Anders Carlsson  <andersca (a] apple.com>
   7752 
   7753         Reviewed by Sam Weinig.
   7754 
   7755         Get rid of an unneeded parameter from DrawingArea::scroll
   7756         https://bugs.webkit.org/show_bug.cgi?id=52336
   7757 
   7758         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   7759         (WebKit::WebChromeClient::scroll):
   7760         * WebProcess/WebCoreSupport/WebChromeClient.h:
   7761         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   7762         (WebKit::ChunkedUpdateDrawingArea::scroll):
   7763         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h:
   7764         * WebProcess/WebPage/DrawingArea.h:
   7765         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   7766         (WebKit::DrawingAreaImpl::scroll):
   7767         * WebProcess/WebPage/DrawingAreaImpl.h:
   7768         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   7769         (WebKit::LayerBackedDrawingArea::scroll):
   7770         * WebProcess/WebPage/LayerBackedDrawingArea.h:
   7771         * WebProcess/WebPage/TiledDrawingArea.cpp:
   7772         (WebKit::TiledDrawingArea::scroll):
   7773         * WebProcess/WebPage/TiledDrawingArea.h:
   7774 
   7775 2011-01-12  Anders Carlsson  <andersca (a] apple.com>
   7776 
   7777         Reviewed by Sam Weinig.
   7778 
   7779         Get the new drawing area painting to the screen
   7780         https://bugs.webkit.org/show_bug.cgi?id=52331
   7781 
   7782         * UIProcess/DrawingAreaProxyImpl.cpp:
   7783         (WebKit::DrawingAreaProxyImpl::incorporateUpdate):
   7784         Call setViewNeedsDisplay on all the update rects.
   7785 
   7786         * UIProcess/WebPageProxy.cpp:
   7787         (WebKit::WebPageProxy::setViewNeedsDisplay):
   7788         Call through to the page client.
   7789 
   7790         (WebKit::WebPageProxy::processDidCrash):
   7791         Null out the drawing area proxy.
   7792         
   7793         * UIProcess/mac/BackingStoreMac.mm:
   7794         (WebKit::BackingStore::paint):
   7795         Paint.
   7796 
   7797 2011-01-12  Anders Carlsson  <andersca (a] apple.com>
   7798 
   7799         Reviewed by Sam Weinig.
   7800 
   7801         More work on getting the drawing area proxy to paint
   7802         https://bugs.webkit.org/show_bug.cgi?id=52328
   7803 
   7804         * UIProcess/API/mac/WKView.mm:
   7805         (-[WKView drawRect:]):
   7806         Handle the new drawing area.
   7807 
   7808         * UIProcess/BackingStore.cpp:
   7809         (WebKit::BackingStore::BackingStore):
   7810         Assert that the size isn't empty.
   7811         
   7812         * UIProcess/BackingStore.h:
   7813         * UIProcess/mac/BackingStoreMac.mm:
   7814         (WebKit::BackingStore::incorporateUpdate):
   7815         Paint all update rects into the bitmap context.
   7816 
   7817         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   7818         (WebKit::DrawingAreaImpl::display):
   7819         Create a handle so the shareable bitmap will actually be transferred over.
   7820 
   7821 2011-01-12  Anders Carlsson  <andersca (a] apple.com>
   7822 
   7823         Fix build.
   7824 
   7825         * UIProcess/DrawingAreaProxyImpl.cpp:
   7826         (WebKit::DrawingAreaProxyImpl::incorporateUpdate):
   7827 
   7828 2011-01-12  Anders Carlsson  <andersca (a] apple.com>
   7829 
   7830         Reviewed by Sam Weinig.
   7831 
   7832         Begin stubbing out some more BackingStore member functions
   7833         https://bugs.webkit.org/show_bug.cgi?id=52323
   7834 
   7835         * UIProcess/BackingStore.cpp:
   7836         (WebKit::BackingStore::~BackingStore):
   7837         This was accidentally made into a constructor; it should be a destructor.
   7838 
   7839         * UIProcess/DrawingAreaProxyImpl.cpp:
   7840         (WebKit::DrawingAreaProxyImpl::paint):
   7841         Call the backing store.
   7842 
   7843         (WebKit::DrawingAreaProxyImpl::update):
   7844         Incorporate the update.
   7845 
   7846         (WebKit::DrawingAreaProxyImpl::incorporateUpdate):
   7847         Create the backing store if needed and incorporate the update.
   7848 
   7849         * UIProcess/mac/BackingStoreMac.mm: Added.
   7850         (WebKit::BackingStore::platformInitialize):
   7851         Create a bitmap context.
   7852 
   7853         (WebKit::BackingStore::paint):
   7854         (WebKit::BackingStore::incorporateUpdate):
   7855         Add stubs.
   7856 
   7857         * WebKit2.xcodeproj/project.pbxproj:
   7858         Add BackingStoreMac.mm
   7859 
   7860 2011-01-12  Beth Dakin  <bdakin (a] apple.com>
   7861 
   7862         Reviewed by Anders Carlsson.
   7863 
   7864         Fix for https://bugs.webkit.org/show_bug.cgi?id=52309 Expose
   7865         fixed layout through WebKit SPI
   7866         -and corresponding-
   7867         <rdar://problem/8844464>
   7868 
   7869         Store useFixedLayout and fixedLayoutSize in the 
   7870         WebPageCreationParameters and the WebPageProxy.
   7871         * Shared/WebPageCreationParameters.cpp:
   7872         (WebKit::WebPageCreationParameters::encode):
   7873         (WebKit::WebPageCreationParameters::decode):
   7874         * Shared/WebPageCreationParameters.h:
   7875         * UIProcess/API/C/WKPage.cpp:
   7876         (WKPageSetUseFixedLayout):
   7877         (WKPageSetFixedLayoutSize):
   7878         * UIProcess/API/C/WKPage.h:
   7879         * UIProcess/WebPageProxy.cpp:
   7880         (WebKit::WebPageProxy::WebPageProxy):
   7881         (WebKit::WebPageProxy::setUseFixedLayout):
   7882         (WebKit::WebPageProxy::setFixedLayoutSize):
   7883         (WebKit::WebPageProxy::creationParameters):
   7884         * UIProcess/WebPageProxy.h:
   7885         * WebProcess/WebPage/WebPage.cpp:
   7886         (WebKit::WebPage::setUseFixedLayout):
   7887         (WebKit::WebPage::setFixedLayoutSize):
   7888         * WebProcess/WebPage/WebPage.h:
   7889         * WebProcess/WebPage/WebPage.messages.in:
   7890 
   7891 2011-01-12  Anders Carlsson  <andersca (a] apple.com>
   7892 
   7893         Reviewed by Beth Dakin.
   7894 
   7895         Add BackingStore class
   7896         https://bugs.webkit.org/show_bug.cgi?id=52318
   7897 
   7898         * UIProcess/BackingStore.cpp: Added.
   7899         (WebKit::BackingStore::create):
   7900         (WebKit::BackingStore::BackingStore):
   7901         * UIProcess/BackingStore.h: Added.
   7902         * WebKit2.xcodeproj/project.pbxproj:
   7903 
   7904 2011-01-12  Brady Eidson  <beidson (a] apple.com>
   7905 
   7906         Reviewed by Sam Weinig.
   7907 
   7908         <rdar://problem/8837307>, <rdar://problem/8637038>, and https://bugs.webkit.org/show_bug.cgi?id=52248
   7909         Back/forward list recovery after a WebProcess crash is crashy itself.
   7910 
   7911         Add an isEmpty() accessor so the WebProcess knows if it is actually restoring a session:
   7912         * Shared/SessionState.cpp:
   7913         (WebKit::SessionState::isEmpty):
   7914         * Shared/SessionState.h:
   7915 
   7916         Keep track of the highest used itemID so a relaunched WebProcess can later be informed:
   7917         * Shared/WebBackForwardListItem.cpp:
   7918         (WebKit::WebBackForwardListItem::WebBackForwardListItem):
   7919         (WebKit::WebBackForwardListItem::highedUsedItemID):
   7920         * Shared/WebBackForwardListItem.h:
   7921         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   7922         (WebKit::generateHistoryItemID):
   7923         (WebKit::WebBackForwardListProxy::setHighestItemIDFromUIProcess):
   7924         (WebKit::WebBackForwardListProxy::addItemFromUIProcess): Remove a now-invalid ASSERT, as the UIProcess
   7925           now tells the WebProcess that a previous WebProcess created.
   7926         * WebProcess/WebPage/WebBackForwardListProxy.h:
   7927 
   7928         Encode/decode data relevant to restoring a session on WebPage creation:
   7929         * Shared/WebPageCreationParameters.cpp:
   7930         (WebKit::WebPageCreationParameters::encode):
   7931         (WebKit::WebPageCreationParameters::decode):
   7932         * Shared/WebPageCreationParameters.h:
   7933 
   7934         If the WebProcess has crashed since the last load, change reload and the various back/forward APIs to 
   7935         update the current back/forward item (if necessary) then relaunch the process:
   7936         * UIProcess/WebPageProxy.cpp:
   7937         (WebKit::WebPageProxy::reattachToWebProcessWithItem):
   7938         (WebKit::WebPageProxy::reattachToWebProcess): Renamed from "relaunch()" and made private.
   7939         (WebKit::WebPageProxy::initializeWebPage):
   7940         (WebKit::WebPageProxy::loadURL):
   7941         (WebKit::WebPageProxy::loadURLRequest):
   7942         (WebKit::WebPageProxy::reload):
   7943         (WebKit::WebPageProxy::goForward):
   7944         (WebKit::WebPageProxy::goBack):
   7945         (WebKit::WebPageProxy::goToBackForwardItem):
   7946         (WebKit::WebPageProxy::creationParameters):
   7947         * UIProcess/WebPageProxy.h:
   7948 
   7949         Rename "RestoreSession" to "RestoreSessionAndNavigateToCurrentItem"
   7950         * WebProcess/WebPage/WebPage.messages.in:
   7951         * UIProcess/cf/WebPageProxyCF.cpp:
   7952         (WebKit::WebPageProxy::restoreFromSessionStateData):
   7953 
   7954         Restore a session on page creation if the parameters include it:
   7955         * WebProcess/WebPage/WebPage.cpp:
   7956         (WebKit::WebPage::WebPage): Call restoreSession if session state exists.
   7957         (WebKit::WebPage::restoreSessionAndNavigateToCurrentItem):
   7958         (WebKit::WebPage::restoreSession):
   7959         * WebProcess/WebPage/WebPage.h:
   7960 
   7961 2011-01-12  Anders Carlsson  <andersca (a] apple.com>
   7962 
   7963         Reviewed by Sam Weinig.
   7964 
   7965         Send Update and DidUpdate messages
   7966         https://bugs.webkit.org/show_bug.cgi?id=52316
   7967 
   7968         * UIProcess/DrawingAreaProxy.h:
   7969         (WebKit::DrawingAreaProxy::update):
   7970         Add empty stub.
   7971 
   7972         * UIProcess/DrawingAreaProxy.messages.in:
   7973         Add Update message.
   7974 
   7975         * UIProcess/DrawingAreaProxyImpl.cpp:
   7976         (WebKit::DrawingAreaProxyImpl::update):
   7977         Just send back a DidUpdate message.
   7978 
   7979         * WebProcess/WebPage/DrawingArea.h:
   7980         (WebKit::DrawingArea::didUpdate):
   7981         Add empty stub.
   7982 
   7983         * WebProcess/WebPage/DrawingArea.messages.in:
   7984         Add DidUpdate message.
   7985 
   7986         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   7987         (WebKit::DrawingAreaImpl::didUpdate):
   7988         Call display().
   7989 
   7990         (WebKit::DrawingAreaImpl::display):
   7991         Send an Update message.
   7992 
   7993 2011-01-12  Anders Carlsson  <andersca (a] apple.com>
   7994 
   7995         Reviewed by Sam Weinig.
   7996 
   7997         Make the new drawing area actually draw something
   7998         https://bugs.webkit.org/show_bug.cgi?id=52314
   7999 
   8000         * Shared/UpdateInfo.cpp:
   8001         (WebKit::UpdateInfo::encode):
   8002         (WebKit::UpdateInfo::decode):
   8003         Encode and decode newly added fields.
   8004 
   8005         * Shared/UpdateInfo.h:
   8006         Add a vector of update rects and a handle for the sharable bitmap.
   8007 
   8008         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   8009         (WebKit::DrawingAreaImpl::display):
   8010         Get the individual rects from the region and paint them into the shareable bitmap.
   8011 
   8012         * WebProcess/WebPage/WebPage.cpp:
   8013         (WebKit::WebPage::mainFrameHasCustomRepresentation):
   8014         * WebProcess/WebPage/WebPage.h:
   8015         Add helper function.
   8016 
   8017         * WebProcess/WebPage/mac/ChunkedUpdateDrawingAreaMac.cpp:
   8018         (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):
   8019         Use helper function.
   8020 
   8021 2011-01-12  Anders Carlsson  <andersca (a] apple.com>
   8022 
   8023         Reviewed by Sam Weinig.
   8024 
   8025         Add UpdateInfo class
   8026         https://bugs.webkit.org/show_bug.cgi?id=52306
   8027 
   8028         * Shared/UpdateInfo.cpp: Added.
   8029         (WebKit::UpdateInfo::encode):
   8030         (WebKit::UpdateInfo::decode):
   8031         * Shared/UpdateInfo.h: Added.
   8032         (WebKit::UpdateInfo::UpdateInfo):
   8033         * WebKit2.xcodeproj/project.pbxproj:
   8034 
   8035 2011-01-12  Anders Carlsson  <andersca (a] apple.com>
   8036 
   8037         Reviewed by Sam Weinig.
   8038 
   8039         More work on the new drawing area implementation
   8040         https://bugs.webkit.org/show_bug.cgi?id=52302
   8041 
   8042         * Platform/Region.cpp:
   8043         (WebKit::Region::Shape::segments_end):
   8044         segments_end could end up returning an iterator that is one element past the Vector data, so
   8045         we can't use operator[] since that will assert.
   8046 
   8047         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   8048         (WebKit::DrawingAreaImpl::DrawingAreaImpl):
   8049         Initialize the timer.
   8050 
   8051         (WebKit::DrawingAreaImpl::setNeedsDisplay):
   8052         Unite the rect with the dirty region and schedule a display.
   8053 
   8054         (WebKit::DrawingAreaImpl::setSize):
   8055         Tell the web page to resize.
   8056 
   8057         (WebKit::DrawingAreaImpl::scheduleDisplay):
   8058         Start a display timer if needed.
   8059 
   8060         (WebKit::DrawingAreaImpl::display):
   8061         Add a stub.
   8062 
   8063 2011-01-12  Brent Fulgham  <bfulgham (a] webkit.org>
   8064 
   8065         Unreviewed build fix after r75527.  Rename 'BackingStoreCairo.cpp'
   8066         to 'ShareableBitmapCairo.cpp' to match VS project changes.
   8067 
   8068         * Shared/cairo/BackingStoreCairo.cpp: Removed.
   8069         * Shared/cairo/ShareableBitmapCairo.cpp: Copied from Shared/cairo/BackingStoreCairo.cpp.
   8070 
   8071 2011-01-11  Jeff Miller  <jeffm (a] apple.com>
   8072 
   8073         Reviewed by John Sullivan.
   8074 
   8075         WebKit2: "Webpages not responding" dialog appears when <select> popup menu is showing
   8076         https://bugs.webkit.org/show_bug.cgi?id=52242
   8077 
   8078         * UIProcess/WebPageProxy.cpp:
   8079         (WebKit::WebPageProxy::showPopupMenu):
   8080         On Windows, stop the responsiveness timer before calling showPopupMenu().
   8081 
   8082 2011-01-11  Maciej Stachowiak  <mjs (a] apple.com>
   8083 
   8084         Reviewed by Anders Carlsson.
   8085 
   8086         UIProcess kills the WebProcess sometimes when detached frames exist
   8087         https://bugs.webkit.org/show_bug.cgi?id=52227
   8088 
   8089         * UIProcess/WebPageProxy.cpp:
   8090         (WebKit::WebPageProxy::didSaveFrameToPageCache): Don't consider the message invalid
   8091         if it came in for a detached frame.
   8092 
   8093 2011-01-11  Anders Carlsson  <andersca (a] apple.com>
   8094 
   8095         Build fix.
   8096 
   8097         * WebKit2.xcodeproj/project.pbxproj:
   8098 
   8099 2011-01-11  Anders Carlsson  <andersca (a] apple.com>
   8100 
   8101         Reviewed by Sam Weinig.
   8102 
   8103         Add a Region class which represents a graphical region
   8104         https://bugs.webkit.org/show_bug.cgi?id=52255
   8105 
   8106         * Platform/Region.cpp: Added.
   8107         (WebKit::Region::Region):
   8108         (WebKit::Region::rects):
   8109         (WebKit::Region::Shape::Shape):
   8110         (WebKit::Region::Shape::appendSpan):
   8111         (WebKit::Region::Shape::canCoalesce):
   8112         (WebKit::Region::Shape::appendSpans):
   8113         (WebKit::Region::Shape::appendSegment):
   8114         (WebKit::Region::Shape::spans_begin):
   8115         (WebKit::Region::Shape::spans_end):
   8116         (WebKit::Region::Shape::segments_begin):
   8117         (WebKit::Region::Shape::segments_end):
   8118         (WebKit::Region::Shape::dump):
   8119         (WebKit::Region::Shape::bounds):
   8120         (WebKit::Region::Shape::move):
   8121         (WebKit::Region::Shape::swap):
   8122         (WebKit::Region::Shape::shapeOperation):
   8123         (WebKit::Region::Shape::UnionOperation::trySimpleOperation):
   8124         (WebKit::Region::Shape::unionShapes):
   8125         (WebKit::Region::Shape::IntersectOperation::trySimpleOperation):
   8126         (WebKit::Region::Shape::intersectShapes):
   8127         (WebKit::Region::Shape::SubtractOperation::trySimpleOperation):
   8128         (WebKit::Region::Shape::subtractShapes):
   8129         (WebKit::Region::dump):
   8130         (WebKit::Region::intersect):
   8131         (WebKit::Region::unite):
   8132         (WebKit::Region::subtract):
   8133         (WebKit::Region::move):
   8134         * Platform/Region.h: Added.
   8135         (WebKit::Region::bounds):
   8136         (WebKit::Region::isEmpty):
   8137         (WebKit::Region::Span::Span):
   8138         (WebKit::Region::Shape::isEmpty):
   8139         * WebKit2.xcodeproj/project.pbxproj:
   8140 
   8141 2011-01-11  Anders Carlsson  <andersca (a] apple.com>
   8142 
   8143         Reviewed by Darin Adler.
   8144 
   8145         Add DidSetSize message
   8146         https://bugs.webkit.org/show_bug.cgi?id=52254
   8147 
   8148         * DerivedSources.make:
   8149         Add DrawingAReaProxy.messages.in.
   8150 
   8151         * Platform/CoreIPC/MessageID.h:
   8152         Add DrawingAreaProxy message class.
   8153 
   8154         * UIProcess/DrawingAreaProxy.h:
   8155         (WebKit::DrawingAreaProxy::didSetSize):
   8156         Add CoreIPC message handler function.
   8157 
   8158         * UIProcess/DrawingAreaProxy.messages.in: Added.
   8159 
   8160         * UIProcess/DrawingAreaProxyImpl.cpp:
   8161         (WebKit::DrawingAreaProxyImpl::didSetSize):
   8162         Add stub.
   8163 
   8164         * UIProcess/WebPageProxy.cpp:
   8165         (WebKit::WebPageProxy::didReceiveMessage):
   8166         Handle DrawingAreaProxy messages.
   8167 
   8168         * WebKit2.xcodeproj/project.pbxproj:
   8169         Add new files.
   8170 
   8171         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   8172         (WebKit::DrawingAreaImpl::setSize):
   8173         Send a DidSetSize message for now.
   8174 
   8175 2011-01-11  Sam Weinig  <sam (a] webkit.org>
   8176 
   8177         Reviewed by Anders Carlsson.
   8178 
   8179         Fix spelling mistake. Sharable -> Shareable.
   8180 
   8181         * Shared/API/c/WKImage.h:
   8182         * Shared/API/c/WKSharedAPICast.h:
   8183         (WebKit::toImageOptions):
   8184         * Shared/ImageOptions.h:
   8185         * Shared/WebImage.cpp:
   8186         (WebKit::WebImage::create):
   8187 
   8188 2011-01-11  Anders Carlsson  <andersca (a] apple.com>
   8189 
   8190         Reviewed by Sam Weinig.
   8191 
   8192         Add SetSize message
   8193         https://bugs.webkit.org/show_bug.cgi?id=52247
   8194 
   8195         * DerivedSources.make:
   8196         Add DrawingArea.messages.in
   8197 
   8198         * Platform/CoreIPC/MessageID.h:
   8199         Add DrawingArea message class.
   8200 
   8201         * UIProcess/DrawingAreaProxyImpl.cpp:
   8202         (WebKit::DrawingAreaProxyImpl::sizeDidChange):
   8203         Call sendSetSize.
   8204 
   8205         (WebKit::DrawingAreaProxyImpl::sendSetSize):
   8206         Send a SetSize message.
   8207 
   8208         * UIProcess/DrawingAreaProxyImpl.h:
   8209         Add setSize override.
   8210 
   8211         * WebKit2.xcodeproj/project.pbxproj:
   8212         Add new files.
   8213 
   8214         * WebProcess/WebPage/DrawingArea.h:
   8215         (WebKit::DrawingArea::setSize):
   8216         Add setSize member function.
   8217 
   8218         * WebProcess/WebPage/DrawingArea.messages.in: Added.
   8219 
   8220         * WebProcess/WebPage/DrawingAreaImpl.cpp:
   8221         * WebProcess/WebPage/DrawingAreaImpl.h:
   8222         Add setSize.
   8223 
   8224         * WebProcess/WebPage/WebPage.cpp:
   8225         (WebKit::WebPage::didReceiveMessage):
   8226         Handle drawing area messages.
   8227 
   8228 2011-01-11  Anders Carlsson  <andersca (a] apple.com>
   8229 
   8230         Reviewed by Sam Weinig.
   8231 
   8232         Replace ASSERTs with FIXMEs.
   8233 
   8234         * UIProcess/DrawingAreaProxyImpl.cpp:
   8235         (WebKit::DrawingAreaProxyImpl::sizeDidChange):
   8236         (WebKit::DrawingAreaProxyImpl::setPageIsVisible):
   8237 
   8238 2011-01-11  Anders Carlsson  <andersca (a] apple.com>
   8239 
   8240         Reviewed by Sam Weinig.
   8241 
   8242         Add DrawingAreaImpl skeleton class
   8243         https://bugs.webkit.org/show_bug.cgi?id=52246
   8244 
   8245         * UIProcess/API/mac/WKView.mm:
   8246         (useNewDrawingArea):
   8247         New function which controls which drawing area to use, through an environment variable.
   8248 
   8249         (-[WKView drawRect:]):
   8250         Bail if we're using the new drawing area (for now).
   8251 
   8252         (-[WKView WebKit::]):
   8253         Create a DrawingAreaProxyImpl when asked to.
   8254 
   8255         * WebKit2.xcodeproj/project.pbxproj:
   8256         Add new files.
   8257 
   8258         * WebProcess/WebPage/DrawingArea.cpp:
   8259         (WebKit::DrawingArea::create):
   8260         Create a DrawingAreaImpl when asked to.
   8261 
   8262         * WebProcess/WebPage/DrawingAreaImpl.cpp: Added.
   8263         * WebProcess/WebPage/DrawingAreaImpl.h: Added.
   8264         Add DrawingAreaImpl class.
   8265 
   8266 2011-01-11  Anders Carlsson  <andersca (a] apple.com>
   8267 
   8268         Reviewed by Sam Weinig.
   8269 
   8270         Add Mac-only DrawingAreaProxyImpl class skeleton
   8271         https://bugs.webkit.org/show_bug.cgi?id=52243
   8272 
   8273         This is the proxy side of a new drawing area implementation. This is Mac only for now
   8274         while the design is being fleshed out.
   8275 
   8276         * Shared/DrawingAreaInfo.h:
   8277         * UIProcess/API/mac/WKView.mm:
   8278         (-[WKView _switchToDrawingAreaTypeIfNecessary:DrawingAreaInfo::]):
   8279         * UIProcess/DrawingAreaProxyImpl.cpp: Added.
   8280         (WebKit::DrawingAreaProxyImpl::create):
   8281         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
   8282         (WebKit::DrawingAreaProxyImpl::~DrawingAreaProxyImpl):
   8283         (WebKit::DrawingAreaProxyImpl::didReceiveMessage):
   8284         (WebKit::DrawingAreaProxyImpl::didReceiveSyncMessage):
   8285         (WebKit::DrawingAreaProxyImpl::paint):
   8286         (WebKit::DrawingAreaProxyImpl::sizeDidChange):
   8287         (WebKit::DrawingAreaProxyImpl::setPageIsVisible):
   8288         (WebKit::DrawingAreaProxyImpl::attachCompositingContext):
   8289         (WebKit::DrawingAreaProxyImpl::detachCompositingContext):
   8290         * UIProcess/DrawingAreaProxyImpl.h: Added.
   8291         * WebKit2.xcodeproj/project.pbxproj:
   8292         * WebProcess/WebPage/DrawingArea.cpp:
   8293         (WebKit::DrawingArea::create):
   8294 
   8295 2011-01-11  Anders Carlsson  <andersca (a] apple.com>
   8296 
   8297         Fix Windows build.
   8298 
   8299         * WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp:
   8300         (WebKit::WebPopupMenu::setUpPlatformData):
   8301 
   8302 2011-01-11  Anders Carlsson  <andersca (a] apple.com>
   8303 
   8304         Reviewed by Sam Weinig.
   8305 
   8306         Rename ShareableBitmap::createSharable to createShareable
   8307         https://bugs.webkit.org/show_bug.cgi?id=52234
   8308 
   8309         * Shared/ShareableBitmap.cpp:
   8310         (WebKit::ShareableBitmap::createShareable):
   8311         * Shared/ShareableBitmap.h:
   8312         * Shared/WebImage.cpp:
   8313         (WebKit::WebImage::create):
   8314         * WebProcess/Plugins/PluginProxy.cpp:
   8315         (WebKit::PluginProxy::geometryDidChange):
   8316         * WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp:
   8317         (WebKit::WebPopupMenu::setUpPlatformData):
   8318         * WebProcess/WebPage/FindController.cpp:
   8319         (WebKit::FindController::updateFindIndicator):
   8320 
   8321 2011-01-11  Anders Carlsson  <andersca (a] apple.com>
   8322 
   8323         Reviewed by Sam Weinig.
   8324 
   8325         Rename BackingStore to ShareableBitmap
   8326         https://bugs.webkit.org/show_bug.cgi?id=52228
   8327 
   8328         * GNUmakefile.am:
   8329         * PluginProcess/PluginControllerProxy.cpp:
   8330         (WebKit::PluginControllerProxy::geometryDidChange):
   8331         * PluginProcess/PluginControllerProxy.h:
   8332         * Shared/API/c/cg/WKImageCG.cpp:
   8333         (WKImageCreateCGImage):
   8334         * Shared/BackingStore.cpp: Removed.
   8335         * Shared/BackingStore.h: Removed.
   8336         * Shared/PlatformPopupMenuData.cpp:
   8337         (WebKit::PlatformPopupMenuData::decode):
   8338         * Shared/PlatformPopupMenuData.h:
   8339         * Shared/ShareableBitmap.cpp: Copied from WebKit2/Shared/BackingStore.cpp.
   8340         (WebKit::ShareableBitmap::create):
   8341         (WebKit::ShareableBitmap::createSharable):
   8342         (WebKit::ShareableBitmap::createHandle):
   8343         (WebKit::ShareableBitmap::ShareableBitmap):
   8344         (WebKit::ShareableBitmap::~ShareableBitmap):
   8345         (WebKit::ShareableBitmap::resize):
   8346         (WebKit::ShareableBitmap::data):
   8347         * Shared/ShareableBitmap.h: Copied from WebKit2/Shared/BackingStore.h.
   8348         * Shared/UserMessageCoders.h:
   8349         (WebKit::UserMessageEncoder::baseEncode):
   8350         (WebKit::UserMessageDecoder::baseDecode):
   8351         * Shared/WebImage.cpp:
   8352         (WebKit::WebImage::create):
   8353         (WebKit::WebImage::WebImage):
   8354         (WebKit::WebImage::~WebImage):
   8355         (WebKit::WebImage::size):
   8356         * Shared/WebImage.h:
   8357         (WebKit::WebImage::bitmap):
   8358         * Shared/cairo/BackingStoreCairo.cpp:
   8359         (WebKit::ShareableBitmap::createGraphicsContext):
   8360         (WebKit::ShareableBitmap::paint):
   8361         * Shared/cg/BackingStoreCG.cpp: Removed.
   8362         * Shared/cg/ShareableBitmapCG.cpp: Copied from WebKit2/Shared/cg/BackingStoreCG.cpp.
   8363         (WebKit::ShareableBitmap::createGraphicsContext):
   8364         (WebKit::ShareableBitmap::paint):
   8365         * Shared/gtk/BackingStoreGtk.cpp: Removed.
   8366         * Shared/gtk/ShareableBitmapGtk.cpp: Copied from WebKit2/Shared/gtk/BackingStoreGtk.cpp.
   8367         (WebKit::ShareableBitmap::createGraphicsContext):
   8368         (WebKit::ShareableBitmap::paint):
   8369         * Shared/qt/BackingStoreQt.cpp: Removed.
   8370         * Shared/qt/ShareableBitmapQt.cpp: Copied from WebKit2/Shared/qt/BackingStoreQt.cpp.
   8371         (WebKit::ShareableBitmap::createGraphicsContext):
   8372         (WebKit::ShareableBitmap::paint):
   8373         * UIProcess/FindIndicator.cpp:
   8374         (WebKit::FindIndicator::create):
   8375         (WebKit::FindIndicator::FindIndicator):
   8376         * UIProcess/FindIndicator.h:
   8377         (WebKit::FindIndicator::contentImage):
   8378         * WebKit2.pro:
   8379         * WebKit2.xcodeproj/project.pbxproj:
   8380         * WebProcess/Plugins/PluginProxy.cpp:
   8381         (WebKit::PluginProxy::geometryDidChange):
   8382         * WebProcess/Plugins/PluginProxy.h:
   8383         * WebProcess/WebPage/FindController.cpp:
   8384         (WebKit::FindController::updateFindIndicator):
   8385         * WebProcess/WebPage/WebPage.cpp:
   8386         (WebKit::WebPage::snapshotInViewCoordinates):
   8387         (WebKit::WebPage::snapshotInDocumentCoordinates):
   8388         * win/WebKit2.vcproj:
   8389 
   8390 2011-01-11  John Sullivan  <sullivan (a] apple.com>
   8391 
   8392         Reviewed by Anders Carlsson.
   8393 
   8394         [WKView setFrameSize:] derefs _page->drawingArea() without null check
   8395         <https://bugs.webkit.org/show_bug.cgi?id=52231>
   8396 
   8397         * UIProcess/API/mac/WKView.mm:
   8398         (-[WKView setFrameSize:]):
   8399         Null check drawingArea(). This is OK because if it doesn't exist then it will be
   8400         created later with the correct initial size.
   8401 
   8402 2011-01-07  Enrica Casucci  <enrica (a] apple.com>
   8403 
   8404         Reviewed by Alexey Proskuryakov.
   8405 
   8406         Paste and drag and drop use different code paths to interact with the pasteboard.
   8407         https://bugs.webkit.org/show_bug.cgi?id=52093
   8408         The change consists in a refactoring of the code to have only one class that
   8409         deals with the pasteboard on Mac.
   8410 
   8411         * WebProcess/WebCoreSupport/WebEditorClient.h:
   8412         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm: Added two methods to provide to WebCore functionality
   8413         exposed by NSURLExtras.
   8414         (WebKit::WebEditorClient::canonicalizeURL):
   8415         (WebKit::WebEditorClient::canonicalizeURLString):
   8416 
   8417 2011-01-11  Jessie Berlin  <jberlin (a] apple.com>
   8418 
   8419         Reviewed by Anders Carlsson and Sam Weinig.
   8420 
   8421         Fix crash on launch on Windows.
   8422 
   8423         * UIProcess/win/WebView.cpp:
   8424         (WebKit::WebView::onSizeEvent):
   8425         The drawing area is no longer initialized before the WebView is created and the first
   8426         onSize is receieved.
   8427 
   8428 2011-01-11  Anders Carlsson  <andersca (a] apple.com>
   8429 
   8430         Reviewed by Dan Bernstein.
   8431 
   8432         Automatically reinitialize the web page on relaunch
   8433         https://bugs.webkit.org/show_bug.cgi?id=52224
   8434         <rdar://problem/8765695>
   8435 
   8436         * UIProcess/API/mac/WKView.mm:
   8437         (-[WKView _didRelaunchProcess]):
   8438         Remove call to reinitializeWebPage.
   8439 
   8440         * UIProcess/WebPageProxy.cpp:
   8441         (WebKit::WebPageProxy::relaunch):
   8442         Call initializeWebPage().
   8443 
   8444         (WebKit::WebPageProxy::initializeWebPage):
   8445         Assert that the web page is valid here.
   8446 
   8447         * UIProcess/WebPageProxy.h:
   8448         Remove reinitializeWebPage.
   8449 
   8450         * UIProcess/win/WebView.cpp:
   8451         (WebKit::WebView::didRelaunchProcess):
   8452         Remove call to reinitializeWebPage.
   8453 
   8454 2011-01-10  Anders Carlsson  <andersca (a] apple.com>
   8455 
   8456         Reviewed by Sam Weinig.
   8457 
   8458         Pass the view size to the DrawingAreaProxy constructor
   8459         https://bugs.webkit.org/show_bug.cgi?id=52189
   8460 
   8461         * UIProcess/DrawingAreaProxy.cpp:
   8462         (WebKit::DrawingAreaProxy::DrawingAreaProxy):
   8463         * UIProcess/WebPageProxy.cpp:
   8464         (WebKit::WebPageProxy::viewSize):
   8465         * UIProcess/WebPageProxy.h:
   8466 
   8467 2011-01-11  Sam Weinig  <sam (a] webkit.org>
   8468 
   8469         Roll r75460 back in with build fix.
   8470 
   8471 2011-01-11  Anders Carlsson  <andersca (a] apple.com>
   8472 
   8473         Reviewed by Andreas Kling.
   8474 
   8475         Work towards having the WebPageProxy decide when to create the DrawingAreaProxy
   8476         https://bugs.webkit.org/show_bug.cgi?id=52184
   8477 
   8478         Qt part made my Balazs Kelemen.
   8479 
   8480         * UIProcess/API/mac/PageClientImpl.h:
   8481         * UIProcess/API/mac/PageClientImpl.mm:
   8482         (WebKit::PageClientImpl::createDrawingAreaProxy):
   8483         Call -[WKView _createDrawingAreaProxy].
   8484 
   8485         (WebKit::PageClientImpl::setViewNeedsDisplay):
   8486         Call setNeedsDisplayInRect on the WKView.
   8487 
   8488         * UIProcess/API/mac/WKView.mm:
   8489         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
   8490         No need to set the drawing area proxy anymore.
   8491 
   8492         (-[WKView _createDrawingAreaProxy]):
   8493         Create a chunked update drawing area proxy for now.
   8494 
   8495         * UIProcess/API/qt/qgraphicswkview.cpp:
   8496         Added a QGraphicsItem* member that is initialized in init to the accociated view.
   8497         Implement the new functions. This is a temporary solution, in the long term the view
   8498         and the page should be decoupled.
   8499         (QGraphicsWKView::QGraphicsWKView):
   8500         * UIProcess/API/qt/qwkpage.cpp:
   8501         (QWKPagePrivate::QWKPagePrivate):
   8502         (QWKPagePrivate::init):
   8503         (QWKPagePrivate::createDrawingAreaProxy):
   8504         (QWKPagePrivate::setViewNeedsDisplay):
   8505         * UIProcess/API/qt/qwkpage.h:
   8506         * UIProcess/API/qt/qwkpage_p.h:
   8507         
   8508         * UIProcess/PageClient.h:
   8509         Add new pure virtual member functions.
   8510 
   8511         * UIProcess/WebPageProxy.cpp:
   8512         (WebKit::WebPageProxy::initializeWebPage):
   8513         (WebKit::WebPageProxy::reinitializeWebPage):
   8514         Set the new drawing area proxy.
   8515 
   8516         * UIProcess/win/WebView.cpp:
   8517         (WebKit::WebView::WebView):
   8518         No need to set the drawing area proxy anymore.
   8519 
   8520         (WebKit::WebView::createDrawingAreaProxy):
   8521         Create a chunked update drawing area proxy for now.
   8522 
   8523         (WebKit::WebView::setViewNeedsDisplay):
   8524         Invalidate the window.
   8525 
   8526 2011-01-11  Adam Roben  <aroben (a] apple.com>
   8527 
   8528         Fix a typo in a comment
   8529 
   8530         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   8531 
   8532 2011-01-10  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   8533 
   8534         Unreviewed, rolling out r75460.
   8535         http://trac.webkit.org/changeset/75460
   8536         https://bugs.webkit.org/show_bug.cgi?id=52191
   8537 
   8538         It broke Qt-WK2 build (Requested by Ossy on #webkit).
   8539 
   8540         * Shared/API/c/WKBase.h:
   8541         * Shared/APIObject.h:
   8542         * UIProcess/API/C/WKAPICast.h:
   8543         * UIProcess/API/C/WKGeolocationPermissionRequest.cpp: Removed.
   8544         * UIProcess/API/C/WKGeolocationPermissionRequest.h: Removed.
   8545         * UIProcess/API/C/WKPage.h:
   8546         * UIProcess/API/C/WebKit2.h:
   8547         * UIProcess/API/qt/qwkpage.cpp:
   8548         (QWKPage::QWKPage):
   8549         * UIProcess/GeolocationPermissionRequestManagerProxy.cpp: Removed.
   8550         * UIProcess/GeolocationPermissionRequestManagerProxy.h: Removed.
   8551         * UIProcess/GeolocationPermissionRequestProxy.cpp: Removed.
   8552         * UIProcess/GeolocationPermissionRequestProxy.h: Removed.
   8553         * UIProcess/WebPageProxy.cpp:
   8554         (WebKit::WebPageProxy::WebPageProxy):
   8555         (WebKit::WebPageProxy::close):
   8556         (WebKit::WebPageProxy::processDidCrash):
   8557         * UIProcess/WebPageProxy.h:
   8558         * UIProcess/WebPageProxy.messages.in:
   8559         * UIProcess/WebUIClient.cpp:
   8560         * UIProcess/WebUIClient.h:
   8561         * WebKit2.pro:
   8562         * WebKit2.xcodeproj/project.pbxproj:
   8563         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp: Removed.
   8564         * WebProcess/Geolocation/GeolocationPermissionRequestManager.h: Removed.
   8565         * WebProcess/Geolocation/WebGeolocationManager.cpp:
   8566         * WebProcess/Geolocation/WebGeolocationManager.h:
   8567         * WebProcess/WebCoreSupport/WebGeolocationClient.cpp:
   8568         (WebKit::WebGeolocationClient::requestPermission):
   8569         (WebKit::WebGeolocationClient::cancelPermissionRequest):
   8570         * WebProcess/WebCoreSupport/WebGeolocationClient.h:
   8571         * WebProcess/WebPage/WebPage.cpp:
   8572         (WebKit::WebPage::WebPage):
   8573         * WebProcess/WebPage/WebPage.h:
   8574         * WebProcess/WebPage/WebPage.messages.in:
   8575         * win/WebKit2.vcproj:
   8576         * win/WebKit2Generated.make:
   8577 
   8578 2011-01-10  Csaba Osztrogonc  <ossy (a] webkit.org>
   8579 
   8580         Unreviewed, rolling out r75459
   8581         http://trac.webkit.org/changeset/75459
   8582 
   8583         Work towards having the WebPageProxy decide when to create the DrawingAreaProxy
   8584         https://bugs.webkit.org/show_bug.cgi?id=52184
   8585 
   8586         * UIProcess/API/mac/PageClientImpl.h:
   8587         * UIProcess/API/mac/PageClientImpl.mm:
   8588         * UIProcess/API/mac/WKView.mm:
   8589         * UIProcess/API/mac/WKViewInternal.h:
   8590         * UIProcess/API/qt/qwkpage.cpp:
   8591         * UIProcess/API/qt/qwkpage_p.h:
   8592         * UIProcess/PageClient.h:
   8593         * UIProcess/WebPageProxy.cpp:
   8594         (WebKit::WebPageProxy::initializeWebPage):
   8595         (WebKit::WebPageProxy::reinitializeWebPage):
   8596         * UIProcess/win/WebView.cpp:
   8597         (WebKit::WebView::WebView):
   8598         * UIProcess/win/WebView.h:
   8599 
   8600 2011-01-10  Anders Carlsson  <andersca (a] apple.com>
   8601 
   8602         Reviewed by Sam Weinig.
   8603 
   8604         Remove size parameter to WebPageProxy::initializeWebPage
   8605         https://bugs.webkit.org/show_bug.cgi?id=52188
   8606 
   8607         * UIProcess/API/mac/WKView.mm:
   8608         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
   8609         * UIProcess/API/qt/qwkpage.cpp:
   8610         (QWKPagePrivate::init):
   8611         * UIProcess/WebPageProxy.cpp:
   8612         (WebKit::WebPageProxy::initializeWebPage):
   8613         * UIProcess/WebPageProxy.h:
   8614         * UIProcess/win/WebView.cpp:
   8615         (WebKit::WebView::WebView):
   8616 
   8617 2011-01-10  Anders Carlsson  <andersca (a] apple.com>
   8618 
   8619         Didn't mean to land this.
   8620 
   8621         * UIProcess/WebPageProxy.cpp:
   8622         (WebKit::WebPageProxy::initializeWebPage):
   8623         * UIProcess/WebPageProxy.h:
   8624 
   8625 2011-01-10  Anders Carlsson  <andersca (a] apple.com>
   8626 
   8627         Reviewed by Sam Weinig.
   8628 
   8629         WebPageProxy::creationParameters no longer needs to take a size
   8630         https://bugs.webkit.org/show_bug.cgi?id=52187
   8631 
   8632         WebPageProxy::creationParameters can just ask the page client for the view size now.
   8633 
   8634         * UIProcess/WebInspectorProxy.cpp:
   8635         (WebKit::WebInspectorProxy::createInspectorPage):
   8636         * UIProcess/WebPageProxy.cpp:
   8637         (WebKit::WebPageProxy::initializeWebPage):
   8638         (WebKit::WebPageProxy::reinitializeWebPage):
   8639         (WebKit::WebPageProxy::createNewPage):
   8640         (WebKit::WebPageProxy::creationParameters):
   8641         * UIProcess/WebPageProxy.h:
   8642 
   8643 2011-01-10  Anders Carlsson  <andersca (a] apple.com>
   8644 
   8645         Reviewed by Sam Weinig.
   8646 
   8647         Pass information about the view in the WebPageCreationParameters
   8648         https://bugs.webkit.org/show_bug.cgi?id=52186
   8649 
   8650         * Shared/WebPageCreationParameters.cpp:
   8651         (WebKit::WebPageCreationParameters::encode):
   8652         (WebKit::WebPageCreationParameters::decode):
   8653         Encode and decode the state flags.
   8654 
   8655         * Shared/WebPageCreationParameters.h:
   8656         Add new state flags.
   8657 
   8658         * UIProcess/WebPageProxy.cpp:
   8659         (WebKit::WebPageProxy::creationParameters):
   8660         Initialize the state flags.
   8661 
   8662         * WebProcess/WebPage/WebPage.cpp:
   8663         (WebKit::WebPage::WebPage):
   8664         Update the page state from the state flags.
   8665 
   8666 2011-01-10  Sam Weinig  <sam (a] webkit.org>
   8667 
   8668         Reviewed by Anders Carlsson.
   8669 
   8670         Make Geolocation features work in WebKit2
   8671         https://bugs.webkit.org/show_bug.cgi?id=52078
   8672 
   8673         Step 2 - Add support for requesting and granting permission for geolocation.
   8674 
   8675         * Shared/API/c/WKBase.h:
   8676         * Shared/APIObject.h:
   8677         * UIProcess/API/C/WebKit2.h:
   8678         * UIProcess/API/C/WKAPICast.h:
   8679         * UIProcess/API/C/WKGeolocationPermissionRequest.cpp: Added.
   8680         * UIProcess/API/C/WKGeolocationPermissionRequest.h: Added.
   8681         Add new API type, WKGeolocationPermissionRequestRef.
   8682 
   8683         * UIProcess/API/C/WKPage.h:
   8684         Add new UIClient function for requesting permission.
   8685 
   8686         * UIProcess/API/qt/qwkpage.cpp:
   8687         (QWKPage::QWKPage): 
   8688         Stub out the UIClient.
   8689 
   8690         * UIProcess/GeolocationPermissionRequestManagerProxy.cpp: Added.
   8691         * UIProcess/GeolocationPermissionRequestManagerProxy.h: Added.
   8692         * UIProcess/GeolocationPermissionRequestProxy.cpp: Added.
   8693         * UIProcess/WebPageProxy.cpp:
   8694         * UIProcess/WebPageProxy.h:
   8695         * UIProcess/WebPageProxy.messages.in:
   8696         * UIProcess/WebUIClient.cpp:
   8697         * UIProcess/WebUIClient.h:
   8698         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp: Added.
   8699         * WebProcess/Geolocation/GeolocationPermissionRequestManager.h: Added.
   8700         * WebProcess/Geolocation/WebGeolocationManager.cpp:
   8701         * WebProcess/Geolocation/WebGeolocationManager.h:
   8702         * WebProcess/WebCoreSupport/WebGeolocationClient.cpp:
   8703         * WebProcess/WebCoreSupport/WebGeolocationClient.h:
   8704         * WebProcess/WebPage/WebPage.cpp:
   8705         (WebKit::WebPage::WebPage):
   8706         (WebKit::WebPage::didReceiveGeolocationPermissionDecision):
   8707         * WebProcess/WebPage/WebPage.h:
   8708         (WebKit::WebPage::geolocationPermissionRequestManager):
   8709         * WebProcess/WebPage/WebPage.messages.in:
   8710         Track the permission request through both sides of the process divide.
   8711 
   8712         * WebKit2.pro:
   8713         * WebKit2.xcodeproj/project.pbxproj:
   8714         * win/WebKit2.vcproj:
   8715         * win/WebKit2Generated.make:
   8716         Add new files.
   8717 
   8718 2011-01-10  Anders Carlsson  <andersca (a] apple.com>
   8719 
   8720         Reviewed by Sam Weinig.
   8721 
   8722         Work towards having the WebPageProxy decide when to create the DrawingAreaProxy
   8723         https://bugs.webkit.org/show_bug.cgi?id=52184
   8724 
   8725         * UIProcess/API/mac/PageClientImpl.h:
   8726         * UIProcess/API/mac/PageClientImpl.mm:
   8727         (WebKit::PageClientImpl::createDrawingAreaProxy):
   8728         Call -[WKView _createDrawingAreaProxy].
   8729 
   8730         (WebKit::PageClientImpl::setViewNeedsDisplay):
   8731         Call setNeedsDisplayInRect on the WKView.
   8732 
   8733         * UIProcess/API/mac/WKView.mm:
   8734         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
   8735         No need to set the drawing area proxy anymore.
   8736 
   8737         (-[WKView _createDrawingAreaProxy]):
   8738         Create a chunked update drawing area proxy for now.
   8739 
   8740         * UIProcess/API/qt/qwkpage.cpp:
   8741         (QWKPagePrivate::createDrawingAreaProxy):
   8742         (QWKPagePrivate::setViewNeedsDisplay):
   8743         Add stubs.
   8744     
   8745         * UIProcess/PageClient.h:
   8746         Add new pure virtual member functions.
   8747 
   8748         * UIProcess/WebPageProxy.cpp:
   8749         (WebKit::WebPageProxy::initializeWebPage):
   8750         (WebKit::WebPageProxy::reinitializeWebPage):
   8751         Set the new drawing area proxy.
   8752 
   8753         * UIProcess/win/WebView.cpp:
   8754         (WebKit::WebView::WebView):
   8755         No need to set the drawing area proxy anymore.
   8756 
   8757         (WebKit::WebView::createDrawingAreaProxy):
   8758         Create a chunked update drawing area proxy for now.
   8759 
   8760         (WebKit::WebView::setViewNeedsDisplay):
   8761         Invalidate the window.
   8762 
   8763 2011-01-10  Anders Carlsson  <andersca (a] apple.com>
   8764 
   8765         Fix Windows build again.
   8766 
   8767         * UIProcess/win/WebView.cpp:
   8768         (WebKit::WebView::isViewWindowActive):
   8769 
   8770 2011-01-10  Anders Carlsson  <andersca (a] apple.com>
   8771 
   8772         Fix Windows build.
   8773 
   8774         * UIProcess/win/WebView.cpp:
   8775         (WebKit::WebView::onShowWindowEvent):
   8776 
   8777 2011-01-10  Anders Carlsson  <andersca (a] apple.com>
   8778 
   8779         Reviewed by Sam Weinig.
   8780 
   8781         Use a pull model for view state changes
   8782         https://bugs.webkit.org/show_bug.cgi?id=52175
   8783 
   8784         Instead of having the WKView call setFocused, setActive etc on the WebPageProxy, the
   8785         WKView now simply informs the WebPageProxy what has changed, using the WebPageProxy::viewStateDidChange
   8786         function. The WebPageProxy can then fetch the relevant information using newly added PageClient functions.
   8787 
   8788         * UIProcess/API/mac/PageClientImpl.h:
   8789         * UIProcess/API/mac/PageClientImpl.mm:
   8790         (WebKit::PageClientImpl::viewSize):
   8791         (WebKit::PageClientImpl::isViewWindowActive):
   8792         (WebKit::PageClientImpl::isViewFocused):
   8793         (WebKit::PageClientImpl::isViewVisible):
   8794         (WebKit::PageClientImpl::isViewInWindow):
   8795         * UIProcess/API/mac/WKView.mm:
   8796         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
   8797         (-[WKView becomeFirstResponder]):
   8798         (-[WKView resignFirstResponder]):
   8799         (-[WKView viewDidMoveToWindow]):
   8800         (-[WKView _windowDidBecomeKey:]):
   8801         (-[WKView _windowDidResignKey:]):
   8802         (-[WKView viewDidHide]):
   8803         (-[WKView viewDidUnhide]):
   8804         (-[WKView _isFocused]):
   8805         (-[WKView _didRelaunchProcess]):
   8806         * UIProcess/API/mac/WKViewInternal.h:
   8807         * UIProcess/API/qt/qgraphicswkview.cpp:
   8808         (QGraphicsWKView::focusInEvent):
   8809         (QGraphicsWKView::focusOutEvent):
   8810         * UIProcess/API/qt/qwkpage.cpp:
   8811         (QWKPagePrivate::QWKPagePrivate):
   8812         (QWKPagePrivate::viewSize):
   8813         (QWKPagePrivate::isViewWindowActive):
   8814         (QWKPagePrivate::isViewFocused):
   8815         (QWKPagePrivate::isViewVisible):
   8816         (QWKPagePrivate::isViewInWindow):
   8817         * UIProcess/API/qt/qwkpage_p.h:
   8818         * UIProcess/PageClient.h:
   8819         * UIProcess/WebContext.cpp:
   8820         (WebKit::WebContext::createWebPage):
   8821         * UIProcess/WebContext.h:
   8822         * UIProcess/WebPageProxy.cpp:
   8823         (WebKit::WebPageProxy::create):
   8824         (WebKit::WebPageProxy::WebPageProxy):
   8825         (WebKit::WebPageProxy::viewStateDidChange):
   8826         * UIProcess/WebPageProxy.h:
   8827         * UIProcess/WebProcessProxy.cpp:
   8828         (WebKit::WebProcessProxy::createWebPage):
   8829         * UIProcess/WebProcessProxy.h:
   8830         * UIProcess/win/WebView.cpp:
   8831         (WebKit::WebView::WebView):
   8832         (WebKit::WebView::onSetFocusEvent):
   8833         (WebKit::WebView::onKillFocusEvent):
   8834         (WebKit::WebView::onShowWindowEvent):
   8835         (WebKit::WebView::updateActiveState):
   8836         (WebKit::WebView::viewSize):
   8837         (WebKit::WebView::isViewWindowActive):
   8838         (WebKit::WebView::isViewFocused):
   8839         (WebKit::WebView::isViewVisible):
   8840         (WebKit::WebView::isViewInWindow):
   8841         (WebKit::WebView::didRelaunchProcess):
   8842         (WebKit::WebView::setIsInWindow):
   8843         * UIProcess/win/WebView.h:
   8844 
   8845 2011-01-10  Adam Roben  <aroben (a] apple.com>
   8846 
   8847         Don't pass a reference type to va_start
   8848 
   8849         C++ says this results in undefined behavior:
   8850 
   8851             The restrictions that ISO C places on the second parameter to the
   8852             va_start() macro in header <stdarg.h> are different in this
   8853             International Standard. The parameter parmN is the identifier of
   8854             the rightmost parameter in the variable parameter list of the
   8855             function definition (the one just before the ...).221) If the
   8856             parameter parmN is declared with a function, array, or reference
   8857             type, or with a type that is not compatible with the type that
   8858             results when passing an argument for which there is no parameter,
   8859             the behavior is undefined.
   8860 
   8861         Fixes <http://webkit.org/b/52168> Title of standalone image document
   8862         includes bogus image dimensions
   8863 
   8864         Rubber-stamped by Eric Seidel.
   8865 
   8866         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   8867         (WebKit::formatLocalizedString): Don't use a reference type for
   8868         |format|.
   8869 
   8870 2011-01-10  Siddharth Mathur  <siddharth.mathur (a] nokia.com>
   8871 
   8872         Reviewed by Eric Seidel.
   8873 
   8874         Support for ARM's RVCT(ARMCC) compiler in import/export directives
   8875         https://bugs.webkit.org/show_bug.cgi?id=52146 
   8876 
   8877         * Shared/API/c/WKBase.h:
   8878 
   8879 2011-01-10  Sam Weinig  <sam (a] webkit.org>
   8880 
   8881         Fix the build.
   8882 
   8883         * WebProcess/WebPage/WebPage.cpp:
   8884         (WebKit::WebPage::WebPage):
   8885 
   8886 2011-01-10  Sam Weinig  <sam (a] webkit.org>
   8887 
   8888         Reviewed by Anders Carlsson.
   8889 
   8890         Make Geolocation features work in WebKit2
   8891         https://bugs.webkit.org/show_bug.cgi?id=52078
   8892 
   8893         Step 1 - Add enough support to get position data from a provider.
   8894         This does not include permission support.
   8895 
   8896         * Platform/CoreIPC/HandleMessage.h:
   8897         Add #include of Arguments.h for CoreIPC::In and Out definitions.
   8898 
   8899         * Platform/CoreIPC/MessageID.h:
   8900         Add new message types.
   8901 
   8902         * Shared/API/c/WKBase.h:
   8903         * Shared/APIObject.h:
   8904         Add new API types.
   8905 
   8906         * Shared/WebGeolocationPosition.cpp: Added.
   8907         * Shared/WebGeolocationPosition.h: Added.
   8908         Internal position representation.
   8909 
   8910         * UIProcess/API/C/WKAPICast.h:
   8911         Add casts for new API types.
   8912 
   8913         * UIProcess/API/C/WKContext.cpp:
   8914         * UIProcess/API/C/WKContext.h:
   8915         * UIProcess/API/C/WKGeolocationManager.cpp: Added.
   8916         * UIProcess/API/C/WKGeolocationManager.h: Added.
   8917         * UIProcess/API/C/WKGeolocationPosition.cpp: Added.
   8918         * UIProcess/API/C/WKGeolocationPosition.h: Added.
   8919         * UIProcess/API/C/WebKit2.h:
   8920         Add API to provide and control geolocation data.
   8921 
   8922         * UIProcess/WebContext.cpp:
   8923         (WebKit::WebContext::WebContext):
   8924         (WebKit::WebContext::~WebContext):
   8925         (WebKit::WebContext::processDidClose):
   8926         (WebKit::WebContext::didReceiveMessage):
   8927         * UIProcess/WebContext.h:
   8928         (WebKit::WebContext::geolocationManagerProxy):
   8929         * UIProcess/WebGeolocationManagerProxy.cpp: Added.
   8930         (WebKit::WebGeolocationManagerProxy::create):
   8931         (WebKit::WebGeolocationManagerProxy::WebGeolocationManagerProxy):
   8932         (WebKit::WebGeolocationManagerProxy::~WebGeolocationManagerProxy):
   8933         (WebKit::WebGeolocationManagerProxy::invalidate):
   8934         (WebKit::WebGeolocationManagerProxy::initializeProvider):
   8935         (WebKit::WebGeolocationManagerProxy::providerDidChangePosition):
   8936         (WebKit::WebGeolocationManagerProxy::providerDidFailToDeterminePosition):
   8937         (WebKit::WebGeolocationManagerProxy::didReceiveMessage):
   8938         (WebKit::WebGeolocationManagerProxy::startUpdating):
   8939         (WebKit::WebGeolocationManagerProxy::stopUpdating):
   8940         * UIProcess/WebGeolocationManagerProxy.h: Added.
   8941         (WebKit::WebGeolocationManagerProxy::clearContext):
   8942         (WebKit::WebGeolocationManagerProxy::type):
   8943         * UIProcess/WebGeolocationManagerProxy.messages.in: Added.
   8944         * UIProcess/WebGeolocationProvider.cpp: Added.
   8945         (WebKit::WebGeolocationProvider::startUpdating):
   8946         (WebKit::WebGeolocationProvider::stopUpdating):
   8947         * UIProcess/WebGeolocationProvider.h: Added.
   8948         * UIProcess/WebProcessProxy.cpp:
   8949         (WebKit::WebProcessProxy::didReceiveMessage):
   8950         * WebProcess/Geolocation: Added.
   8951         * WebProcess/Geolocation/WebGeolocationManager.cpp: Added.
   8952         (WebKit::WebGeolocationManager::WebGeolocationManager):
   8953         (WebKit::WebGeolocationManager::~WebGeolocationManager):
   8954         (WebKit::WebGeolocationManager::didReceiveMessage):
   8955         (WebKit::WebGeolocationManager::registerWebPage):
   8956         (WebKit::WebGeolocationManager::unregisterWebPage):
   8957         (WebKit::WebGeolocationManager::didChangePosition):
   8958         (WebKit::WebGeolocationManager::didFailToDeterminePosition):
   8959         * WebProcess/Geolocation/WebGeolocationManager.h: Added.
   8960         * WebProcess/Geolocation/WebGeolocationManager.messages.in: Added.
   8961         * WebProcess/WebCoreSupport/WebGeolocationClient.cpp: Added.
   8962         (WebKit::WebGeolocationClient::geolocationDestroyed):
   8963         (WebKit::WebGeolocationClient::startUpdating):
   8964         (WebKit::WebGeolocationClient::stopUpdating):
   8965         (WebKit::WebGeolocationClient::setEnableHighAccuracy):
   8966         (WebKit::WebGeolocationClient::lastPosition):
   8967         (WebKit::WebGeolocationClient::requestPermission):
   8968         (WebKit::WebGeolocationClient::cancelPermissionRequest):
   8969         * WebProcess/WebCoreSupport/WebGeolocationClient.h: Added.
   8970         (WebKit::WebGeolocationClient::WebGeolocationClient):
   8971         * WebProcess/WebPage/WebPage.cpp:
   8972         (WebKit::WebPage::WebPage):
   8973         * WebProcess/WebProcess.cpp:
   8974         (WebKit::WebProcess::WebProcess):
   8975         (WebKit::WebProcess::didReceiveMessage):
   8976         * WebProcess/WebProcess.h:
   8977         (WebKit::WebProcess::geolocationManager):
   8978         Pipe geolocation positions/errors from the UIProcess to the WebProcess.
   8979 
   8980         * DerivedSources.make:
   8981         * DerivedSources.pro:
   8982         * WebKit2.pro:
   8983         * WebKit2.xcodeproj/project.pbxproj:
   8984         * win/WebKit2.vcproj:
   8985         * win/WebKit2Common.vsprops:
   8986          * win/WebKit2Generated.make:
   8987         Add new files.
   8988 
   8989 2011-01-10  Martin Robinson  <mrobinson (a] igalia.com>
   8990 
   8991         GTK+ build fix. Continue to fix 'make dist.'
   8992 
   8993         * GNUmakefile.am: Remove more non-existent files from the WebKit2 build.
   8994 
   8995 2011-01-10  Alejandro G. Castro  <alex (a] igalia.com>
   8996 
   8997         Reviewed by Martin Robinson.
   8998 
   8999         [GTK] Remove webkit2 files that are still not added to the
   9000         repository from the makefile
   9001         https://bugs.webkit.org/show_bug.cgi?id=52145
   9002 
   9003         This change is required for the release, we can add the lines
   9004         again to the makefiles with the patches adding the files.
   9005 
   9006         * GNUmakefile.am:
   9007 
   9008 2011-01-10  Andreas Kling  <kling (a] webkit.org>
   9009 
   9010         Reviewed by Simon Hausmann.
   9011 
   9012         [Qt] [WK2] MiniBrowser does not load pages opened in new windows
   9013         https://bugs.webkit.org/show_bug.cgi?id=52111
   9014 
   9015         * UIProcess/API/qt/qwkpage.cpp:
   9016         (QWKPage::context): Implement this method.
   9017 
   9018 2011-01-09  Dan Bernstein  <mitz (a] apple.com>
   9019 
   9020         Reviewed by Simon Fraser.
   9021 
   9022         <rdar://problem/8839498> Assertion failure in KURL::KURL when calling WKURLRequestCreateWithWKURL with a non-parsed URL
   9023         https://bugs.webkit.org/show_bug.cgi?id=52132
   9024 
   9025         * Shared/API/c/WKURLRequest.cpp:
   9026         (WKURLRequestCreateWithWKURL): Parse the URL.
   9027         * Shared/WebString.h: Fixed a comment.
   9028         * Shared/WebURL.h: Ditto.
   9029 
   9030 2011-01-09  Amruth Raj  <amruthraj (a] motorola.com> and Ravi Phaneendra Kasibhatla  <ravi.kasibhatla (a] motorola.com>
   9031 
   9032         Reviewed by Martin Robinson.
   9033 
   9034         Changes to add Process Launcher and Thread Launcher implementation to the WebKit2 GTK port.
   9035         The main() implementation for WebKitWebProcess binary to launch Web process from UI process.
   9036         https://bugs.webkit.org/show_bug.cgi?id=48511
   9037 
   9038         * UIProcess/Launcher/gtk: Added.
   9039         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp: Added. GTK (UNIX_X11 specific) implementation
   9040         (WebKit::ProcessLauncher::launchProcess):
   9041         (WebKit::ProcessLauncher::terminateProcess):
   9042         (WebKit::ProcessLauncher::platformInvalidate):
   9043         * UIProcess/Launcher/gtk/ThreadLauncherGtk.cpp: Added. Stubbed implementation for GTK port. Yet to implement.
   9044         (WebKit::ThreadLauncher::createWebThread):
   9045         * WebProcess/gtk: Added.
   9046         * WebProcess/gtk/WebProcessGtk.cpp: Added. The stubbed implementations of virtual functions of WebProcess.h for GTK port.
   9047         (WebKit::WebProcess::platformSetCacheModel):
   9048         (WebKit::WebProcess::platformClearResourceCaches):
   9049         (WebKit::WebProcess::platformInitializeWebProcess):
   9050         (WebKit::WebProcess::platformShutdown):
   9051         * WebProcess/gtk/WebProcessMainGtk.cpp: Added. The WebProcessMain call which initiates the Web Process for GTK port.
   9052         (WebKit::WebProcessMainGtk):
   9053         * WebProcess/gtk/WebProcessMainGtk.h: Added. The WebProcessMain declaration for Web Process for GTK port.
   9054         * gtk/MainGtk.cpp: Added. The main function implementation for binary WebKitWebProcess.
   9055         (main):
   9056 
   9057 2011-01-07 Amruth Raj  <amruthraj (a] motorola.com> and Ravi Phaneendra Kasibhatla  <ravi.kasibhatla (a] motorola.com>
   9058 
   9059         Reviewed by Martin Robinson.
   9060 
   9061         [GTK] WebKit2 GNUmakefile is out of date from trunk
   9062         https://bugs.webkit.org/show_bug.cgi?id=51883
   9063 
   9064         * GNUmakefile.am: Updated sources list as per latest revision
   9065         * Platform/gtk/RunLoopGtk.cpp:
   9066         (RunLoop::TimerBase::start):
   9067         * Platform/gtk/WorkQueueGtk.cpp:
   9068         (WorkQueue::scheduleWorkAfterDelay):
   9069         * Shared/gtk/BackingStoreGtk.cpp:
   9070         (WebKit::BackingStore::paint):
   9071         * WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp:
   9072         (WebKit::InjectedBundle::load):
   9073         * WebProcess/Plugins/Netscape/gtk/NetscapePluginGtk.cpp:
   9074         (WebKit::NetscapePlugin::platformInvalidate):
   9075 
   9076 2011-01-08  Dan Bernstein  <mitz (a] apple.com>
   9077 
   9078         Reviewed by Sam Weinig.
   9079 
   9080         <rdar://problem/8812759> In WebKit2, PDF view settings (mode and scale) do not stick
   9081         https://bugs.webkit.org/show_bug.cgi?id=52118
   9082 
   9083         * Shared/WebPreferencesStore.cpp:
   9084         (WebKit::WebPreferencesStore::encode): Encode the double values map.
   9085         (WebKit::WebPreferencesStore::decode): Decode the double values map.
   9086         (WebKit::defaultValueForKey): Added double instance.
   9087         (WebKit::WebPreferencesStore::setDoubleValueForKey): Added.
   9088         (WebKit::WebPreferencesStore::getDoubleValueForKey): Added.
   9089         * Shared/WebPreferencesStore.h: Added PDFScaleFactor and PDFDisplayMode preferences.
   9090         * UIProcess/API/mac/PDFViewController.mm:
   9091         (-[WKPDFView initWithFrame:PDFViewController:WebKit::]): Initialize the _pdfViewController ivar.
   9092         (-[WKPDFView invalidate]): Changed 'nil' to '0' in assignment to a non-Objective-C pointer.
   9093         (-[WKPDFView setDocument:]): Added.
   9094         (-[WKPDFView _applyPDFPreferences]): Added.
   9095         (-[WKPDFView _updatePreferences:]): Added.
   9096         (-[WKPDFView _updatePreferencesSoon]): Added.
   9097         (-[WKPDFView _scaleOrDisplayModeOrPageChanged:]): Added.
   9098         (-[WKPDFView viewDidMoveToWindow]): Added. Starts observing the PDF view for changes to scale
   9099         and display mode.
   9100         (-[WKPDFView viewWillMoveToWindow:]): Added. Stops observing for changes.
   9101         (WebKit::PDFViewController::setPDFDocumentData): Changed to call throguh -[WKPDFView setDocument:].
   9102         * UIProcess/WebPreferences.cpp:
   9103         (WebKit::WebPreferences::updateDoubleValueForKey): Added.
   9104         * UIProcess/WebPreferences.h:
   9105         * UIProcess/cf/WebPreferencesCF.cpp:
   9106         (WebKit::WebPreferences::platformUpdateDoubleValueForKey): Added empty implementation.
   9107         * UIProcess/gtk/WebPreferencesGtk.cpp:
   9108         (WebKit::WebPreferences::platformUpdateDoubleValueForKey): Added stub.
   9109         * UIProcess/mac/WebPreferencesMac.mm:
   9110         (WebKit::setDoubleValueIfInUserDefaults): Added.
   9111         (WebKit::WebPreferences::platformUpdateDoubleValueForKey): Added.
   9112         * UIProcess/qt/WebPreferencesQt.cpp:
   9113         (WebKit::WebPreferences::platformUpdateDoubleValueForKey): Added.
   9114 
   9115 2011-01-08  Dan Bernstein  <mitz (a] apple.com>
   9116 
   9117         Reviewed by Maciej Stachowiak.
   9118 
   9119         In WebKit2, page zooming does not work with PDF
   9120         https://bugs.webkit.org/show_bug.cgi?id=52113
   9121 
   9122         * UIProcess/API/C/WKPage.cpp:
   9123         (WKPageSupportsTextZoom): Added. Returns whether the page currently supports text-only zoom.
   9124         * UIProcess/API/C/WKPage.h:
   9125         * UIProcess/API/mac/PDFViewController.h: Made pdfDocumentClass() private and declared new
   9126         member functions.
   9127         * UIProcess/API/mac/PDFViewController.mm:
   9128         (WebKit::PDFViewController::zoomFactor): Added.
   9129         (WebKit::PDFViewController::setZoomFactor): Added.
   9130         * UIProcess/API/mac/PageClientImpl.h:
   9131         * UIProcess/API/mac/PageClientImpl.mm:
   9132         (WebKit::PageClientImpl::customRepresentationZoomFactor): Added. Calls through to the WKView.
   9133         (WebKit::PageClientImpl::setCustomRepresentationZoomFactor): Ditto.
   9134         * UIProcess/API/mac/WKView.mm:
   9135         (-[WKView _customRepresentationZoomFactor]): Added. Calls through to the PDFViewController.
   9136         (-[WKView _setCustomRepresentationZoomFactor:]): Ditto.
   9137         * UIProcess/API/mac/WKViewInternal.h:
   9138         * UIProcess/API/qt/qwkpage_p.h:
   9139         (QWKPagePrivate::customRepresentationZoomFactor): Added.
   9140         (QWKPagePrivate::setCustomRepresentationZoomFactor): Added.
   9141         * UIProcess/PageClient.h:
   9142         * UIProcess/WebPageProxy.cpp:
   9143         (WebKit::WebPageProxy::WebPageProxy): Coding style fix.
   9144         (WebKit::WebPageProxy::supportsTextZoom): Added. Returns false if the main frame has a custom
   9145         representation or is a standalone image, true otherwise.
   9146         (WebKit::WebPageProxy::setTextZoomFactor): Bail out if the main frame has a custom representation.
   9147         (WebKit::WebPageProxy::pageZoomFactor): If the main frame has a custom representation, get the
   9148         zoom factor from the page client.
   9149         (WebKit::WebPageProxy::setPageZoomFactor): If the main frame has a custom representation, have
   9150         the client set the zoom factor.
   9151         (WebKit::WebPageProxy::setPageAndTextZoomFactors): Ditto.
   9152         * UIProcess/WebPageProxy.h:
   9153         (WebKit::WebPageProxy::textZoomFactor): Changed to return 1 if the main frame has a custom
   9154         representation.
   9155         * UIProcess/win/WebView.cpp:
   9156         (WebKit::WebView::customRepresentationZoomFactor): Added.
   9157         (WebKit::WebView::setCustomRepresentationZoomFactor): Added.
   9158         * UIProcess/win/WebView.h:
   9159 
   9160 2011-01-08  Jeff Miller  <jeffm (a] apple.com>
   9161 
   9162         Reviewed by Jon Honeycutt.
   9163 
   9164         Add WKBundleFrameGetVisibleContentBounds().
   9165         https://bugs.webkit.org/show_bug.cgi?id=52089
   9166 
   9167         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   9168         (WKBundleFrameGetVisibleContentBounds):
   9169         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   9170         Added WKBundleFrameGetVisibleContentBounds().
   9171 
   9172 2011-01-08  Balazs Kelemen  <kbalazs (a] webkit.org>
   9173 
   9174         Reviewed by Kenneth Rohde Christiansen.
   9175 
   9176         [Qt][WK2] QWKView does not propagate show and hide events to the drawing area
   9177         https://bugs.webkit.org/show_bug.cgi?id=52108
   9178 
   9179         * UIProcess/API/qt/qgraphicswkview.cpp:
   9180         (QGraphicsWKView::event): Call setPageIsVisible on the drawing area
   9181         if the event is Show or Hide.
   9182 
   9183 2011-01-08  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   9184 
   9185         Reviewed by Kenneth Rohde Christiansen.
   9186 
   9187         [Qt][Symbian] Make sure WebKit headers are included before platform headers on Symbian
   9188         https://bugs.webkit.org/show_bug.cgi?id=31273
   9189 
   9190         On Symbian PREPEND_INCLUDEPATH is the best way to make sure that WebKit headers
   9191         are included before platform headers. On all other platforms continue to use
   9192         INCLUDEPATH (as before).
   9193 
   9194         * WebKit2.pro:
   9195 
   9196 2011-01-08  Csaba Osztrogonc  <ossy (a] webkit.org>
   9197 
   9198         [Qt][WK2] Unreviewed buildfix after r75313.
   9199 
   9200         * Scripts/generate-forwarding-headers.pl:
   9201 
   9202 2011-01-08  Adam Barth  <abarth (a] webkit.org>
   9203 
   9204         Moving WebCore changes the layout of the Qt build directory as well,
   9205         which means we need to change where we look for these generated files.
   9206 
   9207         * DerivedSources.pro:
   9208 
   9209 2011-01-07  Adam Barth  <abarth (a] webkit.org>
   9210 
   9211         Rubber-stamped by Eric Seidel.
   9212 
   9213         Move WebCore to Source
   9214         https://bugs.webkit.org/show_bug.cgi?id=52050
   9215 
   9216         * WebKit2.pro:
   9217 
   9218 2011-01-07  Stephanie Lewis  <slewis (a] apple.com>
   9219 
   9220         Reviewed by Geoff Garen.
   9221 
   9222         <rdar://problem/8649617> Migrate memory tracking from Safari to WebKit
   9223         https://bugs.webkit.org/show_bug.cgi?id=50799 Add Memory Sampler to WebKit
   9224         
   9225         Add a sampler for printing off process memory statistics.
   9226         This tool can track:
   9227                 
   9228                 WebCore
   9229                    - FastMalloc allocations bytes              (in use or committed)
   9230                 JavaScriptCore
   9231                    - Garbage collector heap bytes              (in use or committed)
   9232                    - Stack bytes                               (committed only!)
   9233                    - JIT Code bytes                            (committed only!)
   9234                 Malloc zones
   9235                    - In use bytes for the following zones:
   9236                        * Default zone                          (in use or committed)
   9237                        * DispCon zone                          (in use or committed)
   9238                        * Purgable zone                         (in use or committed)
   9239                 Task Info
   9240                    - Resident size memory (RSIZE)
   9241         
   9242                 Data collected is dumped to a temporary file.
   9243         
   9244         Create a sandbox for a temporary file.
   9245         * Shared/SandboxExtension.h:
   9246         (WebKit::SandboxExtension::createHandleForTemporaryFile):
   9247         * Shared/mac/SandboxExtensionMac.mm:
   9248         (WebKit::SandboxExtension::createHandleForTemporaryFile):
   9249         
   9250         Memory Sampler files
   9251         
   9252         * Shared/WebMemorySampler.cpp: Added.
   9253         (WebKit::WebMemorySampler::shared):
   9254         (WebKit::WebMemorySampler::WebMemorySampler):
   9255         (WebKit::WebMemorySampler::start):
   9256         (WebKit::WebMemorySampler::initializeTimers):
   9257         (WebKit::WebMemorySampler::stop):
   9258         (WebKit::WebMemorySampler::isRunning):
   9259         (WebKit::WebMemorySampler::initializeTempLogFile):
   9260         (WebKit::WebMemorySampler::initializeSandboxedLogFile):
   9261         (WebKit::WebMemorySampler::writeHeaders):
   9262         (WebKit::WebMemorySampler::sampleTimerFired):
   9263         (WebKit::WebMemorySampler::stopTimerFired):
   9264         (WebKit::WebMemorySampler::appendCurrentMemoryUsageToFile):
   9265         * Shared/WebMemorySampler.h: Added.
   9266         * Shared/mac/WebMemorySampler.mac.mm: Added.
   9267         (WebKit::WebMemorySampler::sampleSystemMalloc):
   9268         (WebKit::WebMemorySampler::sampleProcessCommittedBytes):
   9269         (WebKit::WebMemorySampler::processName):
   9270         (WebKit::WebMemorySampler::sampleWebKit):
   9271         
   9272         API to start and stop UIProcess and WebProcess sampling.
   9273         
   9274         * UIProcess/API/C/WKContext.cpp:
   9275         (WKContextStartMemorySampler):
   9276         (WKContextStopMemorySampler):
   9277         * UIProcess/API/C/WKContext.h:
   9278         
   9279         Send messages to WebProcess to start and stop memory sampling.
   9280         
   9281         * UIProcess/WebContext.cpp:
   9282         (WebKit::WebContext::WebContext):
   9283         (WebKit::WebContext::processDidFinishLaunching):
   9284         (WebKit::WebContext::startMemorySampler):
   9285         (WebKit::WebContext::stopMemorySampler):
   9286         * UIProcess/WebContext.h:
   9287         * WebKit2.xcodeproj/project.pbxproj:
   9288         * WebProcess/WebProcess.cpp:
   9289         (WebKit::WebProcess::startMemorySampler):
   9290         (WebKit::WebProcess::stopMemorySampler):
   9291         * WebProcess/WebProcess.h:
   9292         * WebProcess/WebProcess.messages.in:
   9293 
   9294 2011-01-07  Jessie Berlin  <jberlin (a] apple.com>
   9295 
   9296         Reviewed by Dan Bernstein.
   9297 
   9298         WebKit2: Need WKBundleFrameCopyProvisionalURL
   9299         https://bugs.webkit.org/show_bug.cgi?id=52083
   9300 
   9301         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   9302         (WKBundleFrameCopyProvisionalURL):
   9303         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   9304         * WebProcess/WebPage/WebFrame.cpp:
   9305         (WebKit::WebFrame::provisionalURL):
   9306         Grab the URL from the provisional document loader.
   9307         * WebProcess/WebPage/WebFrame.h:
   9308 
   9309 2011-01-07  James Robinson  <jamesr (a] chromium.org>
   9310 
   9311         Revert "Implement mozilla's animationTime property"
   9312         https://bugs.webkit.org/show_bug.cgi?id=51952
   9313 
   9314         This approach isn't quite right.
   9315 
   9316         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   9317         (WebKit::ChunkedUpdateDrawingArea::display):
   9318         (WebKit::ChunkedUpdateDrawingArea::setSize):
   9319         * WebProcess/WebPage/WebPage.cpp:
   9320         (WebKit::WebPage::drawRect):
   9321         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   9322         (WebKit::LayerBackedDrawingArea::syncCompositingLayers):
   9323 
   9324 2011-01-07 Amruth Raj  <amruthraj (a] motorola.com> and Ravi Phaneendra Kasibhatla  <ravi.kasibhatla (a] motorola.com>
   9325 
   9326         Reviewed by Martin Robinson.
   9327 
   9328         [GTK] WebKit2 GNUmakefile is out of date from trunk
   9329         Adding new stub files for compiling on latest revision
   9330         https://bugs.webkit.org/show_bug.cgi?id=51883
   9331 
   9332         * UIProcess/gtk: Added.
   9333         * UIProcess/gtk/TextCheckerGtk.cpp: Added.
   9334         (WebKit::TextChecker::state):
   9335         (WebKit::TextChecker::isContinuousSpellCheckingAllowed):
   9336         (WebKit::TextChecker::setContinuousSpellCheckingEnabled):
   9337         (WebKit::TextChecker::setGrammarCheckingEnabled):
   9338         (WebKit::TextChecker::uniqueSpellDocumentTag):
   9339         (WebKit::TextChecker::closeSpellDocumentWithTag):
   9340         (WebKit::TextChecker::checkTextOfParagraph):
   9341         (WebKit::TextChecker::updateSpellingUIWithMisspelledWord):
   9342         (WebKit::TextChecker::getGuessesForWord):
   9343         (WebKit::TextChecker::learnWord):
   9344         (WebKit::TextChecker::ignoreWord):
   9345         * UIProcess/gtk/WebInspectorGtk.cpp: Added.
   9346         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
   9347         (WebKit::WebInspectorProxy::platformOpen):
   9348         (WebKit::WebInspectorProxy::platformClose):
   9349         (WebKit::WebInspectorProxy::inspectorPageURL):
   9350         * UIProcess/gtk/WebPageProxyGtk.cpp: Added.
   9351         (WebKit::WebPageProxy::standardUserAgent):
   9352         * UIProcess/gtk/WebPreferencesGtk.cpp: Added.
   9353         (WebKit::WebPreferences::platformInitializeStore):
   9354         (WebKit::WebPreferences::platformUpdateStringValueForKey):
   9355         (WebKit::WebPreferences::platformUpdateBoolValueForKey):
   9356         (WebKit::WebPreferences::platformUpdateUInt32ValueForKey):
   9357         * WebProcess/WebCoreSupport/gtk/WebContextMenuClientGtk.cpp: Added.
   9358         (WebKit::WebContextMenuClient::lookUpInDictionary):
   9359         (WebKit::WebContextMenuClient::isSpeaking):
   9360         (WebKit::WebContextMenuClient::speak):
   9361         (WebKit::WebContextMenuClient::stopSpeaking):
   9362         * WebProcess/WebCoreSupport/gtk/WebDatabaseManagerGtk.cpp: Added.
   9363         (WebKit::WebDatabaseManager::databaseDirectory):
   9364         * WebProcess/WebCoreSupport/gtk/WebPopupMenuGtk.cpp: Added.
   9365         (WebKit::WebPopupMenu::setUpPlatformData):
   9366         * WebProcess/WebPage/gtk: Added.
   9367         * WebProcess/WebPage/gtk/WebInspectorGtk.cpp: Added.
   9368         (WebKit::WebInspector::localizedStringsURL):
   9369 
   9370 2011-01-06  Adam Roben  <aroben (a] apple.com>
   9371 
   9372         Don't ever call ::SetCursor(0)
   9373 
   9374         Doing so makes the cursor disappear from the screen.
   9375 
   9376         Fixes <http://webkit.org/b/52024> Mouse cursor flashes when moving it
   9377         around a WKView before the web process has finished launching
   9378 
   9379         Reviewed by Jon Honeycutt.
   9380 
   9381         * UIProcess/win/WebView.cpp:
   9382         (WebKit::WebView::onSetCursor): If we don't have a cursor to set, just
   9383         let Windows do its default thing (which is to set the cursor to the
   9384         window class's cursor, which in our case is the arrow cursor).
   9385         (WebKit::WebView::cursorToShow): Just return 0 when the page has
   9386         crashed so that we'll show the default cursor (which is the arrow
   9387         cursor). This change has no visible effect, but seems slightly better
   9388         conceptually.
   9389         (WebKit::WebView::updateNativeCursor): Don't do anything if we don't
   9390         have a cursor to set.
   9391 
   9392 2011-01-06  Adam Roben  <aroben (a] apple.com>
   9393 
   9394         Fill the WKView with white when the web process hasn't drawn anything
   9395         yet
   9396 
   9397         Fixes <http://webkit.org/b/52023> WKView accumulates pixel garbage
   9398         before web process has had a chance to draw anything (if Aero is
   9399         disabled)
   9400 
   9401         Reviewed by Jon Honeycutt.
   9402 
   9403         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   9404         (WebKit::ChunkedUpdateDrawingAreaProxy::paint):
   9405         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   9406         * UIProcess/DrawingAreaProxy.h:
   9407         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   9408         (WebKit::LayerBackedDrawingAreaProxy::paint):
   9409         * UIProcess/LayerBackedDrawingAreaProxy.h:
   9410         * UIProcess/TiledDrawingAreaProxy.cpp:
   9411         (WebKit::TiledDrawingAreaProxy::paint):
   9412         * UIProcess/TiledDrawingAreaProxy.h:
   9413         * UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm:
   9414         (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint):
   9415         * UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp:
   9416         (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint):
   9417         * UIProcess/win/ChunkedUpdateDrawingAreaProxyWin.cpp:
   9418         (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint):
   9419         * UIProcess/win/LayerBackedDrawingAreaProxyWin.cpp:
   9420         (WebKit::LayerBackedDrawingAreaProxy::paint):
   9421         Changed these functions to return a boolean indicating whether we
   9422         actually painted anything.
   9423 
   9424         * UIProcess/win/WebView.cpp:
   9425         (WebKit::WebView::onPaintEvent): Fill with white (and don't call
   9426         didDraw) when the DrawingAreaProxy isn't able to paint.
   9427 
   9428 2011-01-06  Jessie Berlin  <jberlin (a] apple.com>
   9429 
   9430         Reviewed by Jon Honeycutt.
   9431 
   9432         WebKit2: Need WKBundlePagePrivate equivalent of WebKit1's WebViewPrivate's setDefersCallbacks
   9433         https://bugs.webkit.org/show_bug.cgi?id=52038
   9434 
   9435         The implementation of WebKit1's WebViewPrivate's setDefersCallbacks on both Windows and Mac
   9436         calls WebCore::Page::setDefersLoading.
   9437 
   9438         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   9439         (WKBundlePageSetDefersLoading):
   9440         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
   9441         * WebProcess/WebPage/WebPage.cpp:
   9442         (WebKit::WebPage::setDefersLoading):
   9443         * WebProcess/WebPage/WebPage.h:
   9444 
   9445 2011-01-06  Brady Eidson  <beidson (a] apple.com>
   9446 
   9447         Reviewed by Darin Adler.
   9448 
   9449         <rdar://problem/8261624> and https://bugs.webkit.org/show_bug.cgi?id=47355
   9450         Change WebKit2 session restoring to restore the full back/forward list.
   9451 
   9452         * UIProcess/WebProcessProxy.cpp:
   9453         (WebKit::WebProcessProxy::registerNewWebBackForwardListItem): Let the UIProcess register its own
   9454           WebBackForwardListItems in its ID map upon creation.
   9455         * UIProcess/WebProcessProxy.h:
   9456 
   9457         * UIProcess/cf/WebPageProxyCF.cpp:
   9458         (WebKit::WebPageProxy::restoreFromSessionStateData): Register each new list entry in the
   9459           UIProcess ID map.
   9460 
   9461         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   9462         (WebKit::WebBackForwardListProxy::addItemFromUIProcess): Add this method to register UIProcess
   9463           created items without doing any of the other work normally associated with adding a new back/forward item
   9464           (such as notifying the UIProcess).
   9465         * WebProcess/WebPage/WebBackForwardListProxy.h:
   9466 
   9467         * WebProcess/WebPage/WebPage.cpp:
   9468         (WebKit::WebPage::restoreSession): Map all of the back/forward list entries from the UIProcess then
   9469           cause a load of the current entry.
   9470 
   9471 2011-01-06  Adam Roben  <aroben (a] apple.com>
   9472 
   9473         Always show the arrow cursor when the web process has crashed
   9474 
   9475         Fixes <http://webkit.org/b/52006> WKView shows a stale cursor when the
   9476         web process crashes
   9477 
   9478         Reviewed by Ada Chan.
   9479 
   9480         * UIProcess/win/WebView.cpp:
   9481         (WebKit::WebView::processDidCrash):
   9482         (WebKit::WebView::didRelaunchProcess):
   9483         Update the cursor to reflect the new state.
   9484 
   9485         (WebKit::WebView::cursorToShow): Always show the arrow cursor when the
   9486         web process has crashed.
   9487 
   9488 2011-01-06  Adam Roben  <aroben (a] apple.com>
   9489 
   9490         Reduce code duplication in WebView::updateNativeCursor
   9491 
   9492         Fixes <http://webkit.org/b/52005> It's not easy to add new behavior to
   9493         WebView::updateNativeCursor
   9494 
   9495         Reviewed by Ada Chan.
   9496 
   9497         * UIProcess/win/WebView.cpp:
   9498         (WebKit::WebView::cursorToShow): Moved code to choose a cursor here...
   9499         (WebKit::WebView::updateNativeCursor): ...from here.
   9500 
   9501         * UIProcess/win/WebView.h: Added cursorToShow.
   9502 
   9503 2011-01-06  Adam Roben  <aroben (a] apple.com>
   9504 
   9505         Make WKView fill with white when the web process has crashed
   9506 
   9507         Previously we would just draw whatever we had last drawn into the
   9508         WKView (i.e., a stale picture of the web page), which was confusing
   9509         (because the web page would mysteriously not respond to input) and ugly
   9510         (because it wouldn't behave properly if the window was resized).
   9511 
   9512         Fixes <http://webkit.org/b/52004> WKView keeps painting a stale
   9513         picture of the web page when the web process crashes
   9514 
   9515         Reviewed by Ada Chan.
   9516 
   9517         * UIProcess/win/WebView.cpp:
   9518         (WebKit::WebView::onPaintEvent): Ported code from -[WKView drawRect:]
   9519         to fill with white if the page is invalid or has no DrawingArea. As a
   9520         bonus, also ported the call to WebPageProxy::didDraw from that method.
   9521 
   9522         (WebKit::WebView::processDidCrash):
   9523         (WebKit::WebView::didRelaunchProcess):
   9524         Invalidate our window so that we'll redraw with white or the new page.
   9525 
   9526 2011-01-06  Adam Roben  <aroben (a] apple.com>
   9527 
   9528         Make WKViews work on Windows after a crashed web process gets relaunched
   9529 
   9530         Fixes <http://webkit.org/b/52001> Relaunching the web process fails to
   9531         revivify WKViews on Windows
   9532 
   9533         Reviewed by Ada Chan.
   9534 
   9535         * UIProcess/win/WebView.cpp:
   9536         (WebKit::WebView::didRelaunchProcess): Implemented by porting code from
   9537         -[WKView _didRelaunchProcess].
   9538 
   9539 2011-01-06  Adam Roben  <aroben (a] apple.com>
   9540 
   9541         Remove WebView::m_rect
   9542 
   9543         It was only used in the constructor, and wasn't even kept up-to-date as
   9544         the WebView's size changed.
   9545 
   9546         Fixes <http://webkit.org/b/52000> WebView::m_rect is unnecessary
   9547 
   9548         Reviewed by Ada Chan.
   9549 
   9550         * UIProcess/win/WebView.cpp:
   9551         * UIProcess/win/WebView.h:
   9552 
   9553 2011-01-05  Brian Weinstein  <bweinstein (a] apple.com>
   9554 
   9555         Reviewed by Ada Chan.
   9556 
   9557         WebKit2: Should be able to call into injected bundle to ask if we should allow resource loads
   9558         https://bugs.webkit.org/show_bug.cgi?id=51969
   9559         
   9560         Add the ability to call into the injected bundle to ask if we should allow resource loads.
   9561         If the injected bundle says we should cancel, we clear out the ResourceRequest that was
   9562         passed into willSendRequest, which cancels the resource load.
   9563 
   9564         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Add the new callback for allowing/cancelling
   9565             resource loads.
   9566         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   9567         (WebKit::InjectedBundlePageLoaderClient::shouldLoadResourceForFrame): Calls through to the client.
   9568         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   9569         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   9570         (WebKit::WebFrameLoaderClient::dispatchWillSendRequest): Ask the InjectedBundlePageLoaderClient if we
   9571             should load the resource or not.
   9572 
   9573 2011-01-06  Jeff Miller  <jeffm (a] apple.com>
   9574 
   9575         Reviewed by Darin Adler.
   9576 
   9577         WebKit2: Add APIs to WKBundleFrame to get content bounds and scroll offset
   9578         https://bugs.webkit.org/show_bug.cgi?id=51968
   9579 
   9580         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   9581         (WKBundleFrameGetContentBounds):
   9582         (WKBundleFrameGetScrollOffset):
   9583         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   9584         Add WKBundleFrameGetContentBounds() and WKBundleFrameGetScrollOffset().
   9585 
   9586 2011-01-06  James Robinson  <jamesr (a] chromium.org>
   9587 
   9588         Reviewed by Simon Fraser.
   9589 
   9590         Implement mozilla's animationTime property
   9591         https://bugs.webkit.org/show_bug.cgi?id=51952
   9592 
   9593         Tells the page to clear the current animation time after producing a frame.
   9594 
   9595         * WebProcess/WebPage/WebPage.cpp:
   9596         (WebKit::WebPage::drawRect):
   9597         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   9598         (WebKit::ChunkedUpdateDrawingArea::display):
   9599         (WebKit::ChunkedUpdateDrawingArea::setSize):
   9600         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   9601         (WebKit::LayerBackedDrawingArea::syncCompositingLayers):
   9602 
   9603 2011-01-06  Darin Adler  <darin (a] apple.com>
   9604 
   9605         Redo the half-done rename from the last check-in.
   9606         Sorry for the broken build last night.
   9607 
   9608         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   9609         (WebKit::WebBackForwardListProxy::removeItem): Renamed.
   9610         * WebProcess/WebPage/WebBackForwardListProxy.h: Updated
   9611         for new name.
   9612         * WebProcess/WebPage/WebPage.cpp:
   9613         (WebKit::WebPage::didRemoveBackForwardItem): Updated to
   9614         use the new name.
   9615 
   9616 2011-01-06  Maciej Stachowiak  <mjs (a] apple.com>
   9617 
   9618         Rubber stamped by Dan Bernstein.
   9619 
   9620         Fix build for Darin's previous change w/ the obvious renaming.
   9621 
   9622         * WebProcess/WebPage/WebBackForwardListProxy.h:
   9623         * WebProcess/WebPage/WebPage.cpp:
   9624         (WebKit::WebPage::didRemoveBackForwardItem):
   9625 
   9626 2011-01-05  Darin Adler  <darin (a] apple.com>
   9627 
   9628         Reviewed by Geoff Garen.
   9629 
   9630         Back/Forward entries in WebKit2 leak
   9631         https://bugs.webkit.org/show_bug.cgi?id=51983
   9632 
   9633         Besides fixing the leak, this also fixes a problem where
   9634         all history items were sent over to the UI process, but
   9635         we wanted to send only back/forward items.
   9636 
   9637         * UIProcess/WebBackForwardList.cpp:
   9638         (WebKit::WebBackForwardList::pageClosed): Added.
   9639         Tells the web process about all the back/forward
   9640         items being removed.
   9641         (WebKit::WebBackForwardList::addItem): Ditto.
   9642         Also removed a redundant call to didChangeBackForwardList.
   9643         (WebKit::WebBackForwardList::clear): Ditto.
   9644 
   9645         * UIProcess/WebBackForwardList.h: Added pageClosed.
   9646 
   9647         * UIProcess/WebPageProxy.cpp:
   9648         (WebKit::WebPageProxy::close): Added a call to pageClosed.
   9649         (WebKit::WebPageProxy::backForwardRemovedItem): Added.
   9650         Sends a message to the web page in the web process.
   9651 
   9652         * UIProcess/WebPageProxy.h: Added backForwardRemovedItem.
   9653 
   9654         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   9655         (WebKit::updateBackForwardItem): Added an itemID argument,
   9656         since callers will now be getting it and we don't want to
   9657         get it twice. Removed the code to generate an ID. Also
   9658         removed some local variables to make the code a little
   9659         tighter and clearer.
   9660         (WebKit::WK2NotifyHistoryItemChanged): Only call
   9661         updateBackForwardItem for items that already have IDs.
   9662         We don't want to send cross-process messages for every
   9663         history item; just the ones that are top level back/forward
   9664         items.
   9665         (WebKit::WebBackForwardListProxy::removeItem):
   9666         Added. For use when the UI process tells us to remove it.
   9667         (WebKit::WebBackForwardListProxy::addItem): Added code to
   9668         assign an ID and put this item into the maps. This is called
   9669         exactly once on each back/forward item.
   9670 
   9671         * WebProcess/WebPage/WebBackForwardListProxy.h: Added
   9672         removeItem.
   9673 
   9674         * WebProcess/WebPage/WebPage.cpp:
   9675         (WebKit::WebPage::didRemoveBackForwardItem): Added.
   9676 
   9677         * WebProcess/WebPage/WebPage.h: Added didRemoveBackForwardItem.
   9678 
   9679         * WebProcess/WebPage/WebPage.messages.in: Added
   9680         DidRemoveBackForwardItem message.
   9681 
   9682 2011-01-05  Steve Falkenburg  <sfalken (a] apple.com>
   9683 
   9684         Reviewed by Darin Adler.
   9685 
   9686         Debug and Release builds on Windows clobber each other
   9687         https://bugs.webkit.org/show_bug.cgi?id=49185
   9688 
   9689         Changes the structure of WebKitBuild build products directory so we
   9690         completely separate each build configuration into independent directories.
   9691         
   9692         Although we previously had per-configuration directories for obj, this change adds
   9693         per-configuration directories for bin, lib, obj, and include. Each configuration's
   9694         build products are stored within a directory inside of WebKitBuild.
   9695         
   9696         Most use of $(WebKitOutputDir) in the build files has been replaced by $(ConfigurationBuildDir),
   9697         defined in common.vsprops to be $(WebKitOutputDir)\$(ConfigurationName).
   9698 
   9699         * win/WebKit2.make:
   9700         * win/WebKit2.vcproj:
   9701         * win/WebKit2Common.vsprops:
   9702         * win/WebKit2Generated.make:
   9703         * win/WebKit2GeneratedCommon.vsprops:
   9704         * win/WebKit2WebProcessPostBuild.cmd:
   9705         * win/WebKit2WebProcessPreBuild.cmd:
   9706         * win/WebKitPostBuild.cmd:
   9707         * win/WebKitPreBuild.cmd:
   9708 
   9709 2011-01-05  Alexey Proskuryakov  <ap (a] apple.com>
   9710 
   9711         Reviewed by Anders Carlsson.
   9712 
   9713         https://bugs.webkit.org/show_bug.cgi?id=51973
   9714         Make main frame PDF printing work
   9715 
   9716         * UIProcess/API/mac/PDFViewController.h:
   9717         * UIProcess/API/mac/PDFViewController.mm: (WebKit::PDFViewController::makePrintOperation):
   9718         Ask PDFDocument to create an NSPrintOperation.
   9719 
   9720         * UIProcess/API/mac/WKView.h:
   9721         * UIProcess/API/mac/WKView.mm:
   9722         (-[WKView printOperationWithPrintInfo:forFrame:]): Create a new NSPrintOperation, either
   9723         from scratch or from a PDF view.
   9724         (-[WKView canPrintHeadersAndFooters]): Report if the view can be re-paginated to add headers
   9725         and footers.
   9726 
   9727 2011-01-05  Anders Carlsson  <andersca (a] apple.com>
   9728 
   9729         Reviewed by Sam Weinig.
   9730 
   9731         <rdar://problem/8750248>
   9732         Need a way to create a new DownloadProxy from an arbitrary resource request
   9733 
   9734         <rdar://problem/8750465>
   9735         Need a way to start a download in WKDownload
   9736         
   9737         <rdar://problem/8752204>
   9738         WK2 Context Menus - "Save linked file" support
   9739 
   9740         * Shared/ContextMenuState.h: Added.
   9741         Add a ContextMenuState struct which contains state for context menus.
   9742 
   9743         * UIProcess/API/C/WKContext.cpp:
   9744         (WKContextDownloadURLRequest):
   9745         Call WebContext::download.
   9746 
   9747         * UIProcess/WebContext.cpp:
   9748         (WebKit::WebContext::download):
   9749         Send a DownloadRequest message to the web process.
   9750 
   9751         * UIProcess/WebPageProxy.cpp:
   9752         (WebKit::WebPageProxy::showContextMenu):
   9753         Set the active context menu state.
   9754 
   9755         (WebKit::WebPageProxy::contextMenuItemSelected):
   9756         Handle ContextMenuItemTagDownloadImageToDisk and ContextMenuItemTagDownloadLinkToDisk by calling
   9757         WebContext::Download, passing the respective URLs.
   9758 
   9759         * UIProcess/WebPageProxy.messages.in:
   9760         ShowContextMenu now takes state as well.
   9761 
   9762         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
   9763         (WebKit::WebContextMenuClient::downloadURL):
   9764         Assert that this is never reached; downloads are handled in the UI process.
   9765 
   9766         * WebProcess/WebPage/WebContextMenu.cpp:
   9767         (WebKit::WebContextMenu::show):
   9768         Pass the context menu state along when sending the ShowContextMenu message.
   9769 
   9770         * WebProcess/WebProcess.cpp:
   9771         (WebKit::WebProcess::downloadRequest):
   9772         Call the shared DownloadManager.
   9773 
   9774         * WebProcess/WebProcess.messages.in:
   9775         Add DownloadRequest message.
   9776 
   9777         * WebKit2.xcodeproj/project.pbxproj:
   9778         * win/WebKit2.vcproj:
   9779         Add ContextMenuState.h.
   9780 
   9781 2011-01-05  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   9782 
   9783         Unreviewed build fix.
   9784 
   9785         [Qt] [Symbian] Fix building NPAPI support
   9786 
   9787         NPEvent is mapped to QAction on Symbian. QAction has no
   9788         default constructor, so toNP() fails to build. Add a case for
   9789         Symbian behind the OS(SYMBIAN) guard.
   9790 
   9791         * WebProcess/Plugins/Netscape/qt/NetscapePluginQt.cpp:
   9792         (WebKit::toNP):
   9793 
   9794 2011-01-05  Jeff Miller  <jeffm (a] apple.com>
   9795 
   9796         Reviewed by Dan Bernstein.
   9797 
   9798         Copy WKImageCG.h to include\WebKit2 in build output
   9799         https://bugs.webkit.org/show_bug.cgi?id=51944
   9800 
   9801         * win/WebKit2Generated.make:
   9802         Add xcopy command to copy WKImageCG.h.
   9803 
   9804 2011-01-05  Brady Eidson  <beidson (a] apple.com>
   9805 
   9806         Reviewed by Sam Weinig.
   9807 
   9808         Part of <rdar://problem/8261624> and https://bugs.webkit.org/show_bug.cgi?id=47355
   9809         Change WebKit2 session restoring to restore the full back/forward list
   9810 
   9811         Add a new message to tell the WebProcess to restore a session state:
   9812         * WebProcess/WebPage/WebPage.cpp:
   9813         (WebKit::WebPage::restoreSession):
   9814         * WebProcess/WebPage/WebPage.h:
   9815         * WebProcess/WebPage/WebPage.messages.in: Add the new message, AND fix the intentional misspellings.
   9816         
   9817         Also, Sam sucks.
   9818 
   9819         Change WebProcess back/forward list item ids to be odd (UIProcess's will be even):
   9820         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   9821         (WebKit::generateHistoryItemID):
   9822 
   9823         Provide accessors to the entries in the list to pass to the WebProcess:
   9824         * UIProcess/WebBackForwardList.h:
   9825         (WebKit::WebBackForwardList::entries):
   9826         (WebKit::WebBackForwardList::currentIndex):
   9827 
   9828         Add decoding of the saved back/forward list itmes (we already encode them):
   9829         * UIProcess/cf/WebBackForwardListCF.cpp:
   9830         (WebKit::generateWebBackForwardItemID):
   9831         (WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation):
   9832 
   9833         Instead of loading the current URL, pass the entire last back to the WebProcess:
   9834         * UIProcess/cf/WebPageProxyCF.cpp:
   9835         (WebKit::WebPageProxy::restoreFromSessionStateData):
   9836 
   9837 2011-01-05  Brady Eidson  <beidson (a] apple.com>
   9838 
   9839         Reviewed by Darin Adler.
   9840 
   9841         https://bugs.webkit.org/show_bug.cgi?id=51953
   9842         Add a "SessionState" object for IPC messaging.
   9843 
   9844         This object includes all data necessary to restore a session state;
   9845         For now, this is just the back/forward list to restore.
   9846 
   9847         * Shared/SessionState.cpp: Added.
   9848         (WebKit::SessionState::SessionState):
   9849         (WebKit::SessionState::encode):
   9850         (WebKit::SessionState::decode):
   9851         * Shared/SessionState.h: Added.
   9852         (WebKit::SessionState::list):
   9853         (WebKit::SessionState::currentIndex):
   9854 
   9855         * WebKit2.pro:
   9856         * WebKit2.xcodeproj/project.pbxproj:
   9857         * win/WebKit2.vcproj:
   9858 
   9859 2011-01-05  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   9860 
   9861         Unreviewed build fix.
   9862 
   9863         Include unistd.h for _exit() for non-Windows builds.
   9864 
   9865         Build break noticed on QtWebkit Symbian builds.
   9866 
   9867         * Shared/ChildProcess.cpp:
   9868 
   9869 2011-01-05  Brady Eidson  <beidson (a] apple.com>
   9870 
   9871         Reviewed by Darin Adler.
   9872 
   9873         https://bugs.webkit.org/show_bug.cgi?id=51949
   9874         Make WebBackForwardListItem shared, and add encoders and decoders
   9875 
   9876         * Shared/WebBackForwardListItem.cpp: Copied from UIProcess/WebBackForwardListItem.cpp.
   9877         (WebKit::WebBackForwardListItem::encode):
   9878         (WebKit::WebBackForwardListItem::decode):
   9879         * Shared/WebBackForwardListItem.h: Copied from UIProcess/WebBackForwardListItem.h.
   9880         * UIProcess/WebBackForwardListItem.cpp: Removed.
   9881         * UIProcess/WebBackForwardListItem.h: Removed.
   9882 
   9883         * WebKit2.pro:
   9884         * WebKit2.xcodeproj/project.pbxproj:
   9885         * win/WebKit2.vcproj:
   9886 
   9887 2011-01-05  Anders Carlsson  <andersca (a] apple.com>
   9888 
   9889         Reviewed by Sam Weinig.
   9890 
   9891         Handle smart insert/delete
   9892         https://bugs.webkit.org/show_bug.cgi?id=51946
   9893 
   9894         * Shared/WebPageCreationParameters.cpp:
   9895         (WebKit::WebPageCreationParameters::encode):
   9896         (WebKit::WebPageCreationParameters::decode):
   9897         * Shared/WebPageCreationParameters.h:
   9898         Add isSmartInsertDelete enabled.
   9899 
   9900         * UIProcess/API/mac/WKView.mm:
   9901         (-[WKView validateUserInterfaceItem:]):
   9902         Handle toggleSmartInsertDelete:.
   9903 
   9904         (-[WKView toggleSmartInsertDelete:]):
   9905         Toggle the smart insert/delete state.
   9906 
   9907         * UIProcess/TextChecker.h:
   9908         Add isSmartInsertDeleteEnabled and setSmartInsertDeleteEnabled.
   9909 
   9910         * UIProcess/WebPageProxy.cpp:
   9911         (WebKit::WebPageProxy::WebPageProxy):
   9912         Initialize m_isSmartInsertDeleteEnabled.
   9913 
   9914         (WebKit::WebPageProxy::contextMenuItemSelected):
   9915         Handle ContextMenuItemTagSmartCopyPaste.
   9916 
   9917         (WebKit::WebPageProxy::setSmartInsertDeleteEnabled):
   9918         Update the state and send a SetSmartInsertDeleteEnabled message.
   9919 
   9920         (WebKit::WebPageProxy::creationParameters):
   9921         Initialize isSmartInsertDeleteEnabled.
   9922 
   9923         * UIProcess/WebPageProxy.h:
   9924         (WebKit::WebPageProxy::isSmartInsertDeleteEnabled):
   9925         Return m_isSmartInsertDeleteEnabled.
   9926 
   9927         * UIProcess/mac/TextCheckerMac.mm:
   9928         (WebKit::TextChecker::isSmartInsertDeleteEnabled):
   9929         (WebKit::TextChecker::setSmartInsertDeleteEnabled):
   9930         Store and fetch the smart insert delete state.
   9931 
   9932         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   9933         (WebKit::WebEditorClient::smartInsertDeleteEnabled):
   9934         Call WebPage::isSmartInsertDeleteEnabled.
   9935 
   9936         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
   9937         (WebKit::WebEditorClient::toggleSmartInsertDelete):
   9938         Assert that this is never called.
   9939 
   9940         * WebProcess/WebPage/WebPage.cpp:
   9941         (WebKit::WebPage::WebPage):
   9942         Initialize m_isSmartInsertDeleteEnabled
   9943 
   9944         * WebProcess/WebPage/WebPage.h:
   9945         (WebKit::WebPage::isSmartInsertDeleteEnabled):
   9946         (WebKit::WebPage::setSmartInsertDeleteEnabled):
   9947         Add getter and setter.
   9948 
   9949         * WebProcess/WebPage/WebPage.messages.in:
   9950         Add SetSmartInsertDeleteEnabled message.
   9951 
   9952 2011-01-05  Anders Carlsson  <andersca (a] apple.com>
   9953 
   9954         Fix Windows build.
   9955         
   9956         * WebProcess/WebPage/WebPage.cpp:
   9957 
   9958 2011-01-05  Anders Carlsson  <andersca (a] apple.com>
   9959 
   9960         Reviewed by Adele Peterson.
   9961 
   9962         Implement word transformation
   9963         https://bugs.webkit.org/show_bug.cgi?id=51943
   9964 
   9965         * UIProcess/API/mac/WKView.mm:
   9966         (-[WKView validateUserInterfaceItem:]):
   9967         Handle the word transformation selectors.
   9968 
   9969         (-[WKView uppercaseWord:]):
   9970         (-[WKView lowercaseWord:]):
   9971         (-[WKView capitalizeWord:]):
   9972         Call down to the WebPageProxy.
   9973 
   9974         * UIProcess/WebPageProxy.cpp:
   9975         (WebKit::WebPageProxy::uppercaseWord):
   9976         (WebKit::WebPageProxy::lowercaseWord):
   9977         (WebKit::WebPageProxy::capitalizeWord):
   9978         Send messages to the WebPage.
   9979 
   9980         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
   9981         (WebKit::changeWordCase):
   9982         Add helper function.
   9983 
   9984         (WebKit::WebEditorClient::uppercaseWord):
   9985         (WebKit::WebEditorClient::lowercaseWord):
   9986         (WebKit::WebEditorClient::capitalizeWord):
   9987         Call helper function.
   9988 
   9989         * WebProcess/WebPage/WebPage.cpp:
   9990         (WebKit::WebPage::changeSpellingToWord):
   9991         Call replaceSelectionWithText.
   9992 
   9993         (WebKit::WebPage::uppercaseWord):
   9994         (WebKit::WebPage::lowercaseWord):
   9995         (WebKit::WebPage::capitalizeWord):
   9996         Call the editor functions.
   9997 
   9998         (WebKit::WebPage::replaceSelectionWithText):
   9999         New helper function that replaces the selected string with another string.
   10000 
   10001         * WebProcess/WebPage/WebPage.messages.in:
   10002         Add new messages.
   10003 
   10004 2011-01-05  Alexey Proskuryakov  <ap (a] apple.com>
   10005 
   10006         Reviewed by Anders Carlsson.
   10007 
   10008         https://bugs.webkit.org/show_bug.cgi?id=51935
   10009         Add WebKit2 API for largest frame
   10010 
   10011         * UIProcess/API/C/WKPage.cpp:
   10012         (WKPageGetFrameSetLargestFrame):
   10013         * UIProcess/API/C/WKPage.h:
   10014 
   10015 2011-01-05  Anders Carlsson  <andersca (a] apple.com>
   10016 
   10017         Reviewed by Sam Weinig.
   10018 
   10019         More work on spelling
   10020         https://bugs.webkit.org/show_bug.cgi?id=51939
   10021 
   10022         * UIProcess/API/mac/WKView.mm:
   10023         (-[WKView validateUserInterfaceItem:]):
   10024         Handle changeSpelling: as well.
   10025 
   10026         (-[WKView showGuessPanel:]):
   10027         Show or hide the guess panel.
   10028 
   10029         (-[WKView checkSpelling:]):
   10030         Pass false to advanceToNextMisspelling.
   10031 
   10032         (-[WKView changeSpelling:]):
   10033         Call changeSpellingToWord.
   10034 
   10035         * UIProcess/TextChecker.h:
   10036         * UIProcess/WebPageProxy.cpp:
   10037         (WebKit::WebPageProxy::WebPageProxy):
   10038         Initialize m_pendingLearnOrIgnoreWordMessageCount.
   10039 
   10040         (WebKit::WebPageProxy::contextMenuItemSelected):
   10041         Handle smart toggles directly in the UI process, keep track of whether
   10042         we're asked to learn or ignore a word.
   10043 
   10044         (WebKit::WebPageProxy::advanceToNextMisspelling):
   10045         Pass the boolean through.
   10046 
   10047         (WebKit::WebPageProxy::changeSpellingToWord):
   10048         Send a ChangeSpellingToWord message.
   10049 
   10050         (WebKit::WebPageProxy::learnWord):
   10051         (WebKit::WebPageProxy::ignoreWord):
   10052         Check that we do have a pending learn or ignore word message. Call through to
   10053         the text checker.
   10054 
   10055         (WebKit::WebPageProxy::processDidCrash):
   10056         Reset the m_pendingLearnOrIgnoreWordMessageCount variable.
   10057 
   10058         * UIProcess/WebPageProxy.h:
   10059         * UIProcess/WebPageProxy.messages.in:
   10060         Add new messages.
   10061 
   10062         * UIProcess/mac/TextCheckerMac.mm:
   10063         (WebKit::TextChecker::learnWord):
   10064         (WebKit::TextChecker::ignoreWord):
   10065         Implement in terms of NSSpellChecker.
   10066 
   10067         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   10068         (WebKit::WebEditorClient::ignoreWordInSpellDocument):
   10069         (WebKit::WebEditorClient::learnWord):
   10070         Send IgnoreWord and LearnWord messages.
   10071 
   10072         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
   10073         (WebKit::WebEditorClient::toggleAutomaticQuoteSubstitution):
   10074         (WebKit::WebEditorClient::toggleAutomaticLinkDetection):
   10075         (WebKit::WebEditorClient::toggleAutomaticDashSubstitution):
   10076         (WebKit::WebEditorClient::toggleAutomaticTextReplacement):
   10077         Add assertions.
   10078 
   10079         * WebProcess/WebPage/WebPage.cpp:
   10080         (WebKit::WebPage::advanceToNextMisspelling):
   10081         Pass the bool along to the Editor.
   10082 
   10083         (WebKit::WebPage::changeSpellingToWord):
   10084         Replace the selected text.
   10085 
   10086         * WebProcess/WebPage/WebPage.messages.in:
   10087         Add new ChangeSpellingToWord message and add a boolean to AdvanceToNextMisspelling.
   10088 
   10089 2011-01-05  Anders Carlsson  <andersca (a] apple.com>
   10090 
   10091         Reviewed by Dan Bernstein.
   10092 
   10093         Keep track of active text substitution preferences
   10094         https://bugs.webkit.org/show_bug.cgi?id=51931
   10095 
   10096         * Shared/TextCheckerState.h:
   10097         * UIProcess/API/mac/WKView.mm:
   10098         (-[WKView validateUserInterfaceItem:]):
   10099         Handle new selectors, mostly copied from WebKit1 code.
   10100 
   10101         (-[WKView orderFrontSubstitutionsPanel:]):
   10102         Open the substitution panel.
   10103 
   10104         (-[WKView isAutomaticQuoteSubstitutionEnabled]):
   10105         (-[WKView setAutomaticQuoteSubstitutionEnabled:]):
   10106         (-[WKView toggleAutomaticQuoteSubstitution:]):
   10107         (-[WKView isAutomaticDashSubstitutionEnabled]):
   10108         (-[WKView setAutomaticDashSubstitutionEnabled:]):
   10109         (-[WKView toggleAutomaticDashSubstitution:]):
   10110         (-[WKView isAutomaticLinkDetectionEnabled]):
   10111         (-[WKView setAutomaticLinkDetectionEnabled:]):
   10112         (-[WKView toggleAutomaticLinkDetection:]):
   10113         (-[WKView isAutomaticTextReplacementEnabled]):
   10114         (-[WKView setAutomaticTextReplacementEnabled:]):
   10115         (-[WKView toggleAutomaticTextReplacement:]):
   10116         Call the text checker, and update the state in the web process if needed.
   10117 
   10118         * UIProcess/TextChecker.h:
   10119         Add new flags.
   10120 
   10121         * UIProcess/mac/TextCheckerMac.mm:
   10122         (WebKit::initializeState):
   10123         Initialize flags from user defaults.
   10124 
   10125         (WebKit::TextChecker::setAutomaticQuoteSubstitutionEnabled):
   10126         (WebKit::TextChecker::setAutomaticDashSubstitutionEnabled):
   10127         (WebKit::TextChecker::setAutomaticLinkDetectionEnabled):
   10128         (WebKit::TextChecker::setAutomaticTextReplacementEnabled):
   10129         Update and save the flags.
   10130 
   10131         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
   10132         (WebKit::WebEditorClient::isAutomaticQuoteSubstitutionEnabled):
   10133         (WebKit::WebEditorClient::isAutomaticLinkDetectionEnabled):
   10134         (WebKit::WebEditorClient::isAutomaticDashSubstitutionEnabled):
   10135         (WebKit::WebEditorClient::isAutomaticTextReplacementEnabled):
   10136         Get the text checker state.
   10137 
   10138 2011-01-05  Dan Bernstein  <mitz (a] apple.com>
   10139 
   10140         Rubber-stamped by Darin Adler.
   10141 
   10142         Cleaned up com.apple.WebProcess.sb
   10143 
   10144         * WebProcess/com.apple.WebProcess.sb: Moved the closing parentheses of multi-line blocks to
   10145         their own lines. Changed to use WebKit-standard 4-space indentation.
   10146 
   10147 2011-01-05  Alexey Proskuryakov  <ap (a] apple.com>
   10148 
   10149         Reviewed by Sam Weinig.
   10150 
   10151         https://bugs.webkit.org/show_bug.cgi?id=51903
   10152         Tell UI process which subframe is largest
   10153 
   10154         * UIProcess/WebPageProxy.h:
   10155         (WebKit::WebPageProxy::frameSetLargestFrame):
   10156         Remember largest frame in frameset pages.
   10157 
   10158         * UIProcess/WebPageProxy.cpp:
   10159         (WebKit::WebPageProxy::frameDidBecomeFrameSet): Reset stored largest frame if main frame
   10160         changes to a frameset or back.
   10161         (WebKit::WebPageProxy::frameSetLargestFrameChanged): Store a new largest frame when notified
   10162         of a change.
   10163 
   10164         * UIProcess/WebPageProxy.messages.in: Added FrameSetLargestFrameChanged.
   10165 
   10166         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   10167         (WebKit::area): Calculate area of a frame.
   10168         (WebKit::findLargestFrameInFrameSet): Find largest first-level subframe in a frameset page.
   10169         (WebKit::WebChromeClient::contentsSizeChanged): Recalculate largest frame, and notify UI
   10170         process if it changed.
   10171 
   10172         * WebProcess/WebCoreSupport/WebChromeClient.h: Store the latest largest frame.
   10173 
   10174         * WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::size):
   10175         * WebProcess/WebPage/WebFrame.h:
   10176         Expose frame size.
   10177 
   10178 2011-01-04  Benjamin Poulain  <benjamin.poulain (a] nokia.com>
   10179 
   10180         Reviewed by Kenneth Rohde Christiansen.
   10181 
   10182         [Qt] [WK2] Add support for non-trivial context menu action
   10183         https://bugs.webkit.org/show_bug.cgi?id=51902
   10184 
   10185         Implement a call back from the QAction triggered in the UIProcess to the
   10186         action in WebProcess.
   10187 
   10188         A few basic actions have been implemented based on this feature.
   10189 
   10190         * UIProcess/API/qt/qwkpage.cpp:
   10191         (contextMenuActionForWebAction):
   10192         (QWKPage::triggerAction):
   10193         (QWKPage::action):
   10194         * UIProcess/API/qt/qwkpage.h:
   10195         * UIProcess/qt/WebContextMenuProxyQt.cpp:
   10196         (WebKit::webActionForContextMenuAction):
   10197 
   10198 2011-01-04  Siddharth Mathur  <siddharth.mathur (a] nokia.com>
   10199 
   10200         Reviewed by Laszlo Gombos.
   10201 
   10202         Include unistd.h for sleep() for non-Windows builds.
   10203 
   10204         * WebProcess/WebProcess.cpp:
   10205         * WebProcess/qt/WebProcessMainQt.cpp:
   10206 
   10207 2011-01-04  Brian Weinstein  <bweinstein (a] apple.com>
   10208 
   10209         Windows build fix. Change the inline type of consumePermanently.
   10210 
   10211         * Shared/SandboxExtension.h:
   10212         (WebKit::SandboxExtension::consumePermanently):
   10213 
   10214 2011-01-04  Anders Carlsson  <andersca (a] apple.com>
   10215 
   10216         Reviewed by Dan Bernstein.
   10217 
   10218         <rdar://problem/8821203> Sandbox violations trying to access the Safari cache
   10219 
   10220         * Shared/SandboxExtension.h:
   10221         (WebKit::SandboxExtension::consumePermanently):
   10222         New function which consumes a sandbox extension and destroys it, making it impossible
   10223         to later revoke it.
   10224 
   10225         * Shared/WebProcessCreationParameters.cpp:
   10226         (WebKit::WebProcessCreationParameters::encode):
   10227         (WebKit::WebProcessCreationParameters::decode):
   10228         Encode and decode the path extension handle.
   10229 
   10230         * Shared/mac/SandboxExtensionMac.mm:
   10231         (WebKit::SandboxExtension::createHandle):
   10232         Standardize the path before creating the handle.
   10233 
   10234         * UIProcess/mac/WebContextMac.mm:
   10235         (WebKit::WebContext::platformInitializeWebProcess):
   10236         Create a sandbox extension for the cache path.
   10237 
   10238         * WebProcess/mac/WebProcessMac.mm:
   10239         (WebKit::WebProcess::platformInitializeWebProcess):
   10240         Consume the sandbox extension.
   10241 
   10242 2011-01-04  Anders Carlsson  <andersca (a] apple.com>
   10243 
   10244         Fix build.
   10245 
   10246         * UIProcess/mac/TextCheckerMac.mm:
   10247         (WebKit::TextChecker::getGuessesForWord):
   10248 
   10249 2011-01-04  Jeff Miller  <jeffm (a] apple.com>
   10250 
   10251         Reviewed by Darin Adler.
   10252 
   10253         Mouse events in WebKit2 on Windows need to know whether the click activated the WebView to match WebKit1 behavior.
   10254         https://bugs.webkit.org/show_bug.cgi?id=51228
   10255 
   10256         * Shared/WebEvent.h:
   10257         (WebKit::WebMouseEvent::didActivateWebView):
   10258         Add m_didActivateWebView to WebMouseEvent on Windows.
   10259 
   10260         * Shared/WebEventConversion.cpp:
   10261         (WebKit::WebKit2PlatformMouseEvent::WebKit2PlatformMouseEvent):
   10262         Propagate whether the click activated the WebView when converting to a PlatformMouseEvent.
   10263 
   10264         * Shared/WebMouseEvent.cpp:
   10265         (WebKit::WebMouseEvent::WebMouseEvent):
   10266         Add m_didActivateWebView to WebMouseEvent on Windows.
   10267 
   10268         (WebKit::WebMouseEvent::encode):
   10269         (WebKit::WebMouseEvent::decode):
   10270         Encode and decode new m_didActivateWebView member variable.
   10271 
   10272         * Shared/win/WebEventFactory.cpp:
   10273         (WebKit::WebEventFactory::createWebMouseEvent):
   10274         * Shared/win/WebEventFactory.h:
   10275         Add didActivateWebView parameter to createWebMouseEvent().
   10276 
   10277         * UIProcess/win/WebView.cpp:
   10278         (WebKit::WebView::wndProc):
   10279         (WebKit::WebView::WebView):
   10280         (WebKit::WebView::onMouseEvent):
   10281         * UIProcess/win/WebView.h:
   10282         (WebKit::WebView::setWasActivatedByMouseEvent):
   10283         Keep track of whether the click activated the WebView.
   10284 
   10285 2011-01-04  Ivan Krsti  <ike (a] apple.com>
   10286 
   10287         Reviewed and landed by Anders Carlsson.
   10288 
   10289         <rdar://problem/8602585>
   10290         <rdar://problem/8711641>
   10291 
   10292         * WebProcess/com.apple.WebProcess.sb:
   10293         Fix a misplaced right parenthesis and add a new system path regex.
   10294 
   10295 2011-01-04  Anders Carlsson  <andersca (a] apple.com>
   10296 
   10297         Reviewed by Sam Weinig.
   10298 
   10299         More work on spelling and grammar
   10300         https://bugs.webkit.org/show_bug.cgi?id=51910
   10301 
   10302         * Scripts/webkit2/messages.py:
   10303         Add special case for WebCore::TextCheckingResult.
   10304 
   10305         * Shared/NotImplemented.h:
   10306         Fix macro so that defining DISABLE_NOT_IMPLEMENTED_WARNINGS to 0 will enable the warnings.
   10307         
   10308         * Shared/WebCoreArgumentCoders.h:
   10309         Add argument coders for WebCore::GrammarDetail and WebCore::TextCheckingResult.
   10310 
   10311         * UIProcess/API/mac/WKView.mm:
   10312         (-[WKView checkSpelling:]):
   10313         Call advanceToNextMisspelling.
   10314 
   10315         * UIProcess/TextChecker.h:
   10316         Add new NSSpellChecker wrappers.
   10317 
   10318         * UIProcess/WebPageProxy.cpp:
   10319         (WebKit::WebPageProxy::WebPageProxy):
   10320         Initialize the new member variables.
   10321 
   10322         (WebKit::WebPageProxy::~WebPageProxy):
   10323         Call TextChecker::closeSpellDocumentWithTag.
   10324 
   10325         (WebKit::WebPageProxy::advanceToNextMisspelling):
   10326         Send the AdvanceToNextMisspelling message.
   10327 
   10328         (WebKit::WebPageProxy::spellDocumentTag):
   10329         Create a spell document tag if necessary.
   10330 
   10331         (WebKit::WebPageProxy::checkTextOfParagraph):
   10332         (WebKit::WebPageProxy::updateSpellingUIWithMisspelledWord):
   10333         (WebKit::WebPageProxy::getGuessesForWord):
   10334         Call the TextChecker.
   10335         
   10336         * UIProcess/WebPageProxy.messages.in:
   10337         Add new messages.
   10338 
   10339         * UIProcess/mac/TextCheckerMac.mm:
   10340         (WebKit::TextChecker::uniqueSpellDocumentTag):
   10341         (WebKit::TextChecker::closeSpellDocumentWithTag):
   10342         (WebKit::TextChecker::checkTextOfParagraph):
   10343         (WebKit::TextChecker::updateSpellingUIWithMisspelledWord):
   10344         (WebKit::TextChecker::getGuessesForWord):
   10345         Add NSSpellChecker wrappers.
   10346 
   10347         * UIProcess/qt/TextCheckerQt.cpp:
   10348         * UIProcess/win/TextCheckerWin.cpp:
   10349         Add stubs.
   10350 
   10351         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   10352         (WebKit::WebEditorClient::isContinuousSpellCheckingEnabled):
   10353         (WebKit::WebEditorClient::isGrammarCheckingEnabled):
   10354         Get the text checking state from the web process.
   10355 
   10356         (WebKit::WebEditorClient::updateSpellingUIWithMisspelledWord):
   10357         (WebKit::WebEditorClient::getGuessesForWord):
   10358         Proxy calls to the UI process.
   10359 
   10360         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
   10361         (WebKit::WebEditorClient::isAutomaticSpellingCorrectionEnabled):
   10362         
   10363         (WebKit::WebEditorClient::checkTextOfParagraph):
   10364         Proxy calls to the UI process.
   10365 
   10366         * WebProcess/WebPage/WebPage.cpp:
   10367         (WebKit::WebPage::advanceToNextMisspelling):
   10368         Call the frame.
   10369 
   10370         * WebProcess/WebPage/WebPage.messages.in:
   10371         Add AdvanceToNextMisspelling message.
   10372 
   10373         * WebProcess/WebProcess.cpp:
   10374         (WebKit::WebProcess::initializeWebProcess):
   10375         Set the text checker state.
   10376 
   10377 2011-01-04  Chris Fleizach  <cfleizach (a] apple.com>
   10378 
   10379         Unreviewed. Build fix.
   10380 
   10381         WK2: Support Accessibility
   10382         https://bugs.webkit.org/show_bug.cgi?id=51859
   10383 
   10384         * WebProcess/WebPage/mac/AccessibilityWebPageObject.mm:
   10385 
   10386 2011-01-04  Chris Fleizach  <cfleizach (a] apple.com>
   10387 
   10388         Unreviewed. Build fix.
   10389 
   10390         WK2: Support Accessibility
   10391         https://bugs.webkit.org/show_bug.cgi?id=51859
   10392 
   10393         * WebProcess/WebPage/mac/AccessibilityWebPageObject.mm:
   10394         (-[AccessibilityWebPageObject accessibilityAttributeValue:]):
   10395 
   10396 2011-01-04  Chris Fleizach  <cfleizach (a] apple.com>
   10397 
   10398         Reviewed by Sam Weinig.
   10399 
   10400         WK2: Support Accessibility
   10401         https://bugs.webkit.org/show_bug.cgi?id=51859
   10402 
   10403         Implement remote accessibility API to support cross process accessibility
   10404         on the Mac platform.
   10405 
   10406         * Shared/WebProcessCreationParameters.cpp:
   10407         (WebKit::WebProcessCreationParameters::encode):
   10408         (WebKit::WebProcessCreationParameters::decode):
   10409         * Shared/WebProcessCreationParameters.h:
   10410         * UIProcess/API/mac/PageClientImpl.h:
   10411         * UIProcess/API/mac/PageClientImpl.mm:
   10412         (WebKit::PageClientImpl::accessibilityChildTokenReceived):
   10413         * UIProcess/API/mac/WKView.mm:
   10414         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
   10415         (-[WKView _updateWindowAndViewFrames]):
   10416         (-[WKView _setAccessibilityChildToken:]):
   10417         (-[WKView accessibilityIsIgnored]):
   10418         (-[WKView accessibilityHitTest:]):
   10419         (-[WKView accessibilityAttributeValue:]):
   10420         * UIProcess/API/mac/WKViewInternal.h:
   10421         * UIProcess/PageClient.h:
   10422         * UIProcess/WebContext.cpp:
   10423         (WebKit::WebContext::ensureWebProcess):
   10424         * UIProcess/WebPageProxy.cpp:
   10425         (WebKit::WebPageProxy::windowAndViewFramesChanged):
   10426         (WebKit::WebPageProxy::didReceiveAccessibilityPageToken):
   10427         (WebKit::WebPageProxy::sendAccessibilityPresenterToken):
   10428         * UIProcess/WebPageProxy.h:
   10429         * UIProcess/WebPageProxy.messages.in:
   10430         * WebKit2.xcodeproj/project.pbxproj:
   10431         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   10432         (WebKit::WebFrameLoaderClient::accessibilityRemoteObject):
   10433         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   10434         * WebProcess/WebPage/WebPage.cpp:
   10435         (WebKit::WebPage::windowAndViewFramesChanged):
   10436         * WebProcess/WebPage/WebPage.h:
   10437         (WebKit::WebPage::accessibilityPosition):
   10438         * WebProcess/WebPage/WebPage.messages.in:
   10439         * WebProcess/WebPage/mac/AccessibilityWebPageObject.h: Added.
   10440         * WebProcess/WebPage/mac/AccessibilityWebPageObject.mm: Added.
   10441         (-[AccessibilityWebPageObject setWebPage:]):
   10442         (-[AccessibilityWebPageObject setRemoteParent:]):
   10443         (-[AccessibilityWebPageObject dealloc]):
   10444         (-[AccessibilityWebPageObject accessibilityIsIgnored]):
   10445         (-[AccessibilityWebPageObject accessibilityAttributeNames]):
   10446         (-[AccessibilityWebPageObject accessibilityIsAttributeSettable:]):
   10447         (-[AccessibilityWebPageObject accessibilitySetValue:forAttribute:]):
   10448         (-[AccessibilityWebPageObject accessibilityActionNames]):
   10449         (-[AccessibilityWebPageObject accessibilityChildren]):
   10450         (-[AccessibilityWebPageObject accessibilityAttributeValue:]):
   10451         (-[AccessibilityWebPageObject accessibilityShouldUseUniqueId]):
   10452         (-[AccessibilityWebPageObject accessibilityHitTest:]):
   10453         (-[AccessibilityWebPageObject accessibilityFocusedUIElement]):
   10454         * WebProcess/WebPage/mac/WebPageMac.mm:
   10455         (WebKit::WebPage::platformInitialize):
   10456         (WebKit::WebPage::sendAccessibilityPresenterToken):
   10457         (WebKit::WebPage::accessibilityRemoteObject):
   10458         * WebProcess/WebProcess.cpp:
   10459         (WebKit::WebProcess::initializeWebProcess):
   10460         * WebProcess/WebProcess.h:
   10461         (WebKit::WebProcess::presenterApplicationPid):
   10462         * WebProcess/mac/WebProcessMainMac.mm:
   10463         (WebKit::WebProcessMain):
   10464 
   10465 2011-01-04  Brady Eidson  <beidson (a] apple.com>
   10466 
   10467         Reviewed by Darin Adler.
   10468 
   10469         Get rid of an extra copy in the back/forward item IPC message by using a DataReference.
   10470 
   10471         * UIProcess/WebBackForwardListItem.cpp:
   10472         (WebKit::WebBackForwardListItem::WebBackForwardListItem):
   10473         (WebKit::WebBackForwardListItem::setBackForwardData):
   10474         * UIProcess/WebBackForwardListItem.h:
   10475 
   10476         * UIProcess/WebPageProxy.cpp:
   10477         (WebKit::WebPageProxy::dataCallback): Get rid of no-longer-needed check for size 0.
   10478 
   10479         * UIProcess/WebProcessProxy.cpp:
   10480         (WebKit::WebProcessProxy::addBackForwardItem):
   10481         * UIProcess/WebProcessProxy.h:
   10482 
   10483         * UIProcess/WebProcessProxy.messages.in:
   10484 
   10485         * WebProcess/WebPage/EncoderAdapter.cpp:
   10486         (WebKit::EncoderAdapter::data):
   10487         * WebProcess/WebPage/EncoderAdapter.h:
   10488 
   10489         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   10490 
   10491 2011-01-04  Brady Eidson  <beidson (a] apple.com>
   10492 
   10493         Reviewed by Darin Adler.
   10494 
   10495         Store more data per history entry in the session state blob.
   10496 
   10497         * UIProcess/WebBackForwardListItem.cpp:
   10498         (WebKit::WebBackForwardListItem::WebBackForwardListItem):
   10499         * UIProcess/WebBackForwardListItem.h:
   10500         (WebKit::WebBackForwardListItem::create):
   10501 
   10502         * UIProcess/WebProcessProxy.cpp:
   10503         (WebKit::WebProcessProxy::addBackForwardItem):
   10504 
   10505         * UIProcess/cf/WebBackForwardListCF.cpp:
   10506         (WebKit::WebBackForwardList::createCFDictionaryRepresentation):
   10507 
   10508         * UIProcess/cf/WebPageProxyCF.cpp:
   10509 
   10510 2011-01-04  Darin Adler  <darin (a] apple.com>
   10511 
   10512         Reviewed by Brady Eidson.
   10513 
   10514         Add back/forward encoding and decoding to WebKit2
   10515         https://bugs.webkit.org/show_bug.cgi?id=51901
   10516 
   10517         * GNUmakefile.am: Added new source files.
   10518         * WebKit2.pro: Ditto.
   10519         * WebKit2.xcodeproj/project.pbxproj: Ditto.
   10520         * win/WebKit2.vcproj: Ditto.
   10521 
   10522         * WebProcess/WebPage/DecoderAdapter.cpp: Added.
   10523         * WebProcess/WebPage/DecoderAdapter.h: Added.
   10524         * WebProcess/WebPage/EncoderAdapter.cpp: Added.
   10525         * WebProcess/WebPage/EncoderAdapter.h: Added.
   10526 
   10527         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   10528         (WebKit::updateBackForwardItem): Added code to encode the back/forward
   10529         tree and send it along. The code to decode needs to wait on Brady's
   10530         current project.
   10531 
   10532 2011-01-04  Anders Carlsson  <andersca (a] apple.com>
   10533 
   10534         Reviewed by Sam Weinig.
   10535 
   10536         <rdar://problem/8766999> WebKit2: Sandboxing causes certificate error on access to any HTTPS URL
   10537 
   10538         Allow read access to /Library/Preferences/com.apple.security.plist.
   10539 
   10540         * WebProcess/com.apple.WebProcess.sb:
   10541 
   10542 2011-01-04  Anders Carlsson  <andersca (a] apple.com>
   10543 
   10544         Build fixes.
   10545 
   10546         * UIProcess/qt/TextCheckerQt.cpp:
   10547         * UIProcess/win/TextCheckerWin.cpp:
   10548 
   10549 2011-01-04  Anders Carlsson  <andersca (a] apple.com>
   10550 
   10551         Reviewed by Darin Adler.
   10552 
   10553         Don't use macros for the key names.
   10554 
   10555         * UIProcess/mac/TextCheckerMac.mm:
   10556 
   10557 2011-01-04  Anders Carlsson  <andersca (a] apple.com>
   10558 
   10559         Reviewed by Sam Weinig.
   10560 
   10561         Send over text checker state to the web process
   10562         https://bugs.webkit.org/show_bug.cgi?id=51896
   10563 
   10564         * Platform/CoreIPC/Arguments.h:
   10565         Remove 'const' from the argument, this matches all the other Arguments classes.
   10566 
   10567         * Shared/TextCheckerState.h: Added.
   10568         New class with text checker state.
   10569 
   10570         * Shared/WebProcessCreationParameters.cpp:
   10571         (WebKit::WebProcessCreationParameters::encode):
   10572         (WebKit::WebProcessCreationParameters::decode):
   10573         * Shared/WebProcessCreationParameters.h:
   10574         Add textCheckerState.
   10575 
   10576         * UIProcess/API/mac/WKView.mm:
   10577         (-[WKView validateUserInterfaceItem:]):        
   10578         (-[WKView toggleContinuousSpellChecking:]):
   10579         (-[WKView toggleGrammarChecking:]):
   10580         (-[WKView toggleAutomaticSpellingCorrection:]):
   10581         Get the needed flags from the text checker state.
   10582 
   10583         * UIProcess/TextChecker.h:
   10584         Add state() function, remove getters.
   10585 
   10586         * UIProcess/WebContext.cpp:
   10587         (WebKit::WebContext::ensureWebProcess):
   10588         Initialize the text checker state.
   10589 
   10590         * UIProcess/WebProcessProxy.cpp:
   10591         (WebKit::WebProcessProxy::updateTextCheckerState):
   10592         Send the SetTextCheckerState message to the web process.
   10593 
   10594         * UIProcess/mac/TextCheckerMac.mm:
   10595         (WebKit::initializeState):
   10596         Initialize the state from the user defaults.
   10597 
   10598         (WebKit::TextChecker::state):
   10599         Return the state.
   10600 
   10601         (WebKit::TextChecker::setContinuousSpellCheckingEnabled):
   10602         (WebKit::TextChecker::setGrammarCheckingEnabled):
   10603         (WebKit::TextChecker::setAutomaticSpellingCorrectionEnabled):
   10604         Make sure to write the new state.
   10605         
   10606         * UIProcess/qt/TextCheckerQt.cpp:
   10607         (WebKit::TextChecker::state):
   10608         * UIProcess/win/TextCheckerWin.cpp:
   10609         (WebKit::TextChecker::state):
   10610         Add stubs.
   10611 
   10612         * WebKit2.xcodeproj/project.pbxproj:
   10613         Add TextCheckerState.h.
   10614 
   10615         * WebProcess/WebProcess.cpp:
   10616         (WebKit::WebProcess::WebProcess):
   10617         Initialize m_textCheckerState.
   10618 
   10619         (WebKit::WebProcess::setTextCheckerState):
   10620         Update.
   10621 
   10622         * WebProcess/WebProcess.messages.in:
   10623         Add SetTextCheckerState message.
   10624 
   10625         * win/WebKit2.vcproj:
   10626         Add TextCheckerState.h.
   10627 
   10628 2011-01-04  Brady Eidson  <beidson (a] apple.com>
   10629 
   10630         Rubberstamped by Anders Carlsson.
   10631 
   10632         Attach a radar # to this FIXME:
   10633         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   10634 
   10635 2011-01-04  Anders Carlsson  <andersca (a] apple.com>
   10636 
   10637         Reviewed by John Sullivan.
   10638 
   10639         Add more spelling/grammar related methods
   10640         https://bugs.webkit.org/show_bug.cgi?id=51886
   10641 
   10642         * UIProcess/API/mac/WKView.mm:
   10643         (-[WKView validateUserInterfaceItem:]):
   10644         Handle more selectors.
   10645 
   10646         (-[WKView showGuessPanel:]):
   10647         Add stub.
   10648 
   10649         (-[WKView checkSpelling:]):
   10650         Ditto.
   10651 
   10652         (-[WKView toggleAutomaticSpellingCorrection:]):
   10653         Toggle automatic spelling correction.
   10654 
   10655         * UIProcess/TextChecker.h:
   10656         Add setAutomaticSpellingCorrectionEnabled and isAutomaticSpellingCorrectionEnabled.
   10657 
   10658         * UIProcess/mac/TextCheckerMac.mm:
   10659         (WebKit::TextChecker::setAutomaticSpellingCorrectionEnabled):
   10660         (WebKit::TextChecker::isAutomaticSpellingCorrectionEnabled):
   10661         Update the toggle.
   10662 
   10663         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   10664         * WebProcess/WebCoreSupport/mac/WebErrorsMac.mm:
   10665         Add a Radar URL for the localization FIXMEs.
   10666 
   10667 2011-01-04  Brent Fulgham  <bfulgham (a] webkit.org>
   10668 
   10669         Unreviewed build fix.
   10670 
   10671         * win/WebKit2.vcproj: Correct the missing $(WebKitVSPropsRedirectionDir)
   10672         variables that Visual Studio helpfully removes when making changes.
   10673 
   10674 2011-01-04  Brent Fulgham  <bfulgham (a] webkit.org>
   10675 
   10676         Unreviewed build fix.
   10677 
   10678         * win/WebKit2.vcproj: Disable CG-specific WKImageCG.cpp from
   10679         Debug_Cairo_CFLite/Release_Cario_CFLite builds.
   10680 
   10681 2011-01-04  Brady Eidson  <beidson (a] apple.com>
   10682 
   10683         Reviewed by Darin Adler.
   10684 
   10685         https://bugs.webkit.org/show_bug.cgi?id=51856
   10686         Pass encoded back/forward tree data from the WebProcess to the UIProcess
   10687 
   10688         Remove the WKBackForwardListItemCopyOriginalURL API as it's not needed:
   10689         * UIProcess/API/C/WKBackForwardListItem.cpp:
   10690         * UIProcess/API/C/WKBackForwardListItem.h:
   10691         * UIProcess/API/qt/qwkhistory.cpp:
   10692         * UIProcess/API/qt/qwkhistory.h:
   10693         
   10694         * UIProcess/WebBackForwardListItem.cpp:
   10695         (WebKit::WebBackForwardListItem::WebBackForwardListItem):
   10696         * UIProcess/WebBackForwardListItem.h:
   10697         (WebKit::WebBackForwardListItem::create):
   10698         (WebKit::WebBackForwardListItem::setBackForwardData):
   10699         (WebKit::WebBackForwardListItem::backForwardData):
   10700         
   10701         * UIProcess/WebProcessProxy.cpp:
   10702         (WebKit::WebProcessProxy::addBackForwardItem):
   10703         * UIProcess/WebProcessProxy.h:
   10704         
   10705         * UIProcess/WebProcessProxy.messages.in:
   10706         
   10707         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   10708         (WebKit::updateBackForwardItem):
   10709 
   10710 2011-01-04  Balazs Kelemen  <kbalazs (a] webkit.org>
   10711 
   10712         Reviewed by Kenneth Rohde Christiansen.
   10713 
   10714         [Qt][WK2] Incomplete clean up on termination
   10715         https://bugs.webkit.org/show_bug.cgi?id=51474
   10716 
   10717         Do not kill the web process to force it's termination.
   10718         Fix object destruction and cleanup logic and make the cleanup more reliable.
   10719         Do not try to cleanup on crash because it is not reliable.
   10720 
   10721         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   10722         (CoreIPC::Connection::platformInvalidate): Do not delete the socket if we
   10723         do not own it. This is the case with a server connection.
   10724         * Platform/qt/MappedMemoryPool.cpp:
   10725         Turn MappedMemoryPool into a QObject so the CleanupHandler can destruct it
   10726         in the same way as the other objects.
   10727         (WebKit::MappedMemoryPool::instance):
   10728         (WebKit::MappedMemoryPool::~MappedMemoryPool):
   10729         * Platform/qt/MappedMemoryPool.h:
   10730         (WebKit::MappedMemoryPool::MappedMemoryPool):
   10731         * Platform/qt/SharedMemoryQt.cpp:
   10732         (WebKit::SharedMemory::create): No need to care about QCoreApplication::aboutToQuit.
   10733         It is handled by the CleanupHandler.
   10734         (WebKit::SharedMemory::~SharedMemory): Ditto.
   10735         * Shared/qt/CleanupHandler.cpp: Renamed from WebKit2/Shared/qt/CrashHandler.cpp.
   10736         No longer try to handle crash but just normal termination.
   10737         (WebKit::CleanupHandler::CleanupHandler): Connect deleteObjects with QCoreApplication::aboutToQuit.
   10738         Ensure appropriate thread affinity.
   10739         (WebKit::CleanupHandler::sigTermHandler): Stop the main event loop.
   10740         (WebKit::CleanupHandler::deleteObjects): Use deleteLater instead of delete since it is more reliable.
   10741         * Shared/qt/CleanupHandler.h: Renamed from WebKit2/Shared/qt/CrashHandler.h.
   10742         (WebKit::CleanupHandler::instance):
   10743         (WebKit::CleanupHandler::markForCleanup):
   10744         (WebKit::CleanupHandler::unmark):
   10745         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   10746         Do not kill the web process immidiately but give it a chance to cleanup.
   10747         Use QLocalServer::removeServer for assuring that the socket file will be removed.
   10748         (WebKit::ProcessLauncherHelper::serverName):
   10749         (WebKit::cleanupAtExit): Renamed from cleanupProcesses. Only kill the web process when it times
   10750         out terminating. Fixed the bug of changing the list while iterating it over by disconnecting
   10751         from the processStateChanged slot.
   10752         (WebKit::QtWebProcess::QtWebProcess): Added missing meta type registration of QProcess::ProcessState.
   10753         (WebKit::ProcessLauncherHelper::~ProcessLauncherHelper):
   10754         (WebKit::ProcessLauncherHelper::ProcessLauncherHelper): No need to add the the instance to the
   10755         CleanupHandler because we will remove the socket file in cleanupAtExit.
   10756         (WebKit::ProcessLauncherHelper::instance):
   10757         (WebKit::ProcessLauncher::terminateProcess):
   10758         * WebKit2.pro:
   10759 
   10760 2011-01-04  Benjamin Poulain  <benjamin.poulain (a] nokia.com>
   10761 
   10762         Reviewed by Kenneth Rohde Christiansen.
   10763 
   10764         [Qt] [WK2] create an initial implementation of the context menu handling for WebKit 2
   10765         https://bugs.webkit.org/show_bug.cgi?id=51825
   10766 
   10767         Implement the necessary methods to get a basic context menu working for Qt.
   10768 
   10769         Only 4 basic WebAction have been added on the UIProcess side: back, forward, stop and reload.
   10770 
   10771         * UIProcess/API/qt/qgraphicswkview.cpp:
   10772         (QGraphicsWKView::QGraphicsWKView):
   10773         (QGraphicsWKView::showContextMenu):
   10774         (QGraphicsWKViewPrivate::QGraphicsWKViewPrivate):
   10775         * UIProcess/API/qt/qgraphicswkview.h:
   10776         * UIProcess/API/qt/qwkpage.cpp:
   10777         (QWKPagePrivate::createContextMenuProxy):
   10778         * UIProcess/API/qt/qwkpage.h:
   10779         * UIProcess/qt/WebContextMenuProxyQt.cpp:
   10780         (WebKit::webActionForContextMenuAction):
   10781         (WebKit::WebContextMenuProxyQt::WebContextMenuProxyQt):
   10782         (WebKit::WebContextMenuProxyQt::create):
   10783         (WebKit::WebContextMenuProxyQt::showContextMenu):
   10784         (WebKit::WebContextMenuProxyQt::hideContextMenu):
   10785         (WebKit::WebContextMenuProxyQt::createContextMenu):
   10786         * UIProcess/qt/WebContextMenuProxyQt.h:
   10787 
   10788 2011-01-03  Yi Shen  <yi.4.shen (a] nokia.com>
   10789 
   10790         Reviewed by Adam Barth.
   10791 
   10792         [Qt] Add SelectAll option to the context menu for the editor
   10793         https://bugs.webkit.org/show_bug.cgi?id=50049
   10794 
   10795         Add WebPlatformStrategies::contextMenuItemTagSelectAll for Qt.
   10796 
   10797         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   10798         (WebKit::WebPlatformStrategies::contextMenuItemTagSelectAll):
   10799         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
   10800 
   10801 2011-01-03  Sam Weinig  <sam (a] webkit.org>
   10802 
   10803         Reviewed by Anders Carlsson.
   10804 
   10805         Ensure that the correct initial focusable area is focused when tabbing
   10806         and shift-tabbing into the WKView.
   10807 
   10808         * UIProcess/API/mac/WKView.mm:
   10809         (-[WKView becomeFirstResponder]): Use the keyViewSelectionDirection to set
   10810         the initial focus.
   10811 
   10812 2011-01-02  Dan Bernstein  <mitz (a] apple.com>
   10813 
   10814         Rubber-stamped by Simon Fraser.
   10815 
   10816         <rdar://problem/8812159> Update copyright strings
   10817 
   10818         * Info.plist:
   10819         * WebProcess/Info.plist:
   10820 
   10821 2011-01-02  Benjamin Poulain  <benjamin.poulain (a] nokia.com>
   10822 
   10823         Reviewed by Csaba Osztrogonc.
   10824 
   10825         WebKit 2 does not build on 64bits with a recent GCC
   10826         https://bugs.webkit.org/show_bug.cgi?id=51754
   10827 
   10828         Change the argument coding for DatabaseDetails to use explicitly the 64 bits type.
   10829 
   10830         * Shared/OriginAndDatabases.h:
   10831         * Shared/WebCoreArgumentCoders.h:
   10832 
   10833 2011-01-02  Csaba Osztrogonc  <ossy (a] webkit.org>
   10834 
   10835         Reviewed by Adam Barth.
   10836 
   10837         Move JavaScriptCore to Source
   10838         https://bugs.webkit.org/show_bug.cgi?id=51604
   10839 
   10840         Workaround until moving all sources to Source directory is finished.
   10841 
   10842         * Scripts/generate-forwarding-headers.pl: Add Sources to searching path for JavaScriptCore.
   10843 
   10844 2011-01-01  Adam Barth  <abarth (a] webkit.org>
   10845 
   10846         Speculative build fix for Qt.  Add some more include paths.
   10847 
   10848         * WebKit2.pro:
   10849 
   10850 2011-01-01  Adam Barth  <abarth (a] webkit.org>
   10851 
   10852         Reviewed by Eric Seidel.
   10853 
   10854         Move JavaScriptCore to Source
   10855         https://bugs.webkit.org/show_bug.cgi?id=51604
   10856 
   10857         * WebKit2.pro:
   10858           - Point to JavaScriptCore in its new location.
   10859 
   10860 2010-12-15  Amruth Raj  <amruthraj (a] motorola.com> and Ravi Kasibhatla  <ravi.kasibhatla (a] motorola.com>
   10861 
   10862         Reviewed by Martin Robinson.
   10863 
   10864         [GTK] Enable building whatever already exists of WebKit2
   10865         https://bugs.webkit.org/show_bug.cgi?id=37369
   10866 
   10867         * GNUmakefile.am: Added. 
   10868         * WebKit2Prefix.h: Included WebCore/config.h for GTK port as the first header
   10869         file for WebKit2 sources files.
   10870         * gtk: Added.
   10871         * gtk/webkit2.pc.in: Added.
   10872 
   10873 2010-12-29  Juha Savolainen  <juha.savolainen (a] weego.fi>
   10874 
   10875         Reviewed by Kenneth Rohde Christiansen.
   10876 
   10877         [Qt] [WK2] Added more webattributes to the qwkpreferences
   10878         https://bugs.webkit.org/show_bug.cgi?id=51697
   10879 
   10880         Added PrivateBrowsingEnabled, DeveloperExtrasEnabled, DnsPrefetchEnabled attributes
   10881 
   10882         * UIProcess/API/qt/qwkpreferences.cpp:
   10883         (QWKPreferences::testAttribute): 
   10884         (QWKPreferences::setAttribute): 
   10885         * UIProcess/API/qt/qwkpreferences.h:
   10886 
   10887 2010-12-27  Sam Weinig  <sam (a] webkit.org>
   10888 
   10889         Reviewed by Anders Carlsson.
   10890 
   10891         WebKit2 snapshots should contain accelerated content
   10892         <rdar://problem/8807393>
   10893         https://bugs.webkit.org/show_bug.cgi?id=51660
   10894 
   10895         When creating a snapshot, flatten the layer tree for painting so that
   10896         accelerated content is included in the snapshot.
   10897 
   10898         * WebProcess/WebPage/WebPage.cpp:
   10899         (WebKit::WebPage::snapshotInViewCoordinates):
   10900         (WebKit::WebPage::snapshotInDocumentCoordinates):
   10901 
   10902 2010-12-27  Daniel Bates  <dbates (a] rim.com>
   10903 
   10904         Attempt to fix the WebKit2 Windows build after changeset 74698
   10905         <http://trac.webkit.org/changeset/74698> (bug #51656).
   10906 
   10907         Add "..\Shared\API\c\WKImage.h" to WebKit2Generated.make.
   10908 
   10909         * win/WebKit2Generated.make:
   10910 
   10911 2010-12-27  Sam Weinig  <sam (a] webkit.org>
   10912 
   10913         Reviewed by Anders Carlsson.
   10914 
   10915         WebKit2: Add API for getting snapshots
   10916         https://bugs.webkit.org/show_bug.cgi?id=51656
   10917 
   10918         * Shared/API/c/WKBase.h:
   10919         * Shared/API/c/WKImage.cpp: Added.
   10920         (WKImageGetTypeID):
   10921         (WKImageCreate):
   10922         (WKImageGetSize):
   10923         * Shared/API/c/WKImage.h: Added.
   10924         * Shared/WebImage.cpp: Added.
   10925         (WebKit::WebImage::create):
   10926         (WebKit::WebImage::size):
   10927         * Shared/WebImage.h: Added.
   10928         (WebKit::WebImage::backingStore):
   10929         (WebKit::WebImage::WebImage):
   10930         (WebKit::WebImage::type):
   10931         Add a general purpose API image class.
   10932 
   10933         * Shared/API/c/cg: Added.
   10934         * Shared/API/c/cg/WKImageCG.cpp: Added.
   10935         (WKImageCreateCGImage):
   10936         * Shared/API/c/cg/WKImageCG.h: Added.
   10937         Add function to convert a WKImageRef to a CGImageRef for platforms that use CG.
   10938 
   10939         * Shared/API/c/WKSharedAPICast.h:
   10940         (WebKit::toFloatRect):
   10941         (WebKit::toIntSize):
   10942         (WebKit::toIntPoint):
   10943         (WebKit::toIntRect):
   10944         (WebKit::toImageOptions):
   10945         Make conversion functions that are ambiguous more explicit.
   10946 
   10947         * Shared/APIObject.h:
   10948         * Shared/BackingStore.h:
   10949         (WebKit::BackingStore::isBackedBySharedMemory):
   10950         * Shared/ImageOptions.h: Added.
   10951         * Shared/UserMessageCoders.h:
   10952         (WebKit::UserMessageEncoder::baseEncode):
   10953         (WebKit::UserMessageDecoder::baseDecode):
   10954         Allow a WKImageRef to be passed in user messages.  Right now, it only
   10955         works if the image is sharable.
   10956 
   10957         * UIProcess/API/C/WKPage.cpp:
   10958         (WKPageScaleWebView):
   10959         * UIProcess/WebUIClient.cpp:
   10960         (WebKit::WebUIClient::windowFrame):
   10961         Use the more explicit conversion function name.
   10962 
   10963         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   10964         (WKBundlePageCreateSnapshotInViewCoordinates):
   10965         (WKBundlePageCreateSnapshotInDocumentCoordinates):
   10966         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   10967         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
   10968         (WKBundlePageOverlaySetNeedsDisplay):
   10969         * WebProcess/WebPage/WebPage.cpp:
   10970         (WebKit::WebPage::snapshotInViewCoordinates):
   10971         (WebKit::WebPage::snapshotInDocumentCoordinates):
   10972         Add function to take the snapshot.
   10973 
   10974         * WebProcess/WebPage/WebPage.h:
   10975         * WebKit2.pro:
   10976         * WebKit2.xcodeproj/project.pbxproj:
   10977         * win/WebKit2.vcproj:
   10978         Add new files.
   10979 
   10980 2010-12-27  Sam Weinig  <sam (a] webkit.org>
   10981 
   10982         Reviewed by Anders Carlsson.
   10983 
   10984         WebKit2: Add additional API for managing databases
   10985         https://bugs.webkit.org/show_bug.cgi?id=51629
   10986 
   10987         - Adds client for the database manager to get notifications
   10988           of changes to databases.
   10989 
   10990         * UIProcess/API/C/WKDatabaseManager.cpp:
   10991         (WKDatabaseManagerSetClient):
   10992         * UIProcess/API/C/WKDatabaseManager.h:
   10993         * UIProcess/WebDatabaseManagerProxy.cpp:
   10994         (WebKit::WebDatabaseManagerProxy::initializeClient):
   10995         (WebKit::WebDatabaseManagerProxy::didModifyOrigin):
   10996         (WebKit::WebDatabaseManagerProxy::didModifyDatabase):
   10997         * UIProcess/WebDatabaseManagerProxy.h:
   10998         * UIProcess/WebDatabaseManagerProxy.messages.in:
   10999         * UIProcess/WebDatabaseManagerProxyClient.cpp: Added.
   11000         (WebKit::WebDatabaseManagerProxyClient::didModifyOrigin):
   11001         (WebKit::WebDatabaseManagerProxyClient::didModifyDatabase):
   11002         * UIProcess/WebDatabaseManagerProxyClient.h: Added.
   11003         * WebKit2.pro:
   11004         * WebKit2.xcodeproj/project.pbxproj:
   11005         * WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
   11006         (WebKit::WebDatabaseManager::WebDatabaseManager):
   11007         (WebKit::WebDatabaseManager::~WebDatabaseManager):
   11008         (WebKit::WebDatabaseManager::dispatchDidModifyOrigin):
   11009         (WebKit::WebDatabaseManager::dispatchDidModifyDatabase):
   11010         * WebProcess/WebCoreSupport/WebDatabaseManager.h:
   11011         * win/WebKit2.vcproj:
   11012 
   11013 2010-12-27  Sam Weinig  <sam (a] webkit.org>
   11014 
   11015         Reviewed by Anders Carlsson.
   11016 
   11017         WebKit2: Add additional API for managing databases
   11018         https://bugs.webkit.org/show_bug.cgi?id=51629
   11019 
   11020         - Adds WKDatabaseManagerGetDatabasesByOrigin, which asynchronously returns
   11021           an array of dictionaries containing details about each origin using 
   11022           databases and details about each database. Keys were added for accessing
   11023           the data in the dictionaries.
   11024         - Adds WKDatabaseManagerDeleteDatabasesWithNameForOrigin to delete a database
   11025           with a specific identifier.
   11026         - Adds WKDatabaseManagerSetQuotaForOrigin to set the quota for an origin.
   11027 
   11028         * Shared/OriginAndDatabases.cpp: Added.
   11029         (WebKit::OriginAndDatabases::encode):
   11030         (WebKit::OriginAndDatabases::decode):
   11031         * Shared/OriginAndDatabases.h: Added.
   11032         * Shared/WebCoreArgumentCoders.h:
   11033         * UIProcess/API/C/WKDatabaseManager.cpp:
   11034         (WKDatabaseManagerGetOriginKey):
   11035         (WKDatabaseManagerGetOriginQuotaKey):
   11036         (WKDatabaseManagerGetOriginUsageKey):
   11037         (WKDatabaseManagerGetDatabaseDetailsKey):
   11038         (WKDatabaseManagerGetDatabaseDetailsNameKey):
   11039         (WKDatabaseManagerGetDatabaseDetailsDisplayNameKey):
   11040         (WKDatabaseManagerGetDatabaseDetailsExpectedUsageKey):
   11041         (WKDatabaseManagerGetDatabaseDetailsCurrentUsageKey):
   11042         (WKDatabaseManagerGetDatabasesByOrigin):
   11043         (callGetDatabasesByOriginBlockAndDispose):
   11044         (WKDatabaseManagerGetDatabasesByOrigin_b):
   11045         (WKDatabaseManagerGetDatabaseOrigins):
   11046         (callGetDatabaseOriginsBlockBlockAndDispose):
   11047         (WKDatabaseManagerGetDatabaseOrigins_b):
   11048         (WKDatabaseManagerDeleteDatabasesWithNameForOrigin):
   11049         (WKDatabaseManagerDeleteDatabasesForOrigin):
   11050         (WKDatabaseManagerDeleteAllDatabases):
   11051         (WKDatabaseManagerSetQuotaForOrigin):
   11052         * UIProcess/API/C/WKDatabaseManager.h:
   11053         * UIProcess/WebDatabaseManagerProxy.cpp:
   11054         (WebKit::WebDatabaseManagerProxy::originKey):
   11055         (WebKit::WebDatabaseManagerProxy::originQuotaKey):
   11056         (WebKit::WebDatabaseManagerProxy::originUsageKey):
   11057         (WebKit::WebDatabaseManagerProxy::databaseDetailsKey):
   11058         (WebKit::WebDatabaseManagerProxy::databaseDetailsNameKey):
   11059         (WebKit::WebDatabaseManagerProxy::databaseDetailsDisplayNameKey):
   11060         (WebKit::WebDatabaseManagerProxy::databaseDetailsExpectedUsageKey):
   11061         (WebKit::WebDatabaseManagerProxy::databaseDetailsCurrentUsageKey):
   11062         (WebKit::WebDatabaseManagerProxy::invalidate):
   11063         (WebKit::WebDatabaseManagerProxy::getDatabasesByOrigin):
   11064         (WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
   11065         (WebKit::WebDatabaseManagerProxy::getDatabaseOrigins):
   11066         (WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins):
   11067         (WebKit::WebDatabaseManagerProxy::deleteDatabaseWithNameForOrigin):
   11068         (WebKit::WebDatabaseManagerProxy::deleteDatabasesForOrigin):
   11069         (WebKit::WebDatabaseManagerProxy::setQuotaForOrigin):
   11070         * UIProcess/WebDatabaseManagerProxy.h:
   11071         * UIProcess/WebDatabaseManagerProxy.messages.in:
   11072         * WebKit2.pro:
   11073         * WebKit2.xcodeproj/project.pbxproj:
   11074         * WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
   11075         (WebKit::WebDatabaseManager::getDatabasesByOrigin):
   11076         (WebKit::WebDatabaseManager::deleteDatabaseWithNameForOrigin):
   11077         (WebKit::WebDatabaseManager::setQuotaForOrigin):
   11078         * WebProcess/WebCoreSupport/WebDatabaseManager.h:
   11079         * WebProcess/WebCoreSupport/WebDatabaseManager.messages.in:
   11080         * win/WebKit2.vcproj:
   11081 
   11082 2010-12-26  Anders Carlsson  <andersca (a] apple.com>
   11083 
   11084         Reviewed by Dan Bernstein.
   11085 
   11086         Rename DrawingAreaMessage and DrawingAreaLegacyMessage and
   11087         DrawingAreaProxyMessage to DrawingAreaProxyLegacyMessage.
   11088 
   11089         * Platform/CoreIPC/MessageID.h:
   11090         * Shared/CoreIPCSupport/DrawingAreaMessageKinds.h:
   11091         * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h:
   11092         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   11093         (WebKit::ChunkedUpdateDrawingAreaProxy::paint):
   11094         (WebKit::ChunkedUpdateDrawingAreaProxy::setPageIsVisible):
   11095         (WebKit::ChunkedUpdateDrawingAreaProxy::update):
   11096         (WebKit::ChunkedUpdateDrawingAreaProxy::sendSetSize):
   11097         (WebKit::ChunkedUpdateDrawingAreaProxy::didReceiveMessage):
   11098         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   11099         (WebKit::LayerBackedDrawingAreaProxy::sizeDidChange):
   11100         (WebKit::LayerBackedDrawingAreaProxy::setPageIsVisible):
   11101         (WebKit::LayerBackedDrawingAreaProxy::update):
   11102         (WebKit::LayerBackedDrawingAreaProxy::didReceiveMessage):
   11103         (WebKit::LayerBackedDrawingAreaProxy::didReceiveSyncMessage):
   11104         * UIProcess/TiledDrawingAreaProxy.cpp:
   11105         (WebKit::TiledDrawingAreaProxy::sizeDidChange):
   11106         (WebKit::TiledDrawingAreaProxy::setPageIsVisible):
   11107         (WebKit::TiledDrawingAreaProxy::didReceiveMessage):
   11108         (WebKit::TiledDrawingAreaProxy::requestTileUpdate):
   11109         (WebKit::TiledDrawingAreaProxy::waitUntilUpdatesComplete):
   11110         (WebKit::TiledDrawingAreaProxy::takeSnapshot):
   11111         (WebKit::TiledDrawingAreaProxy::removeTile):
   11112         * UIProcess/WebPageProxy.cpp:
   11113         (WebKit::WebPageProxy::didReceiveMessage):
   11114         (WebKit::WebPageProxy::didReceiveSyncMessage):
   11115         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   11116         (WebKit::ChunkedUpdateDrawingArea::display):
   11117         (WebKit::ChunkedUpdateDrawingArea::setSize):
   11118         (WebKit::ChunkedUpdateDrawingArea::didReceiveMessage):
   11119         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   11120         (WebKit::LayerBackedDrawingArea::setSize):
   11121         (WebKit::LayerBackedDrawingArea::didReceiveMessage):
   11122         * WebProcess/WebPage/TiledDrawingArea.cpp:
   11123         (WebKit::TiledDrawingArea::display):
   11124         (WebKit::TiledDrawingArea::setSize):
   11125         (WebKit::TiledDrawingArea::updateTile):
   11126         (WebKit::TiledDrawingArea::tileUpdateTimerFired):
   11127         (WebKit::TiledDrawingArea::didReceiveMessage):
   11128         * WebProcess/WebPage/WebPage.cpp:
   11129         (WebKit::WebPage::didReceiveMessage):
   11130         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   11131         (WebKit::LayerBackedDrawingArea::attachCompositingContext):
   11132 
   11133 2010-12-26  Anders Carlsson  <andersca (a] apple.com>
   11134 
   11135         Reviewed by Sam Weinig.
   11136 
   11137         Drawing area cleanup. Remove a bunch of redundant functions that just ended
   11138         up calling setNeedsDisplay.
   11139 
   11140         * UIProcess/DrawingAreaProxy.h:
   11141         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   11142         (WebKit::WebChromeClient::invalidateWindow):
   11143         (WebKit::WebChromeClient::invalidateContentsAndWindow):
   11144         (WebKit::WebChromeClient::invalidateContentsForSlowScroll):
   11145         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   11146         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h:
   11147         * WebProcess/WebPage/DrawingArea.h:
   11148         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   11149         * WebProcess/WebPage/LayerBackedDrawingArea.h:
   11150         * WebProcess/WebPage/TiledDrawingArea.cpp:
   11151         * WebProcess/WebPage/TiledDrawingArea.h:
   11152 
   11153 2010-12-25  Sam Weinig  <sam (a] webkit.org>
   11154 
   11155         Reviewed by Dan Bernstein.
   11156 
   11157         Fill in some more preferences for WebKit2
   11158         https://bugs.webkit.org/show_bug.cgi?id=51610
   11159 
   11160         * Shared/WebPreferencesStore.h:
   11161         * UIProcess/API/C/WKPreferences.cpp:
   11162         (WKPreferencesSetAuthorAndUserStylesEnabled):
   11163         (WKPreferencesGetAuthorAndUserStylesEnabled):
   11164         (WKPreferencesSetWebArchiveDebugModeEnabled):
   11165         (WKPreferencesGetWebArchiveDebugModeEnabled):
   11166         (WKPreferencesSetLocalFileContentSniffingEnabled):
   11167         (WKPreferencesGetLocalFileContentSniffingEnabled):
   11168         (WKPreferencesSetPageCacheEnabled):
   11169         (WKPreferencesGetPageCacheEnabled):
   11170         (WKPreferencesSetPaginateDuringLayoutEnabled):
   11171         (WKPreferencesGetPaginateDuringLayoutEnabled):
   11172         (WKPreferencesSetDOMPasteAllowedEnabled):
   11173         (WKPreferencesGetDOMPasteAllowedEnabled):
   11174         * UIProcess/API/C/WKPreferences.h:
   11175         * UIProcess/API/C/WKPreferencesPrivate.h:
   11176         * WebProcess/WebPage/WebPage.cpp:
   11177         (WebKit::WebPage::updatePreferences):
   11178         Pipe through some more preferences.
   11179 
   11180 2010-12-24  Dan Bernstein  <mitz (a] apple.com>
   11181 
   11182         Reviewed by Alexey Proskuryakov.
   11183 
   11184         REGRESSION (r74648): XHR layout test failures
   11185         https://bugs.webkit.org/show_bug.cgi?id=51603
   11186 
   11187         Reverted r74648.
   11188 
   11189         * UIProcess/WebPageProxy.cpp:
   11190         (WebKit::WebPageProxy::didReceiveAuthenticationChallenge):
   11191         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   11192         (WebKit::WebFrameLoaderClient::shouldUseCredentialStorage):
   11193         * WebProcess/mac/WebProcessMainMac.mm:
   11194         (WebKit::WebProcessMain):
   11195 
   11196 2010-12-24  Simon Fraser  <simon.fraser (a] apple.com>
   11197 
   11198         Fix the Qt build after r74650.
   11199 
   11200         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   11201 
   11202 2010-12-24  Benjamin Poulain  <ikipou (a] gmail.com>
   11203 
   11204         Reviewed by Darin Adler.
   11205 
   11206         [Qt] [WK2] WebKit 2 does not build on mac, missing reference to RetainPtr
   11207         https://bugs.webkit.org/show_bug.cgi?id=51598
   11208 
   11209         Fix the build, add the missing header.
   11210 
   11211         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   11212 
   11213 2010-12-24  Dan Bernstein  <mitz (a] apple.com>
   11214 
   11215         Reviewed by Anders Carlsson.
   11216 
   11217         <rdar://problem/8758386> The web process uses its own credential storage
   11218         https://bugs.webkit.org/show_bug.cgi?id=51599
   11219 
   11220         * UIProcess/WebPageProxy.cpp:
   11221         (WebKit::WebPageProxy::didReceiveAuthenticationChallenge): Try to answer the challenge using
   11222         the UI processs credential storage first.
   11223         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   11224         (WebKit::WebFrameLoaderClient::shouldUseCredentialStorage): Prevent the web process from using
   11225         its own credential storage.
   11226         * WebProcess/mac/WebProcessMainMac.mm:
   11227         (WebKit::WebProcessMain): Ditto.
   11228 
   11229 2010-12-23  Dan Bernstein  <mitz (a] apple.com>
   11230 
   11231         Reviewed by Sam Weinig.
   11232 
   11233         Make dragging work again after r74591.
   11234 
   11235         * UIProcess/WebPageProxy.cpp:
   11236         (WebKit::WebPageProxy::didReceiveEvent): Fixed a typo.
   11237 
   11238 2010-12-23  Jessie Berlin  <jberlin (a] apple.com>
   11239 
   11240         Reviewed by Sam Weinig.
   11241 
   11242         Need WebKit2 API to create a SecurityOrigin from protocol, host, and port
   11243         https://bugs.webkit.org/show_bug.cgi?id=51563
   11244 
   11245         Add WKSecurityOriginCreate(WKStringRef protocol, WKStringRef host, int port).
   11246 
   11247         * Shared/API/c/WKSecurityOrigin.cpp:
   11248         (WKSecurityOriginCreateFromIdentifier):
   11249         Renamed so as not to clash with the new WKSecurityOriginCreate.
   11250         (WKSecurityOriginCreate):
   11251         * Shared/API/c/WKSecurityOrigin.h:
   11252         * Shared/WebSecurityOrigin.h:
   11253         (WebKit::WebSecurityOrigin::create):
   11254 
   11255 2010-12-23  Anders Carlsson  <andersca (a] apple.com>
   11256 
   11257         Reviewed by Simon Fraser.
   11258 
   11259         Ensure that we are not getting too many mouse move events
   11260         https://bugs.webkit.org/show_bug.cgi?id=51568
   11261         <rdar://problem/7881470>
   11262         <rdar://problem/8735512>
   11263 
   11264         Implement throttling of mouse move events.
   11265 
   11266         * UIProcess/WebPageProxy.cpp:
   11267         (WebKit::WebPageProxy::WebPageProxy):
   11268         Initialize m_processingMouseMoveEvent to false.
   11269 
   11270         (WebKit::WebPageProxy::handleMouseEvent):
   11271         If we're already processing a mouse move events, just update 
   11272         m_nextMouseMoveEvent and return.
   11273  
   11274         (WebKit::WebPageProxy::didReceiveEvent):
   11275         If we received a mouse move event, send the next mouse move event if there is one.
   11276 
   11277 2010-12-23  Brian Weinstein  <bweinstein (a] apple.com>
   11278 
   11279         Reviewed by Anders Carlsson.
   11280 
   11281         Assertion when loading www.yahoo.com in WebKit2 under decodeResourceRequest
   11282         https://bugs.webkit.org/show_bug.cgi?id=51562
   11283         
   11284         Don't assert that our data reference isn't empty when we try to get the data from it.
   11285         If it is empty, just return 0.
   11286         
   11287         All callers are safe with this function returning 0.
   11288 
   11289         * Platform/CoreIPC/DataReference.h:
   11290         (CoreIPC::DataReference::data): Change the assert to an early return.
   11291         * Shared/cf/ArgumentCodersCF.cpp:
   11292         (CoreIPC::decode): Add an assert, and remove a ternarny operator because the function now does
   11293             this for us (if the data is empty, return 0).
   11294 
   11295 2010-12-23  Sam Weinig  <sam (a] webkit.org>
   11296 
   11297         Fix incorrect assertion causing all pages with subframes to crash.
   11298 
   11299         * UIProcess/WebFrameProxy.cpp:
   11300         (WebKit::WebFrameProxy::appendChild):
   11301 
   11302 2010-12-23  Anders Carlsson  <andersca (a] apple.com>
   11303 
   11304         Reviewed by Darin Adler.
   11305 
   11306         Clean up the selection handling code
   11307         https://bugs.webkit.org/show_bug.cgi?id=51550
   11308 
   11309         * Shared/SelectionState.h: Added.
   11310         Add SelectionState class which hold information about the current selection.
   11311 
   11312         * UIProcess/API/mac/PageClientImpl.h:
   11313         * UIProcess/API/mac/PageClientImpl.mm:
   11314         Remove selectionChanged function.
   11315 
   11316         * UIProcess/API/mac/WKView.mm:
   11317         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
   11318         Remove all the selection related state; it lives in the WebPageProxy object now.
   11319         
   11320         (-[WKView insertText:]):
   11321         (-[WKView selectedRange]):
   11322         (-[WKView hasMarkedText]):
   11323         Get the selection information from the WebPageProxy.
   11324 
   11325         * UIProcess/API/mac/WKViewInternal.h:
   11326         Remove _selectionChanged declaration.
   11327 
   11328         * UIProcess/PageClient.h:
   11329         Remove selectionChanged functions.
   11330 
   11331         * UIProcess/WebPageProxy.cpp:
   11332         (WebKit::WebPageProxy::selectionStateChanged):
   11333         Update the selection state.
   11334 
   11335         * UIProcess/WebPageProxy.h:
   11336         (WebKit::WebPageProxy::selectionState):
   11337         Return the selection state.
   11338 
   11339         * UIProcess/WebPageProxy.messages.in:
   11340         Add SelectionStateChanged message.
   11341 
   11342         * UIProcess/win/WebView.cpp:
   11343         (WebKit::WebView::WebView):
   11344         Remove all the selection related state; it lives in the WebPageProxy object now.
   11345 
   11346         (WebKit::WebView::compositionSelectionChanged):
   11347         (WebKit::WebView::onIMEComposition):
   11348         (WebKit::WebView::onIMEEndComposition):
   11349         (WebKit::WebView::onIMERequestCharPosition):
   11350         (WebKit::WebView::onIMERequest):
   11351         Get the selection information from the WebPageProxy.
   11352         
   11353         * WebKit2.xcodeproj/project.pbxproj:
   11354         Add SelectionState.h
   11355 
   11356         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   11357         (WebKit::WebEditorClient::respondToChangedSelection):
   11358         Send a SelectionStateChanged message with the updated state.
   11359 
   11360         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
   11361         Remove mac specific code.
   11362 
   11363         * WebProcess/WebPage/WebPage.cpp:
   11364         (WebKit::WebPage::getLocationAndLengthFromRange):
   11365         Rename this function from convertRangeToPlatformRange and move it out of WebPageMac.mm
   11366 
   11367         * WebProcess/WebPage/mac/WebPageMac.mm:
   11368         (WebKit::WebPage::getMarkedRange):
   11369         (WebKit::WebPage::characterIndexForPoint):
   11370         Call getLocationAndLengthFromRange.
   11371 
   11372         * win/WebKit2.vcproj:
   11373         Add SelectionState.h
   11374 
   11375 2010-12-23  Darin Adler  <darin (a] apple.com>
   11376 
   11377         Reviewed by Sam Weinig.
   11378 
   11379         WKView should not try to do asynchronous validation for selectors that are not editor commands
   11380         https://bugs.webkit.org/show_bug.cgi?id=51555
   11381 
   11382         * UIProcess/API/mac/WKView.mm:
   11383         (-[WKView validateUserInterfaceItem:]): Removed the special case for startSpeaking.
   11384         Added call to commandIsSupportedFromMenuOrKeyBinding so we only try to do validation
   11385         for commands that are supported. Tweaked comments and added some bug numbers.
   11386         (-[WKView _setUserInterfaceItemState:enabled:state:]): Tweaked comment and added
   11387         bug number.
   11388 
   11389 2010-12-23  Sam Weinig  <sam (a] webkit.org>
   11390 
   11391         Reviewed by Anders Carlsson.
   11392 
   11393         <rdar://problem/8799032>
   11394         REGRESSION(r74436) Crash opening many pages with WebKit2
   11395 
   11396         * Shared/cf/ArgumentCodersCF.cpp:
   11397         (CoreIPC::decode):
   11398         Fix paste-o. Decode into a CFDataRef not a CFDictionaryRef
   11399         when decoding CFDataRefs.
   11400 
   11401 2010-12-22  Sam Weinig  <sam (a] webkit.org>
   11402 
   11403         Reviewed by Darin Adler.
   11404 
   11405         WebKit2 needs to mirror the frame tree in the UIProcess
   11406         https://bugs.webkit.org/show_bug.cgi?id=51546
   11407 
   11408         * UIProcess/API/C/WKFrame.cpp:
   11409         (WKFrameCopyChildFrames):
   11410         * UIProcess/API/C/WKFrame.h:
   11411         Add API to get the child frames of a frame.
   11412 
   11413         * UIProcess/WebFrameProxy.cpp:
   11414         (WebKit::WebFrameProxy::WebFrameProxy):
   11415         (WebKit::WebFrameProxy::disconnect):
   11416         (WebKit::WebFrameProxy::appendChild):
   11417         (WebKit::WebFrameProxy::removeChild):
   11418         (WebKit::WebFrameProxy::isDescendantOf):
   11419         (WebKit::WebFrameProxy::dumpFrameTree):
   11420         (WebKit::WebFrameProxy::didRemoveFromHierarchy):
   11421         (WebKit::WebFrameProxy::childFrames):
   11422         * UIProcess/WebFrameProxy.h:
   11423         (WebKit::WebFrameProxy::parentFrame): Add getter.
   11424         (WebKit::WebFrameProxy::nextSibling): Add getter.
   11425         (WebKit::WebFrameProxy::previousSibling): Add getter.
   11426         (WebKit::WebFrameProxy::firstChild): Add getter.
   11427         (WebKit::WebFrameProxy::lastChild): Add getter.
   11428         Make frames keep track of their subframes.
   11429 
   11430         * UIProcess/WebPageProxy.cpp:
   11431         (WebKit::WebPageProxy::didCreateSubframe):
   11432         Use the now passed parentID to insert the frame into the hierarchy
   11433 
   11434         (WebKit::WebPageProxy::didSaveFrameToPageCache):
   11435         When a frame is added to the page cache, remove it from the hierarchy.
   11436 
   11437         (WebKit::WebPageProxy::didRestoreFrameFromPageCache):
   11438         When a frame is restored from the page cache, add it back to the hierarchy.
   11439 
   11440         (WebKit::WebPageProxy::didRemoveFrameFromHierarchy):
   11441         Detached frames should also be removed from the hierarchy.
   11442 
   11443         * UIProcess/WebPageProxy.h:
   11444         Add new declarations for didSaveFrameToPageCache and didRestoreFrameFromPageCache.
   11445 
   11446         * UIProcess/WebPageProxy.messages.in:
   11447         Add messages for DidSaveFrameToPageCache and DidRestoreFrameFromPageCache.
   11448 
   11449         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   11450         (WebKit::WebFrameLoaderClient::savePlatformDataToCachedFrame): 
   11451         (WebKit::WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
   11452         Remove notImplemented, there is no work we need to do here.
   11453 
   11454         (WebKit::WebFrameLoaderClient::didSaveToPageCache): 
   11455         (WebKit::WebFrameLoaderClient::didRestoreFromPageCache):
   11456         Send message to UIProcess to indicate this happened.
   11457         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   11458 
   11459         * WebProcess/WebPage/WebFrame.cpp:
   11460         (WebKit::WebFrame::createSubframe):
   11461         Send parent frameID in addition to our own in the message to UIProcess.
   11462 
   11463 2010-12-23  Anders Carlsson  <andersca (a] apple.com>
   11464 
   11465         Reviewed by Sam Weinig.
   11466 
   11467         New popup windows open disproportionately big
   11468         https://bugs.webkit.org/show_bug.cgi?id=51547
   11469         <rdar://problem/8637029>
   11470 
   11471         * UIProcess/WebPageProxy.cpp:
   11472         (WebKit::WebPageProxy::createNewPage):
   11473         Pass the correct size back to the UI process.
   11474 
   11475         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   11476         (WebKit::WebChromeClient::pageRect):
   11477         Implement this and return the size of the page.
   11478 
   11479 2010-12-23  Anders Carlsson  <andersca (a] apple.com>
   11480 
   11481         Reviewed by John Sullivan.
   11482 
   11483         Nothing happens clicking "launch live player" on live.cnn.com
   11484         https://bugs.webkit.org/show_bug.cgi?id=51540
   11485         <rdar://problem/8791086>
   11486 
   11487         Implement NPN_PushPopupsEnabledState/NPN_PopPopupsEnabledState.
   11488 
   11489         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   11490         (WebKit::NPN_PushPopupsEnabledState):
   11491         Call NetscapePlugin::pushPopupsEnabledState.
   11492 
   11493         (WebKit::NPN_PopPopupsEnabledState):
   11494         Call NetscapePlugin::popPopupsEnabledState.
   11495 
   11496         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   11497         (WebKit::NetscapePlugin::pushPopupsEnabledState):
   11498         Append the boolean to the vector.
   11499 
   11500         (WebKit::NetscapePlugin::popPopupsEnabledState):
   11501         Remove the last boolean from the vector.
   11502 
   11503         (WebKit::NetscapePlugin::allowPopups):
   11504         Return the last boolean from the vector.
   11505 
   11506         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   11507         * WebProcess/Plugins/PluginView.cpp:
   11508         (WebKit::PluginView::performJavaScriptURLRequest):
   11509         Update the "allowPopupsFromPlugin" state.
   11510 
   11511 2010-12-22  Anders Carlsson  <andersca (a] apple.com>
   11512 
   11513         Reviewed by Sam Weinig.
   11514 
   11515         Webkit2: WebProcess crashes when Private browsing is turned on on yahoo.com
   11516         https://bugs.webkit.org/show_bug.cgi?id=51516
   11517         <rdar://problem/8766995>
   11518 
   11519         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   11520         (WebKit::NetscapePlugin::NPP_SetValue):
   11521         Add a null check for NPP_SetValue.
   11522 
   11523 2010-12-22  Anders Carlsson  <andersca (a] apple.com>
   11524 
   11525         Reviewed by Sam Weinig.
   11526 
   11527         REGRESSION (WK2): Plugins swallow CMD-W, CMD-Q, and probably other shortcuts
   11528         https://bugs.webkit.org/show_bug.cgi?id=51515
   11529         <rdar://problem/8740926>
   11530 
   11531         Always return false for keyboard events where the command key is down.
   11532 
   11533         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   11534         (WebKit::NetscapePlugin::platformHandleKeyboardEvent):
   11535 
   11536 2010-12-22  Sam Weinig  <sam (a] webkit.org>
   11537 
   11538         Reviewed by Darin Adler.
   11539 
   11540         WebProcess should be terminated if invalid frameIDs are
   11541         passed to the UIProcess.
   11542         https://bugs.webkit.org/show_bug.cgi?id=51508
   11543 
   11544         - Introduce a mechanism to mark a messages as invalid due to
   11545           reasons other than in ability to decode the message, eg. an
   11546           invalid frameID is passed in a message.
   11547 
   11548         * Platform/CoreIPC/Connection.cpp:
   11549         (CoreIPC::Connection::Connection):
   11550         (CoreIPC::Connection::markCurrentlyDispatchedMessageAsInvalid): Sets
   11551         the m_didReceiveInvalidMessage bit so that it can be picked up in 
   11552         (CoreIPC::Connection::dispatchMessages): Check for m_didReceiveInvalidMessage in
   11553         addition to tainted arguments.
   11554         * Platform/CoreIPC/Connection.h:
   11555         Add base macro for others to extend, that calls markCurrentlyDispatchedMessageAsInvalid()
   11556         ASSERTs, and returns.
   11557 
   11558         * UIProcess/WebPageProxy.cpp:
   11559         Add Message checks for all WebFrameProxy's gotten from frameIDs passed
   11560         over the wire.
   11561         * UIProcess/WebProcessProxy.cpp:
   11562         (WebKit::isGoodMapKey):
   11563         Checks that the key can be inserted safely into a map (eg. not the empty or deleted value).
   11564 
   11565         (WebKit::WebProcessProxy::webFrame):
   11566         Return null for bad keys (eg. 0 or -1).
   11567 
   11568         (WebKit::WebProcessProxy::canCreateFrame):
   11569         Added. Checks that the ID is good and not in the map yet. Used
   11570         as a consistency check before creating frames.
   11571 
   11572         (WebKit::WebProcessProxy::frameCreated): 
   11573         ASSERT that the key is good, in addition to not in the map yet.
   11574 
   11575         (WebKit::WebProcessProxy::didDestroyFrame):
   11576         ASSERT that the key is good.
   11577 
   11578         * UIProcess/WebProcessProxy.h:
   11579         Move WebFrameProxy HashMap type into a typedef.
   11580 
   11581 2010-12-22  Darin Adler  <darin (a] apple.com>
   11582 
   11583         Reviewed by Anders Carlsson.
   11584 
   11585         WebKit2 needs a way to return the main resource data
   11586         https://bugs.webkit.org/show_bug.cgi?id=51510
   11587 
   11588         * UIProcess/API/C/WKFrame.cpp:
   11589         (WKFrameGetMainResourceData): Added.
   11590         (callGetMainResourceDataBlockAndDispose): Added.
   11591         (WKFrameGetMainResourceData_b): Added.
   11592         * UIProcess/API/C/WKFrame.h: Added WKFrameGetMainResourceData.
   11593 
   11594         * UIProcess/WebFrameProxy.cpp:
   11595         (WebKit::WebFrameProxy::getMainResourceData): Added.
   11596         * UIProcess/WebFrameProxy.h: Ditto.
   11597 
   11598         * UIProcess/WebPageProxy.cpp:
   11599         (WebKit::WebPageProxy::getMainResourceDataOfFrame): Added.
   11600         (WebKit::WebPageProxy::dataCallback): Replaced the individual callbacks
   11601         with just these two.
   11602         (WebKit::WebPageProxy::stringCallback): Ditto.
   11603         * UIProcess/WebPageProxy.h: Ditto.
   11604         * UIProcess/WebPageProxy.messages.in: Ditto.
   11605 
   11606         * WebProcess/WebPage/WebPage.cpp:
   11607         (WebKit::WebPage::runJavaScriptInMainFrame): Send the string callback
   11608         message instead of a specific one.
   11609         (WebKit::WebPage::getContentsAsString): Ditto.
   11610         (WebKit::WebPage::getRenderTreeExternalRepresentation): Ditto.
   11611         (WebKit::WebPage::getSelectionOrContentsAsString): Ditto.
   11612         (WebKit::WebPage::getSourceForFrame): Ditto.
   11613         (WebKit::WebPage::getMainResourceDataOfFrame): Added.
   11614         (WebKit::WebPage::getWebArchiveOfFrame): Send the data callback message
   11615         instead of a specific one.
   11616         * WebProcess/WebPage/WebPage.h: Added getMainResourceDataOfFrame.
   11617         * WebProcess/WebPage/WebPage.messages.in: Ditto.
   11618 
   11619 2010-12-22  Darin Adler  <darin (a] apple.com>
   11620 
   11621         * WebProcess/WebPage/WebPage.cpp: Add #if to try to fix non-Mac builds.
   11622 
   11623 2010-12-22  Darin Adler  <darin (a] apple.com>
   11624 
   11625         Reviewed by Anders Carlsson.
   11626 
   11627         Make Speech menu items work in WebKit2
   11628         https://bugs.webkit.org/show_bug.cgi?id=51504
   11629 
   11630         * UIProcess/API/C/WKFrame.cpp:
   11631         (WKFrameGetWebArchive): Updated to use new-named typedef.
   11632         * UIProcess/API/C/WKPage.cpp:
   11633         (WKPageRunJavaScriptInMainFrame): Ditto.
   11634         (WKPageRenderTreeExternalRepresentation): Ditto.
   11635         (WKPageGetSourceForFrame): Ditto.
   11636         (WKPageGetContentsAsString): Ditto.
   11637 
   11638         * UIProcess/API/mac/WKView.mm:
   11639         (menuItem): Added. Helper function to make it easy to call menu item
   11640         functions on arbitrary user interface items.
   11641         (toolbarItem): Ditto.
   11642         (-[WKView validateUserInterfaceItem:]): Added validation for startSpeaking
   11643         and stopSpeaking commands. Reworked the code to fix a bug where
   11644         toggleContinuousSpellChecking would always be enabled even when it should
   11645         be disabled. Reworked the asynchronous validation code so it works for
   11646         items other than menu items and can also handle more than one item for the
   11647         same command. Added some comments.
   11648         (speakString): Added. Helper function to be used as a callback when we
   11649         get the selection or contents to speak.
   11650         (-[WKView startSpeaking:]): Added. Uses getSelectionOrContentsAsString.
   11651         (-[WKView stopSpeaking:]): Added.
   11652         (-[WKView _setUserInterfaceItemState:enabled:state:]): Reworked to work
   11653         with the changes to validateUserInterfaceItem above.
   11654 
   11655         * UIProcess/WebFrameProxy.cpp:
   11656         (WebKit::WebFrameProxy::isDisplayingMarkupDocument): Added a FIXME about
   11657         a problem I noticed.
   11658         (WebKit::WebFrameProxy::didCommitLoad): Tweaked argument name.
   11659         (WebKit::WebFrameProxy::getWebArchive): Changed to use new-named typedef.
   11660         * UIProcess/WebFrameProxy.h: Changed WebArchiveCallback to DataCallaback.
   11661 
   11662         * UIProcess/WebPageProxy.cpp:
   11663         (WebKit::WebPageProxy::close): Invalidate the two callback maps since
   11664         we only have two now.
   11665         (WebKit::WebPageProxy::runJavaScriptInMainFrame): Changed to use merged
   11666         maps and typedefs so we don't need a separate callback map for each function.
   11667         (WebKit::WebPageProxy::getRenderTreeExternalRepresentation): Ditto.
   11668         (WebKit::WebPageProxy::getSourceForFrame): Ditto.
   11669         (WebKit::WebPageProxy::getContentsAsString): Ditto.
   11670         (WebKit::WebPageProxy::getSelectionOrContentsAsString): Added.
   11671         (WebKit::WebPageProxy::getWebArchiveOfFrame): Ditto.
   11672         (WebKit::WebPageProxy::didGetContentsAsString): Ditto.
   11673         (WebKit::WebPageProxy::didGetSelectionOrContentsAsString): Ditto.
   11674         (WebKit::WebPageProxy::didRunJavaScriptInMainFrame): Ditto.
   11675         (WebKit::WebPageProxy::didGetRenderTreeExternalRepresentation): Ditto.
   11676         (WebKit::WebPageProxy::didGetSourceForFrame): Ditto.
   11677         (WebKit::WebPageProxy::didGetWebArchiveOfFrame): Ditto.
   11678         (WebKit::WebPageProxy::processDidCrash): Ditto.
   11679 
   11680         * UIProcess/WebPageProxy.h: Updated for changes above.
   11681 
   11682         * UIProcess/WebPageProxy.messages.in: Added DidGetSelectionOrContentsAsString,
   11683         GetIsSpeaking, Speak, and StopSpeaking.
   11684 
   11685         * UIProcess/mac/WebPageProxyMac.mm:
   11686         (WebKit::WebPageProxy::getIsSpeaking): Added.
   11687         (WebKit::WebPageProxy::speak): Added.
   11688         (WebKit::WebPageProxy::stopSpeaking): Added.
   11689 
   11690         * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
   11691         (WebKit::WebContextMenuClient::isSpeaking): Call WebPage instead of doing
   11692         the work directly, so it can run in the UI process.
   11693         (WebKit::WebContextMenuClient::speak): Ditto.
   11694         (WebKit::WebContextMenuClient::stopSpeaking): Ditto.
   11695         (WebKit::WebContextMenuClient::searchWithSpotlight): Added FIXME comment and
   11696         changed code to avoid a C-style cast.
   11697 
   11698         * WebProcess/WebPage/WebFrame.cpp:
   11699         (WebKit::WebFrame::selectionAsString): Added.
   11700         * WebProcess/WebPage/WebFrame.h: Ditto.
   11701 
   11702         * WebProcess/WebPage/WebPage.cpp:
   11703         (WebKit::WebPage::changeAcceleratedCompositingMode): Use sendSync in the
   11704         modern way instead of explicitly calling WebProcess.
   11705         (WebKit::WebPage::getSelectionOrContentsAsString): Added.
   11706         (WebKit::WebPage::isSpeaking): Added.
   11707         (WebKit::WebPage::speak): Added.
   11708         (WebKit::WebPage::stopSpeaking): Added.
   11709         * WebProcess/WebPage/WebPage.h: Added functions.
   11710 
   11711         * WebProcess/WebPage/WebPage.messages.in: Added GetSelectionOrContentsAsString.
   11712 
   11713 2010-12-22  Anders Carlsson  <andersca (a] apple.com>
   11714 
   11715         Fix build.
   11716 
   11717         * Platform/mac/MachUtilities.cpp:
   11718 
   11719 2010-12-22  Anders Carlsson  <andersca (a] apple.com>
   11720 
   11721         Reviewed by Darin Adler.
   11722 
   11723         Detect WebProcess crashes sooner, without waiting for ReportCrash to finish
   11724         https://bugs.webkit.org/show_bug.cgi?id=51505
   11725 
   11726         * Platform/CoreIPC/CoreIPCMessageKinds.h:
   11727         Add SetExceptionPort.
   11728 
   11729         * Platform/CoreIPC/mac/ConnectionMac.cpp:
   11730         (CoreIPC::Connection::platformInvalidate):
   11731         If we have an exception port, unregister it.
   11732 
   11733         (CoreIPC::Connection::platformInitialize):
   11734         Set m_exceptionPort to null.
   11735 
   11736         (CoreIPC::Connection::open):
   11737         If we have an exception port, register an event handler for it and send it over
   11738         to the other side.
   11739 
   11740         (CoreIPC::Connection::receiveSourceEventHandler):
   11741         Handle the SetExceptionPort message.
   11742 
   11743         (CoreIPC::Connection::exceptionSourceEventHandler):
   11744         Receive the message, forward it to the real exception handler and call connectionDidClose.
   11745 
   11746         (CoreIPC::Connection::setShouldCloseConnectionOnMachExceptions):
   11747         Create an exception port.
   11748 
   11749         * Platform/mac/MachUtilities.cpp:
   11750         (machExceptionPort):
   11751         (setMachExceptionPort):
   11752         * Platform/mac/MachUtilities.h:
   11753         Add helper functions for getting and setting the mach exception port.
   11754 
   11755         * UIProcess/WebProcessProxy.cpp:
   11756         (WebKit::WebProcessProxy::didFinishLaunching):
   11757         Call setShouldCloseConnectionOnMachExceptions on Mac.
   11758 
   11759 2010-12-22  Anders Carlsson  <andersca (a] apple.com>
   11760 
   11761         Reviewed by Sam Weinig.
   11762 
   11763         Move Mach message receiving code out into a new function
   11764         https://bugs.webkit.org/show_bug.cgi?id=51502
   11765 
   11766         * Platform/CoreIPC/mac/ConnectionMac.cpp:
   11767         (CoreIPC::readFromMachPort):
   11768         (CoreIPC::Connection::receiveSourceEventHandler):
   11769 
   11770 2010-12-22  Jeff Miller  <jeffm (a] apple.com>
   11771 
   11772         Reviewed by Sam Weinig.
   11773 
   11774         InjectedBundle methods should  use the relative URL constructor for KURL instead of the ParsedURLStringTag version
   11775         https://bugs.webkit.org/show_bug.cgi?id=51491
   11776         
   11777         The url passed to various InjectedBundle methods is not from KURL::string(), i.e. it has not already been parsed by KURL,
   11778         so we have to use the relative URL constructor for KURL instead of the ParsedURLStringTag version.
   11779 
   11780         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   11781         (WebKit::InjectedBundle::addUserScript):
   11782         (WebKit::InjectedBundle::addUserStyleSheet):
   11783         (WebKit::InjectedBundle::removeUserScript):
   11784         (WebKit::InjectedBundle::removeUserStyleSheet):
   11785 
   11786 2010-12-22  Darin Adler  <darin (a] apple.com>
   11787 
   11788         Reviewed by Sam Weinig.
   11789 
   11790         Move more of WebPageProxy::didCommitLoadForFrame into WebFrameProxy::didCommitLoad.
   11791 
   11792         * UIProcess/WebFrameProxy.cpp:
   11793         (WebKit::WebFrameProxy::didCommitLoad): Added type and certificate info arguments,
   11794         and set m_MIMEType, m_isFrameSet, and m_certificateInfo.
   11795         * UIProcess/WebFrameProxy.h: Removed setMIMEType and setCertificateInfo and added
   11796         arguments to didCommitLoad.
   11797         * UIProcess/WebPageProxy.cpp:
   11798         (WebKit::WebPageProxy::didCommitLoadForFrame): Removed code that is now inside the
   11799         WebFrameProxy::didCommitLoad function.
   11800 
   11801 2010-12-21  Darin Adler  <darin (a] apple.com>
   11802 
   11803         Reviewed by Brady Eidson and Sam Weinig.
   11804 
   11805         Add a way to get a web archive in WebKit2
   11806         https://bugs.webkit.org/show_bug.cgi?id=51437
   11807 
   11808         * UIProcess/API/C/WKFrame.cpp:
   11809         (WKFrameGetWebArchive): Added.
   11810         (callGetWebArchiveBlockAndDispose): Added.
   11811         (WKFrameGetWebArchive_b): Added.
   11812         * UIProcess/API/C/WKFrame.h: Added functions above.
   11813         * UIProcess/WebPageProxy.cpp:
   11814         (WebKit::WebPageProxy::close): Clear out m_webArchiveCallbacks.
   11815         (WebKit::WebPageProxy::getWebArchiveOfFrame): Added.
   11816         (WebKit::WebPageProxy::didGetWebArchiveOfFrame): Added.
   11817         (WebKit::WebPageProxy::processDidCrash): Clear out m_webArchiveCallbacks.
   11818         * UIProcess/WebPageProxy.h: Added functions above.
   11819         * UIProcess/WebPageProxy.messages.in: Added DidGetWebArchiveOfFrame.
   11820         * WebProcess/WebPage/WebPage.cpp:
   11821         (WebKit::WebPage::getWebArchiveOfFrame): Added.
   11822         * WebProcess/WebPage/WebPage.h: Added function above.
   11823         * WebProcess/WebPage/WebPage.messages.in: Added GetWebArchiveOfFrame.
   11824 
   11825 2010-12-21  Siddharth Mathur  <siddharth.mathur (a] nokia.com>
   11826 
   11827         Reviewed by Laszlo Gombos.
   11828 
   11829         [Qt] [WK2] Guard gcc-specific syntax
   11830 
   11831         * WebKit2.pro: Non-gcc based compliers choke on the "-include" 
   11832         syntax for preinclude, make sure it has guard around it.
   11833 
   11834 2010-12-21  Anders Carlsson  <andersca (a] apple.com>
   11835 
   11836         Reviewed by Darin Adler.
   11837 
   11838         Can't stop QT music on santastreefarm.com
   11839         https://bugs.webkit.org/show_bug.cgi?id=51438
   11840         <rdar://problem/8741152>
   11841 
   11842         Implement NPN_ConvertPoint.
   11843 
   11844         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   11845         (WebKit::NPN_ConvertPoint):
   11846         Call NetscapePlugin::convertPoint.
   11847 
   11848         (WebKit::initializeBrowserFuncs):
   11849         Only initialize NPN_ConvertPoint and NPN_PopUpContextMenu on Mac.
   11850 
   11851         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   11852         (WebKit::NetscapePlugin::convertPoint):
   11853         Implement conversion routines.
   11854 
   11855         (WebKit::NetscapePlugin::windowAndViewFramesChanged):
   11856         Keep track of the window and view frames, they are needed to do coordinate conversion.
   11857 
   11858 2010-12-21  Sam Weinig  <weinig (a] apple.com>
   11859 
   11860         Reviewed by Anders Carlsson.
   11861 
   11862         Implement encoding/decoding of ResourceRequest and 
   11863         ResourceResponse for Windows/CFNetwork.
   11864 
   11865         * Shared/win/WebCoreArgumentCodersWin.cpp:
   11866         (CoreIPC::encodeResourceRequest):
   11867         (CoreIPC::decodeResourceRequest):
   11868         (CoreIPC::encodeResourceResponse):
   11869         (CoreIPC::decodeResourceResponse):
   11870         * win/WebKit2.vcproj:
   11871         * win/WebKit2Common.vsprops:
   11872 
   11873 2010-12-21  Darin Adler  <darin (a] apple.com>
   11874 
   11875         Reviewed by Sam Weinig.
   11876 
   11877         Mac WebKit delivers an extra didCommit when loading web archives
   11878         https://bugs.webkit.org/show_bug.cgi?id=51419
   11879 
   11880         * UIProcess/WebFrameProxy.cpp:
   11881         (WebKit::WebFrameProxy::didStartProvisionalLoad): Added assertions so we catch
   11882         inconsistencies here instead of at the application level. Later, we will have
   11883         to decide what to do in cases these assertions fail. The right policy is probably
   11884         to consider it a web process failure and do whatever we do for those.
   11885         (WebKit::WebFrameProxy::didReceiveServerRedirectForProvisionalLoad): Ditto.
   11886         (WebKit::WebFrameProxy::didFailProvisionalLoad): Ditto.
   11887         (WebKit::WebFrameProxy::didCommitLoad): Ditto.
   11888         (WebKit::WebFrameProxy::didFinishLoad): Ditto.
   11889         (WebKit::WebFrameProxy::didFailLoad): Ditto.
   11890 
   11891 2010-12-21  Anders Carlsson  <andersca (a] apple.com>
   11892 
   11893         Fix Snow Leopard build.
   11894 
   11895         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   11896         (WebKit::NPN_GetValue):
   11897 
   11898 2010-12-21  Anders Carlsson  <andersca (a] apple.com>
   11899 
   11900         Reviewed by Dan Bernstein.
   11901 
   11902         Fix crash when a Carbon plug-in fails to initialize correctly
   11903         https://bugs.webkit.org/show_bug.cgi?id=51415
   11904 
   11905         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   11906         (WebKit::NPN_GetValue):
   11907         Don't claim to support the QuickDraw event model.
   11908 
   11909         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   11910         (WebKit::NetscapePlugin::platformDestroy):
   11911         Only try to remove the window from the map if it's not null.
   11912 
   11913 2010-12-21  Anders Carlsson  <andersca (a] apple.com>
   11914 
   11915         Reviewed by Darin Adler.
   11916 
   11917         Add ArgumentCoder support for CFDataRef
   11918         https://bugs.webkit.org/show_bug.cgi?id=51412
   11919 
   11920         * Shared/cf/ArgumentCodersCF.cpp:
   11921         (CoreIPC::typeFromCFTypeRef):
   11922         (CoreIPC::encode):
   11923         (CoreIPC::decode):
   11924         * Shared/cf/ArgumentCodersCF.h:
   11925 
   11926 2010-12-21  Anders Carlsson  <andersca (a] apple.com>
   11927 
   11928         Reviewed by John Sullivan.
   11929 
   11930         Clicking missing plug-in text does not show a sheet
   11931         https://bugs.webkit.org/show_bug.cgi?id=51403
   11932 
   11933         * UIProcess/API/C/WKPage.h:
   11934         Add missingPluginButtonClicked to WKPageUIClient.
   11935 
   11936         * UIProcess/WebPageProxy.cpp:        
   11937         (WebKit::WebPageProxy::missingPluginButtonClicked):
   11938         Call the WebUIClient member function.
   11939 
   11940         * UIProcess/WebPageProxy.messages.in:
   11941         Add MissingPluginButtonClicked message.
   11942 
   11943         * UIProcess/WebUIClient.cpp:
   11944         (WebKit::WebUIClient::missingPluginButtonClicked):
   11945         Call the WKPageUIClient callback.
   11946 
   11947         * UIProcess/WebUIClient.h:
   11948         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   11949         (WebKit::WebChromeClient::shouldMissingPluginMessageBeButton):
   11950         Always return true for now.
   11951 
   11952         (WebKit::WebChromeClient::missingPluginButtonClicked):
   11953         Send a MissingPluginButtonClicked message.
   11954 
   11955 2010-12-21  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   11956 
   11957         Reviewed by Andreas Kling.
   11958 
   11959         [Qt] Set BUILDING_QT__ consistently
   11960         https://bugs.webkit.org/show_bug.cgi?id=51341
   11961 
   11962         * WebKit2.pro: Remove the definition of BUILDING_QT__ as it
   11963         is already defined in WebKit.pri.
   11964 
   11965 2010-12-20  Sam Weinig  <sam (a] webkit.org>
   11966 
   11967         Reviewed by Anders Carlsson.
   11968 
   11969         WebKit2: Add resource load client API
   11970         https://bugs.webkit.org/show_bug.cgi?id=51370
   11971 
   11972         This just pipes through the basic resource load client data.
   11973 
   11974         * UIProcess/API/C/WKPage.cpp:
   11975         (WKPageSetPageResourceLoadClient):
   11976         * UIProcess/API/C/WKPage.h:
   11977         * UIProcess/WebPageProxy.cpp:
   11978         (WebKit::WebPageProxy::initializeResourceLoadClient):
   11979         (WebKit::WebPageProxy::didInitiateLoadForResource):
   11980         (WebKit::WebPageProxy::didSendRequestForResource):
   11981         (WebKit::WebPageProxy::didReceiveResponseForResource):
   11982         (WebKit::WebPageProxy::didReceiveContentLengthForResource):
   11983         (WebKit::WebPageProxy::didFinishLoadForResource):
   11984         (WebKit::WebPageProxy::didFailLoadForResource):
   11985         * UIProcess/WebPageProxy.h:
   11986         * UIProcess/WebPageProxy.messages.in:
   11987         * UIProcess/WebResourceLoadClient.cpp: Added.
   11988         (WebKit::WebResourceLoadClient::didInitiateLoadForResource):
   11989         (WebKit::WebResourceLoadClient::didSendRequestForResource):
   11990         (WebKit::WebResourceLoadClient::didReceiveResponseForResource):
   11991         (WebKit::WebResourceLoadClient::didReceiveContentLengthForResource):
   11992         (WebKit::WebResourceLoadClient::didFinishLoadForResource):
   11993         (WebKit::WebResourceLoadClient::didFailLoadForResource):
   11994         * UIProcess/WebResourceLoadClient.h: Added.
   11995         * WebKit2.pro:
   11996         * WebKit2.xcodeproj/project.pbxproj:
   11997         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   11998         (WebKit::WebFrameLoaderClient::assignIdentifierToInitialRequest):
   11999         (WebKit::WebFrameLoaderClient::dispatchWillSendRequest):
   12000         (WebKit::WebFrameLoaderClient::dispatchDidReceiveResponse):
   12001         (WebKit::WebFrameLoaderClient::dispatchDidReceiveContentLength):
   12002         (WebKit::WebFrameLoaderClient::dispatchDidFinishLoading):
   12003         (WebKit::WebFrameLoaderClient::dispatchDidFailLoading):
   12004         * win/WebKit2.vcproj:
   12005 
   12006 2010-12-20  Anders Carlsson  <andersca (a] apple.com>
   12007 
   12008         Reviewed by Sam Weinig.
   12009 
   12010         Add a TextChecker class, hook up spelling and grammar toggling
   12011         https://bugs.webkit.org/show_bug.cgi?id=51363
   12012 
   12013         * UIProcess/API/mac/WKView.mm:
   12014         (-[WKView validateUserInterfaceItem:]):
   12015         (-[WKView toggleContinuousSpellChecking:]):
   12016         (-[WKView toggleGrammarChecking:]):
   12017         * UIProcess/TextChecker.h: Added.
   12018         * UIProcess/WebPageProxy.cpp:
   12019         (WebKit::WebPageProxy::unmarkAllMisspellings):
   12020         (WebKit::WebPageProxy::unmarkAllBadGrammar):
   12021         * UIProcess/WebPageProxy.h:
   12022         * UIProcess/mac/TextCheckerMac.mm: Added.
   12023         (WebKit::TextChecker::isContinuousSpellCheckingAllowed):
   12024         (WebKit::TextChecker::isContinuousSpellCheckingEnabled):
   12025         (WebKit::TextChecker::setContinuousSpellCheckingEnabled):
   12026         (WebKit::TextChecker::isGrammarCheckingEnabled):
   12027         (WebKit::TextChecker::setGrammarCheckingEnabled):
   12028         * UIProcess/qt/TextCheckerQt.cpp: Added.
   12029         (WebKit::TextChecker::isContinuousSpellCheckingAllowed):
   12030         (WebKit::TextChecker::isContinuousSpellCheckingEnabled):
   12031         (WebKit::TextChecker::setContinuousSpellCheckingEnabled):
   12032         (WebKit::TextChecker::isGrammarCheckingEnabled):
   12033         (WebKit::TextChecker::setGrammarCheckingEnabled):
   12034         * UIProcess/win/TextCheckerWin.cpp: Added.
   12035         (WebKit::TextChecker::isContinuousSpellCheckingAllowed):
   12036         (WebKit::TextChecker::isContinuousSpellCheckingEnabled):
   12037         (WebKit::TextChecker::setContinuousSpellCheckingEnabled):
   12038         (WebKit::TextChecker::isGrammarCheckingEnabled):
   12039         (WebKit::TextChecker::setGrammarCheckingEnabled):
   12040         * WebKit2.pro:
   12041         * WebKit2.xcodeproj/project.pbxproj:
   12042         * WebProcess/WebPage/WebPage.cpp:
   12043         (WebKit::WebPage::unmarkAllMisspellings):
   12044         (WebKit::WebPage::unmarkAllBadGrammar):
   12045         * WebProcess/WebPage/WebPage.h:
   12046         * WebProcess/WebPage/WebPage.messages.in:
   12047         * win/WebKit2.vcproj:
   12048 
   12049 2010-12-20  Anders Carlsson  <andersca (a] apple.com>
   12050 
   12051         Reviewed by Sam Weinig.
   12052 
   12053         Flash plug-in does not work on YouTube video page when accelerated compositing is disabled
   12054         https://bugs.webkit.org/show_bug.cgi?id=51348
   12055         <rdar://problem/8787667>
   12056 
   12057         * Platform/CoreIPC/HandleMessage.h:
   12058         (CoreIPC::callMemberFunction):
   12059         Add new overload.
   12060 
   12061         * PluginProcess/PluginControllerProxy.cpp:
   12062         (WebKit::PluginControllerProxy::create):
   12063         (WebKit::PluginControllerProxy::PluginControllerProxy):
   12064         These now take an additional isAcceleratedCompositingEnabled parameter.
   12065 
   12066         (WebKit::PluginControllerProxy::isAcceleratedCompositingEnabled):
   12067         Return m_isAcceleratedCompositingEnabled.
   12068 
   12069         * PluginProcess/PluginControllerProxy.h:
   12070         * PluginProcess/WebProcessConnection.cpp:
   12071         (WebKit::WebProcessConnection::createPlugin):
   12072         This now takes an additional isAcceleratedCompositingEnabled parameter.
   12073 
   12074         * PluginProcess/WebProcessConnection.messages.in:
   12075         Add isAcceleratedCompositingEnabled parameter to the CreatePlugin message.
   12076 
   12077         * WebProcess/Plugins/PluginProxy.cpp:
   12078         (WebKit::PluginProxy::initialize):
   12079         Pass isAcceleratedCompositingEnabled when sending the CreatePlugin message.
   12080 
   12081 2010-12-20  Anders Carlsson  <andersca (a] apple.com>
   12082 
   12083         Unreviewed, rolling out r74345.
   12084         http://trac.webkit.org/changeset/74345
   12085         https://bugs.webkit.org/show_bug.cgi?id=51115
   12086 
   12087         Not the correct fix.
   12088 
   12089         * Platform/CoreIPC/Connection.h:
   12090         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   12091         (CoreIPC::Connection::open):
   12092 
   12093 2010-12-20  Balazs Kelemen  <kbalazs (a] webkit.org>
   12094 
   12095         Reviewed by Kenneth Rohde Christiansen.
   12096 
   12097         [Qt][WK2] Crash in web process after the connection had been closed
   12098         https://bugs.webkit.org/show_bug.cgi?id=51115
   12099 
   12100         Do not call connectionDidClose with a connection that has been explicitly
   12101         invalidated on the listener thread.
   12102         * Platform/CoreIPC/Connection.h:
   12103         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   12104         (CoreIPC::Connection::disconnectHandler): Added.
   12105         (CoreIPC::Connection::open):
   12106 
   12107 2010-12-19  Dan Bernstein  <mitz (a] apple.com>
   12108 
   12109         Reviewed by Sam Weinig.
   12110 
   12111         Improve the fix for <rdar://problem/8769525>.
   12112 
   12113         * UIProcess/API/mac/WKView.mm:
   12114         (-[WKView performKeyEquivalent:]): Do not retain the view. Doing so is necessary in
   12115         -[WebHTMLView performKeyEquivalent:], which this method was based upon, but not here, because
   12116         there is no way for the web process to cause the WKView to be released while it is handling
   12117         the event.
   12118 
   12119 2010-12-19  Dan Bernstein  <mitz (a] apple.com>
   12120 
   12121         Reviewed by Sam Weinig.
   12122 
   12123         <rdar://problem/8769525> WKView leak when performing key equivalents
   12124         https://bugs.webkit.org/show_bug.cgi?id=51315
   12125 
   12126         * UIProcess/API/mac/WKView.mm:
   12127         (-[WKView performKeyEquivalent:]): Use a RetainPtr to ensure that the view is released in the
   12128         early return code path.
   12129 
   12130 2010-12-19  Benjamin Poulain  <benjamin.poulain (a] nokia.com>
   12131 
   12132         Reviewed by Kenneth Rohde Christiansen.
   12133 
   12134         [Qt] [WK2] QWKPagePrivate::paint() does not need to save the graphics context
   12135         https://bugs.webkit.org/show_bug.cgi?id=51300
   12136 
   12137         Remove the unnecessary save() and restore() on the QPainter.
   12138 
   12139         * UIProcess/API/qt/qwkpage.cpp:
   12140         (QWKPagePrivate::paint):
   12141 
   12142 2010-12-19  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>
   12143 
   12144         Reviewed by Andreas Kling.
   12145 
   12146         [Qt] [WK2] Client are expected to render their own background for WebPages
   12147         https://bugs.webkit.org/show_bug.cgi?id=51296
   12148 
   12149         Remove the rendering of the checkerboard from the tiled DrawingAreaProxy
   12150 
   12151         * UIProcess/TiledDrawingAreaProxy.cpp:
   12152         (WebKit::TiledDrawingAreaProxy::paint):
   12153         * UIProcess/TiledDrawingAreaTile.h:
   12154         * UIProcess/qt/TiledDrawingAreaTileQt.cpp:
   12155 
   12156 2010-12-19  Benjamin Poulain  <benjamin.poulain (a] nokia.com>
   12157 
   12158         Reviewed by Kenneth Rohde Christiansen.
   12159 
   12160         [Qt] [WK2] Client are expected to render their own background for WebPages
   12161         https://bugs.webkit.org/show_bug.cgi?id=51296
   12162 
   12163         Do not render a white background before rendering the page with DrawingAreaProxy.
   12164 
   12165         * UIProcess/API/qt/qwkpage.cpp:
   12166         (QWKPagePrivate::paint):
   12167 
   12168 2010-12-17  Darin Adler  <darin (a] apple.com>
   12169 
   12170         Reviewed by Dan Bernstein.
   12171 
   12172         Window title for image documents shows corrupted characters instead of multiplication sign when using WebKit2
   12173         https://bugs.webkit.org/show_bug.cgi?id=43505
   12174 
   12175         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: Changed UI_STRING macros to return
   12176         WebCore::String objects instead of C strings.
   12177         (WebKit::formatLocalizedString): Added. Uses the Core Foundation string formatting function for
   12178         reasons explained in the comment.
   12179         (WebKit::WebPlatformStrategies::multipleFileUploadText): Use formatLocalizedString instead of
   12180         String::format.
   12181         (WebKit::WebPlatformStrategies::imageTitle): Ditto.
   12182         (WebKit::WebPlatformStrategies::localizedMediaTimeDescription): Ditto.
   12183 
   12184 2010-12-17  Anders Carlsson  <andersca (a] apple.com>
   12185 
   12186         Reviewed by Sam Weinig.
   12187 
   12188         Resizing a WKView while loading a page can leave the page at a size that doesn't match the window
   12189         https://bugs.webkit.org/show_bug.cgi?id=51282
   12190         <rdar://problem/8133142>
   12191 
   12192         Fix a race condition in waitForMessage. If we time out on the wait condition, we would keep the
   12193         m_waitForMessageMutex mutex unlocked for a brief period of time before taking the lock again and
   12194         then removing the messageID/destinationID pair from the hash map. Under some circumstances, the
   12195         connection queue would update the hash map right before we removed it, leading to a lost message.
   12196         
   12197         * Platform/CoreIPC/Connection.cpp:
   12198         (CoreIPC::Connection::waitForMessage):
   12199 
   12200 2010-12-17  Anders Carlsson  <andersca (a] apple.com>
   12201 
   12202         Reviewed by Simon Fraser.
   12203 
   12204         Clean up ChunkedUpdateDrawingAreaProxy
   12205         https://bugs.webkit.org/show_bug.cgi?id=51277
   12206 
   12207         Get rid of m_lastSetViewSize since it was always equal to m_size.
   12208 
   12209         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   12210         (WebKit::ChunkedUpdateDrawingAreaProxy::sizeDidChange):
   12211         Call sendSetSize().
   12212 
   12213         (WebKit::ChunkedUpdateDrawingAreaProxy::didSetSize):
   12214         Call sendSetSize if the size differs.
   12215 
   12216         (WebKit::ChunkedUpdateDrawingAreaProxy::sendSetSize):
   12217         Move code from sizeDidChange over here.
   12218 
   12219         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   12220         * UIProcess/DrawingAreaProxy.cpp:
   12221         (WebKit::DrawingAreaProxy::setSize):
   12222         Add back the early return if the sizes are equal.
   12223 
   12224 2010-12-17  Brent Fulgham  <bfulgham (a] webkit.org>
   12225 
   12226         Unreviewed build fix.
   12227 
   12228         * WebProcess/WebPage/win/WebPageWin.cpp:
   12229         (WebKit::WebPage::canHandleRequest): Provide alternative for
   12230         non-CFNetwork implementation.
   12231 
   12232 2010-12-17  Ada Chan  <adachan (a] apple.com>
   12233 
   12234         Reviewed by Anders Carlsson.
   12235 
   12236         Implement WKView::setInitialFocus().
   12237         https://bugs.webkit.org/show_bug.cgi?id=51274
   12238 
   12239         * UIProcess/API/C/win/WKView.cpp:
   12240         (WKViewSetInitialFocus):
   12241         * UIProcess/API/C/win/WKView.h:
   12242         * UIProcess/WebPageProxy.cpp:
   12243         (WebKit::WebPageProxy::setInitialFocus): Send message to the Web Process to set
   12244         initial focus.
   12245         * UIProcess/WebPageProxy.h:
   12246         * UIProcess/win/WebView.cpp:
   12247         (WebKit::WebView::setInitialFocus):
   12248         * UIProcess/win/WebView.h:
   12249         * WebProcess/WebPage/WebPage.cpp:
   12250         (WebKit::WebPage::setInitialFocus): Set the focused node to null initially.  Then
   12251         ask FocusController to set the initial focus based on the focus direction.
   12252         * WebProcess/WebPage/WebPage.h:
   12253         * WebProcess/WebPage/WebPage.messages.in: Add a new message for SetInitialFocus.
   12254 
   12255 2010-12-17  Anders Carlsson  <andersca (a] apple.com>
   12256 
   12257         Reviewed by Sam Weinig.
   12258 
   12259         Remove a check that probably uncovered a resizing bug.
   12260 
   12261         * UIProcess/DrawingAreaProxy.cpp:
   12262         (WebKit::DrawingAreaProxy::setSize):
   12263 
   12264 2010-12-17  Brian Weinstein  <bweinstein (a] apple.com>
   12265 
   12266         Qt build fix.
   12267 
   12268         * UIProcess/qt/WebPopupMenuProxyQt.h:
   12269 
   12270 2010-12-17  Brian Weinstein  <bweinstein (a] apple.com>
   12271 
   12272         Reviewed by Anders Carlsson.
   12273 
   12274         Text area does not update when you arrow through a <select> in WebKit2
   12275         https://bugs.webkit.org/show_bug.cgi?id=51269
   12276         <rdar://problem/8612853>
   12277         
   12278         Patch by Sam Weinig.
   12279         
   12280         Insteaed of keeping track of the selected index of a <select> just in the UI process, we
   12281         need to pass this information along to the web process so that the web process can draw
   12282         the correct text in the text field at the top of the select, when the selection changes (via
   12283         the arrows or other typing while the select is opened).
   12284         
   12285         When the selected item in a popup changes, the UI process sends a message to the web process, telling
   12286         it about the new selected index. The web process gets this message, and then sets the text that
   12287         is visible in the select element.
   12288 
   12289         * UIProcess/API/mac/PageClientImpl.h: CreatePopupMenuProxy now takes a WebPageProxy.
   12290         * UIProcess/API/mac/PageClientImpl.mm:
   12291         (WebKit::PageClientImpl::createPopupMenuProxy): Pass the WebPageProxy to create.
   12292         * UIProcess/API/qt/qwkpage.cpp:
   12293         (QWKPagePrivate::createPopupMenuProxy):
   12294         * UIProcess/API/qt/qwkpage_p.h: CreatePopupMenuProxy now takes a WebPageProxy.
   12295         * UIProcess/PageClient.h: CreatePopupMenuProxy now takes a WebPageProxy.
   12296         * UIProcess/WebPageProxy.cpp:
   12297         (WebKit::WebPageProxy::valueChangedForPopupMenu): Send that the selected index changed to the 
   12298             web process.selected
   12299         (WebKit::WebPageProxy::setTextFromItemForPopupMenu): Send that we should update the text for the
   12300             active popup menu (with the index of the item to show).
   12301         (WebKit::WebPageProxy::showPopupMenu): Pass the WebPageProxy to createPopupMenuProxy.
   12302         * UIProcess/WebPageProxy.h:
   12303         * UIProcess/WebPopupMenuProxy.h: Add a client who has virtual functions for the state changing of the
   12304             popup menu. ShowPopupMenu doesn't take a new selected index anymore, that is handled by the client,
   12305             and calling down to the web process.
   12306         (WebKit::WebPopupMenuProxy::Client::~Client):
   12307         (WebKit::WebPopupMenuProxy::WebPopupMenuProxy): Initialize the client.
   12308         * UIProcess/mac/WebPopupMenuProxyMac.h:
   12309         (WebKit::WebPopupMenuProxyMac::create): Takes a WebPopupMenuProxy::Client, and passes it to the constructor.
   12310         * UIProcess/mac/WebPopupMenuProxyMac.mm:
   12311         (WebKit::WebPopupMenuProxyMac::WebPopupMenuProxyMac): Update what's initialized by the constructor.
   12312         (WebKit::WebPopupMenuProxyMac::showPopupMenu): Call through to the web process that the value changed.
   12313         * UIProcess/qt/WebPopupMenuProxyQt.cpp:
   12314         (WebKit::WebPopupMenuProxyQt::WebPopupMenuProxyQt): Update what's initialized by the constructor.
   12315         * UIProcess/win/WebPopupMenuProxyWin.cpp:
   12316         (WebKit::WebPopupMenuProxyWin::WebPopupMenuProxyWin): Ditto.
   12317         (WebKit::WebPopupMenuProxyWin::showPopupMenu): Call through to the web process that the value changed.
   12318         (WebKit::WebPopupMenuProxyWin::setFocusedIndex): Resolve a FIXME to set the text of the popup menu.
   12319         * UIProcess/win/WebPopupMenuProxyWin.h:
   12320         (WebKit::WebPopupMenuProxyWin::create): Take in a WebPopupMenuProxy::client, and pass it to the constructor.
   12321         * UIProcess/win/WebView.cpp:
   12322         (WebKit::WebView::createPopupMenuProxy): Pass the WebPageProxy to create.
   12323         * UIProcess/win/WebView.h:
   12324         * WebProcess/WebCoreSupport/WebPopupMenu.cpp:
   12325         (WebKit::WebPopupMenu::setTextForIndex): Call through to setTextFromItem to set the select text.
   12326         * WebProcess/WebCoreSupport/WebPopupMenu.h:
   12327         * WebProcess/WebPage/WebPage.cpp: Call through to setTextForIndex on the active popup menu.
   12328         (WebKit::WebPage::setTextForActivePopupMenu):
   12329         * WebProcess/WebPage/WebPage.h:
   12330         * WebProcess/WebPage/WebPage.messages.in: Add a new message.
   12331 
   12332 2010-12-17  Anders Carlsson  <andersca (a] apple.com>
   12333 
   12334         Reviewed by Sam Weinig.
   12335 
   12336         DrawingAreaProxy::setSize shouldn't be a virtual member function
   12337         https://bugs.webkit.org/show_bug.cgi?id=51275
   12338 
   12339         Add a pure virtual sizeDidChange member function to DrawingAreaProxy, and only
   12340         call it if the size changes.
   12341 
   12342         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   12343         (WebKit::ChunkedUpdateDrawingAreaProxy::sizeDidChange):
   12344         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   12345         * UIProcess/DrawingAreaProxy.cpp:
   12346         (WebKit::DrawingAreaProxy::setSize):
   12347         * UIProcess/DrawingAreaProxy.h:
   12348         (WebKit::DrawingAreaProxy::size):
   12349         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   12350         (WebKit::LayerBackedDrawingAreaProxy::sizeDidChange):
   12351         * UIProcess/LayerBackedDrawingAreaProxy.h:
   12352         * UIProcess/TiledDrawingAreaProxy.cpp:
   12353         (WebKit::TiledDrawingAreaProxy::sizeDidChange):
   12354         * UIProcess/TiledDrawingAreaProxy.h:
   12355 
   12356 2010-12-17  Anders Carlsson  <andersca (a] apple.com>
   12357 
   12358         Reviewed by Sam Weinig.
   12359 
   12360         Add a WebPageProxy parameter to the DrawingAreaProxy constructor
   12361         https://bugs.webkit.org/show_bug.cgi?id=51271
   12362 
   12363         * UIProcess/API/mac/WKView.mm:
   12364         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
   12365         (-[WKView _switchToDrawingAreaTypeIfNecessary:DrawingAreaInfo::]):
   12366         * UIProcess/API/qt/qgraphicswkview.cpp:
   12367         (QGraphicsWKView::QGraphicsWKView):
   12368         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   12369         (WebKit::ChunkedUpdateDrawingAreaProxy::create):
   12370         (WebKit::ChunkedUpdateDrawingAreaProxy::ChunkedUpdateDrawingAreaProxy):
   12371         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   12372         * UIProcess/DrawingAreaProxy.cpp:
   12373         (WebKit::DrawingAreaProxy::DrawingAreaProxy):
   12374         * UIProcess/DrawingAreaProxy.h:
   12375         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   12376         (WebKit::LayerBackedDrawingAreaProxy::create):
   12377         (WebKit::LayerBackedDrawingAreaProxy::LayerBackedDrawingAreaProxy):
   12378         * UIProcess/LayerBackedDrawingAreaProxy.h:
   12379         * UIProcess/TiledDrawingAreaProxy.cpp:
   12380         (WebKit::TiledDrawingAreaProxy::create):
   12381         (WebKit::TiledDrawingAreaProxy::TiledDrawingAreaProxy):
   12382         * UIProcess/TiledDrawingAreaProxy.h:
   12383         * UIProcess/win/WebView.cpp:
   12384         (WebKit::WebView::WebView):
   12385         (WebKit::WebView::switchToDrawingAreaTypeIfNecessary):
   12386 
   12387 2010-12-17  Dan Bernstein  <mitz (a] apple.com>
   12388 
   12389         Reviewed by Darin Adler.
   12390 
   12391         Add API for "Always Use the Complex Text Code Path"
   12392         https://bugs.webkit.org/show_bug.cgi?id=51265
   12393 
   12394         * Shared/WebProcessCreationParameters.cpp:
   12395         (WebKit::WebProcessCreationParameters::WebProcessCreationParameters): Initialize shouldAlwaysUseComplexTextCodePath.
   12396         (WebKit::WebProcessCreationParameters::encode): Encode shouldAlwaysUseComplexTextCodePath.
   12397         (WebKit::WebProcessCreationParameters::decode): Decode shouldAlwaysUseComplexTextCodePath.
   12398         * Shared/WebProcessCreationParameters.h:
   12399         * UIProcess/API/C/WKContext.cpp: 
   12400         (_WKContextSetAlwaysUsesComplexTextCodePath): Added.
   12401         * UIProcess/API/C/WKContextPrivate.h:
   12402         * UIProcess/WebContext.cpp:
   12403         (WebKit::WebContext::WebContext): Initialize m_alwaysUsesComplexTextCodePath.
   12404         (WebKit::WebContext::ensureWebProcess): Set shouldAlwaysUseComplexTextCodePath in the creation parameters.
   12405         (WebKit::WebContext::setAlwaysUsesComplexTextCodePath): Added. Sets m_alwaysUsesComplexTextCodePath and
   12406         sends a message to the WebProcess.
   12407         * UIProcess/WebContext.h:
   12408         * WebProcess/WebProcess.cpp:
   12409         (WebKit::WebProcess::initializeWebProcess): Call setAlwaysUsesComplexTextCodePath() based on the creation
   12410         parameters.
   12411         (WebKit::WebProcess::setAlwaysUsesComplexTextCodePath): Added.
   12412         * WebProcess/WebProcess.h:
   12413         * WebProcess/WebProcess.messages.in: Added SetAlwaysUsesComplexTextCodePath.
   12414 
   12415 2010-12-17  Sam Weinig  <sam (a] webkit.org>
   12416 
   12417         Reviewed by Darin Adler.
   12418 
   12419         WebKit2: Implement a title attribute per frame
   12420         https://bugs.webkit.org/show_bug.cgi?id=51266
   12421 
   12422         Cache the title of each frame on the WebFrameProxy. Removes
   12423         the WebPageProxy's cache of the main frame title to just
   12424         access the main frame.
   12425 
   12426         We clear the cached title on new committed loads and on failures
   12427         to load.
   12428 
   12429         * UIProcess/API/C/WKFrame.cpp:
   12430         (WKFrameCopyTitle):
   12431         * UIProcess/API/C/WKFrame.h:
   12432         * UIProcess/WebFrameProxy.cpp:
   12433         (WebKit::WebFrameProxy::didCommitLoad):
   12434         (WebKit::WebFrameProxy::didFailLoad):
   12435         (WebKit::WebFrameProxy::didChangeTitle):
   12436         * UIProcess/WebFrameProxy.h:
   12437         (WebKit::WebFrameProxy::title):
   12438         * UIProcess/WebPageProxy.cpp:
   12439         (WebKit::WebPageProxy::close):
   12440         (WebKit::WebPageProxy::pageTitle):
   12441         (WebKit::WebPageProxy::didReceiveTitleForFrame):
   12442         (WebKit::WebPageProxy::processDidCrash):
   12443         * UIProcess/WebPageProxy.h:
   12444 
   12445 2010-12-16  Darin Adler  <darin (a] apple.com>
   12446 
   12447         Reviewed by Maciej Stachowiak.
   12448 
   12449         Add text encoding menu API for WebKit2
   12450         https://bugs.webkit.org/show_bug.cgi?id=51226
   12451 
   12452         * UIProcess/API/C/WKPage.cpp:
   12453         (WKPageSupportsTextEncoding): Added.
   12454         (WKPageCopyCustomTextEncodingName): Added.
   12455         (WKPageSetCustomTextEncodingName): Added.
   12456         * UIProcess/API/C/WKPage.h: Added the functions above.
   12457 
   12458         * UIProcess/WebPageProxy.cpp:
   12459         (WebKit::WebPageProxy::WebPageProxy): Initialize
   12460         m_mainFrameHasCustomRepresentation to false.
   12461         (WebKit::WebPageProxy::supportsTextEncoding): Added.
   12462         (WebKit::WebPageProxy::setCustomTextEncodingName): Added.
   12463         (WebKit::WebPageProxy::didCommitLoadForFrame): Set
   12464         m_mainFrameHasCustomRepresentation.
   12465 
   12466         * UIProcess/WebPageProxy.h: Added supportsTextEncoding,
   12467         setCustomTextEncodingName, customTextEncodingName, and
   12468         m_mainFrameHasCustomRepresentation.
   12469 
   12470         * UIProcess/WebPageProxy.messages.in: Tweaked formatting
   12471         (added a blank line).
   12472 
   12473         * WebProcess/WebPage/WebPage.cpp:
   12474         (WebKit::WebPage::setCustomTextEncodingName): Added.
   12475         * WebProcess/WebPage/WebPage.h: Added setCustomTextEncodingName.
   12476 
   12477         * WebProcess/WebPage/WebPage.messages.in: Added the
   12478         SetCustomTextEncodingName message. Tweaked formatting of the
   12479         dummy message.
   12480 
   12481 2010-12-17  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   12482 
   12483         Unreviewed, rolling out r74201.
   12484         http://trac.webkit.org/changeset/74201
   12485         https://bugs.webkit.org/show_bug.cgi?id=51248
   12486 
   12487         It broke ~6000 layout tests (Requested by Ossy_ on #webkit).
   12488 
   12489         * UIProcess/API/qt/qgraphicswkview.cpp:
   12490         (QGraphicsWKView::setGeometry):
   12491         (QGraphicsWKView::itemChange):
   12492 
   12493 2010-12-16  Sam Weinig  <sam (a] webkit.org>
   12494 
   12495         Reviewed by Darin Adler.
   12496 
   12497         Add svn:eol-style native to the message.in files as a favor to Darin Adler.
   12498 
   12499         * PluginProcess/PluginControllerProxy.messages.in: Added property svn:eol-style.
   12500         * PluginProcess/PluginProcess.messages.in: Added property svn:eol-style.
   12501         * PluginProcess/WebProcessConnection.messages.in: Added property svn:eol-style.
   12502         * Shared/Plugins/NPObjectMessageReceiver.messages.in: Added property svn:eol-style.
   12503         * UIProcess/Downloads/DownloadProxy.messages.in: Added property svn:eol-style.
   12504         * UIProcess/Plugins/PluginProcessProxy.messages.in: Added property svn:eol-style.
   12505         * UIProcess/WebContext.messages.in: Added property svn:eol-style.
   12506         * UIProcess/WebDatabaseManagerProxy.messages.in: Added property svn:eol-style.
   12507         * UIProcess/WebInspectorProxy.messages.in: Added property svn:eol-style.
   12508         * UIProcess/WebPageProxy.messages.in: Added property svn:eol-style.
   12509         * UIProcess/WebProcessProxy.messages.in: Added property svn:eol-style.
   12510         * WebProcess/Authentication/AuthenticationManager.messages.in: Added property svn:eol-style.
   12511         * WebProcess/Plugins/PluginProxy.messages.in: Added property svn:eol-style.
   12512         * WebProcess/WebCoreSupport/WebDatabaseManager.messages.in: Added property svn:eol-style.
   12513         * WebProcess/WebPage/WebInspector.messages.in: Added property svn:eol-style.
   12514         * WebProcess/WebPage/WebPage.messages.in: Added property svn:eol-style.
   12515         * WebProcess/WebProcess.messages.in: Added property svn:eol-style.
   12516 
   12517 2010-12-16  Sam Weinig  <sam (a] webkit.org>
   12518 
   12519         Reviewed by Anders Carlsson.
   12520 
   12521         Move NSURLCache initialization from the ProcessLauncherMac to the centralized
   12522         WebContext initialize WebProcess mechanism.
   12523 
   12524         * Shared/WebProcessCreationParameters.cpp:
   12525         (WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
   12526         (WebKit::WebProcessCreationParameters::encode):
   12527         (WebKit::WebProcessCreationParameters::decode):
   12528         * Shared/WebProcessCreationParameters.h:
   12529         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   12530         (WebKit::ProcessLauncher::launchProcess):
   12531         * UIProcess/mac/WebContextMac.mm:
   12532         (WebKit::WebContext::platformInitializeWebProcess):
   12533         * WebProcess/WebProcess.cpp:
   12534         (WebKit::WebProcess::initializeWebProcess):
   12535         * WebProcess/mac/WebProcessMac.mm:
   12536         (WebKit::WebProcess::platformInitializeWebProcess):
   12537         * WebProcess/mac/WebProcessMainMac.mm:
   12538         (WebKit::WebProcessMain):
   12539         * WebProcess/win/WebProcessWin.cpp:
   12540         (WebKit::WebProcess::platformInitializeWebProcess):
   12541         (WebKit::WebProcess::setShouldPaintNativeControls):
   12542 
   12543 2010-12-16  Anders Carlsson  <andersca (a] apple.com>
   12544 
   12545         Reviewed by Dan Bernstein.
   12546 
   12547         Defer getting a PluginProcessConnection object until the plug-in is initialized
   12548         https://bugs.webkit.org/show_bug.cgi?id=51207
   12549         <rdar://problem/8731306>
   12550 
   12551         Before this change, we would pass the PluginProcessConnection to the PluginProxy constructor, but not
   12552         call PluginProcessConnection::addPluginProxy (which associates the plug-in proxy with the connection)
   12553         until the plug-in is initialized.
   12554 
   12555         This could lead to a PluginProxy holding a reference to a PluginProcessConnection when the PluginProxyConnection
   12556         itself did not know anything about the PluginProxy. This would happen when a page with plug-ins is opened in a background
   12557         tab, with the plug-ins not yet initialized.
   12558 
   12559         Because of this, we could end up in a weird state, where the PluginProcessConnection would think that there are no
   12560         more plug-ins alive, and invalidate (and null out) the underlying CoreIPC connection, which would lead to crashes
   12561         when trying to send messages to the connection during later initialization.
   12562 
   12563         The fix is to pass the plug-in path to the PluginProxy constructor, and get the connection from PluginProxy::initialize.
   12564         
   12565         PluginProcessConnection object 
   12566         * WebProcess/Plugins/PluginProxy.cpp:
   12567         (WebKit::PluginProxy::create):
   12568         (WebKit::PluginProxy::PluginProxy):
   12569         (WebKit::PluginProxy::initialize):
   12570         * WebProcess/Plugins/PluginProxy.h:
   12571         * WebProcess/WebPage/WebPage.cpp:
   12572         (WebKit::WebPage::createPlugin):
   12573 
   12574 2010-12-16  Enrica Casucci  <enrica (a] apple.com>
   12575 
   12576         Reviewed by Maciej Stachowiak.
   12577 
   12578         WebKit2: Cannot copy two successive selections using cmd-c
   12579         <rdar://problem/8680309> 
   12580         https://bugs.webkit.org/show_bug.cgi?id=51203
   12581         
   12582         The previous implementation assumed a call sequence from AppKit that
   12583         was not always happening.
   12584         When the user clicks on the pulldown menu, AppKit sends validateUserInterfaceItem
   12585         calls for each element that needs validation and we used to count the number of
   12586         validation requests being sent to the web process.
   12587         All these calls are made before we have the chance to get one reply from the WebProcess.
   12588         We also delayed the menu update until we had received all the replies to the validation requests.
   12589         At that point we called update on the menu to trigger the validation one more time with
   12590         the data retrived from the WebProcess.
   12591         When the user simply presses cmd-c, only one call to vaidateUserInterfaceItem is made
   12592         and the menu update triggered the validation of all the menu entries causing the internal
   12593         state to be out of sync.
   12594         The new implementation is very simple: for each validation request from AppKit we send
   12595         a request to the WebProcess and we cache a reference to the menu item being validated.
   12596         When the WebProcess replies, we retrieve the menu item from our cache and update its state.
   12597         
   12598         * UIProcess/API/mac/WKView.mm:
   12599         (-[WKView initWithFrame:contextRef:pageGroupRef:]): Removed initialization of deleted memebers.
   12600         (-[WKView validateUserInterfaceItem:]): Request validation to the WebProcess and return YES to 
   12601         allow AppKit to do the keyBinding processing.
   12602         (-[WKView _setUserInterfaceItemState:enabled:state:]): Called when the WebProcess replies to the
   12603         validation request to check/uncheck and enable/disable the menu item.
   12604 
   12605 2010-12-16  Anders Carlsson  <andersca (a] apple.com>
   12606 
   12607         Reviewed by Oliver Hunt.
   12608 
   12609         Don't try to call plug-in member functions if the plug-in hasn't been initialized
   12610         https://bugs.webkit.org/show_bug.cgi?id=51205
   12611         <rdar://problem/8730204>
   12612 
   12613         Make sure that all PluginView functions that can be called while a plug-in has not been
   12614         initialized (if the plug-in page is in a background tab for example) have an additional
   12615         check for m_isInitialized.
   12616 
   12617         * WebProcess/Plugins/PluginView.cpp:
   12618         (WebKit::PluginView::setWindowIsFocused):
   12619         (WebKit::PluginView::windowAndViewFramesChanged):
   12620         (WebKit::PluginView::platformLayer):
   12621         (WebKit::PluginView::scriptObject):
   12622         (WebKit::PluginView::privateBrowsingStateChanged):
   12623         (WebKit::PluginView::handleEvent):
   12624         (WebKit::PluginView::viewGeometryDidChange):
   12625         (WebKit::PluginView::setFocus):
   12626 
   12627 2010-12-16  Anders Carlsson  <andersca (a] apple.com>
   12628 
   12629         Reviewed by John Sullivan.
   12630 
   12631         Add a bunch of m_isStarted assertions to plug-in code.
   12632 
   12633         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   12634         (WebKit::NetscapePlugin::frameDidFinishLoading):
   12635         (WebKit::NetscapePlugin::frameDidFail):
   12636         (WebKit::NetscapePlugin::didEvaluateJavaScript):
   12637         (WebKit::NetscapePlugin::streamDidReceiveResponse):
   12638         (WebKit::NetscapePlugin::streamDidReceiveData):
   12639         (WebKit::NetscapePlugin::streamDidFinishLoading):
   12640         (WebKit::NetscapePlugin::streamDidFail):
   12641         (WebKit::NetscapePlugin::manualStreamDidReceiveResponse):
   12642         (WebKit::NetscapePlugin::manualStreamDidReceiveData):
   12643         (WebKit::NetscapePlugin::manualStreamDidFinishLoading):
   12644         (WebKit::NetscapePlugin::manualStreamDidFail):
   12645         (WebKit::NetscapePlugin::handleMouseEvent):
   12646         (WebKit::NetscapePlugin::handleWheelEvent):
   12647         (WebKit::NetscapePlugin::handleMouseEnterEvent):
   12648         (WebKit::NetscapePlugin::handleMouseLeaveEvent):
   12649         (WebKit::NetscapePlugin::handleKeyboardEvent):
   12650         (WebKit::NetscapePlugin::setFocus):
   12651         (WebKit::NetscapePlugin::pluginScriptableNPObject):
   12652         (WebKit::NetscapePlugin::privateBrowsingStateChanged):
   12653 
   12654 2010-12-16  Anders Carlsson  <andersca (a] apple.com>
   12655 
   12656         Reviewed by Darin Adler.
   12657 
   12658         Save the manual plug-in stream data and redeliver it when the plug-in is initialized
   12659         https://bugs.webkit.org/show_bug.cgi?id=51201
   12660 
   12661         * WebProcess/Plugins/PluginView.cpp:
   12662         (WebKit::PluginView::PluginView):
   12663         Initialize m_manualStreamState.
   12664 
   12665         (WebKit::PluginView::manualLoadDidReceiveResponse):
   12666         If the plug-in hasn't been initialized, store the response.
   12667 
   12668         (WebKit::PluginView::manualLoadDidReceiveData):
   12669         If the plug-in hasn't been initialized, store the data.
   12670         
   12671         (WebKit::PluginView::manualLoadDidFinishLoading):
   12672         If the plug-in hasn't been initialized, update the state.
   12673 
   12674         (WebKit::PluginView::manualLoadDidFail):
   12675         If the plug-in hasn't been initialized, store the error and update the state.
   12676         
   12677         (WebKit::PluginView::initializePlugin):
   12678         Call redeliverManualStream.
   12679 
   12680         (WebKit::PluginView::redeliverManualStream):
   12681         Redeliver the manual stream to the plug-in.
   12682 
   12683         * WebProcess/Plugins/PluginView.h:
   12684 
   12685 2010-12-16  Kimmo Kinnunen  <kimmo.t.kinnunen (a] nokia.com>
   12686 
   12687         Reviewed by Andreas Kling.
   12688 
   12689         [Qt] Turn off drawing area updates if the item is not visible
   12690 
   12691         The updates are controlled by the QGraphicsItem::visible property.
   12692 
   12693         * UIProcess/API/qt/qgraphicswkview.cpp:
   12694         (QGraphicsWKViewPrivate::updateViewportSize):
   12695         (QGraphicsWKView::setGeometry):
   12696         (QGraphicsWKView::itemChange):
   12697 
   12698 2010-12-15  Dan Bernstein  <mitz (a] apple.com>
   12699 
   12700         Reviewed by Sam Weinig.
   12701 
   12702         <rdar://problem/8731320> WebProcesss CFNetwork cache is in ~/Library/Caches/com.apple.WebProcess
   12703 
   12704         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   12705         (WebKit::ProcessLauncher::launchProcess): Get the location, disk capacity and memory capacity
   12706         of the UI processs NSURLCache and pass them to the WebProcess.
   12707         * WebProcess/mac/WebProcessMainMac.mm:
   12708         (WebKit::WebProcessMain): If an NSURLCache location was passed on the command line, set the
   12709         shared NSURLCache to that path and use the specified capacities as initial values.
   12710 
   12711 2010-12-15  Dan Bernstein  <mitz (a] apple.com>
   12712 
   12713         Reviewed by Sam I blame andersca Weinig.
   12714 
   12715         Allow responses to be cached by the NSURLCache.
   12716 
   12717         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   12718         (WebKit::WebFrameLoaderClient::willCacheResponse): Changed to return the response instead of 0.
   12719 
   12720 2010-12-14  Enrica Casucci  <enrica (a] apple.com>
   12721 
   12722         Reviewed by Adam Roben.
   12723 
   12724         Add IME support to WebKit2 on Windows
   12725         https://bugs.webkit.org/show_bug.cgi?id=51049
   12726         The implementation is very close to the one in WebKit.
   12727         The main change is the addition of handlers for WM_IME_STARTCOMPOSITION,
   12728         WM_IME_REQUEST, WM_IME_COMPOSITION, WM_IME_ENDCOMPOSITION,
   12729         WM_IME_SELECT, WM_IME_SETCONTEXT and a number of new messages
   12730         between the UI process and the WebProcess to send/retrieve
   12731         the data being handled by the messages listed above.
   12732 
   12733         * UIProcess/PageClient.h: Added compositionSelectionChanged for Windows platform.
   12734         * UIProcess/WebPageProxy.cpp:
   12735         The following methods send synchronous messages to the WebProcess.
   12736         (WebKit::WebPageProxy::firstRectForCharacterInSelectedRange): Retrieves the rectangle to position
   12737         the cnadidates window.
   12738         (WebKit::WebPageProxy::getSelectedText): Retrieves the currently selected text.
   12739         The following methods send asynchronous messages to the WebProcess.
   12740         (WebKit::WebPageProxy::confirmComposition):
   12741         (WebKit::WebPageProxy::setComposition):
   12742         (WebKit::WebPageProxy::didChangeSelection): Name changed.
   12743         (WebKit::WebPageProxy::didChangeCompositionSelection): Called when there is a change
   12744         in the composition selection.
   12745         * UIProcess/WebPageProxy.messages.in: Added messages corresponding to the methods above.
   12746         * UIProcess/win/WebView.cpp:
   12747         (WebKit::WebView::wndProc): Added handling of messages for IME.
   12748         The following are the handlers for the window message being sent during composition.
   12749         (WebKit::WebView::onIMEComposition):
   12750         (WebKit::WebView::onIMEEndComposition):
   12751         (WebKit::WebView::onIMERequestCharPosition):
   12752         (WebKit::WebView::onIMERequestReconvertString):
   12753         (WebKit::WebView::onIMERequest):
   12754         (WebKit::WebView::onIMESelect):
   12755         (WebKit::WebView::onIMESetContext):
   12756         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   12757         (WebKit::WebEditorClient::respondToChangedSelection): Added notification
   12758         of composition selection changed for Windows.
   12759         * WebProcess/WebPage/win/WebPageWin.cpp:
   12760         The following are the WebProcess counterparts of the new messages.
   12761         (WebKit::WebPage::confirmComposition):
   12762         (WebKit::WebPage::setComposition):
   12763         (WebKit::WebPage::firstRectForCharacterInSelectedRange):
   12764         (WebKit::WebPage::getSelectedText):
   12765 
   12766 2010-12-15  Sam Weinig  <sam (a] webkit.org>
   12767 
   12768         Reviewed by Brady Eidson.
   12769 
   12770         Loading webkit.org over and over is slower in WebKit2 than WebKit1, looks like page is not cached
   12771         <rdar://problem/8774683>
   12772         https://bugs.webkit.org/show_bug.cgi?id=51143
   12773 
   12774         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   12775         (WebKit::WebFrameLoaderClient::canCachePage): Return true as long as we
   12776         are not a custom representation (eg. a PDF).
   12777         (WebKit::WebFrameLoaderClient::shouldCacheResponse): Always return true.
   12778         * WebProcess/WebPage/WebPage.cpp:
   12779         (WebKit::WebPage::updatePreferences): Enable the page cache.
   12780 
   12781 2010-12-15  Simon Fraser  <simon.fraser (a] apple.com>
   12782 
   12783         Reviewed by Adele Peterson.
   12784 
   12785         WebKit2 in compositing mode no longer has font smoothing
   12786         https://bugs.webkit.org/show_bug.cgi?id=50733
   12787         
   12788         Tell the root GraphicsLayer that its contents are opaque
   12789         if the WebPage draws its background, and that background
   12790         is not transparent.
   12791         
   12792         The GraphicsLayer then uses the 'contentsOpaque' setting to
   12793         determine whether to use font smoothing.
   12794         
   12795         Add pageBackgroundTransparencyChanged() to DrawingArea
   12796         so that the WebPage can inform the DrawingArea when the
   12797         background transparency changes.
   12798 
   12799         * WebProcess/WebPage/DrawingArea.h:
   12800         (WebKit::DrawingArea::pageBackgroundTransparencyChanged):
   12801         (WebKit::DrawingArea::onPageClose):
   12802         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   12803         (WebKit::LayerBackedDrawingArea::LayerBackedDrawingArea):
   12804         (WebKit::LayerBackedDrawingArea::pageBackgroundTransparencyChanged):
   12805         * WebProcess/WebPage/LayerBackedDrawingArea.h:
   12806         * WebProcess/WebPage/WebPage.cpp:
   12807         (WebKit::WebPage::setDrawsBackground):
   12808         (WebKit::WebPage::setDrawsTransparentBackground):
   12809 
   12810 2010-12-15  Anders Carlsson  <andersca (a] apple.com>
   12811 
   12812         Reviewed by Sam Weinig.
   12813 
   12814         Fix assertion in plugins/return-error-from-new-stream-callback-in-full-frame-plugin.html test
   12815         https://bugs.webkit.org/show_bug.cgi?id=51136
   12816 
   12817         Ensure that a plug-in that has explicitly cancelled the manual stream won't get any more callbacks.
   12818 
   12819         * PluginProcess/PluginControllerProxy.cpp:
   12820         (WebKit::PluginControllerProxy::PluginControllerProxy):
   12821         (WebKit::PluginControllerProxy::cancelManualStreamLoad):
   12822         (WebKit::PluginControllerProxy::manualStreamDidReceiveResponse):
   12823         (WebKit::PluginControllerProxy::manualStreamDidReceiveData):
   12824         (WebKit::PluginControllerProxy::manualStreamDidFinishLoading):
   12825         (WebKit::PluginControllerProxy::manualStreamDidFail):
   12826         * PluginProcess/PluginControllerProxy.h:
   12827 
   12828 2010-12-15  Brian Weinstein  <bweinstein (a] apple.com>
   12829 
   12830         Windows Build Fix. A .h file was added to the vcproj twice, but not its corresponding cpp file.
   12831 
   12832         * win/WebKit2.vcproj:
   12833 
   12834 2010-12-15  Sam Weinig  <sam (a] webkit.org>
   12835 
   12836         Reviewed by Anders Carlsson.
   12837 
   12838         WebKit2: Can't add files to an <input type=file>
   12839         https://bugs.webkit.org/show_bug.cgi?id=51087
   12840 
   12841         * Scripts/webkit2/messages.py:
   12842         Adds new types.
   12843 
   12844         * Shared/API/c/WKBase.h:
   12845         Adds WKOpenPanelParametersRef and WKOpenPanelResultListenerRef.
   12846 
   12847         * Shared/APIObject.h:
   12848         Adds TypeOpenPanelParameters and TypeOpenPanelResultListener.
   12849 
   12850         * Shared/WebOpenPanelParameters.cpp: Added.
   12851         (WebKit::WebOpenPanelParameters::create):
   12852         (WebKit::WebOpenPanelParameters::WebOpenPanelParameters):
   12853         (WebKit::WebOpenPanelParameters::~WebOpenPanelParameters):
   12854         (WebKit::WebOpenPanelParameters::Data::encode):
   12855         (WebKit::WebOpenPanelParameters::Data::decode):
   12856         * Shared/WebOpenPanelParameters.h: Added.
   12857         (WebKit::WebOpenPanelParameters::allowMultipleFiles):
   12858         (WebKit::WebOpenPanelParameters::type):
   12859         Class representing options one can pass to open panel.
   12860 
   12861         * UIProcess/API/C/WKAPICast.h:
   12862         Add casts for WebOpenPanelParameters and WebOpenPanelResultListenerProxy.
   12863 
   12864         * UIProcess/API/C/WKOpenPanelParameters.cpp: Added.
   12865         (WKOpenPanelParametersGetTypeID):
   12866         (WKOpenPanelParametersGetAllowsMultipleFiles):
   12867         * UIProcess/API/C/WKOpenPanelParameters.h: Added.
   12868         * UIProcess/API/C/WKOpenPanelResultListener.cpp: Added.
   12869         (WKOpenPanelResultListenerGetTypeID):
   12870         (WKOpenPanelResultListenerChooseFiles):
   12871         (WKOpenPanelResultListenerCancel):
   12872         * UIProcess/API/C/WKOpenPanelResultListener.h: Added.
   12873         Add API wrappers.
   12874 
   12875         * UIProcess/API/C/WKPage.h:
   12876         Add new UI callback, WKPageRunOpenPanelCallback.
   12877 
   12878         * UIProcess/API/C/WebKit2.h:
   12879         Add includes for new API headers.
   12880 
   12881         * UIProcess/API/qt/qwkpage.cpp:
   12882         (QWKPage::QWKPage):
   12883         Stub out the runOpenPanel callback.
   12884 
   12885         * UIProcess/WebOpenPanelResultListenerProxy.cpp: Added.
   12886         (WebKit::WebOpenPanelResultListenerProxy::WebOpenPanelResultListenerProxy):
   12887         (WebKit::WebOpenPanelResultListenerProxy::~WebOpenPanelResultListenerProxy):
   12888         (WebKit::WebOpenPanelResultListenerProxy::chooseFiles):
   12889         (WebKit::WebOpenPanelResultListenerProxy::cancel):
   12890         (WebKit::WebOpenPanelResultListenerProxy::invalidate):
   12891         * UIProcess/WebOpenPanelResultListenerProxy.h: Added.
   12892         (WebKit::WebOpenPanelResultListenerProxy::create):
   12893         (WebKit::WebOpenPanelResultListenerProxy::type):
   12894         Adds the listener used to choose files for <input type=file>
   12895 
   12896         * UIProcess/WebPageProxy.cpp:
   12897         (WebKit::WebPageProxy::runOpenPanel):
   12898         (WebKit::WebPageProxy::didChooseFilesForOpenPanel):
   12899         (WebKit::WebPageProxy::didCancelForOpenPanel):
   12900         * UIProcess/WebPageProxy.h:
   12901         * UIProcess/WebPageProxy.messages.in:
   12902         * UIProcess/WebUIClient.cpp:
   12903         (WebKit::WebUIClient::runOpenPanel):
   12904         * UIProcess/WebUIClient.h:
   12905         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   12906         (WebKit::WebChromeClient::runOpenPanel):
   12907         * WebProcess/WebPage/WebOpenPanelResultListener.cpp: Added.
   12908         (WebKit::WebOpenPanelResultListener::create):
   12909         (WebKit::WebOpenPanelResultListener::WebOpenPanelResultListener):
   12910         (WebKit::WebOpenPanelResultListener::~WebOpenPanelResultListener):
   12911         (WebKit::WebOpenPanelResultListener::didChooseFiles):
   12912         * WebProcess/WebPage/WebOpenPanelResultListener.h: Added.
   12913         (WebKit::WebOpenPanelResultListener::disconnectFromPage):
   12914         * WebProcess/WebPage/WebPage.cpp:
   12915         (WebKit::WebPage::close):
   12916         (WebKit::WebPage::setActiveOpenPanelResultListener):
   12917         (WebKit::WebPage::didChooseFilesForOpenPanel):
   12918         (WebKit::WebPage::didCancelForOpenPanel):
   12919         * WebProcess/WebPage/WebPage.h:
   12920         (WebKit::WebPage::activeOpenPanelResultListener):
   12921         * WebProcess/WebPage/WebPage.messages.in:
   12922         Pipe through file choosing.
   12923 
   12924         * WebKit2.pro:
   12925         * WebKit2.xcodeproj/project.pbxproj:
   12926         * win/WebKit2.vcproj:
   12927         * win/WebKit2Generated.make:
   12928         Add new files.
   12929 
   12930 2010-12-15  Anders Carlsson  <andersca (a] apple.com>
   12931 
   12932         Reviewed by Maciej Stachowiak.
   12933 
   12934         Semi-reproducible crash in ChunkedUpdateDrawingArea::paintIntoUpdateChunk closing a particular yahoo page
   12935         https://bugs.webkit.org/show_bug.cgi?id=51126
   12936         <rdar://problem/8771219>
   12937 
   12938         Laying out the web page can cause the drawing area to change so we need to protect against this.
   12939 
   12940         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   12941         (WebKit::ChunkedUpdateDrawingArea::display):
   12942         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   12943         (WebKit::LayerBackedDrawingArea::display):
   12944         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   12945         (WebKit::LayerBackedDrawingArea::updateLayoutRunLoopObserverFired):
   12946 
   12947 2010-12-15  Brian Weinstein  <bweinstein (a] apple.com>
   12948 
   12949         Reviewed by Adam Roben.
   12950 
   12951         WebKit2: WebPageWin needs implementations of hasLocalDataForURL and canHandleRequest
   12952         https://bugs.webkit.org/show_bug.cgi?id=51090
   12953         
   12954         Implement these functions for WebKit2 on Windows.
   12955 
   12956         * WebProcess/WebPage/WebPage.cpp:
   12957         (WebKit::WebPage::hasLocalDataForURL): Does the cross-platform part of the check for having local
   12958             data (file URL or subresource), then calls platformHasLocalDataForURL to let the platform do
   12959             their specific checks.
   12960         * WebProcess/WebPage/WebPage.h:
   12961         * WebProcess/WebPage/mac/WebPageMac.mm:
   12962         (WebKit::WebPage::platformHasLocalDataForURL): Moved the cross-platform code from here to WebPage::hasLocalDataForURL.
   12963         * WebProcess/WebPage/qt/WebPageQt.cpp:
   12964         (WebKit::WebPage::platformHasLocalDataForURL): Renamed from hasLocalDataForURL.
   12965         * WebProcess/WebPage/win/WebPageWin.cpp:
   12966         (WebKit::WebPage::platformHasLocalDataForURL): Renamed from hasLocalDataForURL and implemented with CFNetwork calls. This is the
   12967             CFNetwork equivalent of the code in WebPageMac::platformHasLocalDataForURL.
   12968         (WebKit::WebPage::canHandleRequest): Copied the line of code from WebView::canHandleRequest in WebKit1, with a FIXME saying
   12969             this might not be enough (although it was in WebKit1 on Windows).
   12970 
   12971 2010-12-15  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   12972 
   12973         Unreviewed, rolling out r74117.
   12974         http://trac.webkit.org/changeset/74117
   12975         https://bugs.webkit.org/show_bug.cgi?id=51113
   12976 
   12977         This broke the GTK1 build. (Requested by mrobinson on
   12978         #webkit).
   12979 
   12980         * GNUmakefile.am: Removed.
   12981         * Scripts/generate-forwarding-headers.pl:
   12982         * WebKit2Prefix.h:
   12983         * gtk/webkit2.pc.in: Removed.
   12984 
   12985 2010-12-15  Amruth Raj  <amruthraj (a] motorola.com> and Ravi Kasibhatla  <ravi.kasibhatla (a] motorola.com>
   12986 
   12987         Reviewed by Martin Robinson.
   12988 
   12989         Changes to enable building WebKit2 for Gtk port.
   12990         (https://bugs.webkit.org/show_bug.cgi?id=37369)
   12991 
   12992         * GNUmakefile.am: Added. 
   12993         * Scripts/generate-forwarding-headers.pl: For GTK port, taking 1 extra argument for copying network headers.
   12994         * WebKit2Prefix.h: Included WebCore/config.h for GTK port as the first header file for WebKit2 sources files.
   12995         * gtk: Added.
   12996         * gtk/webkit2.pc.in: Added.
   12997 
   12998 2010-12-15  Jan Erik Hanssen  <jhanssen (a] sencha.com>
   12999 
   13000         Reviewed by Andreas Kling.
   13001 
   13002         [Qt][WK2] webkit2 does not compile on OS X
   13003         https://bugs.webkit.org/show_bug.cgi?id=50128
   13004 
   13005         prctl(2) is only available on Linux, so use an atexit handler for killing
   13006         all the child processes when the process is exiting.
   13007 
   13008         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   13009         (WebKit::cleanupProcesses):
   13010         (WebKit::QtWebProcess::QtWebProcess):
   13011         (WebKit::QtWebProcess::processStateChanged):
   13012         (WebKit::ProcessLauncherHelper::instance):
   13013 
   13014 2010-12-14  Anders Carlsson  <andersca (a] apple.com>
   13015 
   13016         Fix Windows build.
   13017 
   13018         * win/WebKit2Common.vsprops:
   13019 
   13020 2010-12-14  Anders Carlsson  <andersca (a] apple.com>
   13021 
   13022         Fix Qt build.
   13023 
   13024         * WebKit2.pro:
   13025 
   13026 2010-12-14  Anders Carlsson  <andersca (a] apple.com>
   13027 
   13028         Reviewed by TYPO FIX.
   13029 
   13030         Fix a typo.
   13031 
   13032         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
   13033         (WebKit::NetscapePluginModule::determineQuirks):
   13034 
   13035 2010-12-14  Anders Carlsson  <andersca (a] apple.com>
   13036 
   13037         Reviewed by Sam Weinig.
   13038 
   13039         Cannot type into plugin edit field
   13040         https://bugs.webkit.org/show_bug.cgi?id=51074
   13041         <rdar://problem/8483741>
   13042 
   13043         Add a PrognameShouldBeWebKitPluginHost quirk, since it turns out Flash Player calls getprogname() and checks
   13044         if the return value is "WebKitPluginHost" in order to determine when to handle NPCocoaEventKeyDown events.
   13045 
   13046         * PluginProcess/PluginProcess.cpp:
   13047         (WebKit::PluginProcess::netscapePluginModule):
   13048         If the plug-in module has the PrognameShouldBeWebKitPluginHost quirk, call setprogname("WebKitPluginHost").
   13049         
   13050         * Shared/Plugins/Netscape/NetscapePluginModule.cpp:
   13051         (WebKit::NetscapePluginModule::load):
   13052         Call determineQuirks()
   13053 
   13054         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
   13055         (WebKit::NetscapePluginModule::determineQuirks):
   13056         Add the PrognameShouldBeWebKitPluginHost quirk for Flash.
   13057         
   13058         * Shared/Plugins/Netscape/win/NetscapePluginModuleWin.cpp:
   13059         (WebKit::NetscapePluginModule::determineQuirks):
   13060         * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
   13061         (WebKit::NetscapePluginModule::determineQuirks):
   13062         Add stubs.
   13063 
   13064         * Shared/Plugins/PluginQuirks.h:
   13065         Add new PluginQuirks file.
   13066 
   13067         * WebKit2.xcodeproj/project.pbxproj:
   13068         Add PluginQuirks.h
   13069 
   13070 2010-12-14  Anders Carlsson  <andersca (a] apple.com>
   13071 
   13072         Reviewed by Sam Weinig.
   13073 
   13074         Add a NetscapePluginModuleX11 and move the Qt implementation of PluginInfoStore::getPluginInfo there
   13075         https://bugs.webkit.org/show_bug.cgi?id=51066
   13076 
   13077         * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp: Copied from WebKit2/UIProcess/Plugins/qt/PluginInfoStoreQt.cpp.
   13078         (WebKit::NetscapePluginModule::getPluginInfo):
   13079         * UIProcess/Plugins/qt/PluginInfoStoreQt.cpp:
   13080         (WebKit::PluginInfoStore::getPluginInfo):
   13081         * WebKit2.pro:
   13082 
   13083 2010-12-14  Anders Carlsson  <andersca (a] apple.com>
   13084 
   13085         Reviewed by Dan Bernstein.
   13086 
   13087         Move Windows version of getPluginInfo to NetscapePluginModule
   13088         https://bugs.webkit.org/show_bug.cgi?id=51073
   13089 
   13090         * Shared/Plugins/Netscape/win/NetscapePluginModuleWin.cpp: Added.
   13091         (WebKit::getVersionInfo):
   13092         (WebKit::fileVersion):
   13093         (WebKit::NetscapePluginModule::getPluginInfo):
   13094         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
   13095         (WebKit::PluginInfoStore::getPluginInfo):
   13096         * win/WebKit2.vcproj:
   13097 
   13098 2010-12-14  Alice Liu  <alice.liu (a] apple.com>
   13099 
   13100         Fix clang++ build.
   13101 
   13102         * UIProcess/WebProcessProxy.h:
   13103         (WebKit::WebProcessProxy::sendSync):
   13104         Move the default argument to the declaration.
   13105 
   13106 2010-12-14  Anders Carlsson  <andersca (a] apple.com>
   13107 
   13108         Reviewed by Adam Roben.
   13109 
   13110         Move PluginInfoStore::getPluginInfo to NetscapePluginModule
   13111         https://bugs.webkit.org/show_bug.cgi?id=51058
   13112 
   13113         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
   13114         Move implementation of PluginInfoStore::getPluginInfo and related
   13115         helper functions here.
   13116 
   13117         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
   13118         (WebKit::PluginInfoStore::getPluginInfo):
   13119         Just call NetscapePluginModule::getPluginInfo here for now.
   13120 
   13121         * WebKit2.xcodeproj/project.pbxproj:
   13122         Add NetscapePluginModuleMac.mm.
   13123 
   13124 2010-12-14  Anders Carlsson  <andersca (a] apple.com>
   13125 
   13126         Reviewed by John Sullivan.
   13127 
   13128         Switch name and description order when fetching Carbon plug-in info
   13129         https://bugs.webkit.org/show_bug.cgi?id=46211
   13130 
   13131         The plug-in description comes before the name in the Carbon string list resource.
   13132 
   13133         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
   13134         (WebKit::getPluginInfoFromCarbonResources):
   13135 
   13136 2010-12-14  Anders Carlsson  <andersca (a] apple.com>
   13137 
   13138         Reviewed by Adam Roben.
   13139 
   13140         Move NetscapePluginModule.{cpp|h} to Shared/Plugins/Netscape
   13141         https://bugs.webkit.org/show_bug.cgi?id=51052
   13142 
   13143         * Shared/Plugins/Netscape/NetscapePluginModule.cpp: Renamed from WebKit2/WebProcess/Plugins/Netscape/NetscapePluginModule.cpp.
   13144         * Shared/Plugins/Netscape/NetscapePluginModule.h: Renamed from WebKit2/WebProcess/Plugins/Netscape/NetscapePluginModule.h.
   13145         * WebKit2.pro:
   13146         * WebKit2.xcodeproj/project.pbxproj:
   13147         * win/WebKit2.vcproj:
   13148         * win/WebKit2Common.vsprops:
   13149 
   13150 2010-12-14  Anders Carlsson  <andersca (a] apple.com>
   13151 
   13152         Reviewed by Sam Weinig.
   13153 
   13154         Handle complex text input for plug-ins
   13155         https://bugs.webkit.org/show_bug.cgi?id=51047
   13156 
   13157         * PluginProcess/PluginControllerProxy.cpp:
   13158         (WebKit::PluginControllerProxy::sendComplexTextInput):
   13159         Pass along the text input to the plug-in.
   13160 
   13161         * PluginProcess/PluginControllerProxy.messages.in:
   13162         Add SendComplexTextInput message.
   13163 
   13164         * UIProcess/API/mac/WKTextInputWindowController.h: Added.
   13165         * UIProcess/API/mac/WKTextInputWindowController.mm: Added.
   13166         Add text input window controller, mostly copied from WebKit1.
   13167         
   13168         * UIProcess/API/mac/WKView.mm:
   13169         (-[WKView keyDown:]):
   13170         If needed, pass along the event to the text input window controller.
   13171 
   13172         (-[WKView inputContext]):
   13173         Return the input context of the text input window controller.
   13174 
   13175         (-[WKView _setComplexTextInputEnabled:pluginComplexTextInputIdentifier:]):
   13176         Notify the input window controller that the input source changed.
   13177 
   13178         * UIProcess/WebPageProxy.cpp:
   13179         (WebKit::WebPageProxy::sendComplexTextInputToPlugin):
   13180         Send the complex text input to the web process.
   13181 
   13182         * WebKit2.xcodeproj/project.pbxproj:
   13183         Add new files.
   13184 
   13185         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   13186         (WebKit::convertStringToKeyCodes):
   13187         Convert a string to a vector of key codes in the current encoding.
   13188 
   13189         (WebKit::NetscapePlugin::sendComplexTextInput):
   13190         In the Cocoa event model, create and dispatch an NPCocoaEventTextInput event.
   13191         In the Carbon event model, convert the string to individual key codes and send them
   13192         as key down events.
   13193 
   13194         * WebProcess/Plugins/PluginProxy.cpp:
   13195         (WebKit::PluginProxy::sendComplexTextInput):
   13196         Send the text to the plug-in controller proxy.
   13197 
   13198         * WebProcess/Plugins/PluginView.cpp:
   13199         (WebKit::PluginView::sendComplexTextInput):
   13200         If the plug-in has a matching text input identifier, call Plugin::sendComplexTextInput.
   13201 
   13202         * WebProcess/WebPage/WebPage.messages.in:
   13203         Add SendComplexTextInputToPlugin message.
   13204 
   13205         * WebProcess/WebPage/mac/WebPageMac.mm:
   13206         (WebKit::WebPage::sendComplexTextInputToPlugin):
   13207         Iterate over all known plug-in views and try to find one to send the text input to.
   13208 
   13209 2010-12-13  Alexey Proskuryakov  <ap (a] apple.com>
   13210 
   13211         Reviewed by Adam Barth.
   13212 
   13213         https://bugs.webkit.org/show_bug.cgi?id=50953
   13214         DNS Prefetch should be an opt-in feature
   13215 
   13216         Pass the preference through WebKit2.
   13217 
   13218         * Shared/WebPreferencesStore.h:
   13219         * UIProcess/API/C/WKPreferences.cpp:
   13220         (WKPreferencesSetDNSPrefetchingEnabled):
   13221         (WKPreferencesGetDNSPrefetchingEnabled):
   13222         * UIProcess/API/C/WKPreferences.h:
   13223         * WebProcess/WebPage/WebPage.cpp:
   13224         (WebKit::WebPage::updatePreferences):
   13225 
   13226 2010-12-13  Anders Carlsson  <andersca (a] apple.com>
   13227 
   13228         Reviewed by Kevin Decker.
   13229 
   13230         Pass the complex text input status to the WKView
   13231         https://bugs.webkit.org/show_bug.cgi?id=50993
   13232 
   13233         * UIProcess/API/mac/PageClientImpl.h:
   13234         * UIProcess/API/mac/PageClientImpl.mm:
   13235         (WebKit::PageClientImpl::setComplexTextInputEnabled):
   13236         * UIProcess/API/mac/WKView.mm:
   13237         (-[WKView _setComplexTextInputEnabled:pluginComplexTextInputIdentifier:]):
   13238         * UIProcess/API/mac/WKViewInternal.h:
   13239         * UIProcess/PageClient.h:
   13240         * UIProcess/WebPageProxy.cpp:
   13241         (WebKit::WebPageProxy::setComplexTextInputEnabled):
   13242 
   13243 2010-12-14  Benjamin Poulain  <benjamin.poulain (a] nokia.com>
   13244 
   13245         Reviewed by Kenneth Rohde Christiansen.
   13246 
   13247         WebKit 2 does not send touch cancel events correctly between processes
   13248         https://bugs.webkit.org/show_bug.cgi?id=50235
   13249 
   13250         The classes WebKit2PlatformTouchPoint and WebKit2PlatformTouchEvent
   13251         misses the conversion of TouchCancel events and points.
   13252 
   13253         This patch add the missing enums when converting from a WebTouchEvent
   13254         to a PlatformTouchEvent.
   13255 
   13256         Testing is already covered by fast/events/touch/send-oncancel-event.html
   13257 
   13258         * Shared/WebEventConversion.cpp:
   13259         (WebKit::WebKit2PlatformTouchPoint::WebKit2PlatformTouchPoint):
   13260         (WebKit::WebKit2PlatformTouchEvent::WebKit2PlatformTouchEvent):
   13261 
   13262 2010-12-14  Zalan Bujtas  <zbujtas (a] gmail.com>
   13263 
   13264         Reviewed by Kenneth Rohde Christiansen.
   13265 
   13266         Add loadFinished() for provisional load error
   13267         This fixes the hanging UI state, when provisional load error occurs due to
   13268         the async nature of policy check.
   13269 
   13270         https://bugs.webkit.org/show_bug.cgi?id=48724
   13271 
   13272         * UIProcess/API/qt/ClientImpl.cpp:
   13273         (loadFinished):
   13274         (qt_wk_didFailProvisionalLoadWithErrorForFrame):
   13275         (qt_wk_didFinishLoadForFrame):
   13276         (qt_wk_didFailLoadWithErrorForFrame):
   13277 
   13278 2010-12-13  Sam Weinig  <sam (a] webkit.org>
   13279 
   13280         Reviewed by Anders Carlsson.
   13281 
   13282         WebKit2: Need to be able to set the application name for the user agent for a WKPage
   13283         https://bugs.webkit.org/show_bug.cgi?id=51011
   13284 
   13285         Fixes:
   13286             WebKit2: Need to be able to set the application name for the user agent for a WKPage
   13287             <rdar://problem/8564532>
   13288             WebKit2: Need to be able to get the computed user agent for a WKPage
   13289             <rdar://problem/8637285>
   13290 
   13291         Moves user agent computation to the UIProcess and just passes it to the WebProcess
   13292         when it has changed.
   13293 
   13294         * Shared/WebPageCreationParameters.cpp:
   13295         (WebKit::WebPageCreationParameters::encode):
   13296         (WebKit::WebPageCreationParameters::decode):
   13297         * Shared/WebPageCreationParameters.h:
   13298         Add a user agent to the creation parameters.
   13299 
   13300         * UIProcess/API/C/WKPage.cpp:
   13301         (WKPageCopyUserAgent):
   13302         (WKPageCopyApplicationNameForUserAgent):
   13303         (WKPageSetApplicationNameForUserAgent):
   13304         (WKPageSetCustomUserAgent):
   13305         * UIProcess/API/C/WKPage.h:
   13306         Add new API to set the application name and access the computed user agent.
   13307 
   13308         * UIProcess/WebPageProxy.cpp:
   13309         (WebKit::WebPageProxy::WebPageProxy):
   13310         (WebKit::WebPageProxy::close):
   13311         (WebKit::WebPageProxy::setUserAgent):
   13312         (WebKit::WebPageProxy::setApplicationNameForUserAgent):
   13313         (WebKit::WebPageProxy::setCustomUserAgent):
   13314         (WebKit::WebPageProxy::processDidCrash):
   13315         (WebKit::WebPageProxy::creationParameters):
   13316         * UIProcess/WebPageProxy.h:
   13317         (WebKit::WebPageProxy::userAgent):
   13318         (WebKit::WebPageProxy::applicationNameForUserAgent):
   13319         * UIProcess/mac/WebPageProxyMac.mm: Added.
   13320         * WebProcess/WebPage/WebPage.cpp:
   13321         (WebKit::WebPage::WebPage):
   13322         (WebKit::WebPage::setUserAgent):
   13323         * WebProcess/WebPage/WebPage.h:
   13324         (WebKit::WebPage::userAgent):
   13325         * WebProcess/WebPage/WebPage.messages.in:
   13326         Pipe through user agent.
   13327 
   13328         (WebKit::callGestalt):
   13329         (WebKit::macOSXVersionString):
   13330         (WebKit::userVisibleWebKitVersionString):
   13331         (WebKit::WebPageProxy::standardUserAgent):
   13332         * UIProcess/win/WebPageProxyWin.cpp: Added.
   13333         (WebKit::windowsVersion):
   13334         (WebKit::userVisibleWebKitVersionString):
   13335         (WebKit::WebPageProxy::standardUserAgent):
   13336         Port standardUserAgent computation from WebKit1.
   13337 
   13338         * UIProcess/qt/WebPageProxyQt.cpp: Added.
   13339         (WebKit::WebPageProxy::standardUserAgent):
   13340         Stub out the user agent so there is no change in behavior.
   13341 
   13342         * WebKit2.pro:
   13343         * WebKit2.xcodeproj/project.pbxproj:
   13344         * win/WebKit2.vcproj:
   13345         Add new file.
   13346 
   13347 2010-12-13  Brady Eidson  <beidson (a] apple.com>
   13348 
   13349         Reviewed by Jon Honeycutt (and Brian Weinstein in heart).
   13350 
   13351         <rdar://problem/8752202> and https://bugs.webkit.org/show_bug.cgi?id=50997
   13352         Expose "link title" and "link label" to InjectedBundleHitTestResult API
   13353 
   13354         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:
   13355         (WKBundleHitTestResultCopyLinkLabel):
   13356         (WKBundleHitTestResultCopyLinkTitle):
   13357         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h:
   13358 
   13359         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
   13360         (WebKit::InjectedBundleHitTestResult::linkLabel):
   13361         (WebKit::InjectedBundleHitTestResult::linkTitle):
   13362         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
   13363 
   13364 2010-12-13  Brian Weinstein  <bweinstein (a] apple.com>
   13365 
   13366         Windows Build Fix. Add a needed include.
   13367 
   13368         * UIProcess/win/WebView.cpp:
   13369 
   13370 2010-12-13  Sam Weinig  <sam (a] webkit.org>
   13371 
   13372         Reviewed by Anders Carlsson.
   13373 
   13374         Remove associated page concept from WKView constructor
   13375         https://bugs.webkit.org/show_bug.cgi?id=50983
   13376 
   13377         Step 2: Remove WebPageNamespace.  It no longer does anything.
   13378 
   13379         * Shared/APIObject.h:
   13380         * UIProcess/API/C/WKPage.h:
   13381         * UIProcess/API/mac/WKView.mm:
   13382         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
   13383         * UIProcess/API/qt/qgraphicswkview.cpp:
   13384         * UIProcess/API/qt/qwkcontext.cpp:
   13385         (QWKContext::QWKContext):
   13386         * UIProcess/API/qt/qwkcontext_p.h:
   13387         * UIProcess/API/qt/qwkpage.cpp:
   13388         (QWKPagePrivate::QWKPagePrivate):
   13389         * UIProcess/API/qt/qwkpage_p.h:
   13390         * UIProcess/WebContext.cpp:
   13391         (WebKit::WebContext::WebContext):
   13392         (WebKit::WebContext::~WebContext):
   13393         (WebKit::WebContext::createWebPage):
   13394         * UIProcess/WebContext.h:
   13395         * UIProcess/WebPageNamespace.cpp: Removed.
   13396         * UIProcess/WebPageNamespace.h: Removed.
   13397         * UIProcess/WebPageProxy.cpp:
   13398         * UIProcess/WebPageProxy.h:
   13399         (WebKit::WebPageProxy::context):
   13400         * UIProcess/WebProcessProxy.cpp:
   13401         (WebKit::WebProcessProxy::createWebPage):
   13402         * UIProcess/WebProcessProxy.h:
   13403         * UIProcess/win/WebView.cpp:
   13404         (WebKit::WebView::WebView):
   13405         * UIProcess/win/WebView.h:
   13406         * WebKit2.pro:
   13407         * WebKit2.xcodeproj/project.pbxproj:
   13408         * win/WebKit2.vcproj:
   13409 
   13410 2010-12-13  Sam Weinig  <sam (a] webkit.org>
   13411 
   13412         Fix windows build.
   13413 
   13414         * UIProcess/win/WebView.h:
   13415 
   13416 2010-12-13  Sam Weinig  <sam (a] webkit.org>
   13417 
   13418         Fix windows build.
   13419 
   13420         * UIProcess/win/WebInspectorProxyWin.cpp:
   13421         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
   13422         * UIProcess/win/WebView.h:
   13423         (WebKit::WebView::create):
   13424 
   13425 2010-12-13  Sam Weinig  <sam (a] webkit.org>
   13426 
   13427         Reviewed by Anders Carlsson.
   13428 
   13429         Remove associated page concept from WKView constructor
   13430         https://bugs.webkit.org/show_bug.cgi?id=50983
   13431 
   13432         Step 1: Remove associate page constructors from WKView and make
   13433         all views use the shared namespace for the context.
   13434 
   13435         * UIProcess/API/C/win/WKView.cpp:
   13436         * UIProcess/API/C/win/WKView.h:
   13437         * UIProcess/API/mac/WKView.h:
   13438         * UIProcess/API/mac/WKView.mm:
   13439         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
   13440         * UIProcess/API/qt/qwkcontext.cpp:
   13441         * UIProcess/API/qt/qwkcontext.h:
   13442         * UIProcess/mac/WebInspectorProxyMac.mm:
   13443         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
   13444         * UIProcess/win/WebView.cpp:
   13445         (WebKit::WebView::WebView):
   13446         * UIProcess/win/WebView.h:
   13447         (WebKit::WebView::create):
   13448 
   13449 2010-12-13  Anders Carlsson  <andersca (a] apple.com>
   13450 
   13451         Fix build.
   13452 
   13453         * UIProcess/WebPageProxy.h:
   13454 
   13455 2010-12-13  Brian Weinstein  <bweinstein (a] apple.com>
   13456 
   13457         Reviewed by Adam Roben.
   13458 
   13459         WebKit2: Leaks a WebView when opening/closing Web Inspector on Windows
   13460         https://bugs.webkit.org/show_bug.cgi?id=50975
   13461         <rdar://problem/8763501>
   13462         
   13463         Make m_inspectorView be a RefPtr<WebView>, instead of a WebView*.
   13464 
   13465         * UIProcess/WebInspectorProxy.cpp:
   13466         (WebKit::WebInspectorProxy::WebInspectorProxy): If we are on Windows, include WebView.h.
   13467         * UIProcess/WebInspectorProxy.h: Change the type of m_inspectorView to a RefPtr<WebView>.
   13468         * UIProcess/win/WebInspectorProxyWin.cpp:
   13469         (WebKit::WebInspectorProxy::platformCreateInspectorPage): Remove the call to leakRef when creating the WebView.
   13470 
   13471 2010-12-13  Anders Carlsson  <andersca (a] apple.com>
   13472 
   13473         Reviewed by Darin Adler.
   13474 
   13475         Pass the complex text input state all the way to the UI process
   13476         https://bugs.webkit.org/show_bug.cgi?id=50980
   13477 
   13478         * PluginProcess/PluginControllerProxy.cpp:
   13479         (WebKit::PluginControllerProxy::setComplexTextInputEnabled):
   13480         * UIProcess/WebPageProxy.cpp:
   13481         (WebKit::WebPageProxy::setComplexTextInputEnabled):
   13482         * UIProcess/WebPageProxy.h:
   13483         * UIProcess/WebPageProxy.messages.in:
   13484         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   13485         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   13486         (WebKit::NetscapePlugin::pluginComplexTextInputIdentifier):
   13487         * WebProcess/Plugins/Plugin.h:
   13488         * WebProcess/Plugins/PluginProxy.cpp:
   13489         (WebKit::PluginProxy::pluginComplexTextInputIdentifier):
   13490         (WebKit::PluginProxy::setComplexTextInputEnabled):
   13491         * WebProcess/Plugins/PluginProxy.h:
   13492         * WebProcess/Plugins/PluginProxy.messages.in:
   13493         * WebProcess/Plugins/PluginView.cpp:
   13494         (WebKit::PluginView::setComplexTextInputEnabled):
   13495 
   13496 2010-12-13  Sam Weinig  <sam (a] webkit.org>
   13497 
   13498         Reviewed by Anders Carlsson.
   13499 
   13500         Change the WebKit2 public API so there is no explicit WKPageNamespace object
   13501         https://bugs.webkit.org/show_bug.cgi?id=50898
   13502 
   13503         * Shared/API/c/WKBase.h: Remove definition of WKPageNamespaceRef.
   13504         * UIProcess/API/C/WKAPICast.h: Remove toAPI/toImpl for WKPageNamespaceRef.
   13505 
   13506         * UIProcess/API/C/WKPage.cpp:
   13507         * UIProcess/API/C/WKPage.h:
   13508         Replace WKPageGetPageNamespace with WKPageGetContext.
   13509 
   13510         * UIProcess/API/C/WKPageNamespace.cpp: Removed.
   13511         * UIProcess/API/C/WKPageNamespace.h: Removed.
   13512 
   13513         * UIProcess/API/C/WebKit2.h: Remove #include of WKPageNamespace.h.
   13514 
   13515         * UIProcess/API/C/win/WKView.cpp:
   13516         (WKViewCreate): Changed to take a WKContextRef instead of a WKPageNamespaceRef.
   13517         (WKViewCreateUsingSharedProcess): Added. Similar to WKViewCreate except that
   13518         all callers of it will have their views end up in the same shared process, whereas 
   13519         with WKViewCreate, a new internal page namespace will be created and could place
   13520         the view's WebPage into a new process.
   13521         (WKViewCreateForAssociatedPage): Added. Creates a view that is forced to use the
   13522         same process as the passed in page.
   13523 
   13524         * UIProcess/win/WebView.cpp:
   13525         (WebKit::WebView::WebView):
   13526         (WebKit::WebView::initialize):
   13527         * UIProcess/win/WebView.h:
   13528         (WebKit::WebView::create):
   13529         (WebKit::WebView::createUsingSharedProcess):
   13530         (WebKit::WebView::createForAssociatedPage):
   13531         Implementation of the WKView create functions.
   13532 
   13533         * UIProcess/API/C/win/WKView.h:
   13534         * UIProcess/API/mac/WKView.h:
   13535         * UIProcess/API/mac/WKView.mm:
   13536         (-[WKView initWithFrame:]):
   13537         (-[WKView initWithFrame:contextRef:]):
   13538         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
   13539         (-[WKView initWithFrame:contextRef:usingSharedProcess:]):
   13540         (-[WKView initWithFrame:contextRef:pageGroupRef:usingSharedProcess:]):
   13541         (-[WKView initWithFrame:forAssociatedPageRef:]):
   13542         (-[WKView initWithFrame:forAssociatedPageRef:pageGroupRef:]):
   13543         (-[WKView initWithFrame:pageNamespace:pageGroup:]):
   13544         Add new initializers for the objective-c WKView. It follows the same
   13545         pattern as WKViewRef.
   13546 
   13547         * UIProcess/API/qt/qwkcontext.cpp:
   13548         (QWKContext::QWKContext):
   13549         * UIProcess/API/qt/qwkcontext.h:
   13550         Remove uses of WKPageNamespaceRef.
   13551 
   13552         * UIProcess/WebContext.cpp:
   13553         (WebKit::WebContext::sharedPageNamespace): Returns a shared
   13554         page namespace used by the view's createUsingSharedProcess constructions.
   13555         (WebKit::WebContext::createPageNamespace): Change to return
   13556         a PassRefPtr to make things clearer.
   13557         (WebKit::WebContext::pageNamespaceWasDestroyed): Clear the shared
   13558         namespace if it is cleared.
   13559         * UIProcess/WebContext.h:
   13560 
   13561         * UIProcess/WebPageNamespace.h: Remove unused "struct WKContextStatistics".
   13562 
   13563         * UIProcess/WebPageProxy.cpp:
   13564         (WebKit::WebPageProxy::context):
   13565         * UIProcess/WebPageProxy.h:
   13566         Add context getter.
   13567 
   13568         * UIProcess/mac/WebInspectorProxyMac.mm:
   13569         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
   13570         * UIProcess/win/WebInspectorProxyWin.cpp:
   13571         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
   13572         Use forAssociatedPageRef constructor for the WebInspector view.
   13573 
   13574         * WebKit2.pro:
   13575         * WebKit2.xcodeproj/project.pbxproj:
   13576         * win/WebKit2.vcproj:
   13577         * win/WebKit2Generated.make:
   13578         Remove WKPageNamespace.h/cpp.
   13579 
   13580 2010-12-13  Brent Fulgham  <bfulgham (a] webkit.org>
   13581 
   13582         Unreviewed build fix.
   13583 
   13584         * UIProcess/win/WebInspectorProxyWin.cpp: Non-Apple builds
   13585         need to include <wtf/RetainPtr.h>.
   13586 
   13587 2010-12-13  Brent Fulgham  <bfulgham (a] webkit.org>
   13588 
   13589         Unreviewed build fix after r73807.
   13590 
   13591         Added stub implementation of Download object.
   13592 
   13593         * WebProcess/Downloads/curl: Added.
   13594         * WebProcess/Downloads/curl/DownloadCurl.cpp: Added.
   13595         (WebKit::Download::start):
   13596         (WebKit::Download::startWithHandle):
   13597         (WebKit::Download::cancel):
   13598         (WebKit::Download::platformInvalidate):
   13599         * win/WebKit2.vcproj: Exclude DownloadCFNet for Cairo builds,
   13600         added DownloadCurl (excluded for regular Apple builds.)
   13601 
   13602 2010-12-13  Anders Carlsson  <andersca (a] apple.com>
   13603 
   13604         Reviewed by Sam Weinig.
   13605 
   13606         Add the ability for plug-ins to toggle complex text input
   13607         https://bugs.webkit.org/show_bug.cgi?id=50966
   13608 
   13609         * PluginProcess/PluginControllerProxy.cpp:
   13610         (WebKit::PluginControllerProxy::PluginControllerProxy):
   13611         Initialize m_isComplexTextInputEnabled.
   13612 
   13613         (WebKit::PluginControllerProxy::setComplexTextInputEnabled):
   13614         Update m_isComplexTextInputEnabled.
   13615 
   13616         * PluginProcess/PluginControllerProxy.h:
   13617         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   13618         (WebKit::NetscapePlugin::NetscapePlugin):
   13619         Initialize m_pluginHasFocus and m_windowHasFocus.
   13620 
   13621         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   13622         (WebKit::NetscapePlugin::isWindowActive):
   13623         Return m_windowHasFocus.
   13624 
   13625         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   13626         (WebKit::NetscapePlugin::platformSetFocus):
   13627         Update m_pluginHasFocus and call setComplexTextInputEnabled.
   13628 
   13629         (WebKit::NetscapePlugin::windowFocusChanged):
   13630         Update m_windowHasFocus and call setComplexTextInputEnabled.
   13631 
   13632         * WebProcess/Plugins/PluginController.h:
   13633         Add setComplexTextInputEnabled.
   13634 
   13635         * WebProcess/Plugins/PluginView.cpp:
   13636         (WebKit::PluginView::setComplexTextInputEnabled):
   13637         * WebProcess/Plugins/PluginView.h:
   13638         Add setComplexTextInputEnabled
   13639 
   13640 2010-12-13  David Hyatt  <hyatt (a] apple.com>
   13641 
   13642         Reviewed by Adam Roben.
   13643 
   13644         Remove the space behavior that I added.  It's covered in EventHandler in WebCore
   13645         already for Windows.
   13646 
   13647         * WebProcess/WebPage/win/WebPageWin.cpp:
   13648         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
   13649 
   13650 2010-12-13  David Hyatt  <hyatt (a] apple.com>
   13651 
   13652         Reviewed by Sam Weinig.
   13653 
   13654         https://bugs.webkit.org/show_bug.cgi?id=48545, Home/End, PageUp/PageDwn should respect writing-mode.  Use
   13655         logical scrolling instead of physical scrolling for those keys in WebKit2.
   13656 
   13657         * WebProcess/WebPage/mac/WebPageMac.mm:
   13658         (WebKit::logicalScroll):
   13659         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
   13660         * WebProcess/WebPage/qt/WebPageQt.cpp:
   13661         (WebKit::logicalScroll):
   13662         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
   13663         * WebProcess/WebPage/win/WebPageWin.cpp:
   13664         (WebKit::logicalScroll):
   13665         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
   13666 
   13667 2010-12-13  Brian Weinstein  <bweinstein (a] apple.com>
   13668 
   13669         Reviewed by Darin Adler.
   13670 
   13671         WebKit2: Focusing Web Inspector window doesn't focus contents on Windows
   13672         https://bugs.webkit.org/show_bug.cgi?id=50947
   13673         <rdar://problem/8762468>
   13674         
   13675         When we get the notification that the inspector window has focused, focus the inner inspector view.
   13676 
   13677         * UIProcess/WebInspectorProxy.h:
   13678         * UIProcess/win/WebInspectorProxyWin.cpp:
   13679         (WebKit::WebInspectorProxy::onSetFocusEvent): Set the focus of the inspector view, because that is what
   13680             needs to be focused in the inspector window.
   13681 
   13682 2010-12-13  Dan Bernstein  <mitz (a] apple.com>
   13683 
   13684         Coding style fix.
   13685 
   13686         * WebProcess/Downloads/mac/DownloadMac.mm:
   13687         (WebKit::originatingURLFromBackForwardList):
   13688 
   13689 2010-12-13  Balazs Kelemen  <kbalazs (a] webkit.org>
   13690 
   13691         Unreviewed trivial build fix (linux, 64 bit, gcc-4.5.1)
   13692 
   13693         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   13694         (WebKit::WebChromeClient::exceededDatabaseQuota):
   13695         Don't use unsigned long long as alias for uint64_t.
   13696 
   13697 2010-12-13  Anders Carlsson  <andersca (a] apple.com>
   13698 
   13699         Reviewed by John Sullivan.
   13700 
   13701         Crash when clicking a download link that targets a new tab
   13702         https://bugs.webkit.org/show_bug.cgi?id=50935
   13703         <rdar://problem/8760572>
   13704 
   13705         Check for a null history item.
   13706 
   13707         * WebProcess/Downloads/mac/DownloadMac.mm:
   13708         (WebKit::originatingURLFromBackForwardList):
   13709 
   13710 2010-12-13  Andras Becsi  <abecsi (a] webkit.org>
   13711 
   13712         Reviewed by Csaba Osztrogonc.
   13713 
   13714         [Qt][WK2] Fix build if WebKitTools are not available
   13715         https://bugs.webkit.org/show_bug.cgi?id=50242
   13716 
   13717         * DerivedSources.pro: Remove dependency to WebKitTools.
   13718         * Scripts/generate-forwarding-headers.pl: Moved from WebKitTools/Scripts/generate-forwarding-headers.pl.
   13719 
   13720 2010-12-13  Csaba Osztrogonc  <ossy (a] webkit.org>
   13721 
   13722         Unreviewed.
   13723 
   13724         * WebKit2.pro: Remove non-existant Shared/DrawingAreaBase.h from build system.
   13725 
   13726 2010-10-28  MORITA Hajime  <morrita (a] google.com>
   13727 
   13728         Reviewed by Ojan Vafai.
   13729 
   13730         spellcheck does not check pasted text
   13731         https://bugs.webkit.org/show_bug.cgi?id=40092
   13732 
   13733         Added a stub implememntation.
   13734 
   13735         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   13736         (WebKit::WebEditorClient::requestCheckingOfString):
   13737         * WebProcess/WebCoreSupport/WebEditorClient.h:
   13738 
   13739 2010-12-12  Brian Weinstein  <bweinstein (a] apple.com>
   13740 
   13741         Reviewed by Tim Hatcher.
   13742 
   13743         WebKit2: Implement WebInspector::localizedStringsURL on Windows
   13744         https://bugs.webkit.org/show_bug.cgi?id=50896
   13745         
   13746         Find the localized strings file using CFBundleCopyResourceURL.
   13747 
   13748         * WebProcess/WebPage/win/WebInspectorWin.cpp:
   13749         (WebKit::WebInspector::localizedStringsURL):
   13750 
   13751 2010-12-12  Sam Weinig  <sam (a] webkit.org>
   13752 
   13753         Reviewed by Anders Carlsson.
   13754 
   13755         Give LogTextInput a sensible flag value.
   13756 
   13757         * Platform/Logging.cpp:
   13758 
   13759 2010-12-12  Sam Weinig  <sam (a] webkit.org>
   13760 
   13761         Reviewed by Anders Carlsson.
   13762 
   13763         Remove incorrect assertion that has been firing in the API tester.
   13764 
   13765         * UIProcess/WebDatabaseManagerProxy.cpp:
   13766         (WebKit::WebDatabaseManagerProxy::~WebDatabaseManagerProxy):
   13767 
   13768 2010-12-12  Sam Weinig  <sam (a] webkit.org>
   13769 
   13770         Reviewed by Anders Carlsson.
   13771 
   13772         Disable WebKit2 logging by default.
   13773         https://bugs.webkit.org/show_bug.cgi?id=50878
   13774 
   13775         * Platform/Logging.cpp:
   13776         (initializeLogChannelsIfNecessary):
   13777 
   13778 2010-12-11  Brian Weinstein  <bweinstein (a] apple.com>
   13779 
   13780         Reviewed by Sam Weinig.
   13781 
   13782         Web Inspector: Make inspector on Windows show and be usable in WebKit2
   13783         https://bugs.webkit.org/show_bug.cgi?id=50877
   13784         
   13785         Hook up the unimplemented methods in WebInspectorProxyWin to get the web inspector
   13786         showing and usable in WebKit2 on Windows.
   13787 
   13788         * UIProcess/WebInspectorProxy.cpp:
   13789         (WebKit::WebInspectorProxy::WebInspectorProxy): Initialize Windows-specific variables to 0.
   13790         * UIProcess/WebInspectorProxy.h:
   13791         * UIProcess/win/WebInspectorProxyWin.cpp:
   13792         (WebKit::WebInspectorProxy::registerInspectorViewWindowClass): Sets up the inspector view class.
   13793         (WebKit::WebInspectorProxy::InspectorViewWndProc): Calls through to the WebInspectorProxy's non-static
   13794             WndProc.
   13795         (WebKit::WebInspectorProxy::wndProc): Handles WM_SIZE, WM_CLOSE, and WM_GETMINMAXINFO, the rest go to 
   13796             ::DefWindowProc.
   13797         (WebKit::WebInspectorProxy::onSizeEvent): Resize the WKView that has the inspector page to match the
   13798             outer window that was just resized.
   13799         (WebKit::WebInspectorProxy::onMinMaxInfoEvent): Set the minimum size the window can be resized to.
   13800         (WebKit::WebInspectorProxy::onCloseEvent): Hide the window, and call WebInspectorProxy::close.
   13801         (WebKit::WebInspectorProxy::platformCreateInspectorPage): Create a WKView and return its page.
   13802         (WebKit::WebInspectorProxy::platformOpen): Create an HWND for the inspector, put the inspector's WKView
   13803             inside of it, and show the window.
   13804         (WebKit::WebInspectorProxy::platformClose): Destroy the inspector's window (which destroys the child WKView), 
   13805             and 0 out instance variables.
   13806         (WebKit::WebInspectorProxy::inspectorPageURL): Finds inspector/inspector.html in the WebKit bundle.
   13807 
   13808 2010-12-12  Balazs Kelemen  <kbalazs (a] webkit.org>
   13809 
   13810         Reviewed by Andreas Kling.
   13811 
   13812         [Qt][WK2] Crash in WebPage constructor.
   13813         https://bugs.webkit.org/show_bug.cgi?id=50892
   13814 
   13815         * WebProcess/qt/WebProcessQt.cpp:
   13816         (WebKit::WebProcess::platformInitializeWebProcess):
   13817         Disable runtime enabled features that have no WebKit2 implementation yet.
   13818 
   13819 2010-12-10  Jon Honeycutt  <jhoneycutt (a] apple.com>
   13820 
   13821         Select menus with short option titles do not paint properly
   13822         https://bugs.webkit.org/show_bug.cgi?id=50860
   13823         <rdar://problem/8660807>
   13824 
   13825         The backing stores used for painting the popup menu items were only as
   13826         wide as the widest option title, but the popup window that we create is
   13827         at least as wide as the <select> element. This adjusts the backing
   13828         stores to be at least as wide as the <select>, as well.
   13829 
   13830         Reviewed by Sam Weinig.
   13831 
   13832         * UIProcess/win/WebPopupMenuProxyWin.cpp:
   13833         (WebKit::WebPopupMenuProxyWin::paint):
   13834         Paint using the width of the backing store.
   13835 
   13836         * WebProcess/WebCoreSupport/WebPopupMenu.cpp:
   13837         (WebKit::WebPopupMenu::show):
   13838         Pass the page coordinates of the <select> element to
   13839         setUpPlatformData().
   13840 
   13841         * WebProcess/WebCoreSupport/WebPopupMenu.h:
   13842         Added new parameter to setUpPlatformData().
   13843 
   13844         * WebProcess/WebCoreSupport/mac/WebPopupMenuMac.mm:
   13845         (WebKit::WebPopupMenu::setUpPlatformData):
   13846         Ditto.
   13847 
   13848         * WebProcess/WebCoreSupport/qt/WebPopupMenuQt.cpp:
   13849         (WebKit::WebPopupMenu::setUpPlatformData):
   13850         Ditto.
   13851 
   13852         * WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp:
   13853         (WebKit::WebPopupMenu::setUpPlatformData):
   13854         Fixed a typo in a comment. Adjust the backing store size to be at least
   13855         as wide as the <select> element, and use that width when painting the
   13856         items to the backing store.
   13857 
   13858 2010-12-11  Csaba Osztrogonc  <ossy (a] webkit.org>
   13859 
   13860         Unreviewed Qt buildfix after r73808.
   13861 
   13862         WebKit2: Need a WebKit2 equivalent of the WebKit1 WebDatabaseManager
   13863         https://bugs.webkit.org/show_bug.cgi?id=50606
   13864 
   13865         * DerivedSources.pro:
   13866 
   13867 2010-12-11  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   13868 
   13869         Unreviewed, rolling out r73834.
   13870         http://trac.webkit.org/changeset/73834
   13871         https://bugs.webkit.org/show_bug.cgi?id=50866
   13872 
   13873         It broke Qt-WebKit2 build, because of missing WK2_DIR variable
   13874         (Requested by Ossy on #webkit).
   13875 
   13876         * WebKit2.pro:
   13877 
   13878 2010-12-10  Siddharth Mathur  <siddharth.mathur (a] nokia.com>
   13879 
   13880         Reviewed by Eric Seidel.
   13881 
   13882         [Qt][WK2] Make WebKit2 static library compile on Symbian
   13883         https://bugs.webkit.org/show_bug.cgi?id=50861
   13884 
   13885         * WebKit2.pro:
   13886 
   13887 2010-12-10  Sam Weinig  <sam (a] webkit.org>
   13888 
   13889         Reviewed by Anders Carlsson.
   13890 
   13891         Ensure that we are not getting too many wheel events
   13892         <rdar://problem/7881465>
   13893 
   13894         Add simple coalescing of wheel events being sent to the WebProcess. This 
   13895         adds two models, one which drops interim events and one which merges events
   13896         together. For now, we are using the simpler dropping model.
   13897 
   13898         * Shared/WebEvent.h:
   13899         (WebKit::WebEvent::modifiers):
   13900         * UIProcess/WebPageProxy.cpp:
   13901         (WebKit::WebPageProxy::WebPageProxy):
   13902         (WebKit::coalesceWheelEvents):
   13903         (WebKit::WebPageProxy::handleWheelEvent):
   13904         (WebKit::WebPageProxy::didReceiveEvent):
   13905         * UIProcess/WebPageProxy.h:
   13906 
   13907 2010-12-10  Anders Carlsson  <andersca (a] apple.com>
   13908 
   13909         Reviewed by John Sullivan.
   13910 
   13911         Make WKContextGetStatistics gather global statistics
   13912         https://bugs.webkit.org/show_bug.cgi?id=50850
   13913 
   13914         Change WKContextGetStatistics to work on all objects in the process, and
   13915         make it more robust by incrementing/decrementing the counts in the constructor
   13916         and destructor respectively. 
   13917         
   13918         Also, rename WKContextGetStatistics to WKContextGetGlobalStatistics to better match
   13919         what it's actually doing.
   13920 
   13921         * UIProcess/API/C/WKContext.cpp:
   13922         (WKContextGetStatistics):
   13923         * UIProcess/API/C/WKContextPrivate.h:
   13924         * UIProcess/API/mac/WKView.mm:
   13925         (-[WKView initWithFrame:pageNamespaceRef:pageGroupRef:]):
   13926         (-[WKView dealloc]):
   13927         * UIProcess/WebContext.cpp:
   13928         (WebKit::WebContext::statistics):
   13929         * UIProcess/WebContext.h:
   13930         * UIProcess/WebFrameProxy.cpp:
   13931         (WebKit::WebFrameProxy::WebFrameProxy):
   13932         (WebKit::WebFrameProxy::~WebFrameProxy):
   13933         * UIProcess/WebPageNamespace.cpp:
   13934         * UIProcess/WebPageNamespace.h:
   13935         * UIProcess/WebPageProxy.cpp:
   13936         (WebKit::WebPageProxy::WebPageProxy):
   13937         (WebKit::WebPageProxy::~WebPageProxy):
   13938         * UIProcess/WebPageProxy.h:
   13939 
   13940 2010-12-10  Brian Weinstein  <bweinstein (a] apple.com>
   13941 
   13942         Reviewed by Darin Adler.
   13943 
   13944         WebKit2: Context menu support on Windows
   13945         <https://bugs.webkit.org/show_bug.cgi?id=50514>
   13946         
   13947         Implment showing of the context menu on Windows for WebKit2, and calling through to
   13948         WebPageProxy::contextMenuItemSelected.
   13949 
   13950         * UIProcess/win/WebContextMenuProxyWin.cpp:
   13951         (WebKit::WebContextMenuProxyWin::WebContextMenuProxyWin): Initialize the member variables.
   13952         (WebKit::WebContextMenuProxyWin::populateMenu): Iterate over the vector of WebContextMenuItemData
   13953             that was passed in, adding the menu items and recursively calling back into this function to populate
   13954             any submenus that are needed. This function also sets up the map from action identifierss to WebContextMenuItemData,
   13955             to use to find the WebContextMenuItemData from a selected menu item.
   13956         (WebKit::WebContextMenuProxyWin::showContextMenu): Destroy any menu we have already created, populate the menu
   13957             to show, and show the context menu. Once TrackPopupMenuEx returns, it returns identifier of the selected menu item.
   13958             Look up that identifier in the map we created, and tell the WebPageProxy that a context menu item was selected.
   13959         (WebKit::WebContextMenuProxyWin::hideContextMenu): Destroy the HMENU if it is non-null, and clear the identifier map. 
   13960         * UIProcess/win/WebContextMenuProxyWin.h:
   13961         (WebKit::WebContextMenuProxyWin::create): Call through to the constructor, and change the arguments that it takes.
   13962         * UIProcess/win/WebView.cpp:
   13963         (WebKit::WebView::createContextMenuProxy): Call with the correct arguments.
   13964 
   13965 2010-12-10  Jessie Berlin  <jberlin (a] apple.com>
   13966 
   13967         Qt Build Fix. Unreviewed.
   13968 
   13969         * WebKit2.pro:
   13970         Add the Messages.h and MessageReceivers.h.
   13971 
   13972 2010-12-10  Jessie Berlin  <jberlin (a] apple.com>
   13973 
   13974         Reviewed by Adam Roben and Sam Weinig.
   13975 
   13976         WebKit2: Need a WebKit2 equivalent of the WebKit1 WebDatabaseManager
   13977         https://bugs.webkit.org/show_bug.cgi?id=50606
   13978 
   13979         Add a WebDatabaseManagerProxy owned by the WebContext.
   13980 
   13981         Expose API (similar to the WebKit1 API) to get a list of origins for which there are
   13982         Databases, delete all the databases for a given origin, and delete all the databases.
   13983 
   13984         Add WebDatabaseManager and WebDatabaseManagerProxy as messages receivers.
   13985         * DerivedSources.make:
   13986         * Platform/CoreIPC/MessageID.h:
   13987 
   13988         Add the WebDatabaseManagerProxy as a UIProcess type (DatabaseManager).
   13989         * Shared/API/c/WKBase.h:
   13990         * Shared/APIObject.h:
   13991         * UIProcess/API/C/WKAPICast.h:
   13992 
   13993         * UIProcess/API/C/WKContext.cpp:
   13994         (WKContextGetDatabaseManager):
   13995         Expose API to get the DatabaseManager.
   13996         * UIProcess/API/C/WKContext.h:
   13997 
   13998         * UIProcess/API/C/WKDatabaseManager.cpp: Added.
   13999         (WKDatabaseManagerGetTypeID):
   14000         (WKDatabaseManagerGetDatabaseOrigins):
   14001         (callGetDatabaseOriginsBlockBlockAndDispose):
   14002         (WKDatabaseManagerGetDatabaseOrigins_b):
   14003         (WKDatabaseManagerDeleteDatabasesForOrigin):
   14004         (WKDatabaseManagerDeleteAllDatabases):
   14005         * UIProcess/API/C/WKDatabaseManager.h: Added.
   14006 
   14007         * UIProcess/WebContext.cpp:
   14008         (WebKit::WebContext::WebContext):
   14009         Create the WebDatabaseManagerProxy.
   14010         (WebKit::WebContext::processDidClose):
   14011         Invalidate the WebDatabaseManagerProxy.
   14012         (WebKit::WebContext::didReceiveMessage):
   14013         Forward messages to the WebDatabaseManagerProxy.
   14014         * UIProcess/WebContext.h:
   14015         (WebKit::WebContext::databaseManagerProxy):
   14016 
   14017         * UIProcess/WebDatabaseManagerProxy.cpp: Added.
   14018         (WebKit::WebDatabaseManagerProxy::create):
   14019         (WebKit::WebDatabaseManagerProxy::WebDatabaseManagerProxy):
   14020         (WebKit::WebDatabaseManagerProxy::~WebDatabaseManagerProxy):
   14021         (WebKit::WebDatabaseManagerProxy::invalidate):
   14022         Invalidate the map of callbacks for getDatabaseOrigins.
   14023         (WebKit::WebDatabaseManagerProxy::getDatabaseOrigins):
   14024         Store the callback and send the request for the origins which have databases to the
   14025         WebProcess.
   14026         (WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins):
   14027         Call the callback function with the SecurityOrigins created from the identifiers received.
   14028         (WebKit::WebDatabaseManagerProxy::deleteDatabasesForOrigin):
   14029         If the origin exists, send the message on to the WebProcess to delete the databases
   14030         associated with that origin.
   14031         (WebKit::WebDatabaseManagerProxy::deleteAllDatabases):
   14032         Send the message to the WebProcess to delete all the databases.
   14033         * UIProcess/WebDatabaseManagerProxy.h: Added.
   14034         (WebKit::WebDatabaseManagerProxy::type):
   14035         * UIProcess/WebDatabaseManagerProxy.messages.in: Added.
   14036 
   14037         * UIProcess/WebPageProxy.cpp:
   14038         Move invalidateCallbackMap from here ...
   14039         * UIProcess/GenericCallback.h:
   14040         (WebKit::invalidateCallbackMap):
   14041         .. to here so that it can be used elsewhere (e.g. by WebDatabaseManagerProxy).
   14042 
   14043         * UIProcess/WebProcessProxy.cpp:
   14044         (WebKit::WebProcessProxy::didReceiveMessage):
   14045         Forward on all messages destined for the WebDatabaseManagerProxy to the WebContext.
   14046 
   14047         * WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
   14048         (WebKit::WebDatabaseManager::didReceiveMessage):
   14049         (WebKit::WebDatabaseManager::getDatabaseOrigins):
   14050         Send an array of the identifiers for the SecurityOrigins for which there are databases to
   14051         the UIProcess.
   14052         (WebKit::WebDatabaseManager::deleteDatabasesForOrigin):
   14053         If the SecurityOrigin with that identifier exists, tell the DatabaseTracker to delete the
   14054         databases for that origin.
   14055         (WebKit::WebDatabaseManager::deleteAllDatabases):
   14056         Tell the DatabaseTracker to delete the databases for that origin.
   14057         * WebProcess/WebCoreSupport/WebDatabaseManager.h:
   14058         * WebProcess/WebCoreSupport/WebDatabaseManager.messages.in: Added.
   14059         * WebProcess/WebProcess.cpp:
   14060         (WebKit::WebProcess::didReceiveMessage):
   14061 
   14062         * WebKit2.pro:
   14063         Add WKDatabaseManager.cpp/.h and WebDatabaseManagerProxy.cpp/.h
   14064         * WebKit2.xcodeproj/project.pbxproj:
   14065         Ditto, also add WebDatabaseManagerProxy.messages.in and WebDatabaseManager.messages.in.
   14066         * win/WebKit2.vcproj:
   14067         Ditto.
   14068         * win/WebKit2Generated.make:
   14069         Make sure WKDatabaseManager.h is copied into WebKitBuild on Windows.
   14070 
   14071 2010-12-10  Ada Chan  <adachan (a] apple.com>
   14072 
   14073         Reviewed by Anders Carlsson.
   14074 
   14075         Implement Download::start() and Download::startWithHandle() on Windows.
   14076         https://bugs.webkit.org/show_bug.cgi?id=50844
   14077 
   14078         * WebProcess/Downloads/Download.h:
   14079         * WebProcess/Downloads/cf/DownloadCFNet.cpp:
   14080         (WebKit::Download::start): Create a CFURLDownloadRef and schedule it.
   14081         (WebKit::Download::startWithHandle): Create a CFURLDownloadRef with the loading connection
   14082         retrieved from the ResourceHandle.
   14083         (WebKit::Download::platformInvalidate):
   14084         (WebKit::downloadFromClientInfo):
   14085         (WebKit::didStartCallback):
   14086         (WebKit::willSendRequestCallback):
   14087         (WebKit::didReceiveAuthenticationChallengeCallback):
   14088         (WebKit::didReceiveResponseCallback):
   14089         (WebKit::willResumeWithResponseCallback):
   14090         (WebKit::didReceiveDataCallback):
   14091         (WebKit::shouldDecodeDataOfMIMETypeCallback):
   14092         (WebKit::decideDestinationWithSuggestedObjectNameCallback):
   14093         (WebKit::didCreateDestinationCallback):
   14094         (WebKit::didFinishCallback):
   14095         (WebKit::didFailCallback):
   14096 
   14097 2010-12-10  Enrica Casucci  <enrica (a] apple.com>
   14098 
   14099         Windows build fix. Unreviewed.
   14100 
   14101         Adding a dummy synchronous message for platforms
   14102         that don't have any.
   14103 
   14104         * WebProcess/WebPage/WebPage.cpp:
   14105         (WebKit::WebPage::dummy):
   14106         * WebProcess/WebPage/WebPage.h:
   14107         * WebProcess/WebPage/WebPage.messages.in:
   14108 
   14109 2010-12-09  Brian Weinstein  <bweinstein (a] apple.com>
   14110 
   14111         Reviewed by Adam Roben.
   14112 
   14113         Prep for WebKit2: Context menu support on Windows
   14114         https://bugs.webkit.org/show_bug.cgi?id=50514
   14115         
   14116         Update WebKit2 to call the correct code when CROSS_PLATFORM_CONTEXT_MENUS is set.
   14117 
   14118         * Shared/WebContextMenuItemData.cpp:
   14119         (WebKit::WebContextMenuItemData::WebContextMenuItemData): Add a branch based on whether or not 
   14120             CROSS_PLATFORM_CONTEXT_MENUS is set.
   14121         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
   14122         (WebKit::WebContextMenuClient::customizeMenu): Define different functions based on
   14123             whether or not CROSS_PLATFORM_CONTEXT_MENUS. Both of these are stubs, so functionality
   14124             doesn't need to be shared.
   14125         * WebProcess/WebCoreSupport/WebContextMenuClient.h: Define different functions based on
   14126             whether or not CROSS_PLATFORM_CONTEXT_MENUS. 
   14127         * WebProcess/WebPage/WebContextMenu.cpp:
   14128         (WebKit::WebContextMenu::show): Add a branch based on whether or not 
   14129             CROSS_PLATFORM_CONTEXT_MENUS is set.
   14130 
   14131 2010-12-09  Enrica Casucci  <enrica (a] apple.com>
   14132 
   14133         Reviewed by Alexey Proskuryakov.
   14134 
   14135         Implement IME support for Mac.
   14136         <rdar://problem/7660589> WebKit2: Implement IME support for Mac.
   14137         https://bugs.webkit.org/show_bug.cgi?id=50788
   14138             
   14139         This patch addes support for input methods in WebKit2.
   14140         In order to support IME, it was necessary to add synchronous calls from the UIProcess
   14141         to the WebProcess. These calls all have a timeout of 1 second.
   14142         The current implementation still uses the NSTextInput protocol, but the plan is to move
   14143         to the NSTextInputClient protocol. This has not been done yet for ease of comparison with
   14144         WebKit. attributedSubstringFromRange is the only method that has not been implemented, because
   14145         I have not yet decided what is the best way to send an NSAttributedString across the process
   14146         boundary.
   14147 
   14148         * Platform/CoreIPC/HandleMessage.h:
   14149         (CoreIPC::callMemberFunction): Added template for member function.
   14150         with four reply arguments.
   14151         * Scripts/webkit2/messages.py: Added CompositionUnderline and relevant header.
   14152         * Shared/WebCoreArgumentCoders.h:
   14153         (CoreIPC::): Added encoder/decoder for CompositionUnderline.
   14154         * UIProcess/API/mac/PageClientImpl.h: Added parameters to interceptKeyEvent and selectionChanged.
   14155         * UIProcess/API/mac/PageClientImpl.mm:
   14156         (WebKit::PageClientImpl::selectionChanged): Added parameters.
   14157         (WebKit::PageClientImpl::interceptKeyEvent): Added parameters.
   14158         * UIProcess/API/mac/WKView.mm:
   14159         (-[WKView initWithFrame:pageNamespaceRef:pageGroupRef:]): Added initialization of new private members.
   14160         (-[WKView insertText:]):
   14161         (-[WKView _selectionChanged:isEditable:isPassword:hasMarkedText:range:]): Added parameters.
   14162         (-[WKView _interceptKeyEvent:hasComposition:start:end:lines:WebCore::]): Added parameters.
   14163         (-[WKView keyDown:]): Modified to reset state on each keyDown.
   14164         (-[WKView selectedRange]): Added.
   14165         (-[WKView hasMarkedText]): Added.
   14166         (-[WKView unmarkText]): Added.
   14167         (-[WKView validAttributesForMarkedText]): Added.
   14168         (extractUnderlines): Added.
   14169         (-[WKView setMarkedText:selectedRange:]): Added.
   14170         (-[WKView markedRange]): Added.
   14171         (-[WKView attributedSubstringFromRange:]): Added.
   14172         (-[WKView characterIndexForPoint:]): Added.
   14173         (-[WKView firstRectForCharacterRange:]): Added.
   14174         (-[WKView conversationIdentifier]): Added.
   14175         * UIProcess/API/mac/WKViewInternal.h: Added parameters to _interceptKeyEvent and _selectionChanged.
   14176         * UIProcess/PageClient.h: Added parameters to interpretKeyEvent and selectionChanged.
   14177         * UIProcess/WebPageProxy.cpp:
   14178         (WebKit::WebPageProxy::getMarkedRange): Added.
   14179         (WebKit::WebPageProxy::characterIndexForPoint): Added.
   14180         (WebKit::WebPageProxy::firstRectForCharacterRange): Added.
   14181         (WebKit::WebPageProxy::interpretKeyEvent): Additional parameters.
   14182         (WebKit::WebPageProxy::didSelectionChange): Additional parameters for Mac platform.
   14183         * UIProcess/WebPageProxy.h: Added new methods and parameters to didSelectionChange
   14184         and interpretKeyEvent.
   14185         * UIProcess/WebPageProxy.messages.in: Added parameters to interpretKeyEvent and selectionChanged messages.
   14186         * UIProcess/WebProcessProxy.h:
   14187         (WebKit::WebProcessProxy::sendSync): Added support for synchronous messages.
   14188         The default timeout is 1 second.
   14189         * WebProcess/WebCoreSupport/WebEditorClient.cpp: respondToChangedSelection is now
   14190         only for non Mac platform.
   14191         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
   14192         (WebKit::WebEditorClient::respondToChangedSelection): Added implementation for Mac platform.
   14193         * WebProcess/WebPage/WebPage.cpp:
   14194         (WebKit::WebPage::didReceiveSyncMessage): Added.
   14195         * WebProcess/WebPage/WebPage.h: Added new methods and support for synchronous messages.
   14196         * WebProcess/WebPage/WebPage.messages.in: Added new messages.
   14197         * WebProcess/WebPage/mac/WebPageMac.mm:
   14198         (WebKit::WebPage::interceptEditingKeyboardEvent): Added parameters.
   14199         (WebKit::WebPage::convertRangeToPlatformRange): Added.
   14200         (WebKit::WebPage::getMarkedRange): Added.
   14201         (WebKit::characterRangeAtPoint): Added.
   14202         (WebKit::WebPage::characterIndexForPoint): Added.
   14203         (WebKit::convertToRange): Added.
   14204         (WebKit::WebPage::firstRectForCharacterRange): Added.
   14205         * WebProcess/WebProcess.cpp:
   14206         (WebKit::WebProcess::didReceiveSyncMessage): Added.
   14207         * WebProcess/WebProcess.h: Added didReceiveSyncMessage.
   14208 
   14209 2010-12-10  Jocelyn Turcotte  <jocelyn.turcotte (a] nokia.com>
   14210 
   14211         Reviewed by Kenneth Rohde Christiansen.
   14212 
   14213         [Qt][WK2] Add the QWKContext API class to wrap the WebContext.
   14214         https://bugs.webkit.org/show_bug.cgi?id=50750
   14215 
   14216         * UIProcess/API/qt/WKView.h:
   14217         * UIProcess/API/qt/qgraphicswkview.cpp:
   14218         (QGraphicsWKView::QGraphicsWKView):
   14219         Change the WKPageNamespaceRef argument to QWKContext*
   14220         * UIProcess/API/qt/qgraphicswkview.h:
   14221         * UIProcess/API/qt/qwkcontext.cpp: Added.
   14222         * UIProcess/API/qt/qwkcontext.h: Added.
   14223         * UIProcess/API/qt/qwkcontext_p.h: Added.
   14224         * UIProcess/API/qt/qwkpage.cpp:
   14225         (QWKPagePrivate::QWKPagePrivate):
   14226         (QWKPage::QWKPage):
   14227         Change the WKPageNamespaceRef argument to QWKContext*
   14228         * UIProcess/API/qt/qwkpage.h:
   14229         * UIProcess/API/qt/qwkpage_p.h:
   14230         * WebKit2.pro:
   14231 
   14232 2010-12-10  Kimmo Kinnunen  <kimmo.t.kinnunen (a] nokia.com>
   14233 
   14234         Reviewed by Kenneth Rohde Christiansen.
   14235 
   14236         Flush IPC connection send buffer after each message.
   14237 
   14238         [Qt] [WK2] IPC messages are not sent until send buffer fills up
   14239         https://bugs.webkit.org/show_bug.cgi?id=50667
   14240 
   14241         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   14242         (CoreIPC::Connection::sendOutgoingMessage):
   14243 
   14244 2010-12-09  Jocelyn Turcotte  <jocelyn.turcotte (a] nokia.com>
   14245 
   14246         Reviewed by Kenneth Rohde Christiansen.
   14247 
   14248         [Qt][WK2] Use a single QNetworkAccessManager per web process.
   14249         https://bugs.webkit.org/show_bug.cgi?id=50757
   14250 
   14251         This allows a better management of network resources and the use
   14252         of global cookie jar and disk cache across all frames.
   14253 
   14254         * WebProcess/WebCoreSupport/qt/WebFrameNetworkingContext.cpp:
   14255         (WebCore::WebFrameNetworkingContext::WebFrameNetworkingContext):
   14256         (WebCore::WebFrameNetworkingContext::networkAccessManager):
   14257         * WebProcess/WebCoreSupport/qt/WebFrameNetworkingContext.h:
   14258         * WebProcess/WebProcess.cpp:
   14259         (WebKit::WebProcess::WebProcess):
   14260         (WebKit::WebProcess::initializeWebProcess):
   14261         (WebKit::WebProcess::shutdownIfPossible):
   14262         * WebProcess/WebProcess.h:
   14263         (WebKit::WebProcess::networkAccessManager):
   14264         * WebProcess/mac/WebProcessMac.mm:
   14265         (WebKit::WebProcess::platformInitializeWebProcess):
   14266         (WebKit::WebProcess::platformShutdown):
   14267         * WebProcess/qt/WebProcessQt.cpp:
   14268         (WebKit::WebProcess::platformInitializeWebProcess):
   14269         (WebKit::WebProcess::platformShutdown):
   14270         * WebProcess/win/WebProcessWin.cpp:
   14271         (WebKit::WebProcess::platformInitializeWebProcess):
   14272         (WebKit::WebProcess::platformShutdown):
   14273 
   14274 2010-12-09  Mark Rowe  <mrowe (a] apple.com>
   14275 
   14276         Fix the 32-bit build.
   14277 
   14278         * Shared/cf/ArgumentCodersCF.cpp:
   14279         (CoreIPC::sizeForNumberType):
   14280 
   14281 2010-12-09  Maciej Stachowiak  <mjs (a] apple.com>
   14282 
   14283         Reviewed by Brady Eidson.
   14284 
   14285         WebKit2: Control-click doesn't invoke context menu
   14286         https://bugs.webkit.org/show_bug.cgi?id=50793
   14287         <rdar://problem/8664800>
   14288 
   14289         * WebProcess/WebPage/WebPage.cpp:
   14290         (WebKit::isContextClick): New helper function - on Mac, not only right clicks
   14291         but also control-left-clicks are context clicks.
   14292         (WebKit::handleMouseEvent): Use above.
   14293 
   14294 2010-12-09  Anders Carlsson  <andersca (a] apple.com>
   14295 
   14296         Fix clang++ build.
   14297 
   14298         * Scripts/webkit2/messages.py:
   14299         DrawingAreaInfo is a struct.
   14300 
   14301         * Shared/WebPreferencesStore.cpp:
   14302         (WebKit::valueForKey):
   14303         Move valueForKey above code that uses it.
   14304 
   14305         * UIProcess/mac/WebInspectorProxyMac.mm:
   14306         (-[WebInspectorProxyObjCAdapter windowWillClose:]):
   14307         Remove trailing semicolon.
   14308 
   14309 2010-12-09  Timothy Hatcher  <timothy (a] apple.com>
   14310 
   14311         Add support for transparent WebKit2 WKViews.
   14312 
   14313         https://webkit.org/b/50785
   14314 
   14315         Reviewed by Anders Carlsson.
   14316 
   14317         * Shared/WebPageCreationParameters.cpp:
   14318         (WebKit::WebPageCreationParameters::encode): Encode drawsBackground and drawsTransparentBackground.
   14319         (WebKit::WebPageCreationParameters::decode): Decode drawsBackground and drawsTransparentBackground.
   14320         * Shared/WebPageCreationParameters.h:
   14321         * UIProcess/API/mac/WKView.h:
   14322         * UIProcess/API/mac/WKView.mm:
   14323         (-[WKView setDrawsBackground:]): Added.
   14324         (-[WKView drawsBackground]): Added.
   14325         (-[WKView setDrawsTransparentBackground:]): Added.
   14326         (-[WKView drawsTransparentBackground]): Added.
   14327         (-[WKView drawRect:]): Only fill the background if the WebProcess isn't valid and drawsBackground.
   14328         Use white or clear based on setDrawsTransparentBackground.
   14329         (-[WKView isOpaque]): Return drawsBackground.
   14330         * UIProcess/WebPageProxy.cpp:
   14331         (WebKit::WebPageProxy::WebPageProxy): Initialize m_drawsBackground and m_drawsTransparentBackground.
   14332         (WebKit::WebPageProxy::setDrawsBackground): Added. Send a SetDrawsBackground message.
   14333         (WebKit::WebPageProxy::setDrawsTransparentBackground): Added. Send a SetDrawsTransparentBackground message.
   14334         (WebKit::WebPageProxy::creationParameters): Set drawsBackground and drawsTransparentBackground.
   14335         * UIProcess/WebPageProxy.h:
   14336         (WebKit::WebPageProxy::drawsBackground): Added. Return m_drawsBackground.
   14337         (WebKit::WebPageProxy::drawsTransparentBackground): Added. Return m_drawsTransparentBackground.
   14338         * UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm:
   14339         (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint): Use the copy blend mode when drawing a background.
   14340         (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore): Use the copy blend mode to replace existing content.
   14341         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   14342         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage): Setup the new view's background color and transparent flag.
   14343         * WebProcess/WebPage/WebPage.cpp:
   14344         (WebKit::WebPage::WebPage): Initialize m_drawsBackground and m_drawsTransparentBackground.
   14345         (WebKit::WebPage::setDrawsBackground): Added. Propagate the flag to the FrameViews.
   14346         (WebKit::WebPage::setDrawsTransparentBackground): Added. Propagate the background color to the FrameViews.
   14347         * WebProcess/WebPage/WebPage.h:
   14348         (WebKit::WebPage::drawsBackground): Added. Return m_drawsBackground.
   14349         (WebKit::WebPage::drawsTransparentBackground): Added. Return m_drawsTransparentBackground.
   14350         * WebProcess/WebPage/WebPage.messages.in: Added SetDrawsBackground and SetDrawsTransparentBackground.
   14351 
   14352 2010-12-09  Anders Carlsson  <andersca (a] apple.com>
   14353 
   14354         Reviewed by Sam Weinig.
   14355 
   14356         Cannot use NSKeyedArchiver in WK2 for ResourceResponses
   14357         https://bugs.webkit.org/show_bug.cgi?id=50792
   14358         <rdar://problem/8741799>
   14359 
   14360         When encoding, first convert the requests and responses to the serializable dictionary representation
   14361         and use the newly added CF CoreIPC encoders. When decoding, do the opposite.
   14362 
   14363         * Shared/mac/WebCoreArgumentCodersMac.mm:
   14364         (CoreIPC::encodeResourceRequest):
   14365         (CoreIPC::decodeResourceRequest):
   14366         (CoreIPC::encodeResourceResponse):
   14367         (CoreIPC::decodeResourceResponse):
   14368 
   14369 2010-12-09  Anders Carlsson  <andersca (a] apple.com>
   14370 
   14371         Reviewed by Sam Weinig.
   14372 
   14373         Add CoreIPC coders for CF types
   14374         https://bugs.webkit.org/show_bug.cgi?id=50791
   14375 
   14376         * Platform/CoreIPC/ArgumentDecoder.h:
   14377         (CoreIPC::ArgumentDecoder::decodeEnum):
   14378         * Platform/CoreIPC/ArgumentEncoder.h:
   14379         (CoreIPC::ArgumentEncoder::encodeEnum):
   14380         * Shared/cf/ArgumentCodersCF.cpp: Added.
   14381         (CoreIPC::tokenNullTypeRef):
   14382         (CoreIPC::typeFromCFTypeRef):
   14383         (CoreIPC::encode):
   14384         (CoreIPC::decode):
   14385         (CoreIPC::sizeForNumberType):
   14386         * Shared/cf/ArgumentCodersCF.h: Added.
   14387         * WebKit2.xcodeproj/project.pbxproj:
   14388 
   14389 2010-12-09  Brady Eidson  <beidson (a] apple.com>
   14390 
   14391         Reviewed by Sam Weinig.
   14392 
   14393         <rdar://problem/8749750> and https://bugs.webkit.org/show_bug.cgi?id=50786
   14394         WK2 authentication never consults WebCore session credential storage.
   14395 
   14396         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   14397         (WebKit::WebFrameLoaderClient::shouldUseCredentialStorage): Since we don't need to expose this as
   14398           API at this time, always return true.
   14399 
   14400 2010-12-09  Sam Weinig  <weinig (a] apple.com>
   14401 
   14402         Reviewed by Alexey Proskuryakov.
   14403 
   14404         WebKit2: Add support for access keys
   14405         https://bugs.webkit.org/show_bug.cgi?id=49832
   14406 
   14407         * WebProcess/WebPage/WebPage.cpp:
   14408         (WebKit::handleKeyEvent): Match windows WebKit and call
   14409         the event handler's for handleAccessKey function for
   14410         system keys. This will never be hit on the Mac.
   14411 
   14412 2010-12-09  Darin Adler  <darin (a] apple.com>
   14413 
   14414         Qt build fix.
   14415 
   14416         * WebProcess/WebCoreSupport/qt/WebContextMenuClientQt.cpp: Include "NotImplemented.h".
   14417 
   14418 2010-12-09  Steve Falkenburg  <sfalken (a] apple.com>
   14419 
   14420         Windows build fix.
   14421         
   14422         * WebProcess/WebCoreSupport/win/WebContextMenuClientWin.cpp:
   14423 
   14424 2010-12-09  Brady Eidson  <beidson (a] apple.com>
   14425 
   14426         Reviewed by Anders Carlsson.
   14427 
   14428         <rdar://problem/8613779> and https://bugs.webkit.org/show_bug.cgi?id=50777
   14429         WebKit2 ContextMenuClient support
   14430 
   14431         Implement google search in a cross platform manner, and add a FIXME for download support:
   14432         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
   14433         (WebKit::WebContextMenuClient::downloadURL):
   14434         (WebKit::WebContextMenuClient::searchWithGoogle):
   14435 
   14436         Mac implementations for speaking and searching:
   14437         * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm: Added.
   14438         (WebKit::WebContextMenuClient::lookUpInDictionary): Add a FIXME for now.
   14439         (WebKit::WebContextMenuClient::isSpeaking):
   14440         (WebKit::WebContextMenuClient::speak):
   14441         (WebKit::WebContextMenuClient::stopSpeaking):
   14442         (WebKit::WebContextMenuClient::searchWithSpotlight):
   14443 
   14444         Stubs for Win and Qt:
   14445         * WebProcess/WebCoreSupport/qt/WebContextMenuClientQt.cpp: Added.
   14446         (WebKit::WebContextMenuClient::lookUpInDictionary):
   14447         (WebKit::WebContextMenuClient::isSpeaking):
   14448         (WebKit::WebContextMenuClient::speak):
   14449         (WebKit::WebContextMenuClient::stopSpeaking):
   14450         * WebProcess/WebCoreSupport/win/WebContextMenuClientWin.cpp: Added.
   14451         (WebKit::WebContextMenuClient::lookUpInDictionary):
   14452         (WebKit::WebContextMenuClient::isSpeaking):
   14453         (WebKit::WebContextMenuClient::speak):
   14454         (WebKit::WebContextMenuClient::stopSpeaking):
   14455 
   14456         Project file stuffs:
   14457         * WebKit2.pro:
   14458         * WebKit2.xcodeproj/project.pbxproj:
   14459         * win/WebKit2.vcproj:
   14460 
   14461 2010-12-09  Anders Carlsson  <andersca (a] apple.com>
   14462 
   14463         Reviewed by Sam Weinig.
   14464 
   14465         Don't leak the PDFDocument
   14466         https://bugs.webkit.org/show_bug.cgi?id=50771
   14467 
   14468         * UIProcess/API/mac/PDFViewController.mm:
   14469         (WebKit::PDFViewController::setPDFDocumentData):
   14470 
   14471 2010-12-09  Anders Carlsson  <andersca (a] apple.com>
   14472 
   14473         Reviewed by Sam Weinig.
   14474 
   14475         Add a basic implementation of PDF support on Mac
   14476         https://bugs.webkit.org/show_bug.cgi?id=50768
   14477 
   14478         * UIProcess/API/mac/PDFViewController.h:
   14479         * UIProcess/API/mac/PDFViewController.mm: Added.
   14480         (-[WKPDFView initWithFrame:PDFViewController:WebKit::]):
   14481         Setup the view hierarchy.
   14482 
   14483         (-[WKPDFView invalidate]):
   14484         Set the controller to null.
   14485 
   14486         (-[WKPDFView pdfView]):
   14487         Return the PDF view.
   14488 
   14489         (WebKit::PDFViewController::create):
   14490         (WebKit::PDFViewController::PDFViewController):
   14491         Create a WKPDFView and insert it as a subview of the WKView.
   14492 
   14493         (WebKit::PDFViewController::~PDFViewController):
   14494         Remove the WKPDFView from the view hierarchy and invalidate it.
   14495 
   14496         (WebKit::convertPostScriptDataSourceToPDF):
   14497         Convert the data in the data reference to PDF and return it as a CFDataRef.
   14498 
   14499         (WebKit::PDFViewController::setPDFDocumentData):
   14500         Create a PDFDocument and set it on the PDF view.
   14501 
   14502         (WebKit::PDFViewController::pdfDocumentClass):
   14503         (WebKit::PDFViewController::pdfPreviewViewClass):
   14504         (WebKit::PDFViewController::pdfKitBundle):
   14505         Add soft-linking helper functions.
   14506 
   14507         * UIProcess/API/mac/PageClientImpl.mm:
   14508         (WebKit::PageClientImpl::didCommitLoadForMainFrame):
   14509         (WebKit::PageClientImpl::didFinishLoadingDataForCustomRepresentation):
   14510         Call the WKView methods.
   14511         
   14512         * UIProcess/API/mac/WKView.mm:
   14513         (-[WKView _setPageHasCustomRepresentation:]):
   14514         Create a PDF view controller if necessary.
   14515 
   14516         (-[WKView _didFinishLoadingDataForCustomRepresentation:CoreIPC::]):
   14517         Pass the data along to the PDF view controller.
   14518 
   14519         * WebKit2.xcodeproj/project.pbxproj:
   14520         Add new files.
   14521 
   14522 2010-12-09  Anders Carlsson  <andersca (a] apple.com>
   14523 
   14524         Reviewed by Sam Weinig.
   14525 
   14526         Add support for custom representation
   14527         https://bugs.webkit.org/show_bug.cgi?id=50767
   14528 
   14529         * Shared/WebProcessCreationParameters.cpp:
   14530         (WebKit::WebProcessCreationParameters::encode):
   14531         (WebKit::WebProcessCreationParameters::decode):
   14532         * Shared/WebProcessCreationParameters.h:
   14533         Add mimeTypesWithCustomRepresentation and encode and decode accordingly.
   14534 
   14535         * UIProcess/API/mac/PageClientImpl.h:
   14536         * UIProcess/API/mac/PageClientImpl.mm:
   14537         (WebKit::PageClientImpl::didCommitLoadForMainFrame):
   14538         (WebKit::PageClientImpl::didFinishLoadingDataForCustomRepresentation):
   14539         Add empty stubs for now.
   14540 
   14541         * UIProcess/API/qt/qwkpage.cpp:
   14542         (QWKPagePrivate::didCommitLoadForMainFrame):
   14543         (QWKPagePrivate::didFinishLoadingDataForCustomRepresentation):
   14544         * UIProcess/API/qt/qwkpage_p.h:
   14545         Add empty stubs.
   14546 
   14547         * UIProcess/PageClient.h:
   14548         Add new functions for custom representations.
   14549 
   14550         * UIProcess/WebFrameProxy.cpp:
   14551         (WebKit::WebFrameProxy::canShowMIMEType):
   14552         Check that the mime type is not null.
   14553 
   14554         * UIProcess/WebPageProxy.cpp:
   14555         (WebKit::WebPageProxy::didCommitLoadForFrame):
   14556         This now takes an additional frameHasCustomRepresentation parameter. 
   14557         Call the page client function.
   14558 
   14559         (WebKit::WebPageProxy::didFinishLoadingDataForCustomRepresentation):
   14560         Call the page client function.
   14561 
   14562         * UIProcess/WebPageProxy.messages.in:
   14563         Change DidCommitLoadForFrame message, add DidFinishLoadingDataForCustomRepresentation message.
   14564 
   14565         * UIProcess/mac/WebContextMac.mm:
   14566         (WebKit::WebContext::platformInitializeWebProcess):
   14567         We want to use custom representations for PDF and PostScript MIME types.
   14568 
   14569         * UIProcess/win/WebView.cpp:
   14570         (WebKit::WebView::didCommitLoadForMainFrame):
   14571         (WebKit::WebView::didFinishLoadingDataForCustomRepresentation):
   14572         * UIProcess/win/WebView.h:
   14573         Add stubs.
   14574 
   14575         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   14576         (WebKit::WebFrameLoaderClient::WebFrameLoaderClient):
   14577         Initialize m_frameHasCustomRepresentation.
   14578 
   14579         (WebKit::WebFrameLoaderClient::hasHTMLView):
   14580         The frame has a HTML view unless it has a custom representation.
   14581 
   14582         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
   14583         Pass along whether the frame has a custom representation.
   14584 
   14585         (WebKit::WebFrameLoaderClient::committedLoad):
   14586         Don't send data back to WebCore if the frame has a custom representation.
   14587 
   14588         (WebKit::WebFrameLoaderClient::finishedLoading):
   14589         Send all the data to the UI process.
   14590 
   14591         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
   14592         Update the m_frameHasCustomRepresentation state based on the MIME type.
   14593 
   14594         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   14595         (WebKit::WebFrameLoaderClient::frameHasCustomRepresentation):
   14596         Add getter.
   14597 
   14598         * WebProcess/WebPage/mac/ChunkedUpdateDrawingAreaMac.cpp:
   14599         (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):
   14600         Don't do any painting if the main frame has a custom representation.
   14601 
   14602         * WebProcess/WebProcess.cpp:
   14603         (WebKit::WebProcess::initializeWebProcess):
   14604         Add all the MIME types with custom representations.
   14605 
   14606         * WebProcess/WebProcess.h:
   14607         (WebKit::WebProcess::shouldUseCustomRepresentationForMIMEType):
   14608         Add getter.
   14609 
   14610 2010-12-09  Maciej Stachowiak  <mjs (a] apple.com>
   14611 
   14612         Reviewed by Dan Bernstein.
   14613 
   14614         Implement "Use Selection for Find" in WebKit2
   14615         https://bugs.webkit.org/show_bug.cgi?id=50737
   14616         <rdar://problem/8564881>
   14617         
   14618         * UIProcess/API/mac/WKView.mm: Add support for the takeFindStringFromSelection:
   14619         selector as a command.
   14620 
   14621 2010-12-09  Brady Eidson  <beidson (a] apple.com>
   14622 
   14623         Reviewed by Maciej Stachowiak.
   14624 
   14625         <rdar://problem/7660733> and https://bugs.webkit.org/show_bug.cgi?id=50191
   14626         WebKit2 Authentication Support
   14627 
   14628         Implement authentication-related coders:
   14629         * Shared/WebCoreArgumentCoders.h:
   14630 
   14631         Allow the ResourceResponse coders to handle null responses:
   14632         * Shared/mac/WebCoreArgumentCodersMac.mm:
   14633         (CoreIPC::encodeResourceResponse):
   14634         (CoreIPC::decodeResourceResponse):
   14635 
   14636         Add new API and Impl casts for ProtectionSpace and Credential enums:
   14637         * UIProcess/API/C/WKAPICast.h:
   14638         (WebKit::toAPI):
   14639         (WebKit::toCredentialPersistence):
   14640 
   14641         Move the DecisionListener to be accessed off the challenge itself, and fill in other
   14642         necessary API:
   14643         * UIProcess/API/C/WKAuthenticationChallenge.cpp:
   14644         (WKAuthenticationChallengeGetDecisionListener):
   14645         (WKAuthenticationChallengeGetProtectionSpace):
   14646         (WKAuthenticationChallengeGetProposedCredential):
   14647         (WKAuthenticationChallengeGetPreviousFailureCount):
   14648         * UIProcess/API/C/WKAuthenticationChallenge.h:
   14649         * UIProcess/Authentication/AuthenticationChallengeProxy.cpp:
   14650         (WebKit::AuthenticationChallengeProxy::~AuthenticationChallengeProxy):
   14651         (WebKit::AuthenticationChallengeProxy::proposedCredential):
   14652         (WebKit::AuthenticationChallengeProxy::protectionSpace):
   14653         * UIProcess/Authentication/AuthenticationChallengeProxy.h:
   14654         (WebKit::AuthenticationChallengeProxy::previousFailureCount):
   14655 
   14656         Fill in some credential API:
   14657         * UIProcess/API/C/WKCredential.cpp:
   14658         (WKCredentialCreate):
   14659         (WKCredentialCopyUser):
   14660         * UIProcess/API/C/WKCredential.h:
   14661         * UIProcess/API/C/WKCredentialTypes.h: Added.
   14662         * UIProcess/Authentication/WebCredential.cpp:
   14663         (WebKit::WebCredential::WebCredential):
   14664         (WebKit::WebCredential::user):
   14665         * UIProcess/Authentication/WebCredential.h:
   14666         (WebKit::WebCredential::create):
   14667 
   14668         Fill in some protection space API:
   14669         * UIProcess/API/C/WKProtectionSpace.cpp:
   14670         (WKProtectionSpaceCopyHost):
   14671         (WKProtectionSpaceGetPort):
   14672         (WKProtectionSpaceCopyRealm):
   14673         (WKProtectionSpaceGetIsProxy):
   14674         (WKProtectionSpaceGetServerType):
   14675         (WKProtectionSpaceGetReceivesCredentialSecurely):
   14676         (WKProtectionSpaceGetAuthenticationScheme):
   14677         * UIProcess/API/C/WKProtectionSpace.h:
   14678         * UIProcess/API/C/WKProtectionSpaceTypes.h: Added.
   14679         * UIProcess/Authentication/WebProtectionSpace.cpp:
   14680         (WebKit::WebProtectionSpace::WebProtectionSpace):
   14681         (WebKit::WebProtectionSpace::host):
   14682         (WebKit::WebProtectionSpace::port):
   14683         (WebKit::WebProtectionSpace::realm):
   14684         (WebKit::WebProtectionSpace::isProxy):
   14685         (WebKit::WebProtectionSpace::serverType):
   14686         (WebKit::WebProtectionSpace::receivesCredentialSecurely):
   14687         (WebKit::WebProtectionSpace::authenticationScheme):
   14688         * UIProcess/Authentication/WebProtectionSpace.h:
   14689 
   14690         Change the authentication challenge callback to reflect the new ownership of
   14691         the DecisionListener:
   14692         * UIProcess/API/C/WKPage.h:
   14693         * UIProcess/WebLoaderClient.cpp:
   14694         (WebKit::WebLoaderClient::didReceiveAuthenticationChallengeInFrame):
   14695         * UIProcess/WebLoaderClient.h:
   14696         * UIProcess/WebPageProxy.cpp:
   14697         (WebKit::WebPageProxy::didReceiveAuthenticationChallenge):
   14698 
   14699         * WebKit2.pro:
   14700         * WebKit2.xcodeproj/project.pbxproj:
   14701         * win/WebKit2.vcproj:
   14702         * win/WebKit2Generated.make:
   14703 
   14704 2010-12-08  Sam Weinig  <sam (a] webkit.org>
   14705 
   14706         Reviewed by Geoffrey "Error" Garen.
   14707 
   14708         Fix typo: Diplaying -> Displaying
   14709 
   14710         * UIProcess/API/C/WKFrame.cpp:
   14711         (WKFrameIsDisplayingStandaloneImageDocument):
   14712         (WKFrameIsDisplayingMarkupDocument):
   14713         * UIProcess/API/C/WKFrame.h:
   14714         * UIProcess/WebFrameProxy.cpp:
   14715         (WebKit::WebFrameProxy::canProvideSource):
   14716         (WebKit::WebFrameProxy::isDisplayingStandaloneImageDocument):
   14717         (WebKit::WebFrameProxy::isDisplayingMarkupDocument):
   14718         * UIProcess/WebFrameProxy.h:
   14719 
   14720 2010-12-08  Sam Weinig  <sam (a] webkit.org>
   14721 
   14722         Reviewed by Gavin Barraclough.
   14723 
   14724         Add WebKit2 Preference for TabsToLinks behavior.
   14725         <rdar://problem/8664263>
   14726 
   14727         * Shared/WebPreferencesStore.h:
   14728         * UIProcess/API/C/WKPreferences.cpp:
   14729         (WKPreferencesSetTabsToLinks):
   14730         (WKPreferencesGetTabsToLinks):
   14731         * UIProcess/API/C/WKPreferences.h:
   14732         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   14733         (WebKit::WebChromeClient::tabsToLinks):
   14734         * WebProcess/WebPage/WebPage.cpp:
   14735         (WebKit::WebPage::WebPage):
   14736         (WebKit::WebPage::updatePreferences):
   14737         * WebProcess/WebPage/WebPage.h:
   14738         (WebKit::WebPage::tabsToLinks):
   14739 
   14740 2010-12-08  Benjamin Poulain  <benjamin.poulain (a] nokia.com>
   14741 
   14742         Reviewed by Andreas Kling.
   14743 
   14744         WebTouchEvent::isTouchEventType() does not take into account the type TouchCancel
   14745         https://bugs.webkit.org/show_bug.cgi?id=50680
   14746 
   14747         Add the missing type check to WebTouchEvent::isTouchEventType().
   14748 
   14749         * Shared/WebTouchEvent.cpp:
   14750         (WebKit::WebTouchEvent::isTouchEventType):
   14751 
   14752 2010-12-08  Sam Weinig  <sam (a] webkit.org>
   14753 
   14754         Reviewed by Darin Adler.
   14755 
   14756         Need a way to get a WKBundleFrameRef from JS HTMLIFrameElement
   14757         https://bugs.webkit.org/show_bug.cgi?id=50726
   14758 
   14759         Adds WKBundleNodeHandleCopyDocumentFrame, WKBundleNodeHandleCopyHTMLFrameElementContentFrame
   14760         and WKBundleNodeHandleCopyHTMLIFrameElementContentFrame, to handle the document, <frame>
   14761         and <iframe> cases.
   14762 
   14763         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
   14764         (WKBundleNodeHandleCopyDocumentFrame):
   14765         (WKBundleNodeHandleCopyHTMLFrameElementContentFrame):
   14766         (WKBundleNodeHandleCopyHTMLIFrameElementContentFrame):
   14767         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h:
   14768         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
   14769         (WebKit::InjectedBundleNodeHandle::copyDocumentFrame):
   14770         (WebKit::InjectedBundleNodeHandle::copyHTMLFrameElementContentFrame):
   14771         (WebKit::InjectedBundleNodeHandle::copyHTMLIFrameElementContentFrame):
   14772         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
   14773 
   14774 2010-12-08  Sam Weinig  <sam (a] webkit.org>
   14775 
   14776         Reviewed by Gavin Barraclough.
   14777 
   14778         Need a WebKit2 way to test whether a frame is displaying a standalone image
   14779         <rdar://problem/8443059>
   14780         WebKit2: Need a way to test whether a page or frame is showing HTML content
   14781         <rdar://problem/8642563>
   14782 
   14783         Add WKFrameIsDiplayingStandaloneImageDocument and WKFrameIsDiplayingMarkupDocument.
   14784 
   14785         * UIProcess/API/C/WKFrame.cpp:
   14786         (WKFrameIsDiplayingStandaloneImageDocument):
   14787         (WKFrameIsDiplayingMarkupDocument):
   14788         * UIProcess/API/C/WKFrame.h:
   14789         * UIProcess/WebFrameProxy.cpp:
   14790         (WebKit::WebFrameProxy::canProvideSource): This now just calls isDiplayingMarkupDocument.
   14791         (WebKit::WebFrameProxy::isDiplayingStandaloneImageDocument):
   14792         (WebKit::WebFrameProxy::isDiplayingMarkupDocument):
   14793         * UIProcess/WebFrameProxy.h:
   14794 
   14795 2010-12-08  Anders Carlsson  <andersca (a] apple.com>
   14796 
   14797         Reviewed by Darin Adler.
   14798 
   14799         WebFrameProxy::canShowMIMEType should return true for PDF MIME types in the main frame
   14800         https://bugs.webkit.org/show_bug.cgi?id=50724
   14801 
   14802         * UIProcess/WebContext.cpp:
   14803         (WebKit::WebContext::pdfAndPostScriptMIMETypes):
   14804         * UIProcess/WebContext.h:
   14805         * UIProcess/WebFrameProxy.cpp:
   14806         (WebKit::WebFrameProxy::canShowMIMEType):
   14807 
   14808 2010-12-08  Brian Weinstein  <bweinstein (a] apple.com>
   14809 
   14810         Reviewed by Brady Eidson.
   14811 
   14812         WebMenuTarget implemented in both WebKit and WebKit2
   14813         https://bugs.webkit.org/show_bug.cgi?id=50665
   14814         <rdar://problem/8742640>
   14815         
   14816         Rename WebMenuTarget to WKMenuTarget to prevent this warning and stay consistent with
   14817         other WebKit2 namings.
   14818 
   14819         * UIProcess/mac/WebContextMenuProxyMac.mm:
   14820         (+[WKMenuTarget sharedMenuTarget]):
   14821         (WebKit::nsMenuItemVector):
   14822         (WebKit::WebContextMenuProxyMac::showContextMenu):
   14823 
   14824 2010-12-08  Anders Carlsson  <andersca (a] apple.com>
   14825 
   14826         Reviewed by Sam Weinig.
   14827 
   14828         Move canShowMIMEType to Frame
   14829         https://bugs.webkit.org/show_bug.cgi?id=50723
   14830 
   14831         * UIProcess/API/C/WKFrame.cpp:
   14832         (WKFrameCanShowMIMEType):
   14833         * UIProcess/API/C/WKFrame.h:
   14834         * UIProcess/API/C/WKPage.cpp:
   14835         * UIProcess/API/C/WKPage.h:
   14836         * UIProcess/WebFrameProxy.cpp:
   14837         (WebKit::WebFrameProxy::canShowMIMEType):
   14838         * UIProcess/WebFrameProxy.h:
   14839 
   14840 2010-12-08  Sam Weinig  <sam (a] webkit.org>
   14841 
   14842         Reviewed by Oliver Hunt.
   14843 
   14844         Rename WKPreferencesGetFTPDirectoryTemplatePath to WKPreferencesCopyFTPDirectoryTemplatePath
   14845         since it copies the value.
   14846 
   14847         * UIProcess/API/C/WKPreferences.cpp:
   14848         (WKPreferencesCopyFTPDirectoryTemplatePath):
   14849         * UIProcess/API/C/WKPreferencesPrivate.h:
   14850 
   14851 2010-12-08  Sam Weinig  <sam (a] webkit.org>
   14852 
   14853         Reviewed by Brady Eidson.
   14854 
   14855         WebKit2: Can't open ftp directory
   14856         <rdar://problem/8489321>
   14857 
   14858         * Shared/WebPreferencesStore.h:
   14859         * UIProcess/API/C/WKPreferences.cpp:
   14860         (WKPreferencesSetForceFTPDirectoryListings):
   14861         (WKPreferencesGetForceFTPDirectoryListings):
   14862         (WKPreferencesSetFTPDirectoryTemplatePath):
   14863         (WKPreferencesGetFTPDirectoryTemplatePath):
   14864         * UIProcess/API/C/WKPreferencesPrivate.h:
   14865         * WebProcess/WebPage/WebPage.cpp:
   14866         (WebKit::WebPage::updatePreferences):
   14867         Pipe through the FTP directory listing preferences.
   14868 
   14869 2010-12-08  Chris Marrin  <cmarrin (a] apple.com>
   14870 
   14871         Reviewed by Simon Fraser.
   14872 
   14873         Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
   14874         https://bugs.webkit.org/show_bug.cgi?id=49388
   14875 
   14876         Fixes a build failure because WebChromeClient.cpp uses WebCore::Cursor.
   14877         This patch adds an include of QuartzCore/CATransform3D, which includes
   14878         a file that has a 'Cursor' object defined. So I had to qualify the
   14879         use of Cursor in WebChromeClient.cpp.
   14880 
   14881         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   14882         (WebKit::WebChromeClient::setCursor):
   14883 
   14884 2010-12-07  Brian Weinstein  <bweinstein (a] apple.com>
   14885 
   14886         Reviewed by John Sullivan.
   14887 
   14888         Layering Violation in ContextMenu - member variable of type HitTestResult
   14889         https://bugs.webkit.org/show_bug.cgi?id=50586
   14890         
   14891         Update users of ContextMenu and ContextMenuController to match where the new functions 
   14892         are located.
   14893 
   14894         * Shared/WebContextMenuItemData.cpp:
   14895         (WebKit::WebContextMenuItemData::WebContextMenuItemData): Remove the call to checkOrEnableItem, that call will be made when
   14896             the ContextMenuItem is added to the ContextMenu through the ContextMenuController.
   14897         * WebProcess/WebPage/WebContextMenu.cpp:
   14898         (WebKit::WebContextMenu::show):
   14899 
   14900 2010-12-08  Jessie Berlin  <jberlin (a] apple.com>
   14901 
   14902         Reviewed by Adam Roben.
   14903 
   14904         WebKit2: Implement WebChromeClient::exceededDatabaseQuota
   14905         https://bugs.webkit.org/show_bug.cgi?id=50656
   14906 
   14907         The exceededDatabaseQuota call from the WebProcess to the UIProcess needs to be synchronous
   14908         because the new quota is checked directly after exceededDatabaseQuota returns in order to
   14909         determine if the new Database can be created.
   14910 
   14911         Pass all of the details from the WebProcess to the UIProcess in order to inform the
   14912         decision in the UIProcess about the new quota. In WebKit1, these details were
   14913         fetched through an additional call to the API detailsForDatabase (which is infeasible in
   14914         WebKit2 since exceededDatabaseQuota is a synchronous call).
   14915 
   14916         * Platform/CoreIPC/HandleMessage.h:
   14917         (CoreIPC::callMemberFunction):
   14918         Add a version that takes 7 parameters.
   14919 
   14920         * UIProcess/API/C/WKPage.h:
   14921 
   14922         * UIProcess/API/qt/qwkpage.cpp:
   14923         (QWKPage::QWKPage):
   14924         Indicate that exceededDatabaseQuota is not implemented.
   14925 
   14926         * UIProcess/WebPageProxy.cpp:
   14927         (WebKit::WebPageProxy::exceededDatabaseQuota):
   14928         Call the UIClient's exceededDatabaseQuota
   14929         * UIProcess/WebPageProxy.h:
   14930         * UIProcess/WebPageProxy.messages.in:
   14931 
   14932         * UIProcess/WebUIClient.cpp:
   14933         (WebKit::WebUIClient::exceededDatabaseQuota):
   14934         If the client does not implement exceededDatabaseQuota, return a the current quota.
   14935         * UIProcess/WebUIClient.h:
   14936 
   14937         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   14938         (WebKit::WebChromeClient::exceededDatabaseQuota):
   14939         Send a synchronous message to the UIProcess to ask for the new quota for the origin for the
   14940         given frame.
   14941 
   14942 2010-12-07  Anders Carlsson  <andersca (a] apple.com>
   14943 
   14944         Reviewed by Sam Weinig.
   14945 
   14946         fast/loader/empty-embed-src-attribute.html asserts in debug builds
   14947         https://bugs.webkit.org/show_bug.cgi?id=50643
   14948 
   14949         Just always ignore attempts to load requests with empty URLs.
   14950 
   14951         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   14952         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
   14953 
   14954 2010-12-07  Jessie Berlin  <jberlin (a] apple.com>
   14955 
   14956         Build fix. Unreviewed.
   14957 
   14958         * WebKit2.pro:
   14959         Added WebDatabaseManagerQt.cpp.
   14960         * WebProcess/WebCoreSupport/qt/WebDatabaseManagerQt.cpp: Added.
   14961         (WebKit::WebDatabaseManager::databaseDirectory):
   14962         Added a FIXME to implement and return an empty string.
   14963 
   14964 2010-12-07  Darin Adler  <darin (a] apple.com>
   14965 
   14966         Get a bit closer to making Qt WebKit2 compile again.
   14967 
   14968         * WebKit2.pro: Add the WebDatabaseManager source files.
   14969         Still missing: The Qt version of the databaseDirectory function.
   14970 
   14971 2010-12-07  Jessie Berlin  <jberlin (a] apple.com>
   14972 
   14973         Reviewed by Darin Adler.
   14974 
   14975         WebKit2: Need to set the location of the Databases directory when the WebProcess is initialized
   14976         https://bugs.webkit.org/show_bug.cgi?id=50604
   14977 
   14978         * WebProcess/WebCoreSupport/WebDatabaseManager.cpp: Added.
   14979         (WebKit::WebDatabaseManager::shared):
   14980         (WebKit::WebDatabaseManager::WebDatabaseManager):
   14981         Initialize the DatabaseTracker with the Database directory.
   14982         * WebProcess/WebCoreSupport/WebDatabaseManager.h: Added.
   14983         * WebProcess/WebCoreSupport/mac/WebDatabaseManagerMac.mm: Added.
   14984         (WebKit::WebDatabaseManager::databaseDirectory):
   14985         Copied from WebKitInitializeDatabasesIfNecessary in WebKit/mac/Storage/WebDatabaseManager.mm.
   14986         * WebProcess/WebCoreSupport/win/WebDatabaseManagerWin.cpp: Added.
   14987         (WebKit::WebDatabaseManager::databaseDirectory):
   14988         Copied from WebKitInitializeWebDatabasesIfNecessary in WebKit/win/WebDatabaseManager.cpp.
   14989 
   14990         * WebProcess/WebProcess.cpp:
   14991         (WebKit::WebProcess::WebProcess):
   14992         Make sure that the Databases directory has been set by calling WebDatabaseManager::shared().
   14993 
   14994         * WebKit2.xcodeproj/project.pbxproj:
   14995         Add WebDatabaseManager.cpp/.h/Mac.cpp
   14996         * win/WebKit2.vcproj:
   14997         Add WebDatabaseManager.cpp/.h/Win.cpp
   14998 
   14999 2010-12-06  Darin Adler  <darin (a] apple.com>
   15000 
   15001         Reviewed by Sam Weinig.
   15002 
   15003         Pass security origin to make local file decision correctly
   15004         https://bugs.webkit.org/show_bug.cgi?id=48603
   15005 
   15006         * WebProcess/Plugins/PluginView.cpp:
   15007         (WebKit::PluginView::loadURL): Pass security origin.
   15008         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   15009         (WebKit::WebFrameLoaderClient::dispatchCreatePage): Ditto.
   15010 
   15011 2010-12-06  Simon Fraser  <simon.fraser (a] apple.com>
   15012 
   15013         Reviewed by Sam Weinig.
   15014 
   15015         Fix two WebKit2 prefs issues.
   15016 
   15017         * Shared/WebPreferencesStore.h: Include font-family preferences
   15018         in the FOR_EACH_WEBKIT_STRING_PREFERENCE macro, actually propagating
   15019         font family prefs to WebCore settings.
   15020         
   15021         * UIProcess/WebPageGroup.cpp:
   15022         (WebKit::WebPageGroup::WebPageGroup):
   15023         (WebKit::WebPageGroup::~WebPageGroup): Add and remove the WebPageGroup
   15024         from the preference object it creates. This allows preference changes
   15025         to actually be propagated to the web process.
   15026 
   15027 2010-12-06  Anders Carlsson  <andersca (a] apple.com>
   15028 
   15029         Reviewed by Sam Weinig.
   15030 
   15031         The plug-in process crashes if it can't load the plug-in module
   15032         https://bugs.webkit.org/show_bug.cgi?id=50601
   15033         <rdar://problem/8692654>
   15034 
   15035         * PluginProcess/PluginControllerProxy.cpp:
   15036         (WebKit::PluginControllerProxy::initialize):
   15037         Handle m_plugin being 0.
   15038 
   15039         * PluginProcess/PluginProcess.cpp:
   15040         (WebKit::PluginProcess::netscapePluginModule):
   15041         Create the plug-in module if it doesn't exist.
   15042 
   15043         (WebKit::PluginProcess::initialize):
   15044         Store the plug-in path.
   15045 
   15046         * PluginProcess/PluginProcess.h:
   15047         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   15048         (WebKit::NetscapePlugin::create):
   15049         Return null if the plug-in module doesn't exist.
   15050 
   15051         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   15052         * WebProcess/WebPage/WebPage.cpp:
   15053         (WebKit::WebPage::createPlugin):
   15054         Simplify code.
   15055 
   15056 2010-12-06  Anders Carlsson  <andersca (a] apple.com>
   15057 
   15058         Reviewed by Sam Weinig.
   15059 
   15060         WebProcess crash in NPRemoteObjectMap::invalidate when closing tab
   15061         https://bugs.webkit.org/show_bug.cgi?id=50597
   15062         <rdar://problem/8655584>
   15063 
   15064         When invalidating the NPRemoteObjectMap, we don't want NPObjectMessageReceiver to
   15065         release all objects NPObjects blindly because NPJSObjects have already been deallocated by the plug-in view.
   15066 
   15067         This is not an ideal solution; an ideal solution would involve NPJSObjects notifying any NPObjectMessageReceiver objects
   15068         that the NPJSObject is being destroyed. The NPObjectMessageReceiver could then simply null out the NPObject pointer.
   15069 
   15070         * Shared/Plugins/NPObjectMessageReceiver.cpp:
   15071         (WebKit::NPObjectMessageReceiver::NPObjectMessageReceiver):
   15072         (WebKit::NPObjectMessageReceiver::~NPObjectMessageReceiver):
   15073         * Shared/Plugins/NPObjectMessageReceiver.h:
   15074         * Shared/Plugins/NPRemoteObjectMap.cpp:
   15075         (WebKit::NPRemoteObjectMap::NPRemoteObjectMap):
   15076         (WebKit::NPRemoteObjectMap::invalidate):
   15077         * Shared/Plugins/NPRemoteObjectMap.h:
   15078         (WebKit::NPRemoteObjectMap::isInvalidating):
   15079 
   15080 2010-12-06  Sam Weinig  <sam (a] webkit.org>
   15081 
   15082         Reviewed by Anders Carlsson.
   15083 
   15084         Generalize didChangeLocationWithinPageForFrame for all same document navigations
   15085         https://bugs.webkit.org/show_bug.cgi?id=50584
   15086 
   15087           - Rename didChangeLocationWithinPageForFrame callbacks to didSameDocumentNavigationForFrame
   15088           - Add WKSameDocumentNavigationType to didChangeLocationWithinPageForFrame.
   15089           - Call didSameDocumentNavigationForFrame for HTML session state changes.
   15090 
   15091         * Shared/API/c/WKPageLoadTypes.h: Added.
   15092         * Shared/API/c/WKSharedAPICast.h:
   15093         (WebKit::toAPI):
   15094         Moved WKFrameNavigationType here from WKPage.h and add WKSameDocumentNavigationType.
   15095 
   15096         * Shared/SameDocumentNavigationType.h: Added.
   15097         * UIProcess/API/C/WKAPICast.h:
   15098         Moved WKFrameNavigationType conversion from here.
   15099 
   15100         * UIProcess/API/C/WKPage.h:
   15101         * UIProcess/API/qt/qwkpage.cpp:
   15102         (QWKPage::QWKPage):
   15103         Update comment.
   15104 
   15105         * UIProcess/WebFrameProxy.cpp:
   15106         (WebKit::WebFrameProxy::didSameDocumentNavigation):
   15107         * UIProcess/WebFrameProxy.h:
   15108         * UIProcess/WebLoaderClient.cpp:
   15109         (WebKit::WebLoaderClient::didSameDocumentNavigationForFrame):
   15110         * UIProcess/WebLoaderClient.h:
   15111         * UIProcess/WebPageProxy.cpp:
   15112         (WebKit::WebPageProxy::didSameDocumentNavigationForFrame):
   15113         * UIProcess/WebPageProxy.h:
   15114         * UIProcess/WebPageProxy.messages.in:
   15115         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   15116         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   15117         (WebKit::InjectedBundlePageLoaderClient::didSameDocumentNavigationForFrame):
   15118         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   15119         Pipe new name through.
   15120 
   15121         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   15122         (WebKit::WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
   15123         (WebKit::WebFrameLoaderClient::dispatchDidPushStateWithinPage):
   15124         (WebKit::WebFrameLoaderClient::dispatchDidReplaceStateWithinPage):
   15125         (WebKit::WebFrameLoaderClient::dispatchDidPopStateWithinPage):
   15126         Call didChangeLocationWithinPageForFrame for session state changes.
   15127 
   15128         * WebKit2.pro:
   15129         * WebKit2.xcodeproj/project.pbxproj:
   15130         * win/WebKit2.vcproj:
   15131         * win/WebKit2Generated.make:
   15132         Add new files.
   15133 
   15134 2010-12-06  Jessie Berlin  <jberlin (a] apple.com>
   15135 
   15136         Reviewed by Dan Bernstein.
   15137 
   15138         WebKit2: Expose the preference to enable or disable HTML5 Databases.
   15139         https://bugs.webkit.org/show_bug.cgi?id=50411
   15140 
   15141         * Shared/WebPreferencesStore.h:
   15142         Make the preference to enable HTML5 Databases default ot true.
   15143 
   15144         * UIProcess/API/C/WKPreferences.cpp:
   15145         (WKPreferencesSetDatabasesEnabled):
   15146         (WKPreferencesGetDatabasesEnabled):
   15147         * UIProcess/API/C/WKPreferences.h:
   15148 
   15149         * WebProcess/WebPage/WebPage.cpp:
   15150         (WebKit::WebPage::updatePreferences):
   15151         Set AbstractDatabase::isAvailable (mimicking how the preference is set in WebKit1).
   15152 
   15153 2010-12-06  Mark Rowe  <mrowe (a] apple.com>
   15154 
   15155         Build fix.
   15156 
   15157         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   15158         (WebKit::NetscapePlugin::platformHandleKeyboardEvent): Wrap Carbon-specific code in #ifndef NP_NO_CARBON.
   15159 
   15160 2010-12-06  Anders Carlsson  <andersca (a] apple.com>
   15161 
   15162         Reviewed by Adam Roben.
   15163 
   15164         Add a shim for GetCurrentEventButtonState
   15165         https://bugs.webkit.org/show_bug.cgi?id=50583
   15166 
   15167         * PluginProcess/mac/PluginProcessMac.mm:
   15168         (WebKit::getCurrentEventButtonState):
   15169         Get the event button state from the plug-in.
   15170 
   15171         (WebKit::PluginProcess::initializeShim):
   15172         Add new shim callback.
   15173 
   15174         * PluginProcess/mac/PluginProcessShim.cpp:
   15175         (WebKit::shimGetCurrentEventButtonState):
   15176         Add shim.
   15177 
   15178         * PluginProcess/mac/PluginProcessShim.h:
   15179         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   15180         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   15181         (WebKit::NetscapePlugin::buttonState):
   15182         Return the button state.
   15183 
   15184         (WebKit::NetscapePlugin::platformHandleMouseEvent):
   15185         Update the button state. Also, make sure to actually pass the modifiers to NPP_HandleEvent.
   15186         
   15187 
   15188 2010-12-06  Anders Carlsson  <andersca (a] apple.com>
   15189 
   15190         Reviewed by Adam Roben.
   15191 
   15192         Add a shim for IsWindowActive
   15193         https://bugs.webkit.org/show_bug.cgi?id=50582
   15194 
   15195         * PluginProcess/mac/PluginProcessMac.mm:
   15196         (WebKit::isWindowActive):
   15197         Get the NetscapePlugin from the WindowRef and check if the plug-in's window is active.
   15198 
   15199         (WebKit::PluginProcess::initializeShim):
   15200         * PluginProcess/mac/PluginProcessShim.cpp        
   15201         (WebKit::shimIsWindowActive):
   15202         Call isWindowActive. If it returns true, return the result value. Otherwise, call the real
   15203         IsWindowActive function.
   15204 
   15205         * PluginProcess/mac/PluginProcessShim.h:
   15206         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   15207         (WebKit::NetscapePlugin::NetscapePlugin):
   15208         Initialize m_isWindowactive.
   15209 
   15210         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   15211         (WebKit::NetscapePlugin::isWindowActive):
   15212         Return whether the window is active.
   15213 
   15214         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   15215         (WebKit::windowMap):
   15216         (WebKit::NetscapePlugin::platformPostInitialize):
   15217         (WebKit::NetscapePlugin::platformDestroy):
   15218         (WebKit::NetscapePlugin::netscapePluginFromWindow):
   15219         Add a mapping between windows and the corresponding NetscapePlugin objects.
   15220 
   15221         (WebKit::NetscapePlugin::windowFocusChanged):
   15222         Update the window focus member variable.
   15223 
   15224 2010-12-06  Anders Carlsson  <andersca (a] apple.com>
   15225 
   15226         Reviewed by Dan Bernstein.
   15227 
   15228         REGERSSION (r73310?): Contents of <select> popup menus are upside-down on Windows
   15229         https://bugs.webkit.org/show_bug.cgi?id=50544
   15230         <rdar://problem/8732336>
   15231 
   15232         * Shared/BackingStore.cpp:
   15233         * Shared/BackingStore.h:
   15234         * Shared/cairo/BackingStoreCairo.cpp:
   15235         Remove BackingStore::createFlippedGraphicsContext.
   15236 
   15237         * WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp:
   15238         (WebKit::WebPopupMenu::setUpPlatformData):
   15239         Don't create a flipped graphics context.
   15240 
   15241 2010-12-06  Anders Carlsson  <andersca (a] apple.com>
   15242 
   15243         Reviewed by Dan Bernstein.
   15244 
   15245         REGRESSION: Text in Find indicator is vertically flipped
   15246         https://bugs.webkit.org/show_bug.cgi?id=50524
   15247         <rdar://problem/8732978>
   15248 
   15249         Don't flip the graphics context.
   15250 
   15251         * UIProcess/FindIndicator.cpp:
   15252         (WebKit::FindIndicator::draw):
   15253 
   15254 2010-12-03  Anders Carlsson  <andersca (a] apple.com>
   15255 
   15256         Reviewed by Sam Weinig.
   15257 
   15258         Dispatch keyboard events in the Carbon event model
   15259         https://bugs.webkit.org/show_bug.cgi?id=50503
   15260 
   15261         * Shared/WebEvent.h:
   15262         (WebKit::WebKeyboardEvent::macCharCode):
   15263         * Shared/WebKeyboardEvent.cpp:
   15264         (WebKit::WebKeyboardEvent::WebKeyboardEvent):
   15265         (WebKit::WebKeyboardEvent::encode):
   15266         (WebKit::WebKeyboardEvent::decode):
   15267         Add macCharCode field.
   15268 
   15269         * Shared/mac/WebEventFactory.mm:
   15270         (WebKit::WebEventFactory::createWebKeyboardEvent):
   15271         * Shared/qt/WebEventFactoryQt.cpp:
   15272         (WebKit::WebEventFactory::createWebKeyboardEvent):
   15273         * Shared/win/WebEventFactory.cpp:
   15274         (WebKit::WebEventFactory::createWebKeyboardEvent):
   15275         Pass along the Mac char code.
   15276         
   15277         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   15278         (WebKit::NetscapePlugin::platformHandleKeyboardEvent):
   15279         Convert the event to a Carobn event.
   15280 
   15281 2010-12-03  John Sullivan  <sullivan (a] apple.com>
   15282 
   15283         Reviewed by Adam Roben.
   15284 
   15285         https://bugs.webkit.org/show_bug.cgi?id=50504
   15286         Expose some more WebCore settings in WebKit2 preferences
   15287 
   15288         * Shared/WebPreferencesStore.h:
   15289         Changed name of existing FOR_EACH_WEBKIT_STRING_PREFERENCE macro to
   15290         FOR_EACH_WEBKIT_FONT_FAMILY_PREFERENCE since it was all about platform-specific
   15291         font families, and I'm now introducing a non-platform-spacific string, and
   15292         I didn't want to put the new preference in two platform-specific lists. Then
   15293         added a new FOR_EACH_WEBKIT_STRING_PREFERENCE to hold the new preference. Note
   15294         that the other preferences exposed in this patch were already declared here.
   15295         
   15296         * UIProcess/API/C/WKPreferences.cpp:
   15297         (WKPreferencesSetDefaultFontSize):
   15298         New wrapper.
   15299         (WKPreferencesGetDefaultFontSize):
   15300         Ditto.
   15301         (WKPreferencesSetDefaultFixedFontSize):
   15302         Ditto.
   15303         (WKPreferencesGetDefaultFixedFontSize):
   15304         Ditto.
   15305         (WKPreferencesSetDefaultTextEncodingName):
   15306         Ditto.
   15307         (WKPreferencesCopyDefaultTextEncodingName):
   15308         Ditto.
   15309         
   15310         * UIProcess/API/C/WKPreferences.h:
   15311         Declare new wrappers.
   15312 
   15313 2010-12-05  Adam Roben  <aroben (a] apple.com>
   15314 
   15315         Windows production build fix
   15316 
   15317         Put spaces after trailing backslashes when setting
   15318         %WebKitVSPropsRedirectionDir%. According to MSDN
   15319         <http://msdn.microsoft.com/en-us/library/2kzfk8c7(v=VS.80).aspx>:
   15320 
   15321            A backslash ( \ ) followed by a newline character is interpreted as
   15322            a space in the command; use a backslash at the end of a line to
   15323            continue a command onto the next line. NMAKE interprets the
   15324            backslash literally if any other character, including a space or
   15325            tab, follows the backslash.
   15326 
   15327         * win/WebKit2.make:
   15328 
   15329 2010-12-04  Sam Weinig  <sam (a] webkit.org>
   15330 
   15331         Reviewed by Jon Honeycutt.
   15332 
   15333         WebKit2: Need client functions to notify app when the url changes due to a fragment navigation
   15334         https://bugs.webkit.org/show_bug.cgi?id=50511
   15335 
   15336         Pipe didChangeLocationWithinPageForFrame up through the UIProcess to the WKPageLoadClient,
   15337         updating the WebFrameProxy's URL on the way.
   15338 
   15339         Test: PageLoadDidChangeLocationWithinPageForFrame
   15340 
   15341         * UIProcess/API/C/WKPage.h:
   15342         * UIProcess/API/qt/qwkpage.cpp:
   15343         (QWKPage::QWKPage):
   15344         * UIProcess/WebFrameProxy.cpp:
   15345         (WebKit::WebFrameProxy::didChangeURLWithoutNavigation):
   15346         * UIProcess/WebFrameProxy.h:
   15347         * UIProcess/WebLoaderClient.cpp:
   15348         (WebKit::WebLoaderClient::didChangeLocationWithinPageForFrame):
   15349         * UIProcess/WebLoaderClient.h:
   15350         * UIProcess/WebPageProxy.cpp:
   15351         (WebKit::WebPageProxy::didChangeLocationWithinPageForFrame):
   15352         * UIProcess/WebPageProxy.h:
   15353         * UIProcess/WebPageProxy.messages.in:
   15354         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   15355         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   15356         (WebKit::InjectedBundlePageLoaderClient::didChangeLocationWithinPageForFrame):
   15357         (WebKit::InjectedBundlePageLoaderClient::didDisplayInsecureContentForFrame):
   15358         (WebKit::InjectedBundlePageLoaderClient::didRunInsecureContentForFrame):
   15359         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   15360         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   15361         (WebKit::WebFrameLoaderClient::dispatchDidCancelClientRedirect): Fix typo.
   15362         (WebKit::WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
   15363 
   15364 2010-12-03  Timothy Hatcher  <timothy (a] apple.com>
   15365 
   15366         Make the Web Inspector window show and be usable on Mac.
   15367 
   15368         https://webkit.org/b/50490
   15369 
   15370         Reviewed by Sam Weinig.
   15371 
   15372         * UIProcess/WebInspectorProxy.cpp:
   15373         (WebKit::WebInspectorProxy::invalidate): Call platformClose.
   15374         (WebKit::WebInspectorProxy::didLoadInspectorPage): Call platformOpen.
   15375         (WebKit::WebInspectorProxy::didClose): Call platformClose.
   15376         * UIProcess/WebInspectorProxy.h:
   15377         * UIProcess/WebInspectorProxy.messages.in: Added DidClose.
   15378         * UIProcess/mac/WebInspectorProxyMac.mm:
   15379         (-[WebInspectorProxyObjCAdapter initWithWebInspectorProxy:]): Added.
   15380         (-[WebInspectorProxyObjCAdapter windowWillClose:]): Added. Call WebInspectorProxy::close.
   15381         (WebKit::WebInspectorProxy::platformOpen): Added.
   15382         (WebKit::WebInspectorProxy::platformClose): Added.
   15383         * UIProcess/qt/WebInspectorProxyQt.cpp:
   15384         (WebKit::WebInspectorProxy::platformOpen): Added stub.
   15385         (WebKit::WebInspectorProxy::platformClose): Added stub.
   15386         * UIProcess/win/WebInspectorProxyWin.cpp:
   15387         (WebKit::WebInspectorProxy::platformOpen): Added stub.
   15388         (WebKit::WebInspectorProxy::platformClose): Added stub.
   15389         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
   15390         (WebKit::WebInspectorClient::sendMessageToFrontend): Added more null checks to avoid a crash.
   15391         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
   15392         (WebKit::WebInspectorFrontendClient::closeWindow): Call WebInspector::didClose.
   15393         (WebKit::WebInspectorFrontendClient::disconnectFromBackend): Ditto.
   15394         (WebKit::WebInspectorFrontendClient::sendMessageToBackend): Removed. This does not need to be
   15395         implemented by our subclass since we are in a single process.
   15396         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h: Removed sendMessageToBackend.
   15397         * WebProcess/WebPage/WebInspector.cpp:
   15398         (WebKit::WebInspector::didClose): Added. Send a DidClose message to the UI process.
   15399         * WebProcess/WebPage/WebInspector.h:
   15400 
   15401 2010-12-03  Anders Carlsson  <andersca (a] apple.com>
   15402 
   15403         Reviewed by Sam Weinig and Dan Bernstein.
   15404 
   15405         Clean up the BackingStore implementation
   15406         https://bugs.webkit.org/show_bug.cgi?id=50498
   15407 
   15408         * Shared/BackingStore.cpp:
   15409         (WebKit::BackingStore::create):
   15410         (WebKit::BackingStore::createSharable):
   15411         (WebKit::BackingStore::resize):
   15412         Use new numBytesForSize helper function.
   15413 
   15414         (WebKit::BackingStore::createFlippedGraphicsContext):
   15415         Make this function platform independent.
   15416 
   15417         * Shared/BackingStore.h:
   15418         (WebKit::BackingStore::numBytesForSize):
   15419         Given a size, return the number of bytes needed for it.
   15420 
   15421         (WebKit::BackingStore::sizeInBytes):
   15422         Implement.
   15423 
   15424         * Shared/cg/BackingStoreCG.cpp:
   15425         (WebKit::BackingStore::paint):
   15426         Don't use CGBitmapContextCreateImage; it creates an extra copy of the image data.
   15427 
   15428         * Shared/qt/BackingStoreQt.cpp:
   15429         Remove createFlippedGraphicsContext.
   15430 
   15431 2010-12-03  Siddharth Mathur  <siddharth.mathur (a] nokia.com>
   15432 
   15433         Reviewed by Laszlo Gombos.
   15434 
   15435         [Qt] [WK2] Build system improvements for non-Unix targets
   15436         https://bugs.webkit.org/show_bug.cgi?id=50257
   15437 
   15438         * DerivedSources.pro:
   15439         Fix dir seperator errors on Windows build host. Thanks to Laszlo Gombos.
   15440 
   15441 2010-12-03  Sam Weinig  <sam (a] webkit.org>
   15442 
   15443         Reviewed by Maciej Stachowiak.
   15444 
   15445         Enable <a ping> for Mac/Windows/WebKit2 builds
   15446         <rdar://problem/8504473>
   15447         https://bugs.webkit.org/show_bug.cgi?id=50488
   15448 
   15449         * Shared/WebPreferencesStore.h:
   15450         * UIProcess/API/C/WKPreferences.cpp:
   15451         (WKPreferencesSetHyperlinkAuditingEnabled):
   15452         (WKPreferencesGetHyperlinkAuditingEnabled):
   15453         * UIProcess/API/C/WKPreferences.h:
   15454         Add "HyperlinkAuditing" preference and enabled it by default.
   15455 
   15456 2010-12-03  Brady Eidson  <beidson (a] apple.com>
   15457 
   15458         Reviewed by good sense in fixing builds.
   15459 
   15460         Export the 4 new API headers I added today.
   15461 
   15462         * WebKit2.xcodeproj/project.pbxproj:
   15463 
   15464 2010-12-03  Brady Eidson  <beidson (a] apple.com>
   15465 
   15466         Reviewed by Sam Weinig.
   15467 
   15468         <rdar://problem/8725679> and https://bugs.webkit.org/show_bug.cgi?id=50482
   15469         Crash trying to empty caches with no WebProcess.
   15470 
   15471         * Shared/WebProcessCreationParameters.h: Add the "clear this cache" flags.
   15472 
   15473         * UIProcess/WebContext.cpp:
   15474         (WebKit::WebContext::WebContext):
   15475         (WebKit::WebContext::ensureWebProcess): If either of the clear cache flags are set when a new WebProcess is
   15476           created, include those flags in the parameters.
   15477         (WebKit::WebContext::clearResourceCaches): If the current process isn't valid, flag this action to be done later.
   15478         (WebKit::WebContext::clearApplicationCache): Ditto.
   15479         * UIProcess/WebContext.h:
   15480 
   15481         * WebProcess/WebProcess.cpp:
   15482         (WebKit::WebProcess::initializeWebProcess): Clear the caches if told to.
   15483 
   15484 2010-12-03  Sam Weinig  <sam (a] webkit.org>
   15485 
   15486         Reviewed by Gavin Barraclough.
   15487 
   15488         Fix failing API test. The default san serif font on the mac
   15489         should be Helvetica, not Courier.
   15490 
   15491         * Shared/WebPreferencesStore.h:
   15492 
   15493 2010-12-03  Jia Pu  <jpu (a] apple.com>
   15494 
   15495         Reviewed by Darin Adler.
   15496 
   15497         Need to move all code that applies correction into correction panel callback.
   15498         https://bugs.webkit.org/show_bug.cgi?id=50426
   15499         <rdar://problem/8720832>
   15500 
   15501         Adopted new signature of dismissCorrectionPanel.
   15502 
   15503         * WebProcess/WebCoreSupport/WebEditorClient.h:
   15504         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
   15505         (WebKit::WebEditorClient::dismissCorrectionPanel):
   15506 
   15507 2010-12-03  Jessie Berlin  <jberlin (a] apple.com>
   15508 
   15509         Windows build fix. Unreviewed.
   15510 
   15511         * win/WebKit2Generated.make:
   15512         Add the new API files from http://trac.webkit.org/changeset/73281.
   15513 
   15514 2010-12-03  Brady Eidson  <beidson (a] apple.com>
   15515 
   15516         Reviewed by Anders Carlsson.
   15517 
   15518         Groundwork for <rdar://problem/7660733> and https://bugs.webkit.org/show_bug.cgi?id=50191
   15519         WebKit2 Authentication Support
   15520 
   15521         With this patch in place, authentication challenges are sent up from WebCore and shipped over the IPC layer.
   15522         Client apps can implement the related client methods to attempt to continue without credentials or cancel a
   15523         challenge.
   15524 
   15525         There's not yet API to inspect a challenge or create a credential to use in reply - that will come later.
   15526 
   15527         Build-system changes:
   15528         * DerivedSources.make:
   15529         * DerivedSources.pro:
   15530         * WebKit2.pro:
   15531         * WebKit2.xcodeproj/project.pbxproj:
   15532         * win/WebKit2.vcproj:
   15533         * win/WebKit2Common.vsprops:
   15534 
   15535         Messages and casts for IPC and APIs:
   15536         * Platform/CoreIPC/MessageID.h:
   15537         * Shared/API/c/WKBase.h:
   15538         * Shared/APIObject.h:
   15539         * Shared/WebCoreArgumentCoders.h:
   15540         * UIProcess/API/C/WKAPICast.h:
   15541         * WebProcess/WebProcess.cpp:
   15542         (WebKit::WebProcess::didReceiveMessage):
   15543 
   15544         Stub out the AuthenticationChallenge class family:
   15545         * UIProcess/API/C/WKAuthenticationChallenge.cpp: Added.
   15546         (WKAuthenticationChallengeGetTypeID):
   15547         * UIProcess/API/C/WKAuthenticationChallenge.h: Added.
   15548         * UIProcess/API/C/WKCredential.cpp: Added.
   15549         (WKCredentialGetTypeID):
   15550         * UIProcess/API/C/WKCredential.h: Added.
   15551         * UIProcess/API/C/WKProtectionSpace.cpp: Added.
   15552         (WKProtectionSpaceGetTypeID):
   15553         * UIProcess/API/C/WKProtectionSpace.h: Added.
   15554 
   15555         Add an Authentication listener for the client app to respond to:
   15556         * UIProcess/API/C/WKAuthenticationDecisionListener.cpp: Added.
   15557         (WKAuthenticationDecisionListenerGetTypeID):
   15558         (WKAuthenticationDecisionListenerUseCredential):
   15559         (WKAuthenticationDecisionListenerCancel):
   15560         * UIProcess/API/C/WKAuthenticationDecisionListener.h: Added.
   15561 
   15562         Add Authentication related methods to the page loader client:
   15563         * UIProcess/API/C/WKPage.h:
   15564 
   15565         Add empty implementations of the new API objects:
   15566         * UIProcess/Authentication: Added.
   15567         * UIProcess/Authentication/AuthenticationChallengeProxy.cpp: Added.
   15568         (WebKit::AuthenticationChallengeProxy::AuthenticationChallengeProxy):
   15569         (WebKit::AuthenticationChallengeProxy::~AuthenticationChallengeProxy):
   15570         (WebKit::AuthenticationChallengeProxy::useCredential):
   15571         (WebKit::AuthenticationChallengeProxy::cancel):
   15572         * UIProcess/Authentication/AuthenticationChallengeProxy.h: Added.
   15573         (WebKit::AuthenticationChallengeProxy::create):
   15574         (WebKit::AuthenticationChallengeProxy::listener):
   15575         (WebKit::AuthenticationChallengeProxy::type):
   15576 
   15577         * UIProcess/Authentication/WebCredential.cpp: Added.
   15578         (WebKit::WebCredential::core):
   15579         * UIProcess/Authentication/WebCredential.h: Added.
   15580         (WebKit::WebCredential::create):
   15581         (WebKit::WebCredential::type):
   15582         * UIProcess/Authentication/WebProtectionSpace.cpp: Added.
   15583         (WebKit::WebProtectionSpace::WebProtectionSpace):
   15584         * UIProcess/Authentication/WebProtectionSpace.h: Added.
   15585         (WebKit::WebProtectionSpace::create):
   15586         (WebKit::WebProtectionSpace::type):
   15587 
   15588         Add implementation of the Authentication decision listener:
   15589         * UIProcess/Authentication/AuthenticationDecisionListener.cpp: Added.
   15590         (WebKit::AuthenticationDecisionListener::AuthenticationDecisionListener):
   15591         (WebKit::AuthenticationDecisionListener::useCredential):
   15592         (WebKit::AuthenticationDecisionListener::cancel):
   15593         (WebKit::AuthenticationDecisionListener::detachChallenge):
   15594         * UIProcess/Authentication/AuthenticationDecisionListener.h: Added.
   15595         (WebKit::AuthenticationDecisionListener::create):
   15596         (WebKit::AuthenticationDecisionListener::type):
   15597 
   15598         WebPage and PageLoaderClient glue:
   15599         * UIProcess/WebLoaderClient.cpp:
   15600         (WebKit::WebLoaderClient::canAuthenticateAgainstProtectionSpaceInFrame):
   15601         (WebKit::WebLoaderClient::didReceiveAuthenticationChallengeInFrame):
   15602         * UIProcess/WebLoaderClient.h:
   15603         * UIProcess/WebPageProxy.cpp:
   15604         (WebKit::WebPageProxy::canAuthenticateAgainstProtectionSpaceInFrame):
   15605         (WebKit::WebPageProxy::didReceiveAuthenticationChallenge):
   15606         * UIProcess/WebPageProxy.h:
   15607         * UIProcess/WebPageProxy.messages.in:
   15608 
   15609         Add a manager to map the actual platform authentication challenges to a challenge ID,
   15610         as at least some platforms require the object identity to persist:
   15611         * WebProcess/Authentication: Added.
   15612         * WebProcess/Authentication/AuthenticationManager.cpp: Added.
   15613         (WebKit::generateAuthenticationChallengeID):
   15614         (WebKit::AuthenticationManager::shared):
   15615         (WebKit::AuthenticationManager::AuthenticationManager):
   15616         (WebKit::AuthenticationManager::didReceiveMessage):
   15617         (WebKit::AuthenticationManager::didReceiveAuthenticationChallenge):
   15618         (WebKit::AuthenticationManager::useCredentialForChallenge):
   15619         (WebKit::AuthenticationManager::continueWithoutCredentialForChallenge):
   15620         (WebKit::AuthenticationManager::cancelChallenge):
   15621         * WebProcess/Authentication/AuthenticationManager.h: Added.
   15622         * WebProcess/Authentication/AuthenticationManager.messages.in: Added.
   15623 
   15624         Hand off Authentication challenges to the manager to be sent over IPC:
   15625         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   15626         (WebKit::WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
   15627         (WebKit::WebFrameLoaderClient::canAuthenticateAgainstProtectionSpace):
   15628 
   15629         * UIProcess/API/qt/qwkpage.cpp:
   15630 
   15631 2010-12-03  Anders Carlsson  <andersca (a] apple.com>
   15632 
   15633         Reviewed by Dan Bernstein.
   15634 
   15635         Flip the destination context when painting a backing store into the destination
   15636         https://bugs.webkit.org/show_bug.cgi?id=50491
   15637 
   15638         * Shared/cg/BackingStoreCG.cpp:
   15639         (WebKit::BackingStore::paint):
   15640 
   15641 2010-12-03  Anders Carlsson  <andersca (a] apple.com>
   15642 
   15643         Reviewed by Dan Bernstein.
   15644 
   15645         The chunked update drawing area is flipped twice when drawing
   15646         https://bugs.webkit.org/show_bug.cgi?id=50465
   15647         <rdar://problem/8726836>
   15648 
   15649         * UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm:
   15650         (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint):
   15651         (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore):
   15652         Flip the destination contexts, thus unflipping them. (Turns out two wrongs make a right here).
   15653 
   15654 2010-12-03  Jessie Berlin  <jberlin (a] apple.com>
   15655 
   15656         Reviewed by Sam Weinig.
   15657 
   15658         Need a WebKit2 Equivalent of WebSecurityOrigin
   15659         https://bugs.webkit.org/show_bug.cgi?id=50170
   15660 
   15661         * Shared/API/c/WKBase.h:
   15662         Add the WKSecurityOriginRef typedef.
   15663 
   15664         * Shared/APIObject.h:
   15665         Add the SecurityOrigin type as a Shared type.
   15666 
   15667         * Shared/API/c/WKSharedAPICast.h::
   15668         Add the mapping between WKSecurityOriginRef and WebSecurityOrigin.
   15669 
   15670         * UIProcess/API/C/WKSecurityOrigin.cpp: Added.
   15671         (WKSecurityOriginGetTypeID):
   15672         (WKSecurityOriginCreate):
   15673         (WKSecurityOriginGetProtocol):
   15674         (WKSecurityOriginGetHost):
   15675         (WKSecurityOriginGetPort):
   15676         * UIProcess/API/C/WKSecurityOrigin.h: Added.
   15677 
   15678         * UIProcess/WebSecurityOrigin.h: Added.
   15679         (WebKit::WebSecurityOrigin::create):
   15680         Create based on the database identifier, which contains the protocol, host and port.
   15681         (WebKit::WebSecurityOrigin::protocol):
   15682         (WebKit::WebSecurityOrigin::host):
   15683         (WebKit::WebSecurityOrigin::port):
   15684         (WebKit::WebSecurityOrigin::databaseIdentifier):
   15685         (WebKit::WebSecurityOrigin::WebSecurityOrigin):
   15686         (WebKit::WebSecurityOrigin::type):
   15687 
   15688         * WebKit2.pro:
   15689         Add WKSecurityOrigin.cpp/.h.
   15690 
   15691         * WebKit2.xcodeproj/project.pbxproj:
   15692         * win/WebKit2.vcproj:
   15693         Add the WebSecurityOrigin.h and WKSecurityOrigin.cpp/.h.
   15694 
   15695         * win/WebKit2Generated.make:
   15696         Make sure WKSecurityOrigin.h file gets copied over to the WebKitBuild directory on Windows.
   15697 
   15698 2010-12-02  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   15699 
   15700         Reviewed by Csaba Osztrogonc.
   15701 
   15702         [Qt] Fix compilation with !ENABLE(OFFLINE_WEB_APPLICATIONS) and 
   15703         !ENABLE(TILED_BACKING_STORE) for WebKit2
   15704         https://bugs.webkit.org/show_bug.cgi?id=50071
   15705 
   15706         Add appropriate guards. No functional change if guards are set.
   15707 
   15708         * UIProcess/API/qt/qwkpage.cpp:
   15709         (QWKPage::setActualVisibleContentsRect):
   15710         * UIProcess/TiledDrawingAreaProxy.cpp:
   15711         * UIProcess/qt/TiledDrawingAreaProxyQt.cpp:
   15712         * UIProcess/qt/TiledDrawingAreaTileQt.cpp:
   15713         * UIProcess/qt/WebContextQt.cpp:
   15714         (WebKit::WebContext::applicationCacheDirectory):
   15715         * WebProcess/WebProcess.cpp:
   15716         (WebKit::WebProcess::initializeWebProcess):
   15717 
   15718 2010-12-02  Sam Weinig  <sam (a] webkit.org>
   15719 
   15720         Fix Qt.
   15721 
   15722         * UIProcess/API/qt/qwkpreferences.cpp:
   15723         (QWKPreferencesPrivate::createPreferences):
   15724 
   15725 2010-12-02  Sam Weinig  <sam (a] webkit.org>
   15726 
   15727         Reviewed by Anders Carlsson.
   15728 
   15729         WebKit2 Preferences should be held off the PageGroup, not the Context
   15730         https://bugs.webkit.org/show_bug.cgi?id=50414
   15731 
   15732         - In addition, this now makes the preference held off the PageGroup have
   15733           the identifier of the PageGroup and autosave to disk (only on the mac
   15734           for now).
   15735         - Adds ability to create an arbitrary preference that can be autosaved
   15736           via a new WKPreferencesCreateWithIdentifier function.
   15737 
   15738         * UIProcess/API/C/WKContext.cpp:
   15739         * UIProcess/API/C/WKContext.h:
   15740         Remove preference related code.
   15741 
   15742         * UIProcess/API/C/WKPageGroup.cpp:
   15743         (WKPageGroupSetPreferences):
   15744         (WKPageGroupGetPreferences):
   15745         * UIProcess/API/C/WKPageGroup.h:
   15746         Add getter/setter for preferences.
   15747 
   15748         * UIProcess/API/C/WKPreferences.cpp:
   15749         (WKPreferencesCreateWithIdentifier):
   15750         * UIProcess/API/C/WKPreferences.h:
   15751         Add WKPreferencesCreateWithIdentifier and remove WKPreferencesCreateCopy which is
   15752         unused.
   15753 
   15754         * UIProcess/WebContext.cpp:
   15755         (WebKit::WebContext::WebContext):
   15756         (WebKit::WebContext::~WebContext):
   15757         * UIProcess/WebContext.h:
   15758         Remove preference related code.
   15759 
   15760         * UIProcess/WebPageGroup.cpp:
   15761         (WebKit::WebPageGroup::WebPageGroup):
   15762         (WebKit::WebPageGroup::addPage):
   15763         (WebKit::WebPageGroup::removePage):
   15764         (WebKit::WebPageGroup::setPreferences):
   15765         (WebKit::WebPageGroup::preferences):
   15766         (WebKit::WebPageGroup::preferencesDidChange):
   15767         * UIProcess/WebPageGroup.h:
   15768         Add preference and page tracking.
   15769 
   15770         * UIProcess/WebPageNamespace.cpp:
   15771         * UIProcess/WebPageNamespace.h:
   15772         Remove preference change notification code.
   15773 
   15774         * UIProcess/WebPageProxy.cpp:
   15775         (WebKit::WebPageProxy::WebPageProxy):
   15776         (WebKit::WebPageProxy::~WebPageProxy):
   15777         Add/remove self from page group set.
   15778 
   15779         (WebKit::WebPageProxy::preferencesDidChange):
   15780         (WebKit::WebPageProxy::creationParameters):
   15781         Get preferences from the pageGroup.
   15782 
   15783         * UIProcess/WebPreferences.cpp:
   15784         (WebKit::WebPreferences::WebPreferences):
   15785         (WebKit::WebPreferences::addPageGroup):
   15786         (WebKit::WebPreferences::removePageGroup):
   15787         (WebKit::WebPreferences::update):
   15788         * UIProcess/WebPreferences.h:
   15789         (WebKit::WebPreferences::create):
   15790         Change to track page groups instead of contexts.
   15791 
   15792         * UIProcess/mac/WebPreferencesMac.mm:
   15793         (WebKit::makeKey): Add ".WebKit2" prefix for keys.
   15794 
   15795 2010-12-02  Anders Carlsson  <andersca (a] apple.com>
   15796 
   15797         Reviewed by Sam Weinig.
   15798 
   15799         Flash videos on YouTube flicker
   15800         https://bugs.webkit.org/show_bug.cgi?id=50409
   15801         <rdar://problem/8668757>
   15802 
   15803         When painting from a backing store, we need to add the source location
   15804         to the destination point.
   15805 
   15806         * WebProcess/Plugins/PluginProxy.cpp:
   15807         (WebKit::PluginProxy::paint):
   15808         (WebKit::PluginProxy::update):
   15809 
   15810 2010-12-02  Sam Weinig  <sam (a] webkit.org>
   15811 
   15812         Reviewed by Anders Carlsson.
   15813 
   15814         WebKit2 needs API to turn on popup blocking
   15815         https://bugs.webkit.org/show_bug.cgi?id=50407
   15816 
   15817         Pipe-through a preference for javascript being able to open
   15818         windows without user gesture.
   15819 
   15820         * Shared/WebPreferencesStore.h:
   15821         * UIProcess/API/C/WKPreferences.cpp:
   15822         (WKPreferencesSetJavaScriptCanOpenWindowsAutomatically):
   15823         (WKPreferencesGetJavaScriptCanOpenWindowsAutomatically):
   15824         * UIProcess/API/C/WKPreferences.h:
   15825         * WebProcess/WebPage/WebPage.cpp:
   15826         (WebKit::WebPage::updatePreferences):
   15827 
   15828 2010-12-02  Anders Carlsson  <andersca (a] apple.com>
   15829 
   15830         Reviewed by Sam Weinig.
   15831 
   15832         Plug-ins should be able to update the mouse cursor
   15833         https://bugs.webkit.org/show_bug.cgi?id=50399
   15834 
   15835         Call WKEnableSettingCursorWhenInBackground.
   15836 
   15837         * PluginProcess/mac/PluginProcessMainMac.mm:
   15838         (WebKit::PluginProcessMain):
   15839 
   15840 2010-12-02  Sam Weinig  <sam (a] webkit.org>
   15841 
   15842         Reviewed by Anders Carlsson.
   15843 
   15844         https://bugs.webkit.org/show_bug.cgi?id=50368
   15845         Overhaul WebKit2 preferences code
   15846 
   15847         - Reduces the number of places you have to touch to add a new preference
   15848           (From 9 down to 4, but with a bit of elbow grease, we should get that
   15849            down to 2 or 3).
   15850         - Add hooks so that platforms can initialize the preferences based on an
   15851           identifier. This is currently only used on the Mac to initialize a
   15852           preference store from NSUserDefaults and autosave the changes to disk.
   15853           It is not yet enabled due to no way to set the identifier from client
   15854           code.
   15855 
   15856         * Shared/WebPageCreationParameters.cpp:
   15857         Add necessary #include of WebCoreArgumentCoders.h which is now needed
   15858         due to cleanup in WebPreferencesStore.h.
   15859 
   15860         * Shared/WebPreferencesStore.cpp:
   15861         (WebKit::WebPreferencesStore::WebPreferencesStore):
   15862         (WebKit::WebPreferencesStore::encode):
   15863         (WebKit::WebPreferencesStore::decode):
   15864         (WebKit::defaultValueForKey):
   15865         (WebKit::setValueForKey):
   15866         (WebKit::valueForKey):
   15867         (WebKit::WebPreferencesStore::setStringValueForKey):
   15868         (WebKit::WebPreferencesStore::getStringValueForKey):
   15869         (WebKit::WebPreferencesStore::setBoolValueForKey):
   15870         (WebKit::WebPreferencesStore::getBoolValueForKey):
   15871         (WebKit::WebPreferencesStore::setUInt32ValueForKey):
   15872         (WebKit::WebPreferencesStore::getUInt32ValueForKey):
   15873         * Shared/WebPreferencesStore.h:
   15874         Complete overhaul of this class to store the preferences as
   15875         a set of HashMaps and use macros to define the keys and default
   15876         values.
   15877 
   15878         * UIProcess/API/C/WKPreferences.cpp:
   15879         (WKPreferencesGetFontSmoothingLevel):
   15880         Add cast to keep conversion function working.
   15881 
   15882         * UIProcess/WebPreferences.cpp:
   15883         (WebKit::WebPreferences::WebPreferences): Add identifier constructor.
   15884         (WebKit::WebPreferences::updateStringValueForKey):
   15885         (WebKit::WebPreferences::updateBoolValueForKey):
   15886         (WebKit::WebPreferences::updateUInt32ValueForKey):
   15887         Add type based updaters. These currently give hooks to the platform and
   15888         call the generic update, but in the future, we can use this to optimize
   15889         updating preferences to not send the entire store for each change.
   15890 
   15891         * UIProcess/WebPreferences.h:
   15892         Generate the getters and setters via macro instantiation.
   15893 
   15894         * UIProcess/cf/WebPreferencesCF.cpp: Added.
   15895         (WebKit::WebPreferences::platformInitializeStore):
   15896         (WebKit::WebPreferences::platformUpdateStringValueForKey):
   15897         (WebKit::WebPreferences::platformUpdateBoolValueForKey):
   15898         (WebKit::WebPreferences::platformUpdateUInt32ValueForKey):
   15899         Stubbed out.
   15900 
   15901         * UIProcess/mac/WebPreferencesMac.mm: Added.
   15902         (WebKit::makeKey):
   15903         (WebKit::setStringValueIfInUserDefaults):
   15904         (WebKit::setBoolValueIfInUserDefaults):
   15905         (WebKit::setUInt32ValueIfInUserDefaults):
   15906         (WebKit::WebPreferences::platformInitializeStore):
   15907         (WebKit::WebPreferences::platformUpdateStringValueForKey):
   15908         (WebKit::WebPreferences::platformUpdateBoolValueForKey):
   15909         (WebKit::WebPreferences::platformUpdateUInt32ValueForKey):
   15910         Use the platform hooks to initialize and update the store from
   15911         NSUserDefaults.
   15912         
   15913         * UIProcess/qt/WebPreferencesQt.cpp: Added.
   15914         (WebKit::WebPreferences::platformInitializeStore):
   15915         (WebKit::WebPreferences::platformUpdateStringValueForKey):
   15916         (WebKit::WebPreferences::platformUpdateBoolValueForKey):
   15917         (WebKit::WebPreferences::platformUpdateUInt32ValueForKey):
   15918         Stubbed out.
   15919 
   15920         * WebProcess/WebPage/WebPage.cpp:
   15921         (WebKit::WebPage::updatePreferences):
   15922         * WebProcess/WebPage/win/WebPageWin.cpp:
   15923         (WebKit::WebPage::platformPreferencesDidChange):
   15924         Update to pull the value using the new type based getters.
   15925 
   15926         * WebKit2.pro:
   15927         * WebKit2.xcodeproj/project.pbxproj:
   15928         * win/WebKit2.vcproj:
   15929         Add new files.
   15930 
   15931 2010-12-02  Steve Falkenburg  <sfalken (a] apple.com>
   15932 
   15933         Mac build fix.
   15934 
   15935         * WebProcess/WebKitMain.cpp:
   15936         (enableDataExecutionPrevention):
   15937 
   15938 2010-11-30 Amruth Raj  <amruthraj (a] motorola.com> and Ravi Kasibhatla  <ravi.kasibhatla (a] motorola.com>
   15939 
   15940         Reviewed by Martin Robinson.
   15941 
   15942         [GTK] Implement RunLoop, WorkQueue, Connection classes for WebKit2
   15943         https://bugs.webkit.org/show_bug.cgi?id=48507
   15944 
   15945         * Platform/CoreIPC/Connection.h: UNIX_X11 specific changes for GTK port.
   15946         (CoreIPC::Connection::messageProcessingCompleted):
   15947         * Platform/CoreIPC/gtk: Added.
   15948         * Platform/CoreIPC/gtk/ConnectionGtk.cpp: Added. Connection class implementation for GTK port (UNIX_X11 specific).
   15949         (CoreIPC::readBytesFromSocket):
   15950         (CoreIPC::writeBytesToSocket):
   15951         (CoreIPC::Connection::platformInitialize):
   15952         (CoreIPC::Connection::platformInvalidate):
   15953         (CoreIPC::Connection::processCompletedMessage):
   15954         (CoreIPC::Connection::readEventHandler):
   15955         (CoreIPC::Connection::open):
   15956         (CoreIPC::Connection::platformCanSendOutgoingMessages):
   15957         (CoreIPC::Connection::sendOutgoingMessage):
   15958         * Platform/PlatformProcessIdentifier.h: UNIX_X11 specific changes for GTK port.
   15959         * Platform/RunLoop.h: GTK port specific changes.
   15960         * Platform/WorkQueue.h: GTK port specific changes.
   15961         * Platform/gtk/RunLoopGtk.cpp: Added. Runs an event loop using GMainLoop and handles the incoming messages.
   15962         (RunLoop::RunLoop):
   15963         (RunLoop::~RunLoop):
   15964         (RunLoop::run):
   15965         (RunLoop::mainLoop):
   15966         (RunLoop::stop):
   15967         (RunLoop::queueWork):
   15968         (RunLoop::wakeUp):
   15969         (RunLoop::TimerBase::TimerBase):
   15970         (RunLoop::TimerBase::~TimerBase):
   15971         (RunLoop::TimerBase::resetTimerSource):
   15972         (RunLoop::TimerBase::oneShotTimerFired):
   15973         (RunLoop::TimerBase::repeatingTimerFired):
   15974         (RunLoop::TimerBase::start):
   15975         (RunLoop::TimerBase::stop):
   15976         (RunLoop::TimerBase::isActive):
   15977         * Platform/gtk/WorkQueueGtk.cpp: Added. Creates a thread and polls on a given fd using GIOChannel. 
   15978         Dispatches the obtained messages to RunLoop's GMainLoop.
   15979         (WorkQueue::EventSource::EventSource):
   15980         (WorkQueue::EventSource::dispatchSource):
   15981         (WorkQueue::EventSource::performWorkOnce):
   15982         (WorkQueue::EventSource::performWork):
   15983         (WorkQueue::EventSource::deleteEventSource):
   15984         (WorkQueue::platformInitialize):
   15985         (WorkQueue::platformInvalidate):
   15986         (WorkQueue::startWorkQueueThread):
   15987         (WorkQueue::workQueueThreadBody):
   15988         (WorkQueue::registerEventSourceHandler):
   15989         (WorkQueue::unregisterEventSourceHandler):
   15990         (WorkQueue::scheduleWork):
   15991 
   15992 2010-12-02  Steve Falkenburg  <sfalken (a] apple.com>
   15993 
   15994         Reviewed by Adam Roben.
   15995 
   15996         Move enableExecutionPrevention to WebKitMain
   15997         https://bugs.webkit.org/show_bug.cgi?id=50392
   15998 
   15999         * WebProcess/WebKitMain.cpp:
   16000         (enableDataExecutionPrevention):
   16001         (WebKitMain):
   16002         * WebProcess/win/WebProcessMainWin.cpp:
   16003         (WebKit::WebProcessMain):
   16004 
   16005 2010-12-02  Steve Falkenburg  <sfalken (a] apple.com>
   16006 
   16007         Reviewed by Adam Roben.
   16008 
   16009         Enable DEP at runtime to allow for compatibility with older versions of ATL
   16010         https://bugs.webkit.org/show_bug.cgi?id=50378
   16011 
   16012         * WebProcess/win/WebProcessMainWin.cpp:
   16013         (WebKit::enableDataExecutionPrevention):
   16014         (WebKit::WebProcessMain):
   16015         * win/WebKit2WebProcessCommon.vsprops:
   16016 
   16017 2010-12-01  Sam Weinig  <sam (a] webkit.org>
   16018 
   16019         Fix 64-bit build.
   16020 
   16021         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   16022         (WebKit::NetscapePlugin::windowAndViewFramesChanged):
   16023 
   16024 2010-12-01  Anders Carlsson  <andersca (a] apple.com>
   16025 
   16026         Reviewed by Sam Weinig.
   16027 
   16028         Give the fake Carbon window the right bounds
   16029         https://bugs.webkit.org/show_bug.cgi?id=50361
   16030 
   16031         * PluginProcess/PluginControllerProxy.cpp:
   16032         (WebKit::PluginControllerProxy::windowAndViewFramesChanged):
   16033         * PluginProcess/PluginControllerProxy.h:
   16034         * PluginProcess/PluginControllerProxy.messages.in:
   16035         * UIProcess/API/mac/WKView.mm:
   16036         (-[WKView _updateWindowAndViewFrames]):
   16037         Pass both the window frame and view frame along.
   16038 
   16039         (-[WKView renewGState]):
   16040         Call _updateWindowAndViewFrames.
   16041 
   16042         * UIProcess/WebPageProxy.cpp:
   16043         (WebKit::WebPageProxy::windowAndViewFramesChanged):
   16044         Pass both the window frame and view frame along.
   16045 
   16046         * UIProcess/WebPageProxy.h:
   16047         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   16048         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   16049         (WebKit::NetscapePlugin::platformPostInitialize):
   16050         We don't want a title bar in our fake window.
   16051     
   16052         (WebKit::computeFakeWindowBoundsRect):
   16053         Compute the fake window bounds.
   16054 
   16055         (WebKit::NetscapePlugin::windowAndViewFramesChanged):
   16056         Update the fake window bounds.
   16057 
   16058         * WebProcess/Plugins/Plugin.h:
   16059         * WebProcess/Plugins/PluginProxy.cpp:
   16060         (WebKit::PluginProxy::windowAndViewFramesChanged):
   16061         * WebProcess/Plugins/PluginProxy.h:
   16062         * WebProcess/Plugins/PluginView.cpp:
   16063         (WebKit::PluginView::windowAndViewFramesChanged):
   16064         (WebKit::PluginView::initializePlugin):
   16065         * WebProcess/Plugins/PluginView.h:
   16066         * WebProcess/WebPage/WebPage.cpp:
   16067         (WebKit::WebPage::windowAndViewFramesChanged):
   16068         * WebProcess/WebPage/WebPage.h:
   16069         (WebKit::WebPage::windowFrameInScreenCoordinates):
   16070         (WebKit::WebPage::viewFrameInWindowCoordinates):
   16071         * WebProcess/WebPage/WebPage.messages.in:
   16072         Pass both the window frame and view frame along.
   16073 
   16074 2010-12-01  Jia Pu  <jpu (a] apple.com>
   16075 
   16076         Reviewed by Darin Adler.
   16077 
   16078         Support multiple correction candidates panel for misspelled word on Mac OS X.
   16079         https://bugs.webkit.org/show_bug.cgi?id=50137
   16080         <rdar://problem/8568059>
   16081 
   16082         Adopted new function signatures defined in base class.
   16083 
   16084         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   16085         (WebKit::WebEditorClient::getGuessesForWord):
   16086         * WebProcess/WebCoreSupport/WebEditorClient.h:
   16087         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
   16088         (WebKit::WebEditorClient::showCorrectionPanel):
   16089 
   16090 2010-12-01  Simon Fraser  <simon.fraser (a] apple.com>
   16091 
   16092         Reviewed by John Sullivan.
   16093 
   16094         Hit testing broken on sibling views of the WKView
   16095         <rdar://problem/8718397>
   16096         
   16097         Make sure that hitView is not null when comparing with the
   16098         _layerHostingView.
   16099 
   16100         * UIProcess/API/mac/WKView.mm:
   16101         (-[WKView hitTest:]):
   16102 
   16103 2010-12-01  Anders Carlsson  <andersca (a] apple.com>
   16104 
   16105         Reviewed by Sam Weinig.
   16106 
   16107         Implement the remaining PluginController/Plugin member functions
   16108         https://bugs.webkit.org/show_bug.cgi?id=50356
   16109 
   16110         * PluginProcess/PluginControllerProxy.cpp:
   16111         (WebKit::PluginControllerProxy::cancelStreamLoad):
   16112         (WebKit::PluginControllerProxy::cancelManualStreamLoad):
   16113         (WebKit::PluginControllerProxy::setStatusbarText):
   16114         (WebKit::PluginControllerProxy::pluginProcessCrashed):
   16115         (WebKit::PluginControllerProxy::frameDidFinishLoading):
   16116         (WebKit::PluginControllerProxy::frameDidFail):
   16117         (WebKit::PluginControllerProxy::manualStreamDidReceiveResponse):
   16118         (WebKit::PluginControllerProxy::manualStreamDidReceiveData):
   16119         (WebKit::PluginControllerProxy::manualStreamDidFinishLoading):
   16120         (WebKit::PluginControllerProxy::manualStreamDidFail):
   16121         * PluginProcess/PluginControllerProxy.h:
   16122         * PluginProcess/PluginControllerProxy.messages.in:
   16123         * WebProcess/Plugins/PluginProxy.cpp:
   16124         (WebKit::PluginProxy::frameDidFinishLoading):
   16125         (WebKit::PluginProxy::frameDidFail):
   16126         (WebKit::PluginProxy::manualStreamDidReceiveResponse):
   16127         (WebKit::PluginProxy::manualStreamDidReceiveData):
   16128         (WebKit::PluginProxy::manualStreamDidFinishLoading):
   16129         (WebKit::PluginProxy::manualStreamDidFail):
   16130         (WebKit::PluginProxy::windowFrameChanged):
   16131         (WebKit::PluginProxy::cancelStreamLoad):
   16132         (WebKit::PluginProxy::cancelManualStreamLoad):
   16133         (WebKit::PluginProxy::setStatusbarText):
   16134         * WebProcess/Plugins/PluginProxy.h:
   16135         * WebProcess/Plugins/PluginProxy.messages.in:
   16136 
   16137 2010-12-01  Steve Falkenburg  <sfalken (a] apple.com>
   16138 
   16139         Reviewed by Adam Roben.
   16140 
   16141         WinCairo build should not use link-time code generation (LTCG)
   16142         https://bugs.webkit.org/show_bug.cgi?id=50353
   16143 
   16144         * win/WebKit2.vcproj:
   16145         * win/WebKit2WebProcess.vcproj:
   16146 
   16147 2010-12-01  Anders Carlsson  <andersca (a] apple.com>
   16148 
   16149         Reviewed by Sam Weinig..
   16150 
   16151         Fix <rdar://problem/8717674>.
   16152 
   16153         * WebProcess/com.apple.WebProcess.sb:
   16154         Allow the UI process to issue file-write extensions.
   16155 
   16156 2010-12-01  Sam Weinig  <sam (a] webkit.org>
   16157 
   16158         Another windows build fix.
   16159 
   16160         * UIProcess/API/C/win/WKView.cpp:
   16161         (WKViewCreate):
   16162 
   16163 2010-12-01  Sam Weinig  <sam (a] webkit.org>
   16164 
   16165         Attempt to fix Windows build.
   16166 
   16167         * UIProcess/API/C/win/WKViewPrivate.cpp:
   16168         * UIProcess/API/C/win/WKViewPrivate.h:
   16169 
   16170 2010-12-01  Sam Weinig  <sam (a] webkit.org>
   16171 
   16172         Reviewed by Anders Carlsson.
   16173 
   16174         Add PageGrouping to WebKit2 API
   16175         https://bugs.webkit.org/show_bug.cgi?id=50332
   16176 
   16177         - Adds WKPageGroupRef and WKBundlePageGroupRef API objects
   16178           (backed by WebPageGroup and WebPageGroupProxy respectively).
   16179         - Moves visibleToInjectedBundle from page to PageGroup.
   16180         - Make userScript/userStyleSheet functions take a page group parameter.
   16181 
   16182         * Shared/API/c/WKBase.h:
   16183         * Shared/APIObject.h:
   16184         * Shared/WebPageCreationParameters.cpp:
   16185         (WebKit::WebPageCreationParameters::encode):
   16186         (WebKit::WebPageCreationParameters::decode):
   16187         * Shared/WebPageCreationParameters.h:
   16188         * Shared/WebPageGroupData.cpp: Added.
   16189         (WebKit::WebPageGroupData::encode):
   16190         (WebKit::WebPageGroupData::decode):
   16191         * Shared/WebPageGroupData.h: Added.
   16192         * UIProcess/API/C/WKAPICast.h:
   16193         * UIProcess/API/C/WKPage.cpp:
   16194         (WKPageGetPageGroup):
   16195         * UIProcess/API/C/WKPage.h:
   16196         * UIProcess/API/C/WKPageGroup.cpp: Added.
   16197         (WKPageGroupGetTypeID):
   16198         (WKPageGroupCreateWithIdentifier):
   16199         (WKPageGroupCopyIdentifier):
   16200         * UIProcess/API/C/WKPageGroup.h: Added.
   16201         * UIProcess/API/C/WebKit2.h:
   16202         * UIProcess/API/C/win/WKView.cpp:
   16203         (WKViewCreate):
   16204         * UIProcess/API/C/win/WKView.h:
   16205         * UIProcess/API/mac/WKView.h:
   16206         * UIProcess/API/mac/WKView.mm:
   16207         (-[WKView initWithFrame:pageNamespaceRef:pageGroupRef:]):
   16208         (-[WKView initWithFrame:pageNamespaceRef:]):
   16209         * UIProcess/API/mac/WKViewInternal.h:
   16210         * UIProcess/API/qt/qwkpage.cpp:
   16211         (QWKPagePrivate::QWKPagePrivate):
   16212         * UIProcess/WebContext.cpp:
   16213         (WebKit::WebContext::WebContext):
   16214         (WebKit::WebContext::createWebPage):
   16215         * UIProcess/WebContext.h:
   16216         * UIProcess/WebContextUserMessageCoders.h:
   16217         (WebKit::WebContextUserMessageEncoder::encode):
   16218         (WebKit::WebContextUserMessageDecoder::decode):
   16219         * UIProcess/WebInspectorProxy.cpp:
   16220         (WebKit::WebInspectorProxy::inspectorPageGroup):
   16221         * UIProcess/WebInspectorProxy.h:
   16222         * UIProcess/WebPageGroup.cpp: Added.
   16223         (WebKit::generatePageGroupID):
   16224         (WebKit::webPageGroupMap):
   16225         (WebKit::WebPageGroup::create):
   16226         (WebKit::WebPageGroup::get):
   16227         (WebKit::WebPageGroup::WebPageGroup):
   16228         (WebKit::WebPageGroup::~WebPageGroup):
   16229         * UIProcess/WebPageGroup.h: Added.
   16230         (WebKit::WebPageGroup::identifier):
   16231         (WebKit::WebPageGroup::pageGroupID):
   16232         (WebKit::WebPageGroup::data):
   16233         (WebKit::WebPageGroup::type):
   16234         * UIProcess/WebPageNamespace.cpp:
   16235         (WebKit::WebPageNamespace::createWebPage):
   16236         * UIProcess/WebPageNamespace.h:
   16237         * UIProcess/WebPageProxy.cpp:
   16238         (WebKit::WebPageProxy::create):
   16239         (WebKit::WebPageProxy::WebPageProxy):
   16240         (WebKit::WebPageProxy::creationParameters):
   16241         * UIProcess/WebPageProxy.h:
   16242         (WebKit::WebPageProxy::pageGroup):
   16243         * UIProcess/WebProcessProxy.cpp:
   16244         (WebKit::WebProcessProxy::createWebPage):
   16245         * UIProcess/WebProcessProxy.h:
   16246         * UIProcess/mac/WebInspectorProxyMac.mm:
   16247         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
   16248         * UIProcess/win/WebView.cpp:
   16249         (WebKit::WebView::WebView):
   16250         * UIProcess/win/WebView.h:
   16251         (WebKit::WebView::create):
   16252         * WebKit2.pro:
   16253         * WebKit2.xcodeproj/project.pbxproj:
   16254         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   16255         (WKBundleAddUserScript):
   16256         (WKBundleAddUserStyleSheet):
   16257         (WKBundleRemoveUserScript):
   16258         (WKBundleRemoveUserStyleSheet):
   16259         (WKBundleRemoveUserScripts):
   16260         (WKBundleRemoveUserStyleSheets):
   16261         (WKBundleRemoveAllUserContent):
   16262         (WKBundleOverrideXSSAuditorEnabledForTestRunner):
   16263         * WebProcess/InjectedBundle/API/c/WKBundle.h:
   16264         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   16265         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   16266         (WKBundlePageGetPageGroup):
   16267         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   16268         * WebProcess/InjectedBundle/API/c/WKBundlePageGroup.cpp: Added.
   16269         (WKBundlePageGroupGetTypeID):
   16270         (WKBundlePageGroupCopyIdentifier):
   16271         * WebProcess/InjectedBundle/API/c/WKBundlePageGroup.h: Added.
   16272         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
   16273         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   16274         (WebKit::InjectedBundle::overrideXSSAuditorEnabledForTestRunner):
   16275         (WebKit::InjectedBundle::addUserScript):
   16276         (WebKit::InjectedBundle::addUserStyleSheet):
   16277         (WebKit::InjectedBundle::removeUserScript):
   16278         (WebKit::InjectedBundle::removeUserStyleSheet):
   16279         (WebKit::InjectedBundle::removeUserScripts):
   16280         (WebKit::InjectedBundle::removeUserStyleSheets):
   16281         (WebKit::InjectedBundle::removeAllUserContent):
   16282         (WebKit::InjectedBundle::didInitializePageGroup):
   16283         * WebProcess/InjectedBundle/InjectedBundle.h:
   16284         * WebProcess/InjectedBundle/InjectedBundleClient.cpp:
   16285         (WebKit::InjectedBundleClient::didInitializePageGroup):
   16286         * WebProcess/InjectedBundle/InjectedBundleClient.h:
   16287         * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
   16288         (WebKit::InjectedBundleUserMessageEncoder::encode):
   16289         (WebKit::InjectedBundleUserMessageDecoder::decode):
   16290         * WebProcess/WebPage/WebPage.cpp:
   16291         (WebKit::WebPage::create):
   16292         (WebKit::WebPage::WebPage):
   16293         (WebKit::WebPage::close):
   16294         * WebProcess/WebPage/WebPage.h:
   16295         (WebKit::WebPage::pageGroup):
   16296         * WebProcess/WebPage/WebPageGroupProxy.cpp: Added.
   16297         (WebKit::WebPageGroupProxy::create):
   16298         (WebKit::WebPageGroupProxy::~WebPageGroupProxy):
   16299         * WebProcess/WebPage/WebPageGroupProxy.h: Added.
   16300         (WebKit::WebPageGroupProxy::identifier):
   16301         (WebKit::WebPageGroupProxy::pageGroupID):
   16302         (WebKit::WebPageGroupProxy::isVisibleToInjectedBundle):
   16303         (WebKit::WebPageGroupProxy::WebPageGroupProxy):
   16304         (WebKit::WebPageGroupProxy::type):
   16305         * WebProcess/WebProcess.cpp:
   16306         (WebKit::WebProcess::webPageGroup):
   16307         * WebProcess/WebProcess.h:
   16308         * win/WebKit2.vcproj:
   16309         * win/WebKit2Generated.make:
   16310 
   16311 2010-12-01  Steve Falkenburg  <sfalken (a] apple.com>
   16312 
   16313         Reviewed by Adam Roben.
   16314 
   16315         vcproj changes can't be applied cleanly by the Windows EWS bot
   16316         https://bugs.webkit.org/show_bug.cgi?id=50328
   16317 
   16318         * win/WebKit2.submit.sln: Added property svn:eol-style.
   16319         * win/WebKit2.vcproj: Added property svn:eol-style.
   16320         * win/WebKit2Apple.vsprops: Added property svn:eol-style.
   16321         * win/WebKit2CFLite.vsprops: Added property svn:eol-style.
   16322         * win/WebKit2Common.vsprops: Added property svn:eol-style.
   16323         * win/WebKit2DirectX.vsprops: Added property svn:eol-style.
   16324         * win/WebKit2Generated.vcproj: Added property svn:eol-style.
   16325         * win/WebKit2GeneratedCommon.vsprops: Added property svn:eol-style.
   16326         * win/WebKit2WebProcess.vcproj: Added property svn:eol-style.
   16327         * win/WebKit2WebProcessCommon.vsprops: Added property svn:eol-style.
   16328 
   16329 2010-12-01  Simon Fraser  <simon.fraser (a] apple.com>
   16330 
   16331         Reviewed by Anders Carlsson.
   16332 
   16333         Size changes on layer-backed drawing areas don't always end up with the correct value
   16334         https://bugs.webkit.org/show_bug.cgi?id=50351
   16335         <rdar://problem/8692966>
   16336         
   16337         When the UI process does not receive didSetSize messages promptly, 
   16338         LayerBackedDrawingAreaProxy::setSize() bails early based on the
   16339         m_isWaitingForDidSetFrameNotification flag.
   16340         
   16341         In this situation, the final size may be incorrect. didSetSize()
   16342         needs to compare the size that the web process has to the expected size,
   16343         and send a final setSize if they differ.
   16344 
   16345         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   16346         (WebKit::LayerBackedDrawingAreaProxy::didSetSize):
   16347         (WebKit::LayerBackedDrawingAreaProxy::didReceiveMessage):
   16348         * UIProcess/LayerBackedDrawingAreaProxy.h:
   16349         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   16350         (WebKit::LayerBackedDrawingArea::setSize):
   16351 
   16352 2010-12-01  Simon Fraser  <simon.fraser (a] apple.com>
   16353 
   16354         Reviewed by Anders Carlsson.
   16355 
   16356         Crash when closing WebKit2 window with accelerated composting content
   16357         https://bugs.webkit.org/show_bug.cgi?id=50307
   16358         <rdar://problem/8640126>
   16359         
   16360         When the web page is closing, notify the drawing area, so that
   16361         the layer-backed drawing area can kill the runloop obsever,
   16362         then clear it. Clearing it is not sufficient, since the drawing
   16363         area is ref-counted.
   16364 
   16365         * WebProcess/WebPage/DrawingArea.h:
   16366         (WebKit::DrawingArea::onPageClose):
   16367         * WebProcess/WebPage/LayerBackedDrawingArea.h:
   16368         * WebProcess/WebPage/WebPage.cpp:
   16369         (WebKit::WebPage::close):
   16370         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   16371         (WebKit::LayerBackedDrawingArea::platformClear):
   16372         (WebKit::LayerBackedDrawingArea::onPageClose):
   16373 
   16374 2010-12-01  Anders Carlsson  <andersca (a] apple.com>
   16375 
   16376         Reviewed by Darin Adler.
   16377 
   16378         Return a correct user agent if NPN_UserAgent is called with a null NPP from NPP_New.
   16379         https://bugs.webkit.org/show_bug.cgi?id=50336
   16380 
   16381         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   16382         (WebKit::NPN_UserAgent):
   16383         Call the static NetscapePlugin::userAgent function instead.
   16384 
   16385         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   16386         (WebKit::NetscapePlugin::userAgent):
   16387         If the passed in NPP is null, get the NetscapePlugin currently executing NPP_New.
   16388 
   16389         (WebKit::NetscapePlugin::initialize):
   16390         Keep track of the plug-in currently executing NPP_New.
   16391 
   16392         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   16393 
   16394 2010-12-01  Brian Weinstein  <bweinstein (a] apple.com>
   16395 
   16396         One last Windows build fix.
   16397 
   16398         * UIProcess/win/WebView.cpp:
   16399         (WebKit::WebView::switchToDrawingAreaTypeIfNecessary):
   16400 
   16401 2010-12-01  Anders Carlsson  <andersca (a] apple.com>
   16402 
   16403         Fix Windows build.
   16404 
   16405         * UIProcess/win/WebView.cpp:
   16406         (WebKit::WebView::pageDidEnterAcceleratedCompositing):
   16407         (WebKit::WebView::pageDidLeaveAcceleratedCompositing):
   16408         (WebKit::WebView::switchToDrawingAreaTypeIfNecessary):
   16409 
   16410 2010-12-01  Anders Carlsson  <andersca (a] apple.com>
   16411 
   16412         Fix build.
   16413 
   16414         * UIProcess/win/WebView.h:
   16415 
   16416 2010-12-01  Anders Carlsson  <andersca (a] apple.com>
   16417 
   16418         Reviewed by Andreas Kling.
   16419 
   16420         Get rid of DrawingAreaBase
   16421         https://bugs.webkit.org/show_bug.cgi?id=50329
   16422 
   16423         * Scripts/webkit2/messages.py:
   16424         * Shared/DrawingAreaInfo.h:
   16425         (WebKit::DrawingAreaInfo::DrawingAreaInfo):
   16426         * Shared/WebPageCreationParameters.h:
   16427         * UIProcess/API/mac/WKView.mm:
   16428         (-[WKView _switchToDrawingAreaTypeIfNecessary:DrawingAreaInfo::]):
   16429         (-[WKView _pageDidEnterAcceleratedCompositing]):
   16430         (-[WKView _pageDidLeaveAcceleratedCompositing]):
   16431         * UIProcess/API/qt/qgraphicswkview.cpp:
   16432         (QGraphicsWKView::takeSnapshot):
   16433         (QGraphicsWKViewPrivate::commitScale):
   16434         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   16435         (WebKit::ChunkedUpdateDrawingAreaProxy::ChunkedUpdateDrawingAreaProxy):
   16436         (WebKit::ChunkedUpdateDrawingAreaProxy::setSize):
   16437         (WebKit::ChunkedUpdateDrawingAreaProxy::setPageIsVisible):
   16438         (WebKit::ChunkedUpdateDrawingAreaProxy::update):
   16439         * UIProcess/DrawingAreaProxy.cpp:
   16440         (WebKit::DrawingAreaProxy::DrawingAreaProxy):
   16441         (WebKit::DrawingAreaProxy::nextIdentifier):
   16442         * UIProcess/DrawingAreaProxy.h:
   16443         (WebKit::DrawingAreaProxy::info):
   16444         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   16445         (WebKit::LayerBackedDrawingAreaProxy::LayerBackedDrawingAreaProxy):
   16446         (WebKit::LayerBackedDrawingAreaProxy::setSize):
   16447         (WebKit::LayerBackedDrawingAreaProxy::setPageIsVisible):
   16448         (WebKit::LayerBackedDrawingAreaProxy::update):
   16449         * UIProcess/TiledDrawingAreaProxy.cpp:
   16450         (WebKit::TiledDrawingAreaProxy::TiledDrawingAreaProxy):
   16451         * UIProcess/WebPageProxy.cpp:
   16452         (WebKit::WebPageProxy::didChangeAcceleratedCompositing):
   16453         * UIProcess/WebPageProxy.h:
   16454         * UIProcess/WebPageProxy.messages.in:
   16455         * UIProcess/win/WebView.cpp:
   16456         (WebKit::WebView::switchToDrawingAreaTypeIfNecessary):
   16457         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   16458         (WebKit::ChunkedUpdateDrawingArea::ChunkedUpdateDrawingArea):
   16459         (WebKit::ChunkedUpdateDrawingArea::didReceiveMessage):
   16460         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h:
   16461         * WebProcess/WebPage/DrawingArea.cpp:
   16462         (WebKit::DrawingArea::create):
   16463         (WebKit::DrawingArea::DrawingArea):
   16464         * WebProcess/WebPage/DrawingArea.h:
   16465         (WebKit::DrawingArea::info):
   16466         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   16467         (WebKit::LayerBackedDrawingArea::LayerBackedDrawingArea):
   16468         (WebKit::LayerBackedDrawingArea::didReceiveMessage):
   16469         * WebProcess/WebPage/LayerBackedDrawingArea.h:
   16470         * WebProcess/WebPage/TiledDrawingArea.cpp:
   16471         (WebKit::TiledDrawingArea::TiledDrawingArea):
   16472         * WebProcess/WebPage/TiledDrawingArea.h:
   16473         * WebProcess/WebPage/WebPage.cpp:
   16474         (WebKit::WebPage::WebPage):
   16475         (WebKit::WebPage::changeAcceleratedCompositingMode):
   16476 
   16477 2010-11-30  Ryosuke Niwa  <rniwa (a] webkit.org>
   16478 
   16479         Unreviewed speculative build fix for Windows.
   16480 
   16481         * UIProcess/win/WebView.cpp:
   16482         (WebKit::WebView::pageDidEnterAcceleratedCompositing):
   16483         (WebKit::WebView::pageDidLeaveAcceleratedCompositing):
   16484         (WebKit::WebView::switchToDrawingAreaTypeIfNecessary):
   16485         * UIProcess/win/WebView.h:
   16486 
   16487 2010-11-30  Anders Carlsson  <andersca (a] apple.com>
   16488 
   16489         Fix Qt build.
   16490 
   16491         * UIProcess/API/qt/qgraphicswkview.cpp:
   16492         (QGraphicsWKView::takeSnapshot):
   16493         (QGraphicsWKViewPrivate::commitScale):
   16494 
   16495 2010-11-30  Anders Carlsson  <andersca (a] apple.com>
   16496 
   16497         Reviewed by Sam Weinig.
   16498 
   16499         Change DrawingArea and DrawingAreaProxy to not inherit from DrawingAreaBase
   16500         https://bugs.webkit.org/show_bug.cgi?id=50300
   16501 
   16502         * UIProcess/API/mac/WKView.mm:
   16503         (-[WKView _switchToDrawingAreaTypeIfNecessary:DrawingAreaBase::]):
   16504         (-[WKView _pageDidEnterAcceleratedCompositing]):
   16505         (-[WKView _pageDidLeaveAcceleratedCompositing]):
   16506         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   16507         (WebKit::ChunkedUpdateDrawingAreaProxy::ChunkedUpdateDrawingAreaProxy):
   16508         * UIProcess/DrawingAreaProxy.cpp:
   16509         (WebKit::DrawingAreaProxy::DrawingAreaProxy):
   16510         (WebKit::DrawingAreaProxy::nextDrawingAreaID):
   16511         * UIProcess/DrawingAreaProxy.h:
   16512         (WebKit::DrawingAreaProxy::info):
   16513         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   16514         (WebKit::LayerBackedDrawingAreaProxy::LayerBackedDrawingAreaProxy):
   16515         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   16516         (WebKit::ChunkedUpdateDrawingArea::ChunkedUpdateDrawingArea):
   16517         (WebKit::ChunkedUpdateDrawingArea::didReceiveMessage):
   16518         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h:
   16519         * WebProcess/WebPage/DrawingArea.cpp:
   16520         (WebKit::DrawingArea::create):
   16521         (WebKit::DrawingArea::DrawingArea):
   16522         * WebProcess/WebPage/DrawingArea.h:
   16523         (WebKit::DrawingArea::info):
   16524         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   16525         (WebKit::LayerBackedDrawingArea::LayerBackedDrawingArea):
   16526         (WebKit::LayerBackedDrawingArea::didReceiveMessage):
   16527         * WebProcess/WebPage/LayerBackedDrawingArea.h:
   16528         * WebProcess/WebPage/TiledDrawingArea.cpp:
   16529         (WebKit::TiledDrawingArea::TiledDrawingArea):
   16530         * WebProcess/WebPage/TiledDrawingArea.h:
   16531         * WebProcess/WebPage/WebPage.cpp:
   16532         (WebKit::WebPage::changeAcceleratedCompositingMode):
   16533 
   16534 2010-11-30  Simon Fraser  <simon.fraser (a] apple.com>
   16535 
   16536         Reviewed by Sam Weinig.
   16537 
   16538         Context menus broken after WebKit2 goes into accelerated composting mode.
   16539         https://bugs.webkit.org/show_bug.cgi?id=50296
   16540         
   16541         Override hitTest: on the WKView to exclude the child layer-backed view from
   16542         hit testing, so that context menus work.
   16543 
   16544         * UIProcess/API/mac/WKView.mm:
   16545         (-[WKView hitTest:]):
   16546 
   16547 2010-11-30  Mark Rowe  <mrowe (a] apple.com>
   16548 
   16549         Reviewed by Sam Weinig.
   16550 
   16551         Build fix.
   16552 
   16553         * Configurations/BaseTarget.xcconfig: Don't run Copy Files and Run Script build phases
   16554         during installhdrs. It's not necessary, and it results in Xcode attempting to copy the
   16555         plug-in shim dylib when it has not yet been built.
   16556         * WebKit2.xcodeproj/project.pbxproj: Stop copying the .xcconfig file in to the application
   16557         wrapper.
   16558 
   16559 2010-11-30  Anders Carlsson  <andersca (a] apple.com>
   16560 
   16561         Fix build.
   16562 
   16563         * Scripts/webkit2/messages.py:
   16564 
   16565 2010-11-30  Anders Carlsson  <andersca (a] apple.com>
   16566 
   16567         Reviewed by Sam Weinig.
   16568 
   16569         Rename DrawingAreaBase.h to DrawingAreaInfo.h.
   16570 
   16571         * Shared/DrawingAreaInfo.h: Renamed from WebKit2/Shared/DrawingAreaBase.h.
   16572         (WebKit::DrawingAreaBase::DrawingAreaInfo::DrawingAreaInfo):
   16573         (WebKit::DrawingAreaBase::~DrawingAreaBase):
   16574         (WebKit::DrawingAreaBase::info):
   16575         (WebKit::DrawingAreaBase::DrawingAreaBase):
   16576         * Shared/WebPageCreationParameters.h:
   16577         * UIProcess/DrawingAreaProxy.h:
   16578         * WebKit2.xcodeproj/project.pbxproj:
   16579         * WebProcess/WebPage/DrawingArea.h:
   16580         * win/WebKit2.vcproj:
   16581 
   16582 2010-11-30  Anders Carlsson  <andersca (a] apple.com>
   16583 
   16584         Fix build.
   16585 
   16586         * PluginProcess/mac/PluginProcessShim.cpp:
   16587 
   16588 2010-11-30  Anders Carlsson  <andersca (a] apple.com>
   16589 
   16590         Reviewed by Dan Bernstein.
   16591 
   16592         Add a simple shim function for Debugger().
   16593         https://bugs.webkit.org/show_bug.cgi?id=50268
   16594 
   16595         * PluginProcess/PluginProcess.h:
   16596         * PluginProcess/mac/PluginProcessMac.mm:
   16597         (WebKit::initShouldCallRealDebugger):
   16598         We only want to call the real Debugger() function when USERBREAK is set.
   16599 
   16600         (WebKit::shouldCallRealDebugger):
   16601         Return whether USERBREAK is set.
   16602         
   16603         (WebKit::PluginProcess::initializeShim):
   16604         Initialize the shim.
   16605 
   16606         * PluginProcess/mac/PluginProcessMainMac.mm:
   16607         (WebKit::PluginProcessMain):
   16608         Call PluginProcess::initializeShim.
   16609 
   16610         * PluginProcess/mac/PluginProcessShim.cpp:
   16611         (WebKit::WebKitPluginProcessShimInitialize):
   16612         This now takes a struct of callbacks.
   16613 
   16614         (WebKit::shimDebugger):
   16615         Call the shouldCallDebugger function. If it returns true, the real Debugger() function should be called.
   16616 
   16617         * PluginProcess/mac/PluginProcessShim.h:
   16618         * WebKit2.xcodeproj/project.pbxproj:
   16619 
   16620 2010-11-30  Anders Carlsson  <andersca (a] apple.com>
   16621 
   16622         Reviewed by Sam Weinig.
   16623 
   16624         Pass the plug-in process shim in DYLD_INSERT_LIBRARIES when launching the plug-in process
   16625         https://bugs.webkit.org/show_bug.cgi?id=50262
   16626 
   16627         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   16628         Add an EnvironmentVariables class that allows for easy modification of the environment variables
   16629         passed to posix_spawn.
   16630 
   16631         (WebKit::ProcessLauncher::launchProcess):
   16632         When spawning the plug-in process, insert the plug-in process shim.
   16633 
   16634 2010-11-30  Anders Carlsson  <andersca (a] apple.com>
   16635 
   16636         Reviewed by Sam Weinig.
   16637 
   16638         Add plug-in process shim
   16639         https://bugs.webkit.org/show_bug.cgi?id=50261
   16640 
   16641         * Configurations/PluginProcessShim.xcconfig: Added.
   16642         * PluginProcess/mac/PluginProcessShim.cpp: Added.
   16643         (PluginProcessShimInitialize):
   16644         * PluginProcess/mac/PluginProcessShim.h: Added.
   16645         * WebKit2.xcodeproj/project.pbxproj:
   16646 
   16647 2010-11-30  Brian Weinstein  <bweinstein (a] apple.com>
   16648 
   16649         Fix the Windows build by copying WKFindOptions.h into WebKitOutputDir with the other headers.
   16650 
   16651         * win/WebKit2Generated.make:
   16652 
   16653 2010-11-30  Dan Bernstein  <mitz (a] apple.com>
   16654 
   16655         Try to fix the Windows build.
   16656 
   16657         * win/WebKit2.vcproj:
   16658 
   16659 2010-11-30  Dan Bernstein  <mitz (a] apple.com>
   16660 
   16661         Reviewed by Anders Carlsson.
   16662 
   16663         Injected bundle support for <rdar://problem/8710645> WebKitTestRunner needs layoutTestController.findString
   16664         https://bugs.webkit.org/show_bug.cgi?id=50238
   16665 
   16666         * Shared/API/c/WKFindOptions.h: Added. Moved the definition of WKFindOptions here from WKPage.h.
   16667         * Shared/API/c/WKSharedAPICast.h:
   16668         (WebKit::toFindOptions): Moved from WKAPICast.h.
   16669         * UIProcess/API/C/WKAPICast.h:
   16670         * UIProcess/API/C/WKPage.h:
   16671         * WebKit2.xcodeproj/project.pbxproj: Added WKFindOptions.h.
   16672         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   16673         (WKBundlePageFindString): Added.
   16674         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   16675         * WebProcess/WebPage/WebPage.cpp:
   16676         (WebKit::WebPage::findStringFromInjectedBundle): Added.
   16677         * WebProcess/WebPage/WebPage.h:
   16678 
   16679 2010-11-30  Andreas Kling  <kling (a] webkit.org>
   16680 
   16681         Reviewed by Dirk Schulze.
   16682 
   16683         GraphicsContext: Remove "current path" and have strokePath, fillPath and clipPath take a Path argument
   16684         https://bugs.webkit.org/show_bug.cgi?id=48516
   16685 
   16686         * UIProcess/FindIndicator.cpp:
   16687         (WebKit::FindIndicator::draw):
   16688 
   16689 2010-11-30  Steve Falkenburg  <sfalken (a] apple.com>
   16690 
   16691         Reviewed by Adam Roben.
   16692 
   16693         All projects on Windows should use cmd files for build events
   16694         https://bugs.webkit.org/show_bug.cgi?id=50213
   16695 
   16696         * win/WebKit2Common.vsprops:
   16697         * win/WebKit2WebProcessCommon.vsprops:
   16698         * win/WebKit2WebProcessPostBuild.cmd: Added.
   16699         * win/WebKit2WebProcessPreBuild.cmd: Added.
   16700         * win/WebKitPostBuild.cmd: Added.
   16701         * win/WebKitPreBuild.cmd: Added.
   16702         * win/WebKitPreLink.cmd: Added.
   16703 
   16704 2010-11-30  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>
   16705 
   16706         Reviewed by Andreas Kling.
   16707 
   16708         [Qt] Early return if setResizesToContentsUsingLayoutSize() is called with already-set size
   16709 
   16710         * WebProcess/WebPage/WebPage.cpp:
   16711         (WebKit::WebPage::setResizesToContentsUsingLayoutSize):
   16712 
   16713 2010-11-29  Dan Bernstein  <mitz (a] apple.com>
   16714 
   16715         Reviewed by Darin Adler.
   16716 
   16717         WebKit2 part of <rdar://problem/8650085> adding word-prefix search options to the text search API.
   16718         https://bugs.webkit.org/show_bug.cgi?id=50038
   16719         Based on a patch from Darin Adler.
   16720 
   16721         * Shared/WebFindOptions.h: Renamed FindOptions.h to this to account for WebCores new private
   16722         FindOptions.h. Added and reordered FindOptions and rolled FindDirection into FindOptions.
   16723         * UIProcess/API/C/WKAPICast.h: Removed toFindDirection().
   16724         (WebKit::toFindOptions): Updated for new values.
   16725         * UIProcess/API/C/WKPage.cpp:
   16726         (WKPageFindString): Removed separate WKFindDirection.
   16727         (WKPageCountStringMatches): Replaces caseInsensitive boolean with WKFindOptions.
   16728         * UIProcess/API/C/WKPage.h: Removed WKFindDirection and updated WKFindOptions.
   16729         * UIProcess/WebPageProxy.cpp:
   16730         (WebKit::WebPageProxy::findString): Removed separate FindDirection.
   16731         (WebKit::WebPageProxy::countStringMatches): Replaced caseInsensitive boolean with FindOptions.
   16732         * UIProcess/WebPageProxy.h:
   16733         * WebKit2.xcodeproj/project.pbxproj: Updated for the header rename.
   16734         * WebProcess/WebPage/FindController.cpp:
   16735         (WebKit::core): Added. Converts WebKit2 FindOptions to WebCore FindOptions.
   16736         (WebKit::FindController::countStringMatches): Changed to use FindOptions.
   16737         (WebKit::FindController::findString): Ditto.
   16738         * WebProcess/WebPage/FindController.h:
   16739         * WebProcess/WebPage/WebPage.cpp:
   16740         (WebKit::WebPage::findString): Ditto.
   16741         (WebKit::WebPage::countStringMatches): Ditto.
   16742         * WebProcess/WebPage/WebPage.h:
   16743         * WebProcess/WebPage/WebPage.messages.in: Ditto.
   16744 
   16745 2010-11-29  Brent Fulgham  <bfulgham (a] webkit.org>
   16746 
   16747         Unreviewed build fix.
   16748 
   16749         * win/WebKit2.vcproj: Add missing vsprops association for
   16750         Debug_Cairo_CFLite target.
   16751 
   16752 2010-11-29  Anders Carlsson  <andersca (a] apple.com>
   16753 
   16754         Reviewed by Sam Weinig.
   16755 
   16756         Cursor does not always change back to arrow when exiting image document
   16757         https://bugs.webkit.org/show_bug.cgi?id=50190
   16758         <rdar://problem/8665265>
   16759 
   16760         * Shared/mac/WebEventFactory.mm:
   16761         (WebKit::mouseEventTypeForEvent):
   16762         (WebKit::globalPointForEvent):
   16763         (WebKit::pointForEvent):
   16764         Handle the NSMouseEntered and NSMouseExited events.
   16765 
   16766         * UIProcess/API/mac/WKView.mm:
   16767         (-[WKView initWithFrame:pageNamespaceRef:hiddenFromInjectedBundle:]):
   16768         We want entered and exited events for this tracking area.
   16769         Add mouseEntered and mouseExited handlers.
   16770 
   16771 2010-11-29  Anders Carlsson  <andersca (a] apple.com>
   16772 
   16773         Reviewed by Darin Adler.
   16774 
   16775         Should be able to pause and resume downloads
   16776         https://bugs.webkit.org/show_bug.cgi?id=50185
   16777         <rdar://problem/8691135>
   16778 
   16779         * UIProcess/API/C/WKContext.h:
   16780         Add didCancel callback.
   16781 
   16782         * UIProcess/API/C/WKDownload.cpp:
   16783         (WKDownloadGetResumeData):
   16784         (WKDownloadCancel):
   16785         Call the respective DownloadProxy member functions.
   16786 
   16787         * UIProcess/API/C/WKDownload.h:
   16788         * UIProcess/Downloads/DownloadProxy.cpp:
   16789         (WebKit::DownloadProxy::cancel):
   16790         Send Cancel to the WebProcess.
   16791 
   16792         (WebKit::DownloadProxy::didFail):
   16793         This now takes a resumeData reference.
   16794 
   16795         (WebKit::DownloadProxy::didCancel):
   16796         Set the resume data and call didCancel.
   16797 
   16798         * UIProcess/Downloads/DownloadProxy.h:
   16799         (WebKit::DownloadProxy::resumeData):
   16800         Return the resume data.
   16801 
   16802         * UIProcess/Downloads/DownloadProxy.messages.in:
   16803         Add DidCancel message, Add resume data to DidFail.
   16804 
   16805         * UIProcess/WebDownloadClient.cpp:
   16806         (WebKit::WebDownloadClient::didCancel):
   16807         Call the didCancel context client function.
   16808 
   16809         * WebProcess/Downloads/Download.cpp:
   16810         (WebKit::Download::didFail):
   16811         This now takes a resume data argument as well.
   16812         
   16813         (WebKit::Download::didCancel):
   16814         Send DidCancel.
   16815 
   16816         * WebProcess/Downloads/DownloadManager.cpp:
   16817         (WebKit::DownloadManager::cancelDownload):
   16818         Look up the download and cancel it.
   16819 
   16820         * WebProcess/Downloads/cf/DownloadCFNet.cpp:
   16821         (WebKit::Download::cancel):
   16822         Add stub.
   16823 
   16824         * WebProcess/Downloads/mac/DownloadMac.mm:
   16825         (WebKit::Download::cancel):
   16826         Cancel the download.
   16827 
   16828         (-[WKDownloadAsDelegate download:didFailWithError:]):
   16829         Pass the resume data along.
   16830 
   16831         * WebProcess/Downloads/qt/DownloadQt.cpp:
   16832         (WebKit::Download::cancel):
   16833         Add stub.
   16834 
   16835         * WebProcess/WebProcess.cpp:
   16836         (WebKit::WebProcess::cancelDownload):
   16837         Ask the download manager to cancel the download.
   16838 
   16839         * WebProcess/WebProcess.h:
   16840         * WebProcess/WebProcess.messages.in:
   16841         Add CancelDownload message.
   16842 
   16843 2010-11-29  Balazs Kelemen  <kbalazs (a] webkit.org>
   16844 
   16845         Reviewed by Adam Roben.
   16846 
   16847         [WK2] Support repeating timers
   16848         https://bugs.webkit.org/show_bug.cgi?id=50024
   16849 
   16850         Added boolean member for TimerBase on PLATFORM(WIN)
   16851         and PLATFORM(QT) to be able to differentiate between
   16852         repeating and one shot operating mode. Change the confusing
   16853         signature of TimerBase::start: use a bool for selecting
   16854         operating mode.
   16855         * Platform/RunLoop.h:
   16856         (RunLoop::TimerBase::startRepeating):
   16857         (RunLoop::TimerBase::startOneShot):
   16858         * Platform/mac/RunLoopMac.mm:
   16859         (RunLoop::TimerBase::start):
   16860         * Platform/qt/RunLoopQt.cpp:
   16861         (RunLoop::TimerBase::timerFired): Only stop the timer if it
   16862         is not in repeating mode.
   16863         (RunLoop::TimerBase::TimerBase): 
   16864         (RunLoop::TimerBase::start):
   16865         * Platform/win/RunLoopWin.cpp:
   16866         (RunLoop::TimerBase::timerFired):  Only stop the timer if it
   16867         is not in repeating mode.
   16868         (RunLoop::TimerBase::TimerBase):
   16869         (RunLoop::TimerBase::start):
   16870 
   16871 2010-11-29  Anders Carlsson  <andersca (a] apple.com>
   16872 
   16873         Reviewed by Sam Weinig.
   16874 
   16875         Downloads: When the web process crashes, call error callbacks for pending downloads
   16876         https://bugs.webkit.org/show_bug.cgi?id=50164
   16877         <rdar://problem/8691170>
   16878 
   16879         * UIProcess/API/C/WKContext.h:
   16880         Add processDidCrash callback.
   16881 
   16882         * UIProcess/Downloads/DownloadProxy.cpp:
   16883         (WebKit::DownloadProxy::~DownloadProxy):
   16884         Assert that the web context is null.
   16885 
   16886         (WebKit::DownloadProxy::processDidClose):
   16887         Call the processDidCrash callback.
   16888 
   16889         (WebKit::DownloadProxy::didFinish):
   16890         (WebKit::DownloadProxy::didFail):
   16891         Call downloadFinished.
   16892 
   16893         * UIProcess/WebContext.cpp:
   16894         (WebKit::WebContext::processDidClose):
   16895         Call processDidClose on all pending downloads.
   16896 
   16897         (WebKit::WebContext::downloadFinished):
   16898         Remove the download proxy from the map.
   16899 
   16900         * UIProcess/WebDownloadClient.cpp:
   16901         (WebKit::WebDownloadClient::processDidCrash):
   16902         Call the processDidCrash callback function.
   16903 
   16904 2010-11-29  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   16905 
   16906         Reviewed by Kenneth Rohde Christiansen.
   16907 
   16908         [Qt] Allow pre-generation for package builds for WebKit2
   16909         https://bugs.webkit.org/show_bug.cgi?id=50139
   16910 
   16911         Use a build variable for the generated directory path and set the
   16912         value based on CONFIG just like for WebKit1.
   16913 
   16914         For non-package builds use a relative base path for the
   16915         genrated directory just like for WebKit1.
   16916 
   16917         * DerivedSources.pro:
   16918         * WebKit2.pro:
   16919 
   16920 2010-11-28  Laszlo Gombos  <laszlo.1.gombos (a] nokia.com>
   16921 
   16922         Reviewed by Kenneth Rohde Christiansen.
   16923 
   16924         [Qt] Move some build logic from Qt to platform independent code
   16925         https://bugs.webkit.org/show_bug.cgi?id=50134
   16926 
   16927         Remove the creation of the directories under $$OUTPUT_DIR/include
   16928         as these will be handled by the fwheader_generator target.
   16929 
   16930         Remove the explicit generation of $$OUTPUT_DIR/WebKit2/generated as
   16931         this is not required.
   16932 
   16933         * DerivedSources.pro:
   16934 
   16935 2010-11-24  Brady Eidson  <beidson (a] apple.com>
   16936 
   16937         Reviewed implicitly by John Sullivan.
   16938 
   16939         https://bugs.webkit.org/show_bug.cgi?id=50042
   16940 
   16941         * UIProcess/mac/WebContextMenuProxyMac.mm:
   16942         (-[WebUserDataWrapper initWithUserData:WebKit::]): Do the proper self = [super init] dance here.
   16943 
   16944 2010-11-24  Brady Eidson  <beidson (a] apple.com>
   16945 
   16946         Reviewed by Dan Bernstein.
   16947 
   16948         More of <rdar://problem/8613727> and https://bugs.webkit.org/show_bug.cgi?id=50042
   16949         WK2 Context Menu Items need a user data object and a client callback for selection.
   16950 
   16951         * Shared/API/c/WKContextMenuItem.cpp:
   16952         (WKContextMenuItemGetUserData):
   16953         (WKContextMenuItemSetUserData):
   16954         * Shared/API/c/WKContextMenuItem.h:
   16955 
   16956         * Shared/WebContextMenuItem.cpp:
   16957         (WebKit::WebContextMenuItem::userData):
   16958         (WebKit::WebContextMenuItem::setUserData):
   16959         * Shared/WebContextMenuItem.h:
   16960 
   16961         * Shared/WebContextMenuItemData.cpp:
   16962         (WebKit::WebContextMenuItemData::userData):
   16963         (WebKit::WebContextMenuItemData::setUserData):
   16964         * Shared/WebContextMenuItemData.h:
   16965 
   16966         * UIProcess/API/C/WKPage.h:
   16967 
   16968         * UIProcess/WebPageContextMenuClient.cpp:
   16969         (WebKit::WebPageContextMenuClient::customContextMenuItemSelected): Added for WK2 apps to get a callback.
   16970         * UIProcess/WebPageContextMenuClient.h:
   16971 
   16972         * UIProcess/WebPageProxy.cpp:
   16973         (WebKit::WebPageProxy::contextMenuItemSelected):
   16974         * UIProcess/mac/WebContextMenuProxyMac.mm:
   16975         (-[WebUserDataWrapper initWithUserData:WebKit::]): Add an "APIObject" user data wrapper class to associate with the NSMenuItem.
   16976         (-[WebUserDataWrapper WebKit::]):
   16977         (-[WebMenuTarget forwardContextMenuAction:]): Include the user data object in the created ContextMenuItemData.
   16978         (WebKit::nsMenuItemVector):
   16979 
   16980 2010-11-24  Andras Becsi  <abecsi (a] inf.u-szeged.hu>
   16981 
   16982         Reviewed by Kenneth Rohde Christiansen.
   16983 
   16984         Make WebKit2 compile with !ENABLE(INSPECTOR).
   16985         https://bugs.webkit.org/show_bug.cgi?id=49973
   16986 
   16987         * Shared/API/c/WKSharedAPICast.h:
   16988         (WebKit::toAPI):
   16989         (WebKit::toImpl):
   16990         * UIProcess/API/C/WKAPICast.h:
   16991         * UIProcess/API/C/WKInspector.cpp:
   16992         * UIProcess/API/C/WKInspector.h:
   16993         * UIProcess/API/C/WKPage.cpp:
   16994         * UIProcess/API/C/WKPage.h:
   16995         * UIProcess/WebInspectorProxy.cpp:
   16996         * UIProcess/WebInspectorProxy.h:
   16997         * UIProcess/WebInspectorProxy.messages.in:
   16998         * UIProcess/WebPageProxy.cpp:
   16999         (WebKit::WebPageProxy::close):
   17000         (WebKit::WebPageProxy::didReceiveMessage):
   17001         (WebKit::WebPageProxy::didReceiveSyncMessage):
   17002         (WebKit::WebPageProxy::processDidCrash):
   17003         * UIProcess/WebPageProxy.h:
   17004         * UIProcess/mac/WebInspectorProxyMac.mm:
   17005         * UIProcess/qt/WebInspectorProxyQt.cpp:
   17006         * UIProcess/win/WebInspectorProxyWin.cpp:
   17007         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
   17008         * WebProcess/WebCoreSupport/WebInspectorClient.h:
   17009         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
   17010         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
   17011         * WebProcess/WebPage/WebInspector.cpp:
   17012         * WebProcess/WebPage/WebInspector.h:
   17013         * WebProcess/WebPage/WebInspector.messages.in:
   17014         * WebProcess/WebPage/WebPage.cpp:
   17015         (WebKit::WebPage::WebPage):
   17016         (WebKit::WebPage::close):
   17017         (WebKit::WebPage::windowIsFocused):
   17018         (WebKit::WebPage::didReceiveMessage):
   17019         * WebProcess/WebPage/WebPage.h:
   17020         * WebProcess/WebPage/qt/WebInspectorQt.cpp:
   17021         * WebProcess/WebPage/win/WebInspectorWin.cpp:
   17022 
   17023 2010-11-24  Andreas Kling  <kling (a] webkit.org>
   17024 
   17025         Reviewed by Kenneth Rohde Christiansen.
   17026 
   17027         [Qt][WK2] Make deep copies of tile images
   17028 
   17029         We need the tile images we get from UpdateChunk::createImage() to persist,
   17030         so we should take a copy() of them.
   17031 
   17032         * UIProcess/qt/TiledDrawingAreaTileQt.cpp:
   17033         (WebKit::TiledDrawingAreaTile::updateFromChunk):
   17034 
   17035 2010-11-24  Andreas Kling  <kling (a] webkit.org>
   17036 
   17037         Reviewed by Kenneth Rohde Christiansen.
   17038 
   17039         [Qt] Fix uninitialized variable in QGraphicsWKViewPrivate
   17040 
   17041         Always initialize QGWKVP::m_isChangingScale in the constructor.
   17042 
   17043         * UIProcess/API/qt/qgraphicswkview.cpp:
   17044         (QGraphicsWKViewPrivate::QGraphicsWKViewPrivate):
   17045 
   17046 2010-11-23  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>
   17047 
   17048         Reviewed by Andreas Kling.
   17049 
   17050         Adapt to setShouldDelegateScrolling not being a real setting anymore.
   17051         We now similarily to setUseFixedLayout and setPaintEntireContents
   17052         set it on the FrameView wen transitioning to a new page, etc.
   17053 
   17054         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   17055         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
   17056         * WebProcess/WebPage/WebPage.cpp:
   17057         (WebKit::WebPage::setResizesToContentsUsingLayoutSize):
   17058 
   17059 2010-11-22  Adam Roben  <aroben (a] apple.com>
   17060 
   17061         Use paths relative to $WebKitVSPropsRedirectionDir to access shared .vsprops files
   17062 
   17063         Apple's Windows build allows placing header files and import libraries for WebKit's
   17064         dependencies (CoreGraphics, CFNetwork, SQLite, etc.) outside the source tree via the
   17065         $WebKitLibrariesDir environment variable. This is both required for production builds and
   17066         convenient for Apple-internal developer builds. Apple's production builds also require that
   17067         WebKit's shared .vsprops files be accessed relative to $WebKitLibrariesDir. In production
   17068         builds, the files are copied into that directory tree by the
   17069         WebKitLibraries/win/tools/WinTools.make file. In Apple-internal developer builds, the
   17070         copying is done by
   17071         JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGenerated.make.
   17072 
   17073         This .vsprops copying is problematic in one very important case: when a developer updates
   17074         their source tree and then tries to build. Visual Studio only reads .vsprops files when a
   17075         project is first loaded. So, when Visual Studio is first opened after the .vsprops files are
   17076         updated, it reads in the old files that were already residing in $WebKitLibrariesDir. When a
   17077         build is started, JavaScriptCoreGenerated.make copies the new .vsprops files into
   17078         $WebKitLibrariesDir, but Visual Studio will not pick up the changes.  The rest of the build
   17079         will proceed with out-of-date .vsprops files, which will likely result in a build failure.
   17080 
   17081         To fix this, we now use normal relative paths to access the .vsprops files in the source
   17082         tree rather than in $WebKitLibrariesDir, but prefix those paths with a new environment
   17083         variable, $WebKitVSPropsRedirectionDir. In developer builds, this environment variable is
   17084         unset, so the normal relative paths are used to read the .vsprops files out of the source
   17085         tree directly. In production builds, this environment variable is set to a fake directory
   17086         that will cause the .vsprops files in $WebKitLibrariesDir to be found when the relative path
   17087         is resolved.
   17088         
   17089         For example, JavaScriptCore.vcproj uses this path for FeatureDefines.vsprops:
   17090 
   17091         $(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops
   17092 
   17093         In developer builds, where $WebKitVSPropsRedirectionDir is unset, this will point to the
   17094         files in WebKitLibraries\win\tools\vsprops in the source tree. In production builds,
   17095         JavaScriptCore.make sets $WebKitVSPropsRedirectionDir to
   17096         "$(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\1\2\3\", so the full path for
   17097         FeatureDefines.vsprops becomes:
   17098 
   17099         $(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\1\2\3\..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops
   17100 
   17101         which resolves to:
   17102 
   17103         $(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops
   17104 
   17105         (We rely on the fact that Windows doesn't care whether the directories "1", "2", and "3"
   17106         actually exist since they are matched by an equal number of ".." path components.)
   17107 
   17108         Note that Visual Studio still won't pick up changes made to .vsprops files while Visual
   17109         Studio is open, but that problem hasn't seemed to cause developers many headaches so far.
   17110 
   17111         Fixes <http://webkit.org/b/49181> Windows build fails mysteriously when .vsprops files are
   17112         updated
   17113 
   17114         Reviewed by Dave Hyatt.
   17115 
   17116         * win/WebKit2.make: Set $WebKitVSPropsRedirectionDir so that production builds can
   17117         find the .vsprops files.
   17118 
   17119         * win/WebKit2.vcproj:
   17120         * win/WebKit2WebProcess.vcproj:
   17121         Changed to use paths relative to $WebKitVSPropsRedirectionDir to access shared .vsprops
   17122         files.
   17123 
   17124 2010-11-22  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>
   17125 
   17126         Reviewed by Andreas Kling.
   17127 
   17128         Make WebKit2 compile with ENABLE_JAVASCRIPT_DEBUGGER=0
   17129 
   17130         * WebProcess/WebPage/WebInspector.cpp: Add missing ENABLE(JAVASCRIPT_DEBUGGER) guards.
   17131         (WebKit::WebInspector::startJavaScriptDebugging):
   17132         (WebKit::WebInspector::stopJavaScriptDebugging):
   17133         (WebKit::WebInspector::startJavaScriptProfiling):
   17134         (WebKit::WebInspector::stopJavaScriptProfiling):
   17135 
   17136 2010-11-21  Sam Weinig  <sam (a] webkit.org>
   17137 
   17138         Reviewed by Dan Bernstein.
   17139 
   17140         Textareas should be resizable by default
   17141         https://bugs.webkit.org/show_bug.cgi?id=49892
   17142 
   17143         Test: WebKit2/WKPreferences
   17144 
   17145         * Shared/WebPreferencesStore.cpp:
   17146         (WebKit::WebPreferencesStore::WebPreferencesStore):
   17147         (WebKit::WebPreferencesStore::encode):
   17148         (WebKit::WebPreferencesStore::decode):
   17149         * Shared/WebPreferencesStore.h:
   17150         Add textAreasAreResizable bit.
   17151 
   17152         * UIProcess/API/C/WKPreferences.cpp:
   17153         (WKPreferencesSetJavaEnabled):
   17154         (WKPreferencesGetJavaEnabled):
   17155         Fix typo, WKPRe... -> WKPre...
   17156 
   17157         (WKPreferencesSetMinimumFontSize):
   17158         (WKPreferencesGetMinimumFontSize):
   17159         Fix comment to correctly reflect that the default minimumFontSize is 0, not 1.
   17160 
   17161         (WKPreferencesSetTextAreasAreResizable):
   17162         (WKPreferencesGetTextAreasAreResizable):
   17163         * UIProcess/API/C/WKPreferences.h:
   17164         Add API.
   17165 
   17166         * UIProcess/API/C/WKPreferencesPrivate.h:
   17167         Don't use PLATFORM in API headers.
   17168 
   17169         * UIProcess/WebPreferences.cpp:
   17170         (WebKit::WebPreferences::setTextAreasAreResizable):
   17171         (WebKit::WebPreferences::textAreasAreResizable):
   17172         * UIProcess/WebPreferences.h:
   17173         * WebProcess/WebPage/WebPage.cpp:
   17174         (WebKit::WebPage::updatePreferences):
   17175         Pipe bit through to the WebProcess and onto WebCore::Settings.
   17176 
   17177 2010-11-19  Zalan Bujtas  <zbujtas (a] gmail.com>
   17178 
   17179         Reviewed by Andreas Kling.
   17180 
   17181         WebUIClient::createNewPage() expects a retained WKPageRef. 
   17182         https://bugs.webkit.org/show_bug.cgi?id=48549
   17183 
   17184         * UIProcess/API/qt/ClientImpl.cpp:
   17185         (qt_wk_createNewPage):
   17186 
   17187 2010-11-19  Anders Carlsson  <andersca (a] apple.com>
   17188 
   17189         Reviewed by Sam Weinig.
   17190 
   17191         Add a didFail WKContextDownloadClient callback
   17192         https://bugs.webkit.org/show_bug.cgi?id=49847
   17193 
   17194         * UIProcess/API/C/WKContext.h:
   17195         Add didFail callback.
   17196 
   17197         * UIProcess/Downloads/DownloadProxy.cpp:
   17198         (WebKit::DownloadProxy::didFail):
   17199         Call WebDownloadClient::didFail.
   17200 
   17201         * UIProcess/WebDownloadClient.cpp:
   17202         (WebKit::WebDownloadClient::didFail):
   17203         Call the didFail client function.
   17204 
   17205 
   17206 2010-11-19  Anders Carlsson  <andersca (a] apple.com>
   17207 
   17208         Reviewed by Sam Weinig.
   17209 
   17210         Extend sandbox when downloading files
   17211         https://bugs.webkit.org/show_bug.cgi?id=49844
   17212 
   17213         * Platform/CoreIPC/HandleMessage.h:
   17214         (CoreIPC::callMemberFunction):
   17215         Add new overload.
   17216 
   17217         * UIProcess/Downloads/DownloadProxy.cpp:
   17218         (WebKit::DownloadProxy::decideDestinationWithSuggestedFilename):
   17219         Create a sandbox extension handle if necessary.
   17220 
   17221         * UIProcess/Downloads/DownloadProxy.messages.in:
   17222         Add a sandbox extension handle out parameter to the DecideDestinationWithSuggestedFilename message.
   17223 
   17224         * WebProcess/Downloads/Download.cpp:
   17225         (WebKit::Download::decideDestinationWithSuggestedFilename):
   17226         Create and consume the returned sandbox extension handle.
   17227 
   17228         (WebKit::Download::didFinish):
   17229         (WebKit::Download::didFail):
   17230         Invalidate the sandbox extension handles.
   17231 
   17232         * WebProcess/Downloads/mac/DownloadMac.mm:
   17233         (-[WKDownloadAsDelegate download:shouldDecodeSourceDataOfMIMEType:]):
   17234         Whoops, fix inverted logic.
   17235 
   17236 2010-11-19  Steve Falkenburg  <sfalken (a] apple.com>
   17237 
   17238         Reviewed by Adam Roben.
   17239 
   17240         Add Debug_Cairo_CFLite and Release_Cairo_CFLite configurations for all vcproj files
   17241         https://bugs.webkit.org/show_bug.cgi?id=49819
   17242 
   17243         * win/WebKit2.vcproj:
   17244         * win/WebKit2Generated.vcproj:
   17245         * win/WebKit2WebProcess.vcproj:
   17246         * win/WebKit2WebProcessCommon.vsprops:
   17247 
   17248 2010-11-19  Brady Eidson  <beidson (a] apple.com>
   17249 
   17250         Reviewed by Darin Adler.
   17251 
   17252         More of <rdar://problem/8613727> and https://bugs.webkit.org/show_bug.cgi?id=49836
   17253         Add WebKit2 API relevant to customization of context menus
   17254 
   17255         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   17256         (WKBundleFrameAllowsFollowingLink):
   17257         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   17258 
   17259         * WebProcess/WebPage/WebFrame.cpp:
   17260         (WebKit::WebFrame::allowsFollowingLink):
   17261         * WebProcess/WebPage/WebFrame.h:
   17262 
   17263 2010-11-19  Brady Eidson  <beidson (a] apple.com>
   17264 
   17265         Reviewed by Darin Adler.
   17266 
   17267         <rdar://problem/8613727> and https://bugs.webkit.org/show_bug.cgi?id=49836
   17268         Add WebKit2 API relevant to customization of context menus
   17269 
   17270         Most of this is just exposing already-existing concepts in API.
   17271 
   17272         * Shared/API/c/WKURLRequest.cpp:
   17273         (WKURLRequestCreateWithWKURL):
   17274         * Shared/API/c/WKURLRequest.h:
   17275 
   17276         * Shared/WebURLRequest.cpp:
   17277         (WebKit::WebURLRequest::create):
   17278         * Shared/WebURLRequest.h:
   17279 
   17280         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:
   17281         (WKBundleHitTestResultCopyAbsoluteImageURL):
   17282         (WKBundleHitTestResultCopyAbsoluteMediaURL):
   17283         (WKBundleHitTestResultGetImageRect):
   17284         (WKBundleHitTestResultGetIsSelected):
   17285         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h:
   17286 
   17287         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   17288         (WKBundlePageHasLocalDataForURL):
   17289         (WKBundlePageCanHandleRequest):
   17290         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   17291 
   17292         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
   17293         (WebKit::InjectedBundleHitTestResult::absoluteImageURL):
   17294         (WebKit::InjectedBundleHitTestResult::absoluteMediaURL):
   17295         (WebKit::InjectedBundleHitTestResult::imageRect):
   17296         (WebKit::InjectedBundleHitTestResult::isSelected):
   17297         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
   17298 
   17299         * WebProcess/WebPage/WebContextMenu.cpp:
   17300         (WebKit::WebContextMenu::show):
   17301 
   17302         * WebProcess/WebPage/WebPage.h:
   17303         * WebProcess/WebPage/mac/WebPageMac.mm:
   17304         (WebKit::WebPage::hasLocalDataForURL):
   17305         (WebKit::WebPage::canHandleRequest):
   17306         * WebProcess/WebPage/qt/WebPageQt.cpp:
   17307         (WebKit::WebPage::hasLocalDataForURL): Stubbed for now.
   17308         (WebKit::WebPage::canHandleRequest): Ditto.
   17309         * WebProcess/WebPage/win/WebPageWin.cpp:
   17310         (WebKit::WebPage::hasLocalDataForURL): Ditto.
   17311         (WebKit::WebPage::canHandleRequest): Ditto.
   17312 
   17313 2010-11-19  Darin Adler  <darin (a] apple.com>
   17314 
   17315         Reviewed by Sam Weinig.
   17316 
   17317         Need a way to clear disk cache from WebContext
   17318         https://bugs.webkit.org/show_bug.cgi?id=49820
   17319 
   17320         * UIProcess/API/C/WKContext.cpp:
   17321         (WKContextClearResourceCaches): Added.
   17322         (WKContextClearApplicationCache): Added.
   17323         * UIProcess/API/C/WKContext.h:
   17324         * UIProcess/WebContext.cpp:
   17325         (WebKit::WebContext::clearResourceCaches): Added.
   17326         (WebKit::WebContext::clearApplicationCache): Added.
   17327         * UIProcess/WebContext.h:
   17328         * WebProcess/WebProcess.cpp:
   17329         (WebKit::WebProcess::clearResourceCaches): Added.
   17330         (WebKit::WebProcess::clearApplicationCache): Added.
   17331         * WebProcess/WebProcess.h:
   17332         * WebProcess/WebProcess.messages.in: Added messages.
   17333         * WebProcess/mac/WebProcessMac.mm:
   17334         (WebKit::WebProcess::platformClearResourceCaches): Added.
   17335         * WebProcess/qt/WebProcessQt.cpp:
   17336         (WebKit::WebProcess::platformClearResourceCaches): Added.
   17337         * WebProcess/win/WebProcessWin.cpp:
   17338         (WebKit::WebProcess::platformClearResourceCaches): Added.
   17339 
   17340 2010-11-19  Anders Carlsson  <andersca (a] apple.com>
   17341 
   17342         Reviewed by Sam Weinig.
   17343 
   17344         Implement support for loading local files
   17345         https://bugs.webkit.org/show_bug.cgi?id=49828
   17346         <rdar://problem/8447121>
   17347 
   17348         * UIProcess/WebPageProxy.cpp:
   17349         (WebKit::initializeSandboxExtensionHandle):
   17350         Given an URL, create a sandbox extension if it's a local file URL.
   17351 
   17352         (WebKit::WebPageProxy::loadURL):
   17353         (WebKit::WebPageProxy::loadURLRequest):
   17354         Pass along sandbox extension handles to the LoadURL and LoadURLRequest messages.
   17355         
   17356         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   17357         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
   17358         Call SandboxExtensionTracker::didStartProvisionalLoad.
   17359 
   17360         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
   17361         Call SandboxExtensionTracker::didCommitProvisionalLoad.
   17362 
   17363         (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
   17364         Call SandboxExtensionTracker::didFailProvisionalLoad.
   17365 
   17366         * WebProcess/WebPage/WebPage.cpp:
   17367         (WebKit::WebPage::~WebPage):
   17368         Invalidate the sandbox extension tracker.
   17369 
   17370         (WebKit::WebPage::close):
   17371         Invalidate the sandbox extension tracker.
   17372 
   17373         (WebKit::WebPage::loadURL):
   17374         (WebKit::WebPage::loadURLRequest):
   17375         Pass the sandbox extension handle to the sandbox extension tracker.
   17376 
   17377         (WebKit::WebPage::SandboxExtensionTracker::~SandboxExtensionTracker):
   17378         Invalidate the sandbox extension tracker.
   17379 
   17380         (WebKit::WebPage::SandboxExtensionTracker::invalidate):
   17381         invalidate ell the sandbox extensions.
   17382         
   17383         (WebKit::WebPage::SandboxExtensionTracker::beginLoad):
   17384         Create a sandbox extension and store it as the "pending provisional extension".
   17385 
   17386         (WebKit::WebPage::SandboxExtensionTracker::didStartProvisionalLoad):
   17387         Consume the pending provisional extension and make it the provisional extension.
   17388 
   17389         (WebKit::WebPage::SandboxExtensionTracker::didCommitProvisionalLoad):
   17390         Invalidate the committed extension and make the provisional extension the committed extension.
   17391 
   17392         (WebKit::WebPage::SandboxExtensionTracker::didFailProvisionalLoad):
   17393         Invalidate the provisional extension.
   17394 
   17395         * WebProcess/WebPage/WebPage.messages.in:
   17396         Add SandboxExtension::Handle parameters to LoadURL and LoadURLRequest.
   17397 
   17398 2010-11-19  Anders Carlsson  <andersca (a] apple.com>
   17399 
   17400         Reviewed by Darin Adler.
   17401 
   17402         Make it possible to encode null SandboxExtension handles
   17403         https://bugs.webkit.org/show_bug.cgi?id=49825
   17404 
   17405         * Shared/mac/SandboxExtensionMac.mm:
   17406         (WebKit::SandboxExtension::Handle::encode):
   17407         If there's no underlying sandbox extension, just encode an empty byte array.
   17408 
   17409         (WebKit::SandboxExtension::Handle::decode):
   17410         If the decoded byte array is empty, don't try to create a sandbox extension.
   17411 
   17412         (WebKit::SandboxExtension::create):
   17413         If the handle is null, return null.
   17414 
   17415         (WebKit::SandboxExtension::consume):
   17416         Consuming shuld not null out the underlying sandbox extension object.
   17417 
   17418 2010-11-19  Steve Falkenburg  <sfalken (a] apple.com>
   17419 
   17420         Reviewed by Darin Adler.
   17421 
   17422         Normalize Cairo/CFLite project/solution configuration names
   17423         https://bugs.webkit.org/show_bug.cgi?id=49818
   17424 
   17425         * win/WebKit2.vcproj:
   17426         * win/WebKit2WebProcess.vcproj:
   17427 
   17428 2010-11-19  Anders Carlsson  <andersca (a] apple.com>
   17429 
   17430         Reviewed by Sam Weinig.
   17431 
   17432         Add SandboxExtension abstraction and use it for the injected bundle extension
   17433         https://bugs.webkit.org/show_bug.cgi?id=49817
   17434 
   17435         * Shared/SandboxExtension.h:
   17436         Add SandboxExtension abstraction.
   17437         
   17438         * Shared/WebProcessCreationParameters.cpp:
   17439         (WebKit::WebProcessCreationParameters::encode):
   17440         (WebKit::WebProcessCreationParameters::decode):
   17441         * Shared/WebProcessCreationParameters.h:
   17442         Instead of encoding/decoding a token, encode/decode the sandbox extension handle.
   17443 
   17444         * Shared/mac/SandboxExtensionMac.mm: Added.
   17445         Add Mac implementation of SandboxExtension.
   17446 
   17447         * UIProcess/WebContext.cpp:
   17448         (WebKit::WebContext::ensureWebProcess):
   17449         Create a SandboxExtension::Handle object.
   17450 
   17451         * WebKit2.xcodeproj/project.pbxproj:
   17452         Add new files.
   17453         
   17454         * WebProcess/InjectedBundle/InjectedBundle.h:
   17455         (WebKit::InjectedBundle::setSandboxExtension):
   17456         Set the sandbox extension.
   17457 
   17458         * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp:
   17459         (WebKit::InjectedBundle::load):
   17460         Consume the sandbox extension.
   17461 
   17462         * WebProcess/WebProcess.cpp:
   17463         (WebKit::WebProcess::initializeWebProcess):
   17464         Create a sandbox extension and set it on the injected bundle.
   17465 
   17466 2010-11-18  Steve Falkenburg  <sfalken (a] apple.com>
   17467 
   17468         Reviewed by Adam Roben.
   17469 
   17470         Windows vcproj configuration names should be normalized across projects
   17471         https://bugs.webkit.org/show_bug.cgi?id=49776
   17472 
   17473         * win/WebKit2.submit.sln:
   17474         * win/WebKit2Generated.vcproj:
   17475         * win/WebKit2GeneratedCommon.vsprops: Added.
   17476 
   17477 2010-11-18  Anders Carlsson  <andersca (a] apple.com>
   17478 
   17479         Reviewed by Adam Roben.
   17480 
   17481         Crash in WebKit::PluginView::manualLoadDidReceiveResponse when navigating to a .wav file in WebKit2 on Mac
   17482         https://bugs.webkit.org/show_bug.cgi?id=48559
   17483         <rdar://problem/8606622>
   17484 
   17485         Add null checks for m_plugin.
   17486 
   17487         * WebProcess/Plugins/PluginView.cpp:
   17488         (WebKit::PluginView::manualLoadDidReceiveResponse):
   17489         (WebKit::PluginView::manualLoadDidReceiveData):
   17490         (WebKit::PluginView::manualLoadDidFinishLoading):
   17491         (WebKit::PluginView::manualLoadDidFail):
   17492 
   17493 2010-11-18  Mark Rowe  <mrowe (a] apple.com>
   17494 
   17495         Rubber-stamped by Adam Roben.
   17496 
   17497         <rdar://problem/8602509&8602717&8602724> Enable compaction support.
   17498 
   17499         * Configurations/WebKit2.xcconfig:
   17500 
   17501 2010-11-18  Brian Weinstein  <bweinstein (a] apple.com>
   17502 
   17503         Reviewed by Adam Roben.
   17504 
   17505          WebKit2: Safari shouldn't auto-activate plug-ins in background tabs.
   17506          https://bugs.webkit.org/show_bug.cgi?id=49770
   17507          <rdar://problem/8482424>
   17508          
   17509          Add an API on Windows to call setIsInWindow, which calls through to WebPage::setIsInWindow.
   17510          Remove the !PLATFORM(WIN) check in WebPage, so we don't automatically start plugins that are
   17511          loaded in background tabs.
   17512 
   17513         * UIProcess/API/C/win/WKView.cpp:
   17514         (WKViewSetIsInWindow): Call through to WebView::setIsInWindow.
   17515         * UIProcess/API/C/win/WKView.h:
   17516         * UIProcess/win/WebView.cpp:
   17517         (WebKit::WebView::setIsInWindow): Call through to WebPage::setIsInWindow.
   17518         * UIProcess/win/WebView.h:
   17519         * WebProcess/WebPage/WebPage.cpp:
   17520         (WebKit::WebPage::WebPage): Remove the !PLATFORM(WIN) check and update the comment.
   17521 
   17522 2010-11-18  Darin Adler  <darin (a] apple.com>
   17523 
   17524         * WebProcess/WebPage/WebPage.cpp: Fix build by rolling out a change.
   17525 
   17526 2010-11-18  Darin Adler  <darin (a] apple.com>
   17527 
   17528         Reviewed by Kevin Decker.
   17529 
   17530         REGRESSION (WebKit2): Plug-ins and <video> start playing immediately in background tabs
   17531         https://bugs.webkit.org/show_bug.cgi?id=49766
   17532 
   17533         Test: manual-tests/resources/video-tab.html
   17534 
   17535         * WebProcess/WebPage/WebPage.cpp:
   17536         (WebKit::WebPage::WebPage): Call setCanStartMedia(false) since the rest of the code
   17537         starts out treating the page as "not in a window".
   17538 
   17539 2010-11-18  Steve Falkenburg  <sfalken (a] apple.com>
   17540 
   17541         Reviewed by Adam Roben.
   17542 
   17543         Remove leftover Windows Debug_Internal configurations
   17544         https://bugs.webkit.org/show_bug.cgi?id=49758
   17545 
   17546         * win/WebKit2.vcproj:
   17547         * win/WebKit2WebProcess.vcproj:
   17548 
   17549 2010-11-18  Anders Carlsson  <andersca (a] apple.com>
   17550 
   17551         Reviewed by John Sullivan.
   17552 
   17553         Page overlays should be able to handle mouse events
   17554         https://bugs.webkit.org/show_bug.cgi?id=49756
   17555 
   17556         * Shared/API/c/WKSharedAPICast.h:
   17557         (WebKit::toAPI):
   17558         Add API cast function for converting an IntPoint to a WKPoint.
   17559 
   17560         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
   17561         (PageOverlayClientImpl::mouseEvent):
   17562         Call the appropriate callbacks.
   17563 
   17564         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
   17565         Add new callbacks.
   17566 
   17567 2010-11-18  Anders Carlsson  <andersca (a] apple.com>
   17568 
   17569         Reviewed by Sam Weinig.
   17570 
   17571         Keep the web process alive if there are active downloads
   17572         https://bugs.webkit.org/show_bug.cgi?id=49755
   17573 
   17574         Make sure that Download objects are destroyed when the download finishes or fails.
   17575         Don't close the web process if there are live Download objects.
   17576         
   17577         * UIProcess/Downloads/DownloadProxy.cpp:
   17578         (WebKit::DownloadProxy::didFail):
   17579         Add stub.
   17580 
   17581         * UIProcess/Downloads/DownloadProxy.h:
   17582         * UIProcess/Downloads/DownloadProxy.messages.in:
   17583         Add DidFail message.
   17584 
   17585         * WebProcess/Downloads/Download.cpp:
   17586         (WebKit::Download::didFinish):
   17587         Call DownloadManager::downloadFinished.
   17588 
   17589         (WebKit::Download::didFail):
   17590         Send DidFail message and call DownloadManager::downloadFinished.
   17591         
   17592         * WebProcess/Downloads/Download.h:
   17593         (WebKit::Download::destinationID):
   17594         Call downloadID().
   17595 
   17596         (WebKit::Download::downloadID):
   17597         Return the download ID.
   17598 
   17599         * WebProcess/Downloads/DownloadManager.cpp:
   17600         (WebKit::DownloadManager::downloadFinished):
   17601         Delete the Download object and call WebProcess::shutdownIfPossible.
   17602 
   17603         * WebProcess/Downloads/DownloadManager.h:
   17604         (WebKit::DownloadManager::isDownloading):
   17605         Return whether the download manager has any active downloads.
   17606 
   17607         * WebProcess/Downloads/mac/DownloadMac.mm:
   17608         (-[WKDownloadAsDelegate download:didFailWithError:]):
   17609         Call Download::didFail.
   17610 
   17611         * WebProcess/WebProcess.cpp:
   17612         (WebKit::WebProcess::removeWebPage):
   17613         Call shutdownIfPossible.
   17614 
   17615         (WebKit::WebProcess::shutdownIfPossible):
   17616         New function. Don't shutdown if there are live pages or active downloads.
   17617 
   17618         * WebProcess/WebProcess.h:
   17619 
   17620 2010-11-18  Steve Falkenburg  <sfalken (a] apple.com>
   17621 
   17622         Reviewed by Adam Roben.
   17623 
   17624         Debug_Internal Windows configuration is unnecessary, should be removed
   17625         https://bugs.webkit.org/show_bug.cgi?id=49753
   17626 
   17627         * UIProcess/Launcher/win/ProcessLauncherWin.cpp:
   17628         * WebKit2Prefix.h:
   17629 
   17630 2010-11-18  Steve Falkenburg  <sfalken (a] apple.com>
   17631 
   17632         Reviewed by Adam Roben.
   17633 
   17634         Clean up vcproj errors
   17635         https://bugs.webkit.org/show_bug.cgi?id=49741
   17636 
   17637         * win/WebKit2WebProcess.vcproj:
   17638 
   17639 2010-11-18  Benjamin Poulain  <benjamin.poulain (a] nokia.com>
   17640 
   17641         Reviewed by Laszlo Gombos.
   17642 
   17643         [Qt] [WK2] WebKit 2 would not compile for Qt without ENABLE_TOUCH_EVENT
   17644         https://bugs.webkit.org/show_bug.cgi?id=49664
   17645 
   17646         Move the ENABLE(TOUCH_EVENTS) to the code where internal WebKit touch
   17647         types are used.
   17648 
   17649         * UIProcess/API/qt/qgraphicswkview.cpp:
   17650         (QGraphicsWKView::touchEvent):
   17651         * UIProcess/API/qt/qwkpage.cpp:
   17652         (QWKPagePrivate::touchEvent):
   17653 
   17654 2010-11-17  Andreas Kling  <kling (a] webkit.org>
   17655 
   17656         Reviewed by Kenneth Rohde Christiansen.
   17657 
   17658         Reuse the size of the actualVisibleContentRect when loading a new page
   17659         or navigating session history.
   17660 
   17661         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   17662         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
   17663 
   17664 2010-11-17  Dimitri Glazkov  <dglazkov (a] chromium.org>
   17665 
   17666         Reviewed by Darin Adler.
   17667 
   17668         Converge means of querying a parent node into one way, which is Node::parentNode.
   17669         https://bugs.webkit.org/show_bug.cgi?id=49686
   17670 
   17671         * WebProcess/WebPage/WebPage.cpp: Changed to use parentNode.
   17672         (WebKit::WebPage::findZoomableAreaForPoint): Ditto.
   17673 
   17674 2010-11-17  Timothy Hatcher  <timothy (a] apple.com>
   17675 
   17676         Remove duplicate Web Inspector message handeling in WebPage::didReceiveMessage.
   17677 
   17678         https://webkit.org/b/49689
   17679 
   17680         Reviewed by Andreas Kling.
   17681 
   17682         * WebProcess/WebPage/WebPage.cpp:
   17683         (WebKit::WebPage::didReceiveMessage): Remove duplicate code.
   17684 
   17685 2010-11-17  Timothy Hatcher  <timothy (a] apple.com>
   17686 
   17687         Fix a crash when closing the inspected page when the Web Inspector
   17688         page was never created.
   17689 
   17690         https://bugs.webkit.org/show_bug.cgi?id=49687
   17691 
   17692         Reviewed by John Sullivan.
   17693 
   17694         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
   17695         (WebKit::WebInspectorClient::sendMessageToFrontend): Null check the Inspector WebPage.
   17696 
   17697 2010-11-17  Anders Carlsson  <andersca (a] apple.com>
   17698 
   17699         Reviewed by John Sullivan.
   17700 
   17701         Don't crash when invalidating a page overlay that hasn't been installed yet
   17702         https://bugs.webkit.org/show_bug.cgi?id=49685
   17703 
   17704         Null check the web page.
   17705 
   17706         * WebProcess/WebPage/PageOverlay.cpp:
   17707         (WebKit::PageOverlay::setNeedsDisplay):
   17708 
   17709 2010-11-17  Brady Eidson  <beidson (a] apple.com>
   17710 
   17711         Reviewed by Darin Adler.
   17712 
   17713         https://bugs.webkit.org/show_bug.cgi?id=49682 - Expose "removeItemAtIndex" in WKMutableArray
   17714 
   17715         * Shared/API/c/WKMutableArray.cpp:
   17716         (WKArrayRemoveItemAtIndex):
   17717         * Shared/API/c/WKMutableArray.h:
   17718 
   17719         * Shared/MutableArray.cpp:
   17720         (WebKit::MutableArray::removeItemAtIndex):
   17721         * Shared/MutableArray.h:
   17722 
   17723 2010-11-17  Brady Eidson  <beidson (a] apple.com>
   17724 
   17725         Reviewed by Anders Carlsson.
   17726 
   17727         https://bugs.webkit.org/show_bug.cgi?id=49683 - Export WKContextMenuItem and WKContextMenuItemTypes as public headers
   17728 
   17729         * WebKit2.xcodeproj/project.pbxproj:
   17730 
   17731 2010-11-17  Anders Carlsson  <andersca (a] apple.com>
   17732 
   17733         Reviewed by Darin Adler.
   17734 
   17735         Need way to invalidate part of a WKOverlayRef so it will be redrawn
   17736         https://bugs.webkit.org/show_bug.cgi?id=49679
   17737         <rdar://problem/8679152>
   17738 
   17739         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
   17740         (WKBundlePageOverlaySetNeedsDisplay):
   17741         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
   17742         * WebProcess/WebPage/PageOverlay.cpp:
   17743         (WebKit::PageOverlay::setNeedsDisplay):
   17744         * WebProcess/WebPage/PageOverlay.h:
   17745 
   17746 2010-11-17  Timothy Hatcher  <timothy (a] apple.com>
   17747 
   17748         Provide a way to create a WKView (WebPage) that is hidden from
   17749         the InjectedBundle. This is needed for the Web Inspector.
   17750 
   17751         https://webkit.org/b/49670
   17752 
   17753         Reviewed by Sam Weinig.
   17754 
   17755         * Shared/WebPageCreationParameters.cpp:
   17756         (WebKit::WebPageCreationParameters::encode): Added visibleToInjectedBundle.
   17757         (WebKit::WebPageCreationParameters::decode): Ditto.
   17758         * Shared/WebPageCreationParameters.h: Ditto.
   17759         * UIProcess/API/C/win/WKView.cpp:
   17760         (WKViewCreate): Pass VisibleToInjectedBundle to the WebView create function.
   17761         * UIProcess/API/C/win/WKViewPrivate.cpp:
   17762         (WKViewCreateForWebInspector): Added. Not used yet. Passes HiddenFromInjectedBundle
   17763         to the WebView create function.
   17764         * UIProcess/API/C/win/WKViewPrivate.h: Added WKViewCreateForWebInspector.
   17765         * UIProcess/API/mac/WKView.mm:
   17766         (-[WKView initWithFrame:pageNamespaceRef:hiddenFromInjectedBundle:]): Added hiddenFromInjectedBundle
   17767         parameter and calls WebPageProxy::setVisibleToInjectedBundle.
   17768         (-[WKView initWithFrame:pageNamespaceRef:]): Calls initWithFrame:pageNamespaceRef:hiddenFromInjectedBundle:
   17769         and passes NO for hiddenFromInjectedBundle.
   17770         (-[WKView initWithFrame:]): Cleaned up by removing the local assignment to self and just returns the result.
   17771         * UIProcess/API/mac/WKViewInternal.h: Added initWithFrame:pageNamespaceRef:hiddenFromInjectedBundle:.
   17772         * UIProcess/WebPageProxy.cpp:
   17773         (WebKit::WebPageProxy::WebPageProxy): Initialize m_visibleToInjectedBundle from the creation parameters.
   17774         (WebKit::WebPageProxy::creationParameters): Set visibleToInjectedBundle using m_visibleToInjectedBundle.
   17775         * UIProcess/WebPageProxy.h: Added m_visibleToInjectedBundle.
   17776         (WebKit::WebPageProxy::visibleToInjectedBundle): Added. Return m_visibleToInjectedBundle.
   17777         (WebKit::WebPageProxy::setVisibleToInjectedBundle): Added. Set m_visibleToInjectedBundle.
   17778         * UIProcess/win/WebView.cpp:
   17779         (WebKit::WebView::WebView): Added InjectedBundleVisibility parameter and calls
   17780         WebPageProxy::setVisibleToInjectedBundle.
   17781         * UIProcess/win/WebView.h: Added InjectedBundleVisibility enum.
   17782         (WebKit::WebView::create): Added InjectedBundleVisibility parameter.
   17783         * WebProcess/WebPage/WebPage.cpp:
   17784         (WebKit::WebPage::create): Checks visibleToInjectedBundle before talking to the injected bundle.
   17785         (WebKit::WebPage::WebPage): Initialize m_isVisibleToInjectedBundle from the creation parameters.
   17786         (WebKit::WebPage::close): Checks m_isVisibleToInjectedBundle before talking to the injected bundle.
   17787         * WebProcess/WebPage/WebPage.h: Added m_isVisibleToInjectedBundle.
   17788 
   17789 2010-11-17  Andras Becsi  <abecsi (a] webkit.org>
   17790 
   17791         Unreviewed buildfix.
   17792 
   17793         [Qt] D'oh! I screwed up the dependencies.
   17794 
   17795         * DerivedSources.pro:
   17796 
   17797 2010-11-17  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>
   17798 
   17799         Reviewed by Andreas Kling.
   17800 
   17801         [WK2] Set paintsEntireContents for "resizes to contents" mode
   17802 
   17803         Only relevant for the tiled backing store.
   17804 
   17805         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   17806         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
   17807         * WebProcess/WebPage/WebPage.cpp:
   17808         (WebKit::WebPage::setResizesToContentsUsingLayoutSize):
   17809 
   17810 2010-11-17  Andras Becsi  <abecsi (a] webkit.org>
   17811 
   17812         Reviewed by Andreas Kling.
   17813 
   17814         [Qt][WK2] Make it possible to set custom user agent strings in MiniBrowser
   17815         https://bugs.webkit.org/show_bug.cgi?id=49627
   17816 
   17817         Copy the MiniBrowser.qrc and QtTestBrowser's useragentlist.txt file
   17818         to the build directory of MiniBrowser because it has to be in a
   17819         subdirectory of the resource file.
   17820         Add a method to QWKPage to retrieve the custom user agent string.
   17821 
   17822         * DerivedSources.pro:
   17823         * UIProcess/API/qt/qwkpage.cpp:
   17824         (QWKPage::customUserAgent):
   17825         * UIProcess/API/qt/qwkpage.h:
   17826 
   17827 2010-11-17  Simon Fraser  <simon.fraser (a] apple.com>
   17828 
   17829         Reviewed by Adam Roben.
   17830 
   17831         https://bugs.webkit.org/show_bug.cgi?id=45567
   17832         Add stubbed-out layer-backed drawing area for Windows.
   17833 
   17834         Add implementations of LayerBackedDrawingArea and
   17835         LayerBackedDrawingAreaProxy for Windows, and add them
   17836         to the vcproj.
   17837 
   17838         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   17839         * UIProcess/win/LayerBackedDrawingAreaProxyWin.cpp: Added.
   17840         (WebKit::LayerBackedDrawingAreaProxy::page):
   17841         (WebKit::LayerBackedDrawingAreaProxy::platformSetSize):
   17842         (WebKit::LayerBackedDrawingAreaProxy::attachCompositingContext):
   17843         (WebKit::LayerBackedDrawingAreaProxy::detachCompositingContext):
   17844         (WebKit::LayerBackedDrawingAreaProxy::paint):
   17845         * UIProcess/win/WebView.cpp:
   17846         (WebKit::WebView::pageDidEnterAcceleratedCompositing):
   17847         (WebKit::WebView::pageDidLeaveAcceleratedCompositing):
   17848         (WebKit::WebView::switchToDrawingAreaTypeIfNecessary):
   17849         * UIProcess/win/WebView.h:
   17850         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   17851         * WebProcess/WebPage/win/LayerBackedDrawingAreaWin.cpp: Added.
   17852         (WebKit::LayerBackedDrawingArea::platformInit):
   17853         (WebKit::LayerBackedDrawingArea::platformClear):
   17854         (WebKit::LayerBackedDrawingArea::attachCompositingContext):
   17855         (WebKit::LayerBackedDrawingArea::detachCompositingContext):
   17856         (WebKit::LayerBackedDrawingArea::setRootCompositingLayer):
   17857         (WebKit::LayerBackedDrawingArea::scheduleCompositingLayerSync):
   17858         (WebKit::LayerBackedDrawingArea::syncCompositingLayers):
   17859         * win/WebKit2.vcproj:
   17860 
   17861 2010-11-17  Benjamin Poulain  <benjamin.poulain (a] nokia.com>
   17862 
   17863         Reviewed by Kenneth Rohde Christiansen.
   17864 
   17865         [Qt] [WK2] The focus switching does not seems to work with QGraphicsWKView
   17866         https://bugs.webkit.org/show_bug.cgi?id=49545
   17867 
   17868         Implement focus switching with Tab. This is now done asynchronously,
   17869         waiting for webkit to call takeFocus() and switching the widget.
   17870 
   17871         Since the focus can change between the Tab press and the callback,
   17872         QGraphicsWKView::focusNextPrevChildCallback() make sure the view still has
   17873         focus before passing it to the next widget.
   17874 
   17875         * UIProcess/API/qt/qgraphicswkview.cpp:
   17876         (QGraphicsWKView::QGraphicsWKView):
   17877         (QGraphicsWKView::focusNextPrevChildCallback):
   17878         (QGraphicsWKView::focusNextPrevChild):
   17879         * UIProcess/API/qt/qgraphicswkview.h:
   17880         * UIProcess/API/qt/qwkpage.cpp:
   17881         (QWKPagePrivate::takeFocus):
   17882         * UIProcess/API/qt/qwkpage.h:
   17883         * UIProcess/API/qt/qwkpage_p.h:
   17884 
   17885 2010-11-17  Andreas Kling  <kling (a] webkit.org>
   17886 
   17887         Reviewed by Kenneth Rohde Christiansen.
   17888 
   17889         Don't prohibit scrolling in tiled backing store mode.
   17890 
   17891         We delegate scrolling instead.
   17892 
   17893         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   17894         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
   17895 
   17896 2010-11-17  Simon Hausmann  <simon.hausmann (a] nokia.com>
   17897 
   17898         Reviewed by Kenneth Christiansen.
   17899 
   17900         [Qt] Improve painting performance on 16-bit displays
   17901 
   17902         When the default pixmap depth is 16-bit, then use RGB16 instead of
   17903         RGB32 for the chunks, to avoid unnecessary conversions and reduce
   17904         chunk size. The conversions happen as images as QPixmaps have 16-bit
   17905         depth and the tiles on the ui process are also backed by QPixmaps.
   17906 
   17907         * Shared/qt/UpdateChunk.cpp:
   17908         (WebKit::UpdateChunk::size):
   17909         (WebKit::UpdateChunk::createImage):
   17910         * Shared/qt/UpdateChunk.h:
   17911 
   17912 2010-11-16  Sam Weinig  <sam (a] webkit.org>
   17913 
   17914         Reviewed by Adam Roben.
   17915 
   17916         WebKit2: Support enabling site-specific quirks
   17917         <rdar://problem/8451371>
   17918         https://bugs.webkit.org/show_bug.cgi?id=46076
   17919 
   17920         * Shared/WebPreferencesStore.cpp:
   17921         (WebKit::WebPreferencesStore::WebPreferencesStore):
   17922         (WebKit::WebPreferencesStore::encode):
   17923         (WebKit::WebPreferencesStore::decode):
   17924         * Shared/WebPreferencesStore.h:
   17925         Add needsSiteSpecificQuirks;
   17926 
   17927         * UIProcess/API/C/WKAPICast.h:
   17928         (WebKit::toFontSmoothingLevel):
   17929         (WebKit::toAPI):
   17930         Move FontSmoothing conversion functions here.
   17931 
   17932         * UIProcess/API/C/WKPreferences.cpp:
   17933         (WKPreferencesSetFontSmoothingLevel):
   17934         (WKPreferencesGetFontSmoothingLevel):
   17935         (WKPreferencesSetAcceleratedCompositingEnabled):
   17936         (WKPreferencesGetAcceleratedCompositingEnabled):
   17937         (WKPreferencesSetCompositingBordersVisible):
   17938         (WKPreferencesGetCompositingBordersVisible):
   17939         (WKPreferencesSetCompositingRepaintCountersVisible):
   17940         (WKPreferencesGetCompositingRepaintCountersVisible):
   17941         (WKPreferencesSetNeedsSiteSpecificQuirks):
   17942         (WKPreferencesGetNeedsSiteSpecificQuirks):
   17943         Add WKPreferencesSetNeedsSiteSpecificQuirks/WKPreferencesGetNeedsSiteSpecificQuirks
   17944         and move implementations from WKPreferencesPrivate.cpp here.
   17945 
   17946         * UIProcess/API/C/WKPreferencesPrivate.cpp: Removed.
   17947 
   17948         * UIProcess/API/C/WKPreferencesPrivate.h:
   17949         Add Add WKPreferencesSetNeedsSiteSpecificQuirks/WKPreferencesGetNeedsSiteSpecificQuirks.
   17950 
   17951         * UIProcess/WebPreferences.cpp:
   17952         (WebKit::WebPreferences::setNeedsSiteSpecificQuirks):
   17953         (WebKit::WebPreferences::needsSiteSpecificQuirks):
   17954         * UIProcess/WebPreferences.h:
   17955         * WebProcess/WebPage/WebPage.cpp:
   17956         (WebKit::WebPage::updatePreferences):
   17957         Pipe through needsSiteSpecificQuirks.
   17958 
   17959         * WebKit2.xcodeproj/project.pbxproj:
   17960         * WebKit2.pro:
   17961         * win/WebKit2.vcproj:
   17962         Update for removed files.
   17963 
   17964 2010-11-16  Adam Roben  <aroben (a] apple.com>
   17965 
   17966         Fix horizontal scrolling via the mousewheel/trackpad on Windows
   17967 
   17968         Reviewed by Mark Rowe.
   17969 
   17970         * Shared/win/WebEventFactory.cpp: Fixed typo in the
   17971         WM_VISTA_MOUSEHWHEEL constant.
   17972 
   17973 2010-11-16  Steve Falkenburg  <sfalken (a] apple.com>
   17974 
   17975         Reviewed by Adam Roben.
   17976 
   17977         Disable LTCG for Windows Release builds. Add new Release_LTCG configuration.
   17978         https://bugs.webkit.org/show_bug.cgi?id=49632
   17979 
   17980         * win/WebKit2.make:
   17981         * win/WebKit2.submit.sln:
   17982         * win/WebKit2.vcproj:
   17983         * win/WebKit2WebProcess.vcproj:
   17984 
   17985 2010-11-16  Anders Carlsson  <andersca (a] apple.com>
   17986 
   17987         Reviewed by Sam Weinig.
   17988 
   17989         Handle converting a ResourceHandle to a download
   17990         https://bugs.webkit.org/show_bug.cgi?id=49631
   17991 
   17992         * WebProcess/Downloads/Download.h:
   17993         Add startWithHandle.
   17994 
   17995         * WebProcess/Downloads/DownloadManager.h:
   17996         * WebProcess/Downloads/DownloadManager.cpp:
   17997         (WebKit::DownloadManager::convertHandleToDownload):
   17998         Create a new Download object and call startWithHandle on it.
   17999 
   18000         * WebProcess/Downloads/cf/DownloadCFNet.cpp:
   18001         (WebKit::Download::startWithHandle):
   18002         Add stub.
   18003 
   18004         * WebProcess/Downloads/mac/DownloadMac.mm:
   18005         (WebKit::Download::startWithHandle):
   18006         Create an NSURLDownload object from passed in ResourceHandle.
   18007 
   18008         * WebProcess/Downloads/qt/DownloadQt.cpp:
   18009         (WebKit::Download::startWithHandle):
   18010         Add stub.
   18011 
   18012         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   18013         (WebKit::WebFrameLoaderClient::download):
   18014         Call WebFrame::convertHandleToDownload.
   18015 
   18016         * WebProcess/WebPage/WebFrame.cpp:
   18017         (WebKit::WebFrame::convertHandleToDownload):
   18018         Call DownloadManager::convertHandleToDownload.
   18019 
   18020 2010-11-16  Anders Carlsson  <andersca (a] apple.com>
   18021 
   18022         Reviewed by John Sullivan.
   18023 
   18024         Set the original URL for downloads
   18025         https://bugs.webkit.org/show_bug.cgi?id=49628
   18026 
   18027         * WebProcess/Downloads/DownloadManager.cpp:
   18028         (WebKit::DownloadManager::startDownload):
   18029         * WebProcess/Downloads/DownloadManager.h:
   18030         startDownload now takes the originating web page.
   18031 
   18032         * WebProcess/Downloads/cf/DownloadCFNet.cpp:
   18033         (WebKit::Download::start):
   18034         start now takes the originating web page.
   18035 
   18036         * WebProcess/Downloads/mac/DownloadMac.mm:
   18037         (WebKit::originatingURL):
   18038         (WebKit::setOriginalURLForDownload):
   18039         Port code over from WebKit1 that sets the download URL.
   18040 
   18041         (WebKit::Download::start):
   18042         Call setOriginalURLForDownload.
   18043 
   18044         * WebProcess/Downloads/qt/DownloadQt.cpp:
   18045         (WebKit::Download::start):
   18046         start now takes the originating web page.
   18047 
   18048         * WebProcess/WebPage/WebFrame.cpp:
   18049         (WebKit::WebFrame::startDownload):
   18050         Pass the web page to DownloadManager::startDownload.
   18051 
   18052 2010-11-16  Dave Hyatt  <hyatt (a] apple.com>
   18053 
   18054         Reviewed by Dan Bernstein.
   18055 
   18056         https://bugs.webkit.org/show_bug.cgi?id=11004
   18057         
   18058         font-size:0 is ignored.  Remove the minimum font size of 1 in CSSStyleSelector.
   18059         Change the pref value for minimum font size from 1 to 0.  Make sure to never use the NSFont's size,
   18060         since it doesn't honor a size of 0.  Instead pass the size in to the FontPlatformData(NSFont*) version
   18061         of the constructor rather than using [NSFont pointSize].
   18062 
   18063         https://bugs.webkit.org/show_bug.cgi?id=49582
   18064         
   18065         Negative leading is not handled correctly.  There are two bugs here.  The first is that
   18066         maxAscent and maxDescent can be negative, so we need a notion of whether or not we have
   18067         set them before so that we can allow them to be < 0.
   18068         
   18069         The second issue is that we should understand where fonts will end up relative to
   18070         our baseline (excluding line height), and only allow those boxes to impact ascent and
   18071         descent if the actual font box (without factoring in line height) is above or below the
   18072         root line box baseline.
   18073 
   18074         Added fast/css/negative-leading.html
   18075         
   18076         These two bug fixes have to land together to keep the Acid 3 test rendering correctly.
   18077 
   18078         * Shared/WebPreferencesStore.cpp:
   18079         (WebKit::WebPreferencesStore::WebPreferencesStore):
   18080 
   18081 2010-11-16  Anders Carlsson  <andersca (a] apple.com>
   18082 
   18083         Fix clang++ build.
   18084 
   18085         * Scripts/webkit2/messages.py:
   18086         * WebProcess/WebPage/WebInspector.h:
   18087 
   18088 2010-11-16  Anders Carlsson  <andersca (a] apple.com>
   18089 
   18090         Reviewed by Sam Weinig.
   18091 
   18092         Add WKPageCanShowMIMEType
   18093         https://bugs.webkit.org/show_bug.cgi?id=49612
   18094 
   18095         * UIProcess/API/C/WKPage.cpp:
   18096         (WKPageCanShowMIMEType):
   18097         * UIProcess/API/C/WKPage.h:
   18098         * UIProcess/WebPageProxy.cpp:
   18099         (WebKit::WebPageProxy::canShowMIMEType):
   18100         * UIProcess/WebPageProxy.h:
   18101 
   18102 2010-11-16  Anders Carlsson  <andersca (a] apple.com>
   18103 
   18104         Reviewed by Sam Weinig.
   18105 
   18106         Make WebPageProxy::decidePolicyForMIMEType a tad synchronous
   18107         https://bugs.webkit.org/show_bug.cgi?id=49605
   18108 
   18109         Change the DecidePolicyForMIMEType message to be synchronous, and if the policy listener is
   18110         invoked from within the decidePolicyForMIMEType callback return the policy information as out
   18111         parameters. This is needed in order to convert a loading connection to a download.
   18112 
   18113         * Platform/CoreIPC/HandleMessage.h:
   18114         (CoreIPC::callMemberFunction):
   18115         * UIProcess/WebPageProxy.cpp:
   18116         (WebKit::WebPageProxy::WebPageProxy):
   18117         (WebKit::WebPageProxy::receivedPolicyDecision):
   18118         (WebKit::WebPageProxy::decidePolicyForMIMEType):
   18119         * UIProcess/WebPageProxy.h:
   18120         * UIProcess/WebPageProxy.messages.in:
   18121         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   18122         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
   18123 
   18124 2010-11-16  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>, Zalan Bujtas  <zbujtas (a] gmail.com>
   18125 
   18126         Reviewed by Andreas Kling.
   18127 
   18128         [WK2][Qt] Add API for finding a zoomable area for a given point
   18129 
   18130         This is useful for implementing e.g "double tap zoom"
   18131 
   18132         Only enabled for Qt.
   18133 
   18134         * UIProcess/API/qt/qwkpage.cpp:
   18135         (QWKPage::findZoomableAreaForPoint):
   18136         (QWKPagePrivate::didFindZoomableArea):
   18137         * UIProcess/API/qt/qwkpage.h:
   18138         * UIProcess/API/qt/qwkpage_p.h:
   18139         * UIProcess/PageClient.h:
   18140         * UIProcess/WebPageProxy.cpp:
   18141         (WebKit::WebPageProxy::didFindZoomableArea):
   18142         (WebKit::WebPageProxy::findZoomableAreaForPoint):
   18143         * UIProcess/WebPageProxy.h:
   18144         * UIProcess/WebPageProxy.messages.in:
   18145         * WebProcess/WebPage/WebPage.cpp:
   18146         (WebKit::WebPage::findZoomableAreaForPoint):
   18147         * WebProcess/WebPage/WebPage.h:
   18148         * WebProcess/WebPage/WebPage.messages.in:
   18149 
   18150 2010-11-16  Andreas Kling  <kling (a] webkit.org>
   18151 
   18152         Rubber-stamped by Simon Hausmann.
   18153 
   18154         Revert !ENABLE(INSPECTOR) fix- we don't need it right now,
   18155         and it was less maintainable than I had though.
   18156 
   18157         * Shared/API/c/WKSharedAPICast.h:
   18158         (WebKit::toAPI):
   18159         (WebKit::toImpl):
   18160         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
   18161         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
   18162         * WebProcess/WebPage/WebInspector.cpp:
   18163 
   18164 2010-11-16  Andreas Kling  <kling (a] webkit.org>
   18165 
   18166         Reviewed by Simon Hausmann.
   18167 
   18168         Fix compilation with !ENABLE(INSPECTOR)
   18169 
   18170         * Shared/API/c/WKSharedAPICast.h:
   18171         (WebKit::toAPI):
   18172         (WebKit::toImpl):
   18173         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
   18174         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
   18175         * WebProcess/WebPage/WebInspector.cpp:
   18176 
   18177 2010-11-16  Andras Becsi  <abecsi (a] webkit.org>
   18178 
   18179         Reviewed by Andreas Kling.
   18180 
   18181         [Qt] Use SIGINT instead of SIGKILL to let the web process clean up after itself.
   18182 
   18183         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   18184         (WebKit::QtWebProcess::setupChildProcess):
   18185 
   18186 2010-11-16  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>
   18187 
   18188         Reviewed by Andreas Kling.
   18189 
   18190         [WK2][Qt] Expose resizes-to-contents mode in WebKit2
   18191 
   18192         Only available with ENABLE(TILED_BACKING_STORE)
   18193 
   18194         Based on a patch by Antti Koivisto.
   18195 
   18196         * UIProcess/API/qt/qwkpage.cpp:
   18197         (QWKPage::setResizesToContentsUsingLayoutSize):
   18198         * UIProcess/API/qt/qwkpage.h:
   18199         * UIProcess/WebPageProxy.cpp:
   18200         (WebKit::WebPageProxy::setResizesToContentsUsingLayoutSize):
   18201         * UIProcess/WebPageProxy.h:
   18202         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   18203         (WebKit::WebChromeClient::contentsSizeChanged):
   18204         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   18205         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
   18206         * WebProcess/WebPage/WebPage.cpp:
   18207         (WebKit::WebPage::setSize):
   18208         (WebKit::WebPage::setResizesToContentsUsingLayoutSize):
   18209         (WebKit::WebPage::resizeToContentsIfNeeded):
   18210         * WebProcess/WebPage/WebPage.h:
   18211         (WebKit::WebPage::resizesToContentsEnabled):
   18212         (WebKit::WebPage::resizesToContentsLayoutSize):
   18213         * WebProcess/WebPage/WebPage.messages.in:
   18214 
   18215 2010-11-16  Andreas Kling  <kling (a] webkit.org>
   18216 
   18217         Reviewed by Kenneth Rohde Christiansen.
   18218 
   18219         [Qt][WK2] Get proxy settings from environment (http[s]_proxy)
   18220 
   18221         If http_proxy and/or https_proxy are set in the environment,
   18222         pass those in to QNetworkAccessManager.
   18223 
   18224         * WebProcess/qt/WebProcessMainQt.cpp:
   18225         (WebKit::EnvHttpProxyFactory::EnvHttpProxyFactory):
   18226         (WebKit::EnvHttpProxyFactory::initializeFromEnvironment):
   18227         (WebKit::EnvHttpProxyFactory::queryProxy):
   18228         (WebKit::initializeProxy):
   18229         (WebKit::WebProcessMainQt):
   18230 
   18231 2010-11-16  Andreas Kling  <kling (a] webkit.org>
   18232 
   18233         Reviewed by Kenneth Rohde Christiansen.
   18234 
   18235         [Qt][WK2] Emit windowCloseRequested signal on window.close()
   18236 
   18237         Original patch by Zalan Bujtas.
   18238 
   18239         * UIProcess/API/qt/ClientImpl.cpp:
   18240         (qt_wk_close):
   18241         * UIProcess/API/qt/qwkpage.h:
   18242 
   18243 2010-11-15  Andreas Kling  <kling (a] webkit.org>
   18244 
   18245         Reviewed by Kenneth Rohde Christiansen.
   18246 
   18247         [Qt] Kill the web process if the UI process dies
   18248 
   18249         Connect UI (parent) process death signal to SIGKILL of the web
   18250         process (child). This ensures that there's no stale web processes
   18251         after the UI process has crashed.
   18252 
   18253         Original patch by Kimmo Kinnunen.
   18254 
   18255         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   18256         (WebKit::QtWebProcess::QtWebProcess):
   18257         (WebKit::QtWebProcess::setupChildProcess):
   18258         (WebKit::ProcessLauncherHelper::launch):
   18259 
   18260 2010-11-16  Simon Hausmann  <simon.hausmann (a] nokia.com>
   18261 
   18262         Rubber-stamped by Andreas Kling.
   18263 
   18264         [Qt] Trivial build fix for building WebKit2 inside Qt Creator
   18265 
   18266         Similar to WebCore.pro, define a fallback for OUTPUT_DIR.
   18267 
   18268         * WebKit2.pro:
   18269 
   18270 2010-11-15  Andreas Kling  <kling (a] webkit.org>
   18271 
   18272         Reviewed by Tor Arne Vestb.
   18273 
   18274         [Qt] Make sure qwkpage.h and qwkpreferences.h are copied into includes/WebKit2
   18275 
   18276         * UIProcess/API/qt/WKView.h:
   18277 
   18278 2010-11-15  Andreas Kling  <kling (a] webkit.org>
   18279 
   18280         Reviewed by Tor Arne Vestb.
   18281 
   18282         [Qt] Use $${PYTHON} rather than "python" to execute Python scripts
   18283 
   18284         Fixes building with the old Python that currently ships with Scratchbox.
   18285 
   18286         * DerivedSources.pro:
   18287 
   18288 2010-11-15  Brady Eidson  <beidson (a] apple.com>
   18289 
   18290         Reviewed by a better attempt at a Windows build fix.
   18291 
   18292         * win/WebKit2Generated.make:
   18293 
   18294 2010-11-15  Brady Eidson  <beidson (a] apple.com>
   18295 
   18296         Reviewed by my attempt to fix the Windows build
   18297 
   18298         * win/WebKit2Generated.make: Add new API headers here.
   18299 
   18300 2010-11-15  Brady Eidson  <beidson (a] apple.com>
   18301 
   18302         Reviewed by Sam Weinig.
   18303 
   18304         Finish off <rdar://problem/8613727> and https://bugs.webkit.org/show_bug.cgi?id=48720
   18305         Customizable context menu support in WebKit2.
   18306 
   18307         - Adds an API-level WKContextMenuItem.
   18308         - Round trips through both the InjectedBundle client and the new PageContextMenuClient before
   18309           actually displaying the menu.
   18310 
   18311         * WebKit2.pro:
   18312         * WebKit2.xcodeproj/project.pbxproj:
   18313         * win/WebKit2.vcproj:
   18314 
   18315         * Shared/API/c/WKBase.h:
   18316         * Shared/API/c/WKContextMenuItem.cpp: Added.
   18317         (WKContextMenuItemGetTypeID):
   18318         (WKContextMenuItemCreateAsAction):
   18319         (WKContextMenuItemCreateAsCheckableAction):
   18320         (WKContextMenuItemCreateAsSubmenu):
   18321         (WKContextMenuItemSeparatorItem):
   18322         (WKContextMenuItemGetTag):
   18323         (WKContextMenuItemGetType):
   18324         (WKContextMenuItemCopyTitle):
   18325         (WKContextMenuItemGetEnabled):
   18326         (WKContextMenuItemGetChecked):
   18327         (WKContextMenuCopySubmenuItems):
   18328         * Shared/API/c/WKContextMenuItem.h: Added.
   18329         * Shared/API/c/WKContextMenuItemTypes.h: Added.
   18330 
   18331         * Shared/API/c/WKSharedAPICast.h:
   18332         (WebKit::toAPI):
   18333         (WebKit::toImpl):
   18334 
   18335         * Shared/WebContextMenuItem.cpp:
   18336         (WebKit::WebContextMenuItem::create):
   18337         (WebKit::WebContextMenuItem::separatorItem):
   18338         (WebKit::WebContextMenuItem::submenuItemsAsImmutableArray):
   18339         * Shared/WebContextMenuItem.h:
   18340 
   18341         * UIProcess/API/C/WKPage.cpp:
   18342         (WKPageSetPageContextMenuClient):
   18343         (WKPageSetPageFindClient):
   18344         (WKPageSetPageLoaderClient):
   18345         (WKPageSetPagePolicyClient):
   18346         (WKPageSetPageUIClient):
   18347         * UIProcess/API/C/WKPage.h:
   18348 
   18349         * UIProcess/WebPageContextMenuClient.cpp: Added.
   18350         (WebKit::WebPageContextMenuClient::getContextMenuFromProposedMenu):
   18351         * UIProcess/WebPageContextMenuClient.h: Added.
   18352 
   18353         * UIProcess/WebPageProxy.cpp:
   18354         (WebKit::WebPageProxy::initializeContextMenuClient):
   18355         (WebKit::WebPageProxy::showContextMenu):
   18356         * UIProcess/WebPageProxy.h:
   18357         * UIProcess/WebPageProxy.messages.in:
   18358 
   18359         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   18360         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:
   18361         (WebKit::InjectedBundlePageContextMenuClient::getCustomMenuFromDefaultItems):
   18362         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.h:
   18363 
   18364         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
   18365         (WebKit::WebContextMenuClient::getCustomMenuFromDefaultItems):
   18366         * WebProcess/WebPage/WebContextMenu.cpp:
   18367         (WebKit::WebContextMenu::show):
   18368 
   18369 2010-11-15  Anders Carlsson  <andersca (a] apple.com>
   18370 
   18371         Reviewed by Sam Weinig.
   18372 
   18373         Add shouldDecodeSourceDataOfMIMEType WKContextDownloadClient callback
   18374         https://bugs.webkit.org/show_bug.cgi?id=49558
   18375 
   18376         * UIProcess/API/C/WKContext.h:
   18377         Add shouldDecodeSourceDataOfMIMEType callback.
   18378 
   18379         * UIProcess/Downloads/DownloadProxy.cpp:
   18380         (WebKit::DownloadProxy::shouldDecodeSourceDataOfMIMEType):
   18381         Call WebDownloadClient::shouldDecodeSourceDataOfMIMEType.
   18382 
   18383         (WebKit::DownloadProxy::decideDestinationWithSuggestedFilename):
   18384         Add allowOverwrite out parameter.
   18385 
   18386         * UIProcess/Downloads/DownloadProxy.h:
   18387         * UIProcess/Downloads/DownloadProxy.messages.in:
   18388         Add ShouldDecodeSourceDataOfMIMEType message.
   18389 
   18390         * UIProcess/WebDownloadClient.cpp:
   18391         (WebKit::WebDownloadClient::shouldDecodeSourceDataOfMIMEType):
   18392         Call the WKContextDownloadClient.
   18393 
   18394         (WebKit::WebDownloadClient::decideDestinationWithSuggestedFilename):
   18395         Add allowOverwrite out parameter.
   18396 
   18397         * UIProcess/WebDownloadClient.h:
   18398         * WebProcess/Downloads/Download.cpp:
   18399         (WebKit::Download::shouldDecodeSourceDataOfMIMEType):
   18400         Send the ShouldDecodeSourceDataOfMIMEType message.
   18401 
   18402         (WebKit::Download::decideDestinationWithSuggestedFilename):
   18403         Add allowOverwrite reply parameter.
   18404 
   18405         * WebProcess/Downloads/mac/DownloadMac.mm:
   18406         (-[WKDownloadAsDelegate download:shouldDecodeSourceDataOfMIMEType:]):
   18407         Call Download::shouldDecodeSourceDataOfMIMEType.
   18408 
   18409         (-[WKDownloadAsDelegate download:decideDestinationWithSuggestedFilename:]):
   18410         Add allowOverwrite parameter.
   18411 
   18412 2010-11-15  Anders Carlsson  <andersca (a] apple.com>
   18413 
   18414         Reviewed by Sam Weinig.
   18415 
   18416         Add decideDestinationWithSuggestedFilename WKContextDownloadClient callback
   18417         https://bugs.webkit.org/show_bug.cgi?id=49554
   18418 
   18419         * Platform/CoreIPC/MessageSender.h:
   18420         (CoreIPC::MessageSender::sendSync):
   18421         Add sendSync capabilities to Messagesender.
   18422         
   18423         * UIProcess/API/C/WKContext.h:
   18424         Add decideDestinationWithSuggestedFilename callback.
   18425 
   18426         * UIProcess/Downloads/DownloadProxy.cpp:
   18427         (WebKit::DownloadProxy::decideDestinationWithSuggestedFilename):
   18428         Call WebDownloadClient::decideDestinationWithSuggestedFilename.
   18429 
   18430         * UIProcess/Downloads/DownloadProxy.messages.in:
   18431         Add DecideDestinationWithSuggestedFilename.
   18432 
   18433         * UIProcess/WebContext.cpp:
   18434         (WebKit::WebContext::didReceiveSyncMessage):
   18435         Process MessageClassDownloadProxy messages.
   18436 
   18437         * UIProcess/WebDownloadClient.cpp:
   18438         (WebKit::WebDownloadClient::decideDestinationWithSuggestedFilename):
   18439         Ask the WKContextDownloadClient for the destination.
   18440 
   18441         * UIProcess/WebProcessProxy.cpp:
   18442         (WebKit::WebProcessProxy::didReceiveSyncMessage):
   18443         MessageClassDownloadProxy messages should go to the WebContext.
   18444 
   18445         * WebProcess/Downloads/Download.cpp:
   18446         (WebKit::Download::decideDestinationWithSuggestedFilename):
   18447         Send the DecideDestinationWithSuggestedFilename message.
   18448 
   18449         * WebProcess/Downloads/Download.h:
   18450         * WebProcess/Downloads/mac/DownloadMac.mm:
   18451         (-[WKDownloadAsDelegate download:decideDestinationWithSuggestedFilename:]):
   18452         call Download::decideDestinationWithSuggestedFilename and set the destination.
   18453 
   18454 2010-11-15  Andreas Kling  <kling (a] webkit.org>
   18455 
   18456         Reviewed by Kenneth Rohde Christiansen.
   18457 
   18458         [WK2][Qt] Add "page snapshot" functionality to tiled backing store
   18459 
   18460         Original patch by Antti Koivisto.
   18461 
   18462         Add a way to take a snapshot of a specific part of the page, at a specific scale.
   18463         Only implemented for the tiled drawing area.
   18464 
   18465         * Shared/CoreIPCSupport/DrawingAreaMessageKinds.h:
   18466         New message: TakeSnapshot.
   18467 
   18468         * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h:
   18469         New message: SnapshotTaken.
   18470 
   18471         * UIProcess/API/qt/qgraphicswkview.h:
   18472         * UIProcess/API/qt/qgraphicswkview.cpp:
   18473         (QGraphicsWKView::takeSnapshot):
   18474         Expose the snapshot functionality.
   18475 
   18476         * UIProcess/TiledDrawingAreaProxy.cpp:
   18477         (WebKit::TiledDrawingAreaProxy::didReceiveMessage):
   18478         (WebKit::TiledDrawingAreaProxy::takeSnapshot):
   18479         * UIProcess/TiledDrawingAreaProxy.h:
   18480         * UIProcess/qt/TiledDrawingAreaProxyQt.cpp:
   18481         (WebKit::TiledDrawingAreaProxy::snapshotTaken):
   18482         * WebProcess/WebPage/TiledDrawingArea.cpp:
   18483         (WebKit::TiledDrawingArea::didReceiveMessage):
   18484 
   18485 2010-11-15  Andreas Kling  <andreas.kling (a] nokia.com>
   18486 
   18487         Reviewed by Kenneth Rohde Christiansen.
   18488 
   18489         [WK2][Qt] WebKit2 implementation of tiled backing store
   18490         https://bugs.webkit.org/show_bug.cgi?id=49526
   18491 
   18492         Basic opt-in tiling implementation for WebKit2/Qt.
   18493 
   18494         Original patch by Antti Koivisto.
   18495 
   18496         * Shared/CoreIPCSupport/DrawingAreaMessageKinds.h:
   18497         New messages: RequestTileUpdate and CancelTileUpdate.
   18498 
   18499         * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h:
   18500         New messages: Invalidate, TileUpdated, AllTileUpdatesProcessed.
   18501 
   18502         * Shared/DrawingAreaBase.h:
   18503         New area type: TiledDrawingAreaType.
   18504 
   18505         * UIProcess/API/qt/qgraphicswkview.h:
   18506         * UIProcess/API/qt/qgraphicswkview.cpp:
   18507         (QGraphicsWKView::QGraphicsWKView):
   18508         (QGraphicsWKView::setGeometry):
   18509         (QGraphicsWKViewPrivate::QGraphicsWKViewPrivate):
   18510         (QGraphicsWKView::prepareScaleChange):
   18511         (QGraphicsWKView::commitScaleChange):
   18512         (QGraphicsWKViewPrivate::onScaleChanged):
   18513         (QGraphicsWKViewPrivate::commitScale):
   18514         Support for tiled backing store.
   18515 
   18516         * UIProcess/TiledDrawingAreaProxy.cpp: Added.
   18517         (WebKit::TiledDrawingAreaProxy::create):
   18518         (WebKit::TiledDrawingAreaProxy::TiledDrawingAreaProxy):
   18519         (WebKit::TiledDrawingAreaProxy::~TiledDrawingAreaProxy):
   18520         (WebKit::TiledDrawingAreaProxy::setSize):
   18521         (WebKit::TiledDrawingAreaProxy::setPageIsVisible):
   18522         (WebKit::TiledDrawingAreaProxy::didSetSize):
   18523         (WebKit::TiledDrawingAreaProxy::didReceiveMessage):
   18524         (WebKit::TiledDrawingAreaProxy::didReceiveSyncMessage):
   18525         (WebKit::TiledDrawingAreaProxy::requestTileUpdate):
   18526         (WebKit::TiledDrawingAreaProxy::waitUntilUpdatesComplete):
   18527         (WebKit::TiledDrawingAreaProxy::createTile):
   18528         (WebKit::TiledDrawingAreaProxy::setTileSize):
   18529         (WebKit::TiledDrawingAreaProxy::setTileCreationDelay):
   18530         (WebKit::TiledDrawingAreaProxy::setKeepAndCoverAreaMultipliers):
   18531         (WebKit::TiledDrawingAreaProxy::invalidate):
   18532         (WebKit::TiledDrawingAreaProxy::updateTileBuffers):
   18533         (WebKit::TiledDrawingAreaProxy::tileBufferUpdateComplete):
   18534         (WebKit::TiledDrawingAreaProxy::paint):
   18535         (WebKit::TiledDrawingAreaProxy::adjustVisibleRect):
   18536         (WebKit::TiledDrawingAreaProxy::setContentsScale):
   18537         (WebKit::TiledDrawingAreaProxy::removeAllTiles):
   18538         (WebKit::TiledDrawingAreaProxy::tileDistance):
   18539         (WebKit::TiledDrawingAreaProxy::calculateKeepRect):
   18540         (WebKit::TiledDrawingAreaProxy::calculateCoverRect):
   18541         (WebKit::TiledDrawingAreaProxy::createTiles):
   18542         (WebKit::TiledDrawingAreaProxy::resizeEdgeTiles):
   18543         (WebKit::TiledDrawingAreaProxy::dropTilesOutsideRect):
   18544         (WebKit::TiledDrawingAreaProxy::tileAt):
   18545         (WebKit::TiledDrawingAreaProxy::setTile):
   18546         (WebKit::TiledDrawingAreaProxy::removeTile):
   18547         (WebKit::TiledDrawingAreaProxy::mapToContents):
   18548         (WebKit::TiledDrawingAreaProxy::mapFromContents):
   18549         (WebKit::TiledDrawingAreaProxy::contentsRect):
   18550         (WebKit::TiledDrawingAreaProxy::tileRectForCoordinate):
   18551         (WebKit::TiledDrawingAreaProxy::tileCoordinateForPoint):
   18552         (WebKit::TiledDrawingAreaProxy::startTileBufferUpdateTimer):
   18553         (WebKit::TiledDrawingAreaProxy::tileBufferUpdateTimerFired):
   18554         (WebKit::TiledDrawingAreaProxy::startTileCreationTimer):
   18555         (WebKit::TiledDrawingAreaProxy::tileCreationTimerFired):
   18556         (WebKit::TiledDrawingAreaProxy::hasPendingUpdates):
   18557         * UIProcess/TiledDrawingAreaProxy.h: Added.
   18558         (WebKit::TiledDrawingAreaProxy::contentsScale):
   18559         (WebKit::TiledDrawingAreaProxy::attachCompositingContext):
   18560         (WebKit::TiledDrawingAreaProxy::detachCompositingContext):
   18561         (WebKit::TiledDrawingAreaProxy::tileSize):
   18562         (WebKit::TiledDrawingAreaProxy::tileCreationDelay):
   18563         (WebKit::TiledDrawingAreaProxy::getKeepAndCoverAreaMultipliers):
   18564         * UIProcess/TiledDrawingAreaTile.h: Added.
   18565         (WebKit::TiledDrawingAreaTile::create):
   18566         (WebKit::TiledDrawingAreaTile::hasBackBufferUpdatePending):
   18567         (WebKit::TiledDrawingAreaTile::coordinate):
   18568         (WebKit::TiledDrawingAreaTile::rect):
   18569         (WebKit::TiledDrawingAreaTile::ID):
   18570         * WebProcess/WebPage/DrawingArea.cpp:
   18571         (WebKit::DrawingArea::create):
   18572         * WebProcess/WebPage/TiledDrawingArea.cpp: Added.
   18573         (WebKit::TiledDrawingArea::TiledDrawingArea):
   18574         (WebKit::TiledDrawingArea::~TiledDrawingArea):
   18575         (WebKit::TiledDrawingArea::invalidateWindow):
   18576         (WebKit::TiledDrawingArea::invalidateContentsAndWindow):
   18577         (WebKit::TiledDrawingArea::invalidateContentsForSlowScroll):
   18578         (WebKit::TiledDrawingArea::scroll):
   18579         (WebKit::TiledDrawingArea::setNeedsDisplay):
   18580         (WebKit::TiledDrawingArea::display):
   18581         (WebKit::TiledDrawingArea::scheduleDisplay):
   18582         (WebKit::TiledDrawingArea::setSize):
   18583         (WebKit::TiledDrawingArea::suspendPainting):
   18584         (WebKit::TiledDrawingArea::resumePainting):
   18585         (WebKit::TiledDrawingArea::didUpdate):
   18586         (WebKit::TiledDrawingArea::updateTile):
   18587         (WebKit::TiledDrawingArea::tileUpdateTimerFired):
   18588         (WebKit::TiledDrawingArea::didReceiveMessage):
   18589         * WebProcess/WebPage/TiledDrawingArea.h: Added.
   18590         (WebKit::TiledDrawingArea::attachCompositingContext):
   18591         (WebKit::TiledDrawingArea::detachCompositingContext):
   18592         (WebKit::TiledDrawingArea::setRootCompositingLayer):
   18593         (WebKit::TiledDrawingArea::scheduleCompositingLayerSync):
   18594         (WebKit::TiledDrawingArea::syncCompositingLayers):
   18595         * WebProcess/WebPage/qt/TiledDrawingAreaQt.cpp: Added.
   18596         (WebKit::TiledDrawingArea::paintIntoUpdateChunk):
   18597         * WebKit2.pro:
   18598         * UIProcess/qt/TiledDrawingAreaTileQt.cpp: Added.
   18599         (WebKit::checkeredPixmap):
   18600         (WebKit::TiledDrawingAreaTile::TiledDrawingAreaTile):
   18601         (WebKit::TiledDrawingAreaTile::~TiledDrawingAreaTile):
   18602         (WebKit::TiledDrawingAreaTile::isDirty):
   18603         (WebKit::TiledDrawingAreaTile::isReadyToPaint):
   18604         (WebKit::TiledDrawingAreaTile::hasReadyBackBuffer):
   18605         (WebKit::TiledDrawingAreaTile::invalidate):
   18606         (WebKit::TiledDrawingAreaTile::resize):
   18607         (WebKit::TiledDrawingAreaTile::swapBackBufferToFront):
   18608         (WebKit::TiledDrawingAreaTile::paint):
   18609         (WebKit::TiledDrawingAreaTile::paintCheckerPattern):
   18610         (WebKit::TiledDrawingAreaTile::updateFromChunk):
   18611         (WebKit::TiledDrawingAreaTile::updateBackBuffer):
   18612         * UIProcess/qt/TiledDrawingAreaProxyQt.cpp: Added.
   18613         (WebKit::TiledDrawingAreaProxy::updateWebView):
   18614         (WebKit::TiledDrawingAreaProxy::webViewVisibleRect):
   18615         (WebKit::TiledDrawingAreaProxy::page):
   18616 
   18617 2010-11-12  Benjamin Poulain  <benjamin.poulain (a] nokia.com>
   18618 
   18619         Reviewed by Andreas Kling.
   18620 
   18621         [Qt] Need to implement WebKit::pluginWillHandleLoadError for WebKit2
   18622         https://bugs.webkit.org/show_bug.cgi?id=48764
   18623 
   18624         Add the missing error to Qt support.
   18625 
   18626         * WebProcess/WebCoreSupport/qt/WebErrorsQt.cpp:
   18627         (WebKit::pluginWillHandleLoadError):
   18628 
   18629 2010-11-12  John Sullivan  <sullivan (a] apple.com>
   18630 
   18631         Reviewed by Anders Carlsson.
   18632 
   18633         Fixed Target for WKBundlePageOverlay.cpp.
   18634 
   18635         * WebKit2.xcodeproj/project.pbxproj:
   18636         Changed Target for WKBundlePageOverlay.cpp from WebProcess to WebKit2.
   18637 
   18638 2010-11-12  Anders Carlsson  <andersca (a] apple.com>
   18639 
   18640         Reviewed by John Sullivan.
   18641 
   18642         Need a way that WKBundlePageOverlayRef clients can make sure they only uninstall the overlay they installed
   18643         https://bugs.webkit.org/show_bug.cgi?id=49461
   18644         <rdar://problem/8662760>
   18645 
   18646         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   18647         (WKBundlePageUninstallPageOverlay):
   18648         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   18649         * WebProcess/WebPage/FindController.cpp:
   18650         (WebKit::FindController::findString):
   18651         (WebKit::FindController::hideFindUI):
   18652         * WebProcess/WebPage/WebPage.cpp:
   18653         (WebKit::WebPage::uninstallPageOverlay):
   18654         * WebProcess/WebPage/WebPage.h:
   18655 
   18656 2010-11-12  Anders Carlsson  <andersca (a] apple.com>
   18657 
   18658         Reviewed by Sam Weinig.
   18659 
   18660         Allow MessageSender to override sendMessage
   18661         https://bugs.webkit.org/show_bug.cgi?id=49457
   18662 
   18663         Change MessageSender::send to encode the message and then call sendMessage.
   18664         This allows for clients to override sendMessage, something which WebProcessProxy
   18665         will be able to take advantage of.
   18666 
   18667         * Platform/CoreIPC/MessageSender.h:
   18668         (CoreIPC::MessageSender::send):
   18669         (CoreIPC::MessageSender::sendMessage):
   18670 
   18671 2010-11-12  Anders Carlsson  <andersca (a] apple.com>
   18672 
   18673         Reviewed by Sam Weinig.
   18674 
   18675         CoreIPC cleanup
   18676         https://bugs.webkit.org/show_bug.cgi?id=49455
   18677 
   18678         Add a static create function to ArgumentEncoder. 
   18679         Factor sync message argument encoder creation out into a new function,
   18680         createSyncMessageArgumentEncoder.
   18681         
   18682         * Platform/CoreIPC/ArgumentEncoder.cpp:
   18683         (CoreIPC::ArgumentEncoder::create):
   18684         * Platform/CoreIPC/ArgumentEncoder.h:
   18685         * Platform/CoreIPC/Connection.cpp:
   18686         (CoreIPC::Connection::createSyncMessageArgumentEncoder):
   18687         (CoreIPC::Connection::dispatchSyncMessage):
   18688         * Platform/CoreIPC/Connection.h:
   18689         (CoreIPC::Connection::send):
   18690         (CoreIPC::Connection::sendSync):
   18691         * UIProcess/WebProcessProxy.h:
   18692         (WebKit::WebProcessProxy::send):
   18693 
   18694 2010-11-12  Sam Weinig  <sam (a] webkit.org>
   18695 
   18696         Reviewed by Anders Carlsson.
   18697 
   18698         ASSERTION when converting some WKStringRefs returned from willSubmitForm to CFStringRef
   18699         <rdar://problem/8662180>
   18700         https://bugs.webkit.org/show_bug.cgi?id=49454
   18701 
   18702         Enforce the invariant that a WebString never contains a null WTF::String at a
   18703         lower level, in the WebString constructor, instead of relying on the callers of
   18704         WebString::create to do it.
   18705 
   18706         * Shared/API/c/WKSharedAPICast.h:
   18707         (WebKit::toAPI):
   18708         (WebKit::toCopiedAPI): Remove null string check...
   18709 
   18710         * Shared/WebString.h:
   18711         (WebKit::WebString::WebString): ... and move it to the constructor.
   18712 
   18713         * Shared/API/c/WKURL.cpp:
   18714         (WKURLCopyString): Use toCopiedAPI() instead of calling WebString directly
   18715         to match other similar uses.
   18716 
   18717 2010-11-12  Andreas Kling  <kling (a] webkit.org>
   18718 
   18719         Reviewed by Antonio Gomes.
   18720 
   18721         [Qt][WK2] Fix leaking of mapped files
   18722 
   18723         MappedMemory::fileName was never set on the receiving side, which led
   18724         the MappedMemoryPool to call QFile::map() again when reusing an existing file.
   18725 
   18726         * Platform/qt/MappedMemoryPool.cpp:
   18727         (WebKit::MappedMemoryPool::mapFile):
   18728 
   18729 2010-11-12  Adam Roben  <aroben (a] apple.com>
   18730 
   18731         Windows build fix
   18732 
   18733         * win/WebKit2Generated.make: Copy WKBundlePageOverlay.h.
   18734 
   18735 2010-11-12  Benjamin Poulain  <benjamin.poulain (a] nokia.com>
   18736 
   18737         Unreviewed fix after r71857.
   18738 
   18739         * UIProcess/qt/WebInspectorProxyQt.cpp:
   18740         * WebProcess/WebPage/qt/WebInspectorQt.cpp:
   18741 
   18742 2010-11-11  Anders Carlsson  <andersca (a] apple.com>
   18743 
   18744         Reviewed by Darin Adler.
   18745 
   18746         Add didReceiveResponse and didReceiveData to the download client
   18747         https://bugs.webkit.org/show_bug.cgi?id=49418
   18748 
   18749         * UIProcess/API/C/WKContext.h:
   18750         Add didReceiveResponse and didReceiveData to WKContextDownloadClient.
   18751 
   18752         * UIProcess/Downloads/DownloadProxy.cpp:
   18753         (WebKit::DownloadProxy::didReceiveResponse):
   18754         (WebKit::DownloadProxy::didReceiveData):
   18755         Call WebDownloadClient member functions.
   18756 
   18757         * UIProcess/Downloads/DownloadProxy.messages.in:
   18758         Add DidReceiveResponse and DidReceiveData messages.
   18759 
   18760         * UIProcess/WebDownloadClient.cpp:
   18761         (WebKit::WebDownloadClient::didReceiveResponse):
   18762         (WebKit::WebDownloadClient::didReceiveData):
   18763         Call client functions.
   18764 
   18765         * WebKit2.xcodeproj/project.pbxproj:
   18766         Let Xcode update the file.
   18767 
   18768         * WebProcess/Downloads/Download.cpp:
   18769         (WebKit::Download::didReceiveResponse):
   18770         (WebKit::Download::didReceiveData):
   18771         Send messages.
   18772 
   18773         * WebProcess/Downloads/mac/DownloadMac.mm:
   18774         (WebKit::Download::start):
   18775         Set deletesFileUponFailure to NO.
   18776 
   18777         (-[WKDownloadAsDelegate download:didReceiveResponse:]):
   18778         Call didReceiveResponse.
   18779 
   18780 2010-11-11  Anders Carlsson  <andersca (a] apple.com>
   18781 
   18782         Reviewed by Sam Weinig.
   18783 
   18784         Add an argument coder for ResourceResponse.
   18785         https://bugs.webkit.org/show_bug.cgi?id=49415
   18786 
   18787         * Shared/WebCoreArgumentCoders.h:
   18788         * Shared/gtk/WebCoreArgumentCodersGtk.cpp:
   18789         (CoreIPC::encodeResourceResponse):
   18790         (CoreIPC::decodeResourceResponse):
   18791         * Shared/mac/WebCoreArgumentCodersMac.mm:
   18792         (CoreIPC::encodeResourceResponse):
   18793         (CoreIPC::decodeResourceResponse):
   18794         * Shared/qt/WebCoreArgumentCodersQt.cpp:
   18795         (CoreIPC::encodeResourceResponse):
   18796         (CoreIPC::decodeResourceResponse):
   18797         * Shared/win/WebCoreArgumentCodersWin.cpp:
   18798         (CoreIPC::encodeResourceResponse):
   18799         (CoreIPC::decodeResourceResponse):
   18800 
   18801 2010-11-11  Ryosuke Niwa  <rniwa (a] webkit.org>
   18802 
   18803         Unreviewed build fix for r71587.
   18804 
   18805         * WebKit2.xcodeproj/project.pbxproj: No longer uses absolute path.
   18806 
   18807 2010-11-11  Csaba Osztrogonc  <ossy (a] webkit.org>
   18808 
   18809         [Qt] Unreviewed WebKit2 buildfix after r71587.
   18810 
   18811         * UIProcess/qt/WebInspectorProxyQt.cpp:
   18812         * WebKit2.pro:
   18813 
   18814 2010-11-11  Brian Weinstein  <bweinstein (a] apple.com>
   18815 
   18816         More Windows build fixing. Change another #import to a #include, and remove an unneeded
   18817         namespace.
   18818 
   18819         * UIProcess/win/WebInspectorProxyWin.cpp:
   18820         * WebProcess/WebPage/win/WebInspectorWin.cpp:
   18821 
   18822 2010-11-11  Brent Fulgham  <bfulgham (a] webkit.org>
   18823 
   18824         Windows [Cairo] build fix. Unreviewed.
   18825 
   18826         Provide stubs for two BackingStore methods.
   18827 
   18828         * Shared/cairo/BackingStoreCairo.cpp:
   18829         (WebKit::BackingStore::createFlippedGraphicsContext):
   18830         (WebKit::BackingStore::paint):
   18831 
   18832 2010-11-11  Brian Weinstein  <bweinstein (a] apple.com>
   18833 
   18834         Windows Build Fix. Change #imports to #includes.
   18835 
   18836         * UIProcess/win/WebInspectorProxyWin.cpp:
   18837 
   18838 2010-11-08  Timothy Hatcher  <timothy (a] apple.com>
   18839 
   18840         Create and load the Web Inspector page.
   18841 
   18842         https://webkit.org/b/49207
   18843 
   18844         Reviewed by Anders Carlsson.
   18845 
   18846         * UIProcess/WebInspectorProxy.cpp:
   18847         (WebKit::WebInspectorProxy::createInspectorPage): Added. Call platformCreateInspectorPage and then
   18848         call WebPageProxy::loadURL with inspectorPageURL.
   18849         (WebKit::WebInspectorProxy::didLoadInspectorPage): Added stub.
   18850         * UIProcess/WebInspectorProxy.h:
   18851         * UIProcess/WebInspectorProxy.messages.in: Added.
   18852         * UIProcess/WebPageProxy.cpp:
   18853         (WebKit::WebPageProxy::didReceiveMessage): Call WebInspectorProxy::didReceiveWebInspectorProxyMessage.
   18854         (WebKit::WebPageProxy::didReceiveSyncMessage): Call WebInspectorProxy::didReceiveSyncWebInspectorProxyMessage.
   18855         * UIProcess/WebPageProxy.h: Made creationParameters public so WebInspectorProxy can use it.
   18856 
   18857         * UIProcess/mac/WebInspectorProxyMac.mm:
   18858         (WebKit::WebInspectorProxy::platformCreateInspectorPage): Make a WkView and return the WebPageProxy.
   18859         (WebKit::WebInspectorProxy::inspectorPageURL): Return the file URL for the inspector.html file.
   18860         * UIProcess/qt/WebInspectorProxyQt.cpp:
   18861         (WebKit::WebInspectorProxy::platformCreateInspectorPage): Added stub.
   18862         (WebKit::WebInspectorProxy::inspectorPageURL): Ditto.
   18863         * UIProcess/win/WebInspectorProxyWin.cpp:
   18864         (WebKit::WebInspectorProxy::platformCreateInspectorPage): Added stub.
   18865         (WebKit::WebInspectorProxy::inspectorPageURL): Ditto.
   18866 
   18867         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
   18868         (WebKit::WebInspectorClient::openInspectorFrontend): Call WebInspector::createInspectorPage and set up the WebInspectorFrontendClient.
   18869         (WebKit::WebInspectorClient::sendMessageToFrontend): Call doDispatchMessageOnFrontendPage in the base class.
   18870         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
   18871         (WebKit::WebInspectorFrontendClient::frontendLoaded): Call WebInspector::didLoadInspectorPage.
   18872         (WebKit::WebInspectorFrontendClient::localizedStringsURL): Call WebInspector::localizedStringsURL.
   18873         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
   18874 
   18875         * WebProcess/WebPage/WebInspector.cpp:
   18876         (WebKit::WebInspector::WebInspector):
   18877         (WebKit::WebInspector::createInspectorPage): Send a sync WebInspectorProxy::CreateInspectorPage message and set up
   18878         the WebPage using the result page ID.
   18879         (WebKit::WebInspector::didLoadInspectorPage): Send a WebInspectorProxy::DidLoadInspectorPage message.
   18880         * WebProcess/WebPage/WebInspector.h:
   18881         (WebKit::WebInspector::inspectorPage): Added.
   18882         * WebProcess/WebPage/WebPage.cpp:
   18883         (WebKit::WebPage::didReceiveMessage): Call WebInspector::didReceiveWebInspectorMessage.
   18884 
   18885         * WebProcess/WebPage/mac/WebInspectorMac.mm:
   18886         (WebKit::WebInspector::localizedStringsURL): Return the file URL for the localizedStrings.js file.
   18887         * WebProcess/WebPage/qt/WebInspectorQt.cpp:
   18888         (WebKit::WebInspector::localizedStringsURL): Added stub.
   18889         * WebProcess/WebPage/win/WebInspectorWin.cpp:
   18890         (WebKit::WebInspector::localizedStringsURL): Added stub.
   18891 
   18892         * DerivedSources.make: Added WebInspectorProxy.messages.in.
   18893         * DerivedSources.pro: Ditto.
   18894 
   18895         * WebKit2.pro: Added new files.
   18896         * WebKit2.xcodeproj/project.pbxproj: Ditto.
   18897         * win/WebKit2.vcproj: Ditto.
   18898 
   18899 2010-11-11  Sam Weinig  <sam (a] webkit.org>
   18900 
   18901         Reviewed by Anders Carlsson.
   18902 
   18903         Move the remaining API client classes to use the APIClient base class.
   18904         https://bugs.webkit.org/show_bug.cgi?id=49404
   18905 
   18906         Also moves InjectedBundleClient into its own class to match other API clients.
   18907 
   18908         * UIProcess/WebContextInjectedBundleClient.cpp:
   18909         * UIProcess/WebContextInjectedBundleClient.h:
   18910         * UIProcess/WebHistoryClient.cpp:
   18911         (WebKit::WebHistoryClient::didNavigateWithNavigationData):
   18912         (WebKit::WebHistoryClient::didPerformClientRedirect):
   18913         (WebKit::WebHistoryClient::didPerformServerRedirect):
   18914         (WebKit::WebHistoryClient::didUpdateHistoryTitle):
   18915         (WebKit::WebHistoryClient::populateVisitedLinks):
   18916         * UIProcess/WebHistoryClient.h:
   18917         (WebKit::WebHistoryClient::shouldTrackVisitedLinks):
   18918         * WebKit2.pro:
   18919         * WebKit2.xcodeproj/project.pbxproj:
   18920         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   18921         (WebKit::InjectedBundle::initializeClient):
   18922         (WebKit::InjectedBundle::reportException):
   18923         (WebKit::InjectedBundle::didCreatePage):
   18924         (WebKit::InjectedBundle::willDestroyPage):
   18925         (WebKit::InjectedBundle::didReceiveMessage):
   18926         * WebProcess/InjectedBundle/InjectedBundle.h:
   18927         * WebProcess/InjectedBundle/InjectedBundleClient.cpp: Added.
   18928         (WebKit::InjectedBundleClient::didCreatePage):
   18929         (WebKit::InjectedBundleClient::willDestroyPage):
   18930         (WebKit::InjectedBundleClient::didReceiveMessage):
   18931         * WebProcess/InjectedBundle/InjectedBundleClient.h: Added.
   18932         * win/WebKit2.vcproj:
   18933 
   18934 2010-11-11  Anders Carlsson  <andersca (a] apple.com>
   18935 
   18936         Reviewed by Adam Roben.
   18937 
   18938         Remove an unneeded CFAllocatorRef parameter.
   18939 
   18940         * Shared/API/c/mac/WKURLResponseNS.h:
   18941         * Shared/API/c/mac/WKURLResponseNS.mm:
   18942         (WKURLResponseCopyNSURLResponse):
   18943 
   18944 2010-11-11  Anders Carlsson  <andersca (a] apple.com>
   18945 
   18946         Reviewed by Adam Roben.
   18947 
   18948         Add and implement WKDownloadCopyRequest
   18949         https://bugs.webkit.org/show_bug.cgi?id=49393
   18950 
   18951         * Shared/API/c/mac/WKURLRequestNS.h:
   18952         * Shared/API/c/mac/WKURLRequestNS.mm:
   18953         (WKURLRequestCopyNSURLRequest):
   18954         Remove unneeded CFAllocator parameter.
   18955 
   18956         * Shared/WebURLRequest.cpp:
   18957         (WebKit::WebURLRequest::WebURLRequest):
   18958         * Shared/WebURLRequest.h:
   18959         (WebKit::WebURLRequest::create):
   18960         Change create to take a ResourceRequest instead.
   18961 
   18962         * UIProcess/API/C/WKDownload.cpp:
   18963         (WKDownloadCopyRequest):
   18964         Return a copied WKURLRequest.
   18965 
   18966         * UIProcess/API/C/WKDownload.h:
   18967         * UIProcess/Downloads/DownloadProxy.cpp:
   18968         (WebKit::DownloadProxy::didStart):
   18969         Set the request.
   18970 
   18971         * UIProcess/Downloads/DownloadProxy.h:
   18972         (WebKit::DownloadProxy::request):
   18973         Return the request.
   18974 
   18975         * UIProcess/Downloads/DownloadProxy.messages.in:
   18976         * WebProcess/Downloads/Download.cpp:
   18977         (WebKit::Download::didStart):
   18978         Pass the request along when sending the DidStart message.
   18979 
   18980 2010-11-11  John Sullivan  <sullivan (a] apple.com>
   18981 
   18982         Rubber-stamped by Anders Carlsson.
   18983 
   18984         * WebKit2.xcodeproj/project.pbxproj:
   18985         Added WKBundlePageOverlay.h to the WebKit2 Target and made it public.
   18986 
   18987 2010-11-11  Anders Carlsson  <andersca (a] apple.com>
   18988 
   18989         Reviewed by John Sullivan.
   18990 
   18991         Move GraphicsContext setup code to PageOverlay::drawRect
   18992         https://bugs.webkit.org/show_bug.cgi?id=49389
   18993 
   18994         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
   18995         * WebProcess/WebPage/FindController.cpp:
   18996         (WebKit::FindController::drawRect):
   18997         * WebProcess/WebPage/PageOverlay.cpp:
   18998         (WebKit::PageOverlay::drawRect):
   18999 
   19000 2010-11-11  Adam Roben  <aroben (a] apple.com>
   19001 
   19002         Build fix after r71816
   19003 
   19004         * WebProcess/WebPage/WebPage.messages.in: Compile out
   19005         SetActualVisibleContentRect when ENABLE(TILED_BACKING_STORE) is
   19006         turned off.
   19007 
   19008 2010-11-11  Balazs Kelemen  <kbalazs (a] webkit.org>
   19009 
   19010         Reviewed by Andreas Kling.
   19011 
   19012         [Qt][WK2] Implement BackingStore
   19013         https://bugs.webkit.org/show_bug.cgi?id=49377
   19014 
   19015         * Shared/qt/BackingStoreQt.cpp:
   19016         (WebKit::createQImage): Added static helper. Creates a QImage
   19017         from the shared memory buffer.
   19018         (WebKit::BackingStore::createGraphicsContext):
   19019         (WebKit::BackingStore::createFlippedGraphicsContext): Leave
   19020         unimplemented with an ASSERT_NOT_REACHED since this is only
   19021         needed for the CoreGraphics backend.
   19022         (WebKit::BackingStore::paint):
   19023 
   19024 2010-11-11  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>
   19025 
   19026         Reviewed by Andreas Kling.
   19027 
   19028         [Qt] Add a Qt WebKit2 API for overriding the actual visible content rect
   19029         https://bugs.webkit.org/show_bug.cgi?id=49381
   19030 
   19031         Add an Qt WebKit2 API for overriding the actual visible content rect in
   19032         WebCore. This is supposed to be used in combination with tiling.
   19033 
   19034         * UIProcess/API/qt/qwkpage.cpp:
   19035         (QWKPage::setActualVisibleContentsRect):
   19036         * UIProcess/API/qt/qwkpage.h:
   19037         * UIProcess/WebPageProxy.cpp:
   19038         (WebKit::WebPageProxy::setActualVisibleContentRect):
   19039         * UIProcess/WebPageProxy.h:
   19040         * WebProcess/WebPage/WebPage.cpp:
   19041         (WebKit::WebPage::setActualVisibleContentRect):
   19042         * WebProcess/WebPage/WebPage.h:
   19043         * WebProcess/WebPage/WebPage.messages.in:
   19044 
   19045 2010-11-10  Beth Dakin  <bdakin (a] apple.com>
   19046 
   19047         Reviewed by Simon Fraser.
   19048 
   19049         Fix for https://bugs.webkit.org/show_bug.cgi?id=49356 
   19050         -[WebView _scaleWebView:] should take and origin and scroll the 
   19051         document
   19052         -and corresponding-
   19053         <rdar://problem/8643921>
   19054 
   19055         * Shared/API/c/WKSharedAPICast.h:
   19056         (WebKit::toImpl):
   19057         * UIProcess/API/C/WKPage.cpp:
   19058         (WKPageScaleWebView):
   19059         * UIProcess/API/C/WKPage.h:
   19060         * UIProcess/WebPageProxy.cpp:
   19061         (WebKit::WebPageProxy::scaleWebView):
   19062         * UIProcess/WebPageProxy.h:
   19063         * WebProcess/WebPage/WebPage.cpp:
   19064         (WebKit::WebPage::scaleWebView):
   19065         * WebProcess/WebPage/WebPage.h:
   19066         * WebProcess/WebPage/WebPage.messages.in:
   19067 
   19068 2010-11-10  Ada Chan  <adachan (a] apple.com>
   19069         
   19070         Fix Windows build.
   19071 
   19072         * win/WebKit2Generated.make:
   19073 
   19074 2010-11-10  Simon Fraser  <simon.fraser (a] apple.com>
   19075 
   19076         Reviewed by Anders Carlsson.
   19077 
   19078         Misc drawing area cleanup
   19079         https://bugs.webkit.org/show_bug.cgi?id=49349
   19080         
   19081         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   19082         (WebKit::LayerBackedDrawingAreaProxy::setSize):
   19083         (WebKit::LayerBackedDrawingAreaProxy::setPageIsVisible):
   19084         (WebKit::LayerBackedDrawingAreaProxy::update):
   19085         Call process()->send() instead of process()->connection()->send() in case
   19086         the web process has not been launched yet.
   19087         
   19088         * WebProcess/WebPage/WebPage.cpp:
   19089         (WebKit::WebPage::WebPage): Delay creation of the drawing area
   19090         until after other WebPage state has been initialized, in case
   19091         the DrawingArea creation needs to call back to the WebPage.
   19092 
   19093 2010-11-10  Simon Fraser  <simon.fraser (a] apple.com>
   19094 
   19095         Reviewed by Adam Roben.
   19096 
   19097         Push m_viewSize down to DrawingAreaProxy base class
   19098         https://bugs.webkit.org/show_bug.cgi?id=49347
   19099         
   19100         Some refactoring so that the various drawing area classes
   19101         can share m_size.
   19102 
   19103         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   19104         (WebKit::ChunkedUpdateDrawingAreaProxy::setSize):
   19105         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   19106         * UIProcess/DrawingAreaProxy.h:
   19107         (WebKit::DrawingAreaProxy::setSize):
   19108         (WebKit::DrawingAreaProxy::size):
   19109         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   19110         (WebKit::LayerBackedDrawingAreaProxy::setSize):
   19111         * UIProcess/LayerBackedDrawingAreaProxy.h:
   19112         * UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm:
   19113         (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore):
   19114         (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore):
   19115         * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm:
   19116         (WebKit::LayerBackedDrawingAreaProxy::platformSetSize):
   19117         (WebKit::LayerBackedDrawingAreaProxy::attachCompositingContext):
   19118         * UIProcess/win/ChunkedUpdateDrawingAreaProxyWin.cpp:
   19119         (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore):
   19120         * UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp:
   19121         (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore):
   19122 
   19123 2010-11-10  Anders Carlsson  <andersca (a] apple.com>
   19124 
   19125         Reviewed by Dan Bernstein.
   19126 
   19127         Closing tabs sometimes crashes the WebProcess in invalidateContentsAndWindow
   19128         https://bugs.webkit.org/show_bug.cgi?id=49335
   19129         <rdar://problem/8646621>
   19130 
   19131         * WebProcess/WebPage/WebPage.cpp:
   19132         (WebKit::WebPage::changeAcceleratedCompositingMode):
   19133         If we fail to send the DidChangeAcceleratedCompositing message, don't null out the
   19134         drawing area. This will happen during page teardown.
   19135 
   19136 2010-11-10  Csaba Osztrogonc  <ossy (a] webkit.org>
   19137 
   19138         Reviewed by David Hyatt.
   19139 
   19140         HTML5 Ruby support should be mandatory feature
   19141         https://bugs.webkit.org/show_bug.cgi?id=49272
   19142 
   19143         Remove Ruby as optional feature.
   19144 
   19145         * Configurations/FeatureDefines.xcconfig:
   19146         * WebKit2Prefix.h: Touch it to avoid incremental build failure on Windows.
   19147 
   19148 2010-11-10  Sam Weinig  <sam (a] webkit.org>
   19149 
   19150         Reviewed by Anders Carlsson.
   19151 
   19152         Add license to DerivedSources.make.
   19153 
   19154         * DerivedSources.make:
   19155 
   19156 2010-11-09  Sam Weinig  <sam (a] webkit.org>
   19157 
   19158         Reviewed by Adam Roben.
   19159 
   19160         Convert client classes to use APIClient base class.
   19161         https://bugs.webkit.org/show_bug.cgi?id=49322
   19162 
   19163         * UIProcess/WebFormClient.cpp:
   19164         (WebKit::WebFormClient::willSubmitForm):
   19165         * UIProcess/WebFormClient.h:
   19166         * UIProcess/WebLoaderClient.cpp:
   19167         * UIProcess/WebLoaderClient.h:
   19168         * UIProcess/WebPolicyClient.cpp:
   19169         * UIProcess/WebPolicyClient.h:
   19170         * UIProcess/WebUIClient.cpp:
   19171         * UIProcess/WebUIClient.h:
   19172         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:
   19173         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.h:
   19174         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
   19175         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h:
   19176         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
   19177         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.h:
   19178         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   19179         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   19180         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
   19181         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
   19182 
   19183 2010-11-10  Andreas Kling  <kling (a] webkit.org>
   19184 
   19185         Reviewed by Kenneth Rohde Christiansen.
   19186 
   19187         [Qt][WK2] Fix re-use of memory-mapped files
   19188         https://bugs.webkit.org/show_bug.cgi?id=49310
   19189 
   19190         QTemporaryFile::fileName() returns an empty string after close()
   19191         so we have to keep separate track of the filename.
   19192 
   19193         Also, we can't reopen the file if it's been QFile::remove()d,
   19194         so we defer unlinking until the MappedMemoryPool is destroyed or
   19195         the CrashHandler kicks in.
   19196 
   19197         This makes re-use of memory-mapped files work (after we kill an
   19198         assertion that the file size == the new mmap size - it's fine if
   19199         the file is larger, too.)
   19200 
   19201         * Platform/qt/MappedMemoryPool.cpp:
   19202         (WebKit::MappedMemoryPool::~MappedMemoryPool):
   19203         (WebKit::MappedMemoryPool::clear):
   19204         (WebKit::MappedMemoryPool::mapMemory):
   19205         (WebKit::MappedMemoryPool::mapFile):
   19206         * Platform/qt/MappedMemoryPool.h:
   19207         (WebKit::MappedMemory::mappedFileName):
   19208         * Shared/qt/CrashHandler.cpp:
   19209         (WebKit::CrashHandler::deleteObjects):
   19210         * Shared/qt/UpdateChunk.cpp:
   19211         (WebKit::UpdateChunk::encode):
   19212 
   19213 2010-11-09  Brady Eidson  <beidson (a] apple.com>
   19214 
   19215         Reviewed by the ever-picky Windows build-bot.
   19216 
   19217         Windows build bot was complaining about this.
   19218 
   19219         * Shared/WebContextMenuItemData.cpp:
   19220         (WebKit::WebContextMenuItemData::core):
   19221 
   19222 2010-11-09  Anders Carlsson  <andersca (a] apple.com>
   19223 
   19224         Reviewed by John Sullivan.
   19225 
   19226         WKDownload.h should be a public header.
   19227 
   19228         * WebKit2.xcodeproj/project.pbxproj:
   19229 
   19230 2010-11-09  Brady Eidson  <beidson (a] apple.com>
   19231 
   19232         Reviewed by Darin Adler.
   19233 
   19234         Part of <rdar://problem/8613727> and https://bugs.webkit.org/show_bug.cgi?id=48720
   19235         Customizable context menu support in WebKit2.
   19236 
   19237         This adds a BundlePageContextMenu client and lets WebKit2 consult it with the proposed
   19238         list of WebContextMenuItems.
   19239         There is no realistic API for the embedding app to actually inspect or create new
   19240         WebContextMenuItems (will be "WKContextMenuItem") and that ability will come later.
   19241 
   19242         * WebKit2.pro:
   19243         * WebKit2.xcodeproj/project.pbxproj:
   19244         * win/WebKit2.vcproj:
   19245 
   19246         * Platform/Logging.cpp:
   19247         (initializeLogChannelsIfNecessary):
   19248         * Platform/Logging.h:
   19249 
   19250         * Shared/APIObject.h:
   19251 
   19252         * Shared/MutableArray.cpp:
   19253         (WebKit::MutableArray::reserveCapacity):
   19254         * Shared/MutableArray.h:
   19255 
   19256         * Shared/WebContextMenuItem.cpp: Added.
   19257         (WebKit::WebContextMenuItem::WebContextMenuItem):
   19258         (WebKit::WebContextMenuItem::data):
   19259         * Shared/WebContextMenuItem.h: Added.
   19260         (WebKit::WebContextMenuItem::create):
   19261         (WebKit::WebContextMenuItem::type):
   19262 
   19263         * Shared/WebContextMenuItemData.cpp:
   19264         (WebKit::WebContextMenuItemData::core):
   19265         (WebKit::kitItems):
   19266         (WebKit::coreItems):
   19267         * Shared/WebContextMenuItemData.h:
   19268 
   19269         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   19270         (WKBundlePageSetContextMenuClient):
   19271         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   19272 
   19273         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp: Added.
   19274         (WebKit::InjectedBundlePageContextMenuClient::InjectedBundlePageContextMenuClient):
   19275         (WebKit::InjectedBundlePageContextMenuClient::initialize):
   19276         (WebKit::InjectedBundlePageContextMenuClient::getCustomMenuFromDefaultItems):
   19277         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.h: Added.
   19278 
   19279         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
   19280         (WebKit::WebContextMenuClient::getCustomMenuFromDefaultItems): Call through to the injected bundle client
   19281           with the default items and convert the returned items back for WebCore to use.
   19282 
   19283         * WebProcess/WebPage/WebPage.cpp:
   19284         (WebKit::WebPage::initializeInjectedBundleContextMenuClient):
   19285         * WebProcess/WebPage/WebPage.h:
   19286         (WebKit::WebPage::injectedBundleContextMenuClient):
   19287 
   19288 2010-11-09  Sam Weinig  <sam (a] webkit.org>
   19289 
   19290         Add some stylistic flourish to the last patch as suggested by Lord Darin Adler.
   19291 
   19292         * UIProcess/API/C/WKPage.cpp:
   19293         (WKPageGetSourceForFrame):
   19294         (WKPageGetContentsAsString):
   19295         * UIProcess/WebPageProxy.cpp:
   19296         (WebKit::invalidateCallbackMap):
   19297         * WebProcess/WebPage/WebFrame.cpp:
   19298         (WebKit::WebFrame::contentsAsString):
   19299 
   19300 2010-11-09  Sam Weinig  <sam (a] webkit.org>
   19301 
   19302         Reviewed by Anders Carlsson.
   19303 
   19304         Need WebKit2 mechanism for getting the visible page text
   19305         <rdar://problem/8646928>
   19306         https://bugs.webkit.org/show_bug.cgi?id=49275
   19307 
   19308         * UIProcess/API/C/WKPage.cpp:
   19309         (WKPageGetContentsAsString):
   19310         (callContentsAsStringBlockBlockAndDispose):
   19311         (WKPageGetContentsAsString_b):
   19312         * UIProcess/API/C/WKPage.h:
   19313         Add GetContentsAsString callback function declaration and forwarding.
   19314 
   19315         * UIProcess/WebPageProxy.cpp:
   19316         (WebKit::invalidateCallbackMap):
   19317         (WebKit::WebPageProxy::close):
   19318         (WebKit::WebPageProxy::getContentsAsString):
   19319         (WebKit::WebPageProxy::didGetContentsAsString):
   19320         (WebKit::WebPageProxy::processDidCrash):
   19321         * UIProcess/WebPageProxy.h:
   19322         Add GetContentsAsString callback and generalize invalidating the callback
   19323         maps into a standalone function.
   19324 
   19325         * UIProcess/WebPageProxy.messages.in:
   19326         Add DidGetContentsAsString return message.
   19327 
   19328         * WebProcess/WebPage/WebFrame.h:
   19329         * WebProcess/WebPage/WebFrame.cpp:
   19330         (WebKit::WebFrame::contentsAsString):
   19331         Gets the string content of all the subframes.
   19332 
   19333         (WebKit::WebFrame::isFrameSet):
   19334         Call through to the document.
   19335 
   19336         * WebProcess/WebPage/WebPage.h:
   19337         * WebProcess/WebPage/WebPage.cpp:
   19338         (WebKit::WebPage::getContentsAsString):
   19339         Forward to the the main frames contentsAsString function.
   19340 
   19341         * WebProcess/WebPage/WebPage.messages.in:
   19342         Add GetContentsAsString and collect all callback messages together.
   19343 
   19344 2010-11-09  Sam Weinig  <sam (a] webkit.org>
   19345 
   19346         Fix mac build.
   19347 
   19348         * WebProcess/mac/WebProcessMac.mm:
   19349         (WebKit::WebProcess::platformSetCacheModel):
   19350 
   19351 2010-11-09  Simon Fraser  <simon.fraser (a] apple.com>
   19352 
   19353         Reviewed by Darin Adler, Dan Bernstein.
   19354 
   19355         <rdar://problem/8360145> Pages using accelerated compositing missing content on Windows
   19356 
   19357         Disable accelerated compositing on Windows until we have cross-process
   19358         rendering implemented.
   19359 
   19360         * WebProcess/WebPage/WebPage.cpp:
   19361         (WebKit::WebPage::updatePreferences):
   19362 
   19363 2010-11-09  Anders Carlsson  <andersca (a] apple.com>
   19364 
   19365         Reviewed by Sam Weinig.
   19366 
   19367         Add injected bundle API for creating page overlays
   19368         https://bugs.webkit.org/show_bug.cgi?id=49282
   19369 
   19370         * Shared/API/c/WKBase.h:
   19371         Add WKBundlePageOverlayRef.
   19372 
   19373         * Shared/APIObject.h:
   19374         Add TypeBundlePageOverlay.
   19375 
   19376         * WebKit2.pro:
   19377         * WebKit2.xcodeproj/project.pbxproj:
   19378         Add new files.
   19379 
   19380         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   19381         Add WKBundlePageOverlayRef mapping.
   19382 
   19383         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   19384         (WKBundlePageInstallPageOverlay):
   19385         Install the passed in page overlay.
   19386 
   19387         (WKBundlePageUninstallPageOverlay):
   19388         Uninstall the passed in page overlay.
   19389 
   19390         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp: Added.
   19391         (PageOverlayClientImpl::create):
   19392         (PageOverlayClientImpl::PageOverlayClientImpl):
   19393         (PageOverlayClientImpl::pageOverlayDestroyed):
   19394         (PageOverlayClientImpl::willMoveToWebPage):
   19395         (PageOverlayClientImpl::didMoveToWebPage):
   19396         (PageOverlayClientImpl::drawRect):
   19397         (PageOverlayClientImpl::mouseEvent):
   19398         Add a PageOverlay::Client subclass that forwards everything to its client.
   19399 
   19400         (WKBundlePageOverlayGetTypeID):
   19401         (WKBundlePageOverlayCreate):
   19402         Create a page overlay.
   19403 
   19404         * WebProcess/WebPage/FindController.cpp:
   19405         (WebKit::FindController::pageOverlayDestroyed):
   19406         * WebProcess/WebPage/FindController.h:
   19407         Add stub.
   19408 
   19409         * WebProcess/WebPage/PageOverlay.h:
   19410         Inherit from APIObject.
   19411 
   19412         (WebKit::PageOverlay::type):
   19413         return TypeBundlePageOverlay.
   19414 
   19415         * win/WebKit2.vcproj:
   19416         Add new files.
   19417 
   19418 2010-11-09  Anders Carlsson  <andersca (a] apple.com>
   19419 
   19420         Reviewed by Sam Weinig.
   19421 
   19422         Get rid of FindPageOverlay
   19423         https://bugs.webkit.org/show_bug.cgi?id=49268
   19424 
   19425         * WebKit2.pro:
   19426         * WebKit2.xcodeproj/project.pbxproj:
   19427         Remove files.
   19428 
   19429         * WebProcess/WebPage/FindController.cpp:
   19430         (WebKit::FindController::findString):
   19431         Create a PageOverlay with the FindController as its client.
   19432 
   19433         (WebKit::FindController::willMoveToWebPage):
   19434         Null out the find page overlay if the web page is null.
   19435 
   19436         (WebKit::FindController::didMoveToWebPage):
   19437         Add stub.
   19438 
   19439         * WebProcess/WebPage/FindController.h:
   19440         FindController is now a PageOverlay::Client.
   19441 
   19442         * WebProcess/WebPage/FindPageOverlay.cpp: Removed.
   19443         * WebProcess/WebPage/FindPageOverlay.h: Removed.
   19444         * WebProcess/WebPage/PageOverlay.cpp:
   19445         (WebKit::PageOverlay::setPage):
   19446         Call the willMoveToWebPage and didMoveToWebPage client functions.
   19447 
   19448         (WebKit::PageOverlay::setNeedsDisplay):
   19449         Pass the page overlay bounds instead of the web page size.
   19450 
   19451         * WebProcess/WebPage/WebPage.cpp:
   19452         (WebKit::WebPage::installPageOverlay):
   19453         Clear the page of the previous page overlay.
   19454 
   19455         (WebKit::WebPage::uninstallPageOverlay):
   19456         Clear the page of the previous page overlay.
   19457 
   19458         * WebProcess/WebPage/WebPage.h:
   19459         The page overlay is now refcounted.
   19460 
   19461         * win/WebKit2.vcproj:
   19462         Remove files.
   19463 
   19464 2010-11-09  Sam Weinig  <sam (a] webkit.org>
   19465 
   19466         Fix windows build.
   19467 
   19468         * WebProcess/win/WebProcessWin.cpp:
   19469         (WebKit::WebProcess::platformSetCacheModel):
   19470 
   19471 2010-11-09  Sam Weinig  <sam (a] webkit.org>
   19472 
   19473         Reviewed by Adam Roben.
   19474 
   19475         Factor calculation of cache sizes based on cache model into shared function
   19476         https://bugs.webkit.org/show_bug.cgi?id=48706
   19477 
   19478         * WebProcess/WebProcess.cpp:
   19479         (WebKit::WebProcess::calculateCacheSizes):
   19480         * WebProcess/WebProcess.h:
   19481         * WebProcess/mac/WebProcessMac.mm:
   19482         (WebKit::volumeFreeSize):
   19483         (WebKit::WebProcess::platformSetCacheModel):
   19484         * WebProcess/win/WebProcessWin.cpp:
   19485         (WebKit::memorySize):
   19486         (WebKit::volumeFreeSize):
   19487         (WebKit::WebProcess::platformSetCacheModel):
   19488 
   19489 2010-11-09  Sam Weinig  <sam (a] webkit.org>
   19490 
   19491         Reviewed by Anders Carlsson.
   19492 
   19493         Context menus show up in the wrong place when the page is scrolled
   19494         https://bugs.webkit.org/show_bug.cgi?id=49264
   19495 
   19496         Convert the hitTestResult point into 'window' coordinates before sending over
   19497         to the UIProcess to show the menu.
   19498 
   19499         * WebProcess/WebPage/WebContextMenu.cpp:
   19500         (WebKit::WebContextMenu::show):
   19501         Convert to use message sender interface.
   19502 
   19503         (WebKit::WebContextMenu::itemSelected):
   19504         Remove unnecessary WebCore::'s.
   19505 
   19506 2010-11-09  Sam Weinig  <sam (a] webkit.org>
   19507 
   19508         Reviewed by Anders Carlsson.
   19509 
   19510         Send messages directly to the WebContext
   19511         https://bugs.webkit.org/show_bug.cgi?id=49262
   19512 
   19513         * Platform/CoreIPC/MessageID.h:
   19514         Temporarily add MessageClassWebContextLegacy.
   19515 
   19516         * Shared/CoreIPCSupport/WebContextMessageKinds.h:
   19517         Rename adding Legacy prefix.
   19518 
   19519         * UIProcess/WebContext.cpp:
   19520         (WebKit::WebContext::didNavigateWithNavigationData):
   19521         (WebKit::WebContext::didPerformClientRedirect):
   19522         (WebKit::WebContext::didPerformServerRedirect):
   19523         (WebKit::WebContext::didUpdateHistoryTitle):
   19524         (WebKit::WebContext::setCacheModel):
   19525         (WebKit::WebContext::addVisitedLink):
   19526         (WebKit::WebContext::addVisitedLinkHash):
   19527         (WebKit::WebContext::getPlugins):
   19528         (WebKit::WebContext::getPluginPath):
   19529         (WebKit::WebContext::didReceiveMessage):
   19530         (WebKit::WebContext::didReceiveSyncMessage):
   19531         * UIProcess/WebContext.h:
   19532         * UIProcess/WebContext.messages.in: Added.
   19533         * UIProcess/WebProcessProxy.cpp:
   19534         (WebKit::WebProcessProxy::getPluginProcessConnection):
   19535         (WebKit::WebProcessProxy::didReceiveMessage):
   19536         (WebKit::WebProcessProxy::didReceiveSyncMessage):
   19537         * UIProcess/WebProcessProxy.h:
   19538         * UIProcess/WebProcessProxy.messages.in:
   19539         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   19540         (WebKit::InjectedBundle::postMessage):
   19541         (WebKit::InjectedBundle::postSynchronousMessage):
   19542         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   19543         (WebKit::WebFrameLoaderClient::updateGlobalHistory):
   19544         (WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
   19545         (WebKit::WebFrameLoaderClient::setTitle):
   19546         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   19547         (WebKit::WebPlatformStrategies::populatePluginCache):
   19548         * WebProcess/WebPage/WebPage.cpp:
   19549         (WebKit::WebPage::createPlugin):
   19550         * WebProcess/WebProcess.cpp:
   19551         (WebKit::WebProcess::addVisitedLink):
   19552         Move context related messages to be sent directly to the context.
   19553 
   19554         * DerivedSources.make:
   19555         * DerivedSources.pro:
   19556         * WebKit2.pro:
   19557         * WebKit2.xcodeproj/project.pbxproj:
   19558         * win/WebKit2.vcproj:
   19559         Add new files.
   19560 
   19561 2010-11-09  Anders Carlsson  <andersca (a] apple.com>
   19562 
   19563         Reviewed by John Sullivan.
   19564 
   19565         Move the find page overlay code to FindController
   19566         https://bugs.webkit.org/show_bug.cgi?id=49266
   19567 
   19568         * WebProcess/WebPage/FindController.cpp:
   19569         (WebKit::FindController::~FindController):
   19570         (WebKit::FindController::rectsForTextMatches):
   19571         (WebKit::overlayBackgroundColor):
   19572         (WebKit::FindController::drawRect):
   19573         (WebKit::FindController::mouseEvent):
   19574         * WebProcess/WebPage/FindController.h:
   19575         * WebProcess/WebPage/FindPageOverlay.cpp:
   19576         (WebKit::FindPageOverlay::drawRect):
   19577         (WebKit::FindPageOverlay::mouseEvent):
   19578         * WebProcess/WebPage/FindPageOverlay.h:
   19579         * WebProcess/WebPage/PageOverlay.cpp:
   19580         (WebKit::PageOverlay::bounds):
   19581         (WebKit::PageOverlay::drawRect):
   19582         (WebKit::PageOverlay::mouseEvent):
   19583         * WebProcess/WebPage/PageOverlay.h:
   19584 
   19585 2010-11-09  Anders Carlsson  <andersca (a] apple.com>
   19586 
   19587         Reviewed by John Sullivan.
   19588 
   19589         Add a PageOverlay::Client object in preparation of not allowing subclassing of PageOverlay
   19590         https://bugs.webkit.org/show_bug.cgi?id=49263
   19591 
   19592         * WebProcess/WebPage/FindPageOverlay.cpp:
   19593         (WebKit::FindPageOverlay::FindPageOverlay):
   19594         Call the PageOverlay constructor.
   19595 
   19596         (WebKit::FindPageOverlay::drawRect):
   19597         (WebKit::FindPageOverlay::mouseEvent):
   19598         These now take a PageOverlay callback.
   19599 
   19600         * WebProcess/WebPage/FindPageOverlay.h:
   19601         FindPageOverlay now inherits from PageOverlay::Client.
   19602 
   19603         * WebProcess/WebPage/PageOverlay.cpp:
   19604         (WebKit::PageOverlay::create):
   19605         Add create function.
   19606 
   19607         (WebKit::PageOverlay::PageOverlay):
   19608         The constructor now takes a client.
   19609 
   19610         (WebKit::PageOverlay::drawRect):
   19611         (WebKit::PageOverlay::mouseEvent):
   19612         Call the client methods.
   19613 
   19614         * WebProcess/WebPage/PageOverlay.h:
   19615         Add Client class.
   19616 
   19617 2010-11-09  Dan Bernstein  <mitz (a] apple.com>
   19618 
   19619         Rubber-stamped by Darin Adler.
   19620 
   19621         <rdar://problem/8646456> WebProcess crashes reproducibly on complex text
   19622 
   19623         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
   19624         (InitWebCoreSystemInterface): Initialize wkCreateCTTypesetterWithUniCharProviderAndOptions
   19625         and wkCreateCTLineWithUniCharProvider.
   19626 
   19627 2010-11-09  Sam Weinig  <sam (a] webkit.org>
   19628 
   19629         Fix Windows build.
   19630 
   19631         * win/WebKit2.vcproj:
   19632 
   19633 2010-11-09  Sam Weinig  <sam (a] webkit.org>
   19634 
   19635         Fix Qt build.
   19636 
   19637         * WebKit2.pro:
   19638 
   19639 2010-11-09  Sam Weinig  <sam (a] webkit.org>
   19640 
   19641         Reviewed by Anders Carlsson.
   19642 
   19643         Windows Popup widget support (<select>)
   19644         <rdar://problem/8559439>
   19645         https://bugs.webkit.org/show_bug.cgi?id=48701
   19646 
   19647         Port WebCore's PopupMenuWin's implementation to work within the confines of WebKit2.
   19648         Since we currently can't draw text using WebCore in the UIProcess, this approach uses
   19649         the WebProcess to create two bitmaps representing the full popup menu (both unselected and 
   19650         selected) and sends them to the UIProcess to be drawn in an HWND.
   19651 
   19652         * Shared/BackingStore.h:
   19653         * Shared/cg/BackingStoreCG.cpp:
   19654         * Shared/qt/BackingStoreQt.cpp:
   19655 
   19656         Add new function to create a flipped graphics context from the backing store, 
   19657         and add additional parameters to paint, to allow more control of how the backing
   19658         store is painted into the destination context.
   19659 
   19660         * Shared/PlatformPopupMenuData.cpp: Added.
   19661         (WebKit::PlatformPopupMenuData::PlatformPopupMenuData):
   19662         (WebKit::PlatformPopupMenuData::encode):
   19663         (WebKit::PlatformPopupMenuData::decode):
   19664         * Shared/PlatformPopupMenuData.h: Added.
   19665         Add struct so platforms can send platform specific data to their popup menu implementations.
   19666 
   19667         * Shared/WebPopupItem.cpp:
   19668         (WebKit::WebPopupItem::WebPopupItem):
   19669         (WebKit::WebPopupItem::encode):
   19670         (WebKit::WebPopupItem::decode):
   19671         * Shared/WebPopupItem.h:
   19672         Add isLabel for each menu item.
   19673 
   19674         * UIProcess/FindIndicator.cpp:
   19675         (WebKit::FindIndicator::draw):
   19676         Update for new BackingStore::paint signature.
   19677 
   19678         * UIProcess/WebPageProxy.cpp:
   19679         (WebKit::WebPageProxy::showPopupMenu):
   19680         * UIProcess/WebPageProxy.h:
   19681         * UIProcess/WebPageProxy.messages.in:
   19682         * UIProcess/WebPopupMenuProxy.h:
   19683         * UIProcess/mac/WebPopupMenuProxyMac.h:
   19684         * UIProcess/mac/WebPopupMenuProxyMac.mm:
   19685         (WebKit::WebPopupMenuProxyMac::showPopupMenu):
   19686         * UIProcess/qt/WebPopupMenuProxyQt.cpp:
   19687         (WebKit::WebPopupMenuProxyQt::showPopupMenu):
   19688         * UIProcess/qt/WebPopupMenuProxyQt.h:
   19689         Pass through the new PlatformPopupMenuData.
   19690 
   19691         * UIProcess/win/WebPopupMenuProxyWin.cpp:
   19692         * UIProcess/win/WebPopupMenuProxyWin.h:
   19693         Port implementation from WebCore.
   19694 
   19695         * UIProcess/win/WebView.cpp:
   19696         (WebKit::WebView::createPopupMenuProxy):
   19697         Pass the WebView to the WebPopupMenuProxyWin.
   19698 
   19699         * WebProcess/Plugins/PluginProxy.cpp:
   19700         (WebKit::PluginProxy::paint):
   19701         (WebKit::PluginProxy::update):
   19702         Update for new BackingStore::paint signature.
   19703 
   19704         * WebProcess/WebCoreSupport/WebPopupMenu.cpp:
   19705         (WebKit::WebPopupMenu::populateItems): Add isLabel for each item.
   19706         (WebKit::WebPopupMenu::show): Give each platform a chance to add platform specific data.
   19707         * WebProcess/WebCoreSupport/WebPopupMenu.h:
   19708 
   19709         * WebProcess/WebCoreSupport/mac/WebPopupMenuMac.mm: Added.
   19710         (WebKit::WebPopupMenu::setUpPlatformData):
   19711         * WebProcess/WebCoreSupport/qt/WebPopupMenuQt.cpp: Added.
   19712         (WebKit::WebPopupMenu::setUpPlatformData):
   19713         Add stubbed out setUpPlatformData.
   19714 
   19715         * WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp: Added.
   19716         (WebKit::WebPopupMenu::setUpPlatformData):
   19717         Compute data needed in the UIProcess including generating the bitmaps.
   19718 
   19719         * WebKit2.pro:
   19720         * WebKit2.xcodeproj/project.pbxproj:
   19721         * win/WebKit2.vcproj:
   19722         Add new files.
   19723 
   19724 2010-11-09  Balazs Kelemen  <kbalazs (a] webkit.org>
   19725 
   19726         Reviewed by Csaba Osztrogonc.
   19727 
   19728         [Qt][WK2] ASSERT fail in fast/frames/lots-of-objects.html
   19729         https://bugs.webkit.org/show_bug.cgi?id=49253
   19730 
   19731         * Platform/qt/SharedMemoryQt.cpp:
   19732         (WebKit::SharedMemory::create): Do not assert
   19733         when the attach was unsuccessful but return with 0.
   19734 
   19735 2010-11-09  Balazs Kelemen  <kbalazs (a] webkit.org>
   19736 
   19737         Reviewed by Andreas Kling.
   19738 
   19739         [Qt][WK2] WebKitTestRunner is dead
   19740         https://bugs.webkit.org/show_bug.cgi?id=49129
   19741 
   19742         * Platform/qt/SharedMemoryQt.cpp:
   19743         (WebKit::SharedMemory::~SharedMemory):
   19744         Follow up fix: do not access the QSharedMemory object
   19745         in an assert if it has been deleted.
   19746 
   19747 2010-11-08  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>
   19748 
   19749         Reviewed by Andreas Kling.
   19750 
   19751         Send page scroll requests to the PageClient when scroll delegation is turned on
   19752         https://bugs.webkit.org/show_bug.cgi?id=49171
   19753 
   19754         Implement the IPC and API required for making scroll delegation work
   19755         with WebKit2. This is only used when you have tiling enabled.
   19756 
   19757         * UIProcess/API/qt/qwkpage.cpp:
   19758         (QWKPagePrivate::pageDidRequestScroll):
   19759         * UIProcess/API/qt/qwkpage.h:
   19760         * UIProcess/API/qt/qwkpage_p.h:
   19761         * UIProcess/PageClient.h:
   19762         * UIProcess/WebPageProxy.cpp:
   19763         (WebKit::WebPageProxy::pageDidRequestScroll):
   19764         * UIProcess/WebPageProxy.h:
   19765         * UIProcess/WebPageProxy.messages.in:
   19766         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   19767         (WebKit::WebChromeClient::delegatedScrollRequested):
   19768         * WebProcess/WebPage/WebPage.cpp:
   19769         (WebKit::WebPage::pageDidRequestScroll):
   19770         * WebProcess/WebPage/WebPage.h:
   19771 
   19772 2010-11-08  Ivan Krsti  <ike (a] apple.com>
   19773 
   19774         Reviewed by Mark Rowe.
   19775 
   19776         <rdar://problem/8531943> Enable partial symbolication for sandbox violations in WebProcess.
   19777 
   19778         * WebProcess/com.apple.WebProcess.sb:
   19779 
   19780 2010-11-08  Juha Savolainen  <juha.savolainen (a] weego.fi>
   19781 
   19782         Reviewed by Andreas Kling.
   19783 
   19784         [Qt] Added new methods to QWKHistory and made QWKHistoryItemPrivate to shared object.
   19785         https://bugs.webkit.org/show_bug.cgi?id=49063
   19786 
   19787         Added more functionality to the QWKHistory and changed QWKHistoryItemPrivate to shared object.
   19788         This is needed because we cannot delete the QWKHistoryItemPrivate pointer in destructor of QWKHistoryItem,
   19789         there may have other history instances which share same private implementation.
   19790 
   19791         * UIProcess/API/qt/qwkhistory.cpp:
   19792         (QWKHistoryItemPrivate::~QWKHistoryItemPrivate):
   19793         (QWKHistoryItem::QWKHistoryItem):
   19794         (QWKHistoryItem::QWKHistoryItem::operator=):
   19795         (QWKHistory::currentItem): Added
   19796         (QWKHistory::backItem): Added
   19797         (QWKHistory::forwardItem): Added
   19798         (QWKHistory::itemAt): Added
   19799         (QWKHistory::backItems): Added
   19800         (QWKHistory::forwardItems): Added
   19801         * UIProcess/API/qt/qwkhistory.h:
   19802         * UIProcess/API/qt/qwkhistory_p.h:
   19803 
   19804 2010-11-08  Anders Carlsson  <andersca (a] apple.com>
   19805 
   19806         Reviewed by Dan Bernstein.
   19807 
   19808         Add WKDownloadClient API
   19809         https://bugs.webkit.org/show_bug.cgi?id=49227
   19810 
   19811         * Shared/API/c/WKBase.h:
   19812         Add WKDownloadRef.
   19813 
   19814         * UIProcess/API/C/WKAPICast.h:
   19815         Add WKDownloadRef <-> DownloadProxy mapping.
   19816         
   19817         * UIProcess/API/C/WKContext.cpp:
   19818         (WKContextSetDownloadClient):
   19819         Initialize the download client.
   19820 
   19821         * UIProcess/API/C/WKContext.h:
   19822         Add new WKContextDownloadClient API.
   19823         
   19824         * UIProcess/API/C/WKDownload.cpp: Added.
   19825         * UIProcess/API/C/WKDownload.h:
   19826         Add WKDownload files.
   19827 
   19828         * UIProcess/Downloads/DownloadProxy.cpp:
   19829         (WebKit::DownloadProxy::didStart):
   19830         (WebKit::DownloadProxy::didCreateDestination):
   19831         (WebKit::DownloadProxy::didFinish):
   19832         Call down to the the WebDownloadClient.
   19833         
   19834         * UIProcess/Downloads/DownloadProxy.messages.in:
   19835         Rename DidBegin to DidStart.
   19836 
   19837         * UIProcess/WebContext.cpp:
   19838         (WebKit::WebContext::initializeDownloadClient):
   19839         Initialize the download client.
   19840 
   19841         * UIProcess/WebContext.h:
   19842         (WebKit::WebContext::downloadClient):
   19843         Add getter.
   19844 
   19845         * UIProcess/WebDownloadClient.cpp:
   19846         (WebKit::WebDownloadClient::didStart):
   19847         (WebKit::WebDownloadClient::didCreateDestination):
   19848         (WebKit::WebDownloadClient::didFinish):
   19849         Call the relevant WKContextDownloadClient functions.
   19850 
   19851         * WebKit2.pro:
   19852         * WebKit2.xcodeproj/project.pbxproj:
   19853         Add new files.
   19854 
   19855         * WebProcess/Downloads/Download.cpp:
   19856         (WebKit::Download::didStart):
   19857         * WebProcess/Downloads/Download.h:
   19858         * WebProcess/Downloads/mac/DownloadMac.mm:
   19859         (-[WKDownloadAsDelegate downloadDidBegin:]):
   19860         Rename Download::didBegin to Download::didStart.
   19861 
   19862         * win/WebKit2.vcproj:
   19863         Add new files.
   19864 
   19865 2010-11-08  Brady Eidson  <beidson (a] apple.com>
   19866 
   19867         Reviewed by Anders Carlsson.
   19868 
   19869         Part of https://bugs.webkit.org/show_bug.cgi?id=49222
   19870         Rename "WebContextMenuItem" to "WebContextMenuItemData"
   19871 
   19872         * WebKit2.pro:
   19873         * WebKit2.xcodeproj/project.pbxproj:
   19874         * win/WebKit2.vcproj:
   19875 
   19876         * Shared/WebContextMenuItem.cpp: Removed.
   19877         * Shared/WebContextMenuItem.h: Removed.
   19878         * Shared/WebContextMenuItemData.cpp: Copied from Shared/WebContextMenuItem.cpp.
   19879         (WebKit::WebContextMenuItemData::WebContextMenuItemData):
   19880         (WebKit::WebContextMenuItemData::encode):
   19881         (WebKit::WebContextMenuItemData::decode):
   19882         (WebKit::kitItems):
   19883         * Shared/WebContextMenuItemData.h: Copied from Shared/WebContextMenuItem.h.
   19884         (WebKit::WebContextMenuItemData::submenu):
   19885 
   19886         * UIProcess/WebContextMenuProxy.h:
   19887 
   19888         * UIProcess/WebPageProxy.cpp:
   19889         (WebKit::WebPageProxy::showContextMenu):
   19890         (WebKit::WebPageProxy::contextMenuItemSelected):
   19891         * UIProcess/WebPageProxy.h:
   19892         * UIProcess/WebPageProxy.messages.in:
   19893 
   19894         * UIProcess/mac/WebContextMenuProxyMac.h:
   19895         * UIProcess/mac/WebContextMenuProxyMac.mm:
   19896         (-[WebMenuTarget forwardContextMenuAction:]):
   19897         (WebKit::WebContextMenuProxyMac::contextMenuItemSelected):
   19898         (WebKit::nsMenuItemVector):
   19899         (WebKit::WebContextMenuProxyMac::populate):
   19900         (WebKit::WebContextMenuProxyMac::showContextMenu):
   19901 
   19902         * UIProcess/qt/WebContextMenuProxyQt.cpp:
   19903         (WebKit::WebContextMenuProxyQt::showContextMenu):
   19904         * UIProcess/qt/WebContextMenuProxyQt.h:
   19905 
   19906         * UIProcess/win/WebContextMenuProxyWin.cpp:
   19907         (WebKit::WebContextMenuProxyWin::showContextMenu):
   19908         * UIProcess/win/WebContextMenuProxyWin.h:
   19909 
   19910         * WebProcess/WebPage/WebContextMenu.cpp:
   19911         (WebKit::WebContextMenu::itemSelected):
   19912         * WebProcess/WebPage/WebContextMenu.h:
   19913 
   19914         * WebProcess/WebPage/WebPage.cpp:
   19915         (WebKit::WebPage::didSelectItemFromActiveContextMenu):
   19916         * WebProcess/WebPage/WebPage.h:
   19917         * WebProcess/WebPage/WebPage.messages.in:
   19918 
   19919 2010-11-08  Anders Carlsson  <andersca (a] apple.com>
   19920 
   19921         Reviewed by John Sullivan and Dan Bernstein.
   19922 
   19923         Find in Page: scrolling the page with the scrollbar while overlay is up dismisses the overlay
   19924         https://bugs.webkit.org/show_bug.cgi?id=49219
   19925         <rdar://problem/8569550>
   19926 
   19927         * WebProcess/WebPage/FindPageOverlay.cpp:
   19928         (WebKit::FindPageOverlay::bounds):
   19929         Return the bounds of the find page overlay, excluding any scrollbars.
   19930 
   19931         (WebKit::FindPageOverlay::drawRect):
   19932         Call bounds.
   19933 
   19934         (WebKit::FindPageOverlay::mouseEvent):
   19935         Only dismiss the find UI if the mouse down event happens inside the overlay bounds.
   19936 
   19937 2010-11-08  Anders Carlsson  <andersca (a] apple.com>
   19938 
   19939         Reviewed by Adam Roben.
   19940 
   19941         Add the ability to send messages to DownloadProxy objects
   19942         https://bugs.webkit.org/show_bug.cgi?id=49213
   19943 
   19944         * DerivedSources.make:
   19945         * DerivedSources.pro:
   19946         Add Download.messages.in.
   19947 
   19948         * Platform/CoreIPC/MessageID.h:
   19949         Add MessageClassDownloadProxy message class.
   19950 
   19951         * Platform/CoreIPC/MessageSender.h:
   19952         Include Connection.h directly since it's required.
   19953 
   19954         * UIProcess/Downloads/DownloadProxy.cpp:
   19955         (WebKit::DownloadProxy::didBegin):
   19956         (WebKit::DownloadProxy::didCreateDestination):
   19957         (WebKit::DownloadProxy::didFinish):
   19958         Add stubs.
   19959 
   19960         * UIProcess/Downloads/DownloadProxy.messages.in: Added.
   19961 
   19962         * UIProcess/WebContext.cpp:
   19963         (WebKit::WebContext::didReceiveMessage):
   19964         Handle DownloadProxy messages.
   19965 
   19966         * UIProcess/WebProcessProxy.cpp:
   19967         (WebKit::WebProcessProxy::didReceiveMessage):
   19968         Hand DownloadProxy messages off to the context.
   19969 
   19970         * WebKit2.pro:
   19971         * WebKit2.xcodeproj/project.pbxproj:
   19972         Add new files.
   19973 
   19974         * WebProcess/Downloads/Download.cpp:
   19975         (WebKit::Download::didBegin):
   19976         (WebKit::Download::didReceiveData):
   19977         (WebKit::Download::didCreateDestination):
   19978         (WebKit::Download::didFinish):
   19979         Send messages.
   19980 
   19981         * WebProcess/Downloads/mac/DownloadMac.mm:
   19982         (-[WKDownloadAsDelegate download:didCreateDestination:]):
   19983         Call Download::didCreateDestination.
   19984 
   19985         * win/WebKit2.vcproj:
   19986         Add new files.
   19987 
   19988 2010-11-08  Anders Carlsson  <andersca (a] apple.com>
   19989 
   19990         Reviewed by Adam Roben.
   19991 
   19992         Add DownloadProxy object
   19993         https://bugs.webkit.org/show_bug.cgi?id=49211
   19994 
   19995         DownloadProxy will be the implementation of the forthcoming WKDownloadRef object.
   19996 
   19997         * Shared/APIObject.h:
   19998         Add TypeDownload.
   19999 
   20000         * UIProcess/Downloads/DownloadProxy.cpp:
   20001         (WebKit::generateDownloadID):
   20002         Generate a unique download ID.
   20003 
   20004         (WebKit::DownloadProxy::invalidate):
   20005         Null out the web context.
   20006 
   20007         * UIProcess/Downloads/DownloadProxy.h:
   20008         (WebKit::WebContext::processDidClose):
   20009         Invalidate all downloads.
   20010 
   20011         (WebKit::WebContext::createDownloadProxy):
   20012         Create a WebDownload object.
   20013 
   20014         * UIProcess/WebPageProxy.cpp:
   20015         (WebKit::WebPageProxy::receivedPolicyDecision):
   20016         Call createDownloadProxy instead.
   20017 
   20018         * WebKit2.pro:
   20019         * WebKit2.xcodeproj/project.pbxproj:
   20020         * win/WebKit2.vcproj:
   20021         Add new files.
   20022 
   20023         * win/WebKit2Common.vsprops:
   20024         Add new include path.
   20025 
   20026 2010-11-08  Alexey Proskuryakov  <ap (a] apple.com>
   20027 
   20028         Reviewed by Darin Adler.
   20029 
   20030         https://bugs.webkit.org/show_bug.cgi?id=49201
   20031         Crash when closing a page
   20032 
   20033         Handle null frame by passing a 0 frame id (normal ones start from 1).
   20034 
   20035         * UIProcess/WebPageProxy.cpp:
   20036         (WebKit::WebPageProxy::focusedFrameChanged):
   20037         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   20038         (WebKit::WebChromeClient::focusedFrameChanged):
   20039 
   20040 2010-11-08  Nate Chapin  <japhet (a] chromium.org>
   20041 
   20042         Reviewed by Alexey Proskuryakov.
   20043 
   20044         Function call update for 
   20045         https://bugs.webkit.org/show_bug.cgi?id=27165.
   20046 
   20047         * WebProcess/Plugins/PluginView.cpp:
   20048         (WebKit::PluginView::Stream::start):
   20049 
   20050 2010-11-08  Anders Carlsson  <andersca (a] apple.com>
   20051 
   20052         Reviewed by Adam Roben.
   20053 
   20054         NPClass::construct and NPClass::invokeDefault never called with out-of-process plug-ins in WebKit2
   20055         https://bugs.webkit.org/show_bug.cgi?id=49198
   20056 
   20057         * Shared/Plugins/NPObjectMessageReceiver.cpp:
   20058         (WebKit::NPObjectMessageReceiver::invokeDefault):
   20059         Call NPClass::invokeDefault.
   20060 
   20061         (WebKit::NPObjectMessageReceiver::construct):
   20062         Call NPClass::construct
   20063         
   20064         * Shared/Plugins/NPObjectMessageReceiver.messages.in:
   20065         Add InvokeDefault and Construct messages.
   20066 
   20067         * Shared/Plugins/NPObjectProxy.cpp:
   20068         (WebKit::NPObjectProxy::invokeDefault):
   20069         Send the InvokeDefault message.
   20070 
   20071         (WebKit::NPObjectProxy::construct):
   20072         Send the Construct message.
   20073 
   20074         (WebKit::NPObjectProxy::NP_InvokeDefault):
   20075         Call NPObjectProxy::invokeDefault.
   20076 
   20077         (WebKit::NPObjectProxy::NP_Construct):
   20078         Call NPObjectProxy::construct.
   20079 
   20080 2010-11-08  Anders Carlsson  <andersca (a] apple.com>
   20081 
   20082         Reviewed by Dan Bernstein.
   20083 
   20084         Plug-in views should not assume that plugins are RenderEmbeddedObjects
   20085         https://bugs.webkit.org/show_bug.cgi?id=49196
   20086         <rdar://problem/8638467>
   20087 
   20088         * WebProcess/Plugins/PluginView.cpp:
   20089         (WebKit::PluginView::pluginProcessCrashed):
   20090 
   20091 2010-11-08  Anders Carlsson  <andersca (a] apple.com>
   20092 
   20093         Reviewed by Adam Roben.
   20094 
   20095         NPN_Evaluate doesn't work with out-of-process plugins in WebKit2
   20096         https://bugs.webkit.org/show_bug.cgi?id=49193
   20097 
   20098         * PluginProcess/PluginControllerProxy.cpp:
   20099         (WebKit::PluginControllerProxy::evaluate):
   20100         Send an Evaluate message.
   20101 
   20102         * WebProcess/Plugins/PluginProxy.cpp:
   20103         (WebKit::PluginProxy::evaluate):
   20104         Call Evaluate on the plug-in proxy.
   20105 
   20106         * WebProcess/Plugins/PluginProxy.h:
   20107         * WebProcess/Plugins/PluginProxy.messages.in:
   20108         Add Evaluate message.
   20109 
   20110 2010-11-08  Anders Carlsson  <andersca (a] apple.com>
   20111 
   20112         Reviewed by John Sullivan.
   20113 
   20114         Correctly convert NPObjectProxy to NPVariantData
   20115         https://bugs.webkit.org/show_bug.cgi?id=49190
   20116 
   20117         * Shared/Plugins/NPObjectMessageReceiver.h:
   20118         (WebKit::NPObjectMessageReceiver::npObject):
   20119         Add NPObject getter.
   20120 
   20121         * Shared/Plugins/NPObjectProxy.h:
   20122         (WebKit::NPObjectProxy::npObjectID):
   20123         Add NPObjectID getter.
   20124 
   20125         * Shared/Plugins/NPRemoteObjectMap.cpp:
   20126         (WebKit::NPRemoteObjectMap::npVariantToNPVariantData):
   20127         Handle the case where the NPObject is an NPObjectProxy.
   20128 
   20129         (WebKit::NPRemoteObjectMap::npVariantDataToNPVariant):
   20130         Handle NPVariantData::LocalNPObjectID.
   20131 
   20132         * Shared/Plugins/NPVariantData.cpp:
   20133         (WebKit::NPVariantData::makeRemoteNPObjectID):
   20134         * Shared/Plugins/NPVariantData.h:
   20135         New function for creating an NPVariantData that contains a remote NPObject ID.
   20136 
   20137 2010-11-08  Alexey Proskuryakov  <ap (a] apple.com>
   20138 
   20139         Reviewed by Darin Adler.
   20140 
   20141         https://bugs.webkit.org/show_bug.cgi?id=48685
   20142         Notify UI process about focused frame
   20143 
   20144         Handle notifications, store the current one in WebPageProxy in UI process.
   20145 
   20146         * UIProcess/API/C/WKPage.cpp:
   20147         (WKPageGetFocusedFrame):
   20148         * UIProcess/API/C/WKPage.h:
   20149         * UIProcess/WebPageProxy.cpp:
   20150         (WebKit::WebPageProxy::focusedFrameChanged):
   20151         * UIProcess/WebPageProxy.h:
   20152         (WebKit::WebPageProxy::focusedFrame):
   20153         * UIProcess/WebPageProxy.messages.in:
   20154         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   20155         (WebKit::WebChromeClient::focusedFrameChanged):
   20156         * WebProcess/WebCoreSupport/WebChromeClient.h:
   20157 
   20158 2010-11-07  Adam Barth  <abarth (a] webkit.org>
   20159 
   20160         Reviewed by Eric Seidel.
   20161 
   20162         Rename Cache to MemoryCache
   20163         https://bugs.webkit.org/show_bug.cgi?id=49159
   20164 
   20165         * WebProcess/WebProcess.cpp:
   20166         * WebProcess/mac/WebProcessMac.mm:
   20167         * WebProcess/win/WebProcessWin.cpp:
   20168 
   20169 2010-11-06  Balazs Kelemen  <kbalazs (a] webkit.org>
   20170 
   20171         Reviewed by Andreas Kling.
   20172 
   20173         [Qt][WK2] WebKitTestRunner is dead
   20174         https://bugs.webkit.org/show_bug.cgi?id=49129
   20175 
   20176         * Platform/qt/SharedMemoryQt.cpp:
   20177         (WebKit::SharedMemory::~SharedMemory):
   20178         Avoid double deletion when deleteLater has
   20179         already been called.
   20180 
   20181 2010-11-05  Chris Marrin  <cmarrin (a] apple.com>
   20182 
   20183         Reviewed by Simon Fraser.
   20184 
   20185         suspendAnimations/resumeAnimations not present in WebKit2
   20186         https://bugs.webkit.org/show_bug.cgi?id=49109
   20187 
   20188         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   20189         (WKBundleFrameSuspendAnimations):
   20190         (WKBundleFrameResumeAnimations):
   20191         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
   20192         * WebProcess/WebPage/WebFrame.cpp:
   20193         (WebKit::WebFrame::suspendAnimations):
   20194         (WebKit::WebFrame::resumeAnimations):
   20195         * WebProcess/WebPage/WebFrame.h:
   20196 
   20197 2010-11-05  Anders Carlsson  <andersca (a] apple.com>
   20198 
   20199         Reviewed by Darin Adler.
   20200 
   20201         WebProcess won't kill itself if UIProcess goes away while WebProcess is spinning
   20202         https://bugs.webkit.org/show_bug.cgi?id=49090
   20203         <rdar://problem/7834575>
   20204 
   20205         * Platform/CoreIPC/Connection.cpp:
   20206         (CoreIPC::Connection::connectionDidClose):
   20207         Call Client::didCloseOnConnectionWorkQueue.
   20208 
   20209         * Platform/CoreIPC/Connection.h:
   20210         (CoreIPC::Connection::Client::didCloseOnConnectionWorkQueue):
   20211         Add new client function. Will be called on the connection work queue when the connection is closed.
   20212 
   20213         * Platform/WorkItem.h:
   20214         (FunctionWorkItem0::FunctionWorkItem0):
   20215         (FunctionWorkItem0::execute):
   20216         (WorkItem::create):
   20217         Add a new WorkItem subclass that will invoke a C function.
   20218 
   20219         * Platform/WorkQueue.h:
   20220         * Platform/mac/WorkQueueMac.cpp:
   20221         (WorkQueue::scheduleWorkAfterDelay):
   20222         New function which will schedule the given work item to be executed in at least 'delay' seconds.
   20223 
   20224         * Platform/qt/WorkQueueQt.cpp:
   20225         (WorkQueue::scheduleWorkAfterDelay):
   20226         Add empty stub.
   20227         
   20228         * Platform/win/WorkQueueWin.cpp:
   20229         (WorkQueue::scheduleWorkAfterDelay):
   20230         Ditto.
   20231 
   20232         * PluginProcess/PluginProcess.h:
   20233         Derive from ChildProcess.
   20234 
   20235         * Shared/ChildProcess.cpp: Added.
   20236         (WebKit::ChildProcess::ChildProcess):
   20237         (WebKit::ChildProcess::~ChildProcess):
   20238         (WebKit::watchdogCallback):
   20239         Call _exit.
   20240 
   20241         (WebKit::ChildProcess::didCloseOnConnectionWorkQueue):
   20242         When the connection is closed, schedule a work item to be run in 10 seconds. If the process hasn't
   20243         exited normally by then, we'll exit.
   20244 
   20245         * Shared/ChildProcess.h: 
   20246         Add new ChildProcess class which is a common base class of WebProcess and PluginProcess and which contains
   20247         the watchdog timer logic.
   20248 
   20249         * WebKit2.pro:
   20250         * WebKit2.xcodeproj/project.pbxproj:
   20251         Add new files.
   20252 
   20253         * WebProcess/WebProcess.h:
   20254         Derive from ChildProcess.
   20255 
   20256         * win/WebKit2.vcproj:
   20257         Add new files.
   20258 
   20259 2010-11-05  Adam Roben  <aroben (a] apple.com>
   20260 
   20261         Implement PluginInfoStore::shouldUsePlugin on Windows
   20262 
   20263         Fixes <http://webkit.org/b/43509> <rdar://problem/8273822> WebKit2
   20264         should refuse to load the same plugins that old-WebKit refuses to load
   20265 
   20266         Reviewed by Anders Carlsson.
   20267 
   20268         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
   20269         (WebKit::fileVersion): Helper function to construct a 64-bit file
   20270         version from two 32-bit numbers.
   20271         (WebKit::PluginInfoStore::getPluginInfo): Ported code from
   20272         WebCore::PluginPackage::fetchInfo to get the plugin's version. We now
   20273         store it in Plugin::fileVersion.
   20274 
   20275         (WebKit::isOldWindowsMediaPlayerPlugin):
   20276         (WebKit::isNewWindowsMediaPlayerPlugin):
   20277         Added these helpers. The code came from
   20278         WebCore::PluginDatabase::getPluginPathsInDirectories.
   20279 
   20280         (WebKit::PluginInfoStore::shouldUsePlugin): Implemented. The code was
   20281         ported from WebCore::PluginDatabase::getPluginPathsInDirectories and
   20282         WebCore::PluginPackage::isPluginBlacklisted.
   20283 
   20284 2010-11-05  Adam Roben  <aroben (a] apple.com>
   20285 
   20286         Operate on m_plugins directly in PluginInfoStore::shouldUsePlugin
   20287 
   20288         We'll need to operate on m_plugins if we ever want to unload an
   20289         already-loaded plugin before loading the new one.
   20290 
   20291         Fixes <http://webkit.org/b/49076> loadedPlugins parameter to
   20292         PluginInfoStore::shouldUsePlugin is redundant
   20293 
   20294         Reviewed by Anders Carlsson.
   20295 
   20296         * UIProcess/Plugins/PluginInfoStore.cpp:
   20297         (WebKit::PluginInfoStore::loadPlugin):
   20298         * UIProcess/Plugins/PluginInfoStore.h:
   20299         * UIProcess/Plugins/gtk/PluginInfoStoreGtk.cpp:
   20300         (WebKit::PluginInfoStore::shouldUsePlugin):
   20301         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
   20302         (WebKit::PluginInfoStore::shouldUsePlugin):
   20303         * UIProcess/Plugins/qt/PluginInfoStoreQt.cpp:
   20304         (WebKit::PluginInfoStore::shouldUsePlugin):
   20305         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
   20306         (WebKit::PluginInfoStore::shouldUsePlugin):
   20307         Removed the loadedPlugins parameter from shouldUsePlugin. The single
   20308         implementation (Mac) now uses m_plugins directly.
   20309 
   20310 2010-11-05  Anders Carlsson  <andersca (a] apple.com>
   20311 
   20312         Reviewed by Adam Roben.
   20313 
   20314         Implement pluginElementNPObject
   20315         https://bugs.webkit.org/show_bug.cgi?id=49077
   20316 
   20317         * PluginProcess/PluginControllerProxy.cpp:
   20318         (WebKit::PluginControllerProxy::pluginElementNPObject):
   20319         Send the GetPluginElementNPObject message.
   20320 
   20321         * WebProcess/Plugins/PluginProxy.cpp:
   20322         (WebKit::PluginProxy::getPluginElementNPObject):
   20323         Get the plug-in element NPObject and expose it to the other side of the connection.
   20324 
   20325         * WebProcess/Plugins/PluginProxy.messages.in:
   20326         Add GetPluginElementNPObject.
   20327 
   20328 2010-11-04  Anders Carlsson  <andersca (a] apple.com>
   20329 
   20330         Reviewed by Oliver Hunt.
   20331 
   20332         Implement NP_RemoveProperty and NP_Enumerate
   20333         https://bugs.webkit.org/show_bug.cgi?id=49046
   20334 
   20335         * Shared/Plugins/NPObjectMessageReceiver.cpp:
   20336         (WebKit::NPObjectMessageReceiver::removeProperty):
   20337         Call the removeProperty NPClass function.
   20338 
   20339         (WebKit::NPObjectMessageReceiver::enumerate):
   20340         Call the enumerate NPClass function.
   20341 
   20342         * Shared/Plugins/NPObjectMessageReceiver.messages.in:
   20343         Add RemoveProperty and Enumerate messages.
   20344 
   20345         * Shared/Plugins/NPObjectProxy.cpp:
   20346         (WebKit::NPObjectProxy::removeProperty):
   20347         Send the RemoveProperty message.
   20348 
   20349         (WebKit::NPObjectProxy::enumerate):
   20350         Send the Enumerate message.
   20351 
   20352         (WebKit::NPObjectProxy::NP_RemoveProperty):
   20353         Call removeProperty.
   20354 
   20355         (WebKit::NPObjectProxy::NP_Enumerate):
   20356         Call enumerate.
   20357 
   20358 2010-11-05  Sam Weinig  <sam (a] webkit.org>
   20359 
   20360         Fix failing python tests.
   20361 
   20362         * Scripts/webkit2/messages.py:
   20363         * Scripts/webkit2/messages_unittest.py:
   20364 
   20365 2010-11-05  Sam Weinig  <sam (a] webkit.org>
   20366 
   20367         Reviewed by Adam Roben..
   20368 
   20369         Generate the messages sent to the WebProcessProxy
   20370         https://bugs.webkit.org/show_bug.cgi?id=49062
   20371 
   20372         * Platform/CoreIPC/MessageID.h:
   20373         Temporarily add MessageClassWebProcessProxyLegacy while we still can't
   20374         support GetPluginProcessConnection (and deferred sync replies) in the
   20375         general mechanism.
   20376 
   20377         * Scripts/webkit2/messages.py:
   20378         Add support for WebCore::PluginData and WebKit::WebNavigationDataStore.
   20379 
   20380         * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:
   20381         Remove now unused kinds. Rename to MessageClassWebProcessProxyLegacy.
   20382 
   20383         * UIProcess/WebProcessProxy.cpp:
   20384         (WebKit::WebProcessProxy::getPluginPath):
   20385         (WebKit::WebProcessProxy::addBackForwardItem):
   20386         (WebKit::WebProcessProxy::didNavigateWithNavigationData):
   20387         (WebKit::WebProcessProxy::didPerformClientRedirect):
   20388         (WebKit::WebProcessProxy::didPerformServerRedirect):
   20389         (WebKit::WebProcessProxy::didUpdateHistoryTitle):
   20390         (WebKit::WebProcessProxy::didReceiveMessage):
   20391         (WebKit::WebProcessProxy::didReceiveSyncMessage):
   20392         (WebKit::WebProcessProxy::didDestroyFrame):
   20393         * UIProcess/WebProcessProxy.h:
   20394         * UIProcess/WebProcessProxy.messages.in: Added.
   20395         Move implementations to their own functions.
   20396 
   20397         * WebProcess/Plugins/PluginProcessConnectionManager.cpp:
   20398         (WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
   20399         Change to use WebProcessProxyLegacyMessage.
   20400 
   20401         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   20402         (WebKit::WebFrameLoaderClient::updateGlobalHistory):
   20403         (WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
   20404         (WebKit::WebFrameLoaderClient::setTitle):
   20405         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   20406         (WebKit::WebPlatformStrategies::populatePluginCache):
   20407         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   20408         (WebKit::updateBackForwardItem):
   20409         * WebProcess/WebPage/WebPage.cpp:
   20410         (WebKit::WebPage::createPlugin):
   20411         * WebProcess/WebProcess.cpp:
   20412         (WebKit::WebProcess::addVisitedLink):
   20413         (WebKit::WebProcess::removeWebFrame):
   20414         Use generated messages.
   20415 
   20416         * DerivedSources.make:
   20417         * DerivedSources.pro:
   20418         * WebKit2.pro:
   20419         * WebKit2.xcodeproj/project.pbxproj:
   20420         * win/WebKit2.vcproj:
   20421         Add new files.
   20422 
   20423 2010-11-04  Adam Roben  <aroben (a] apple.com>
   20424 
   20425         Use a window region to clip windowed plugins
   20426 
   20427         Fixes <http://webkit.org/b/49024> <rdar://problem/8487847> Windowed
   20428         plugins aren't clipped in WebKit2 on Windows
   20429 
   20430         Reviewed by Jon Honeycutt.
   20431 
   20432         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
   20433         (WebKit::registerPluginView): Removed the CS_PARENTDC style. This style
   20434         makes Windows ignore the window region and always clip to the parent
   20435         window. Also pass WebKit.dll's HINSTANCE as part of the WNDCLASSW
   20436         struct so that the window class will be specific to WebKit.dll rather
   20437         than to WebKit2WebProcess.exe. This is useful for testing, but also
   20438         more pedantically correct.
   20439         (WebKit::setWindowRegion): Helper function to set a window region and
   20440         deal with ownership of the HRGN correctly.
   20441         (WebKit::NetscapePlugin::platformGeometryDidChange): Make an HRGN that
   20442         corresponds to m_clipRect and set it on the plugin's window.
   20443 
   20444 2010-11-05  Balazs Kelemen  <kbalazs (a] webkit.org>
   20445 
   20446         Reviewed by Andreas Kling.
   20447 
   20448         [Qt][WK2] Left over files and shared memory segments
   20449         https://bugs.webkit.org/show_bug.cgi?id=48985
   20450 
   20451         * Platform/qt/SharedMemoryQt.cpp:
   20452         (WebKit::SharedMemory::create): Force deletion of the QSharedMemory
   20453         object on terminate by connecting QCoreApplication::aboutToQuit with
   20454         deleteLater. Add the object to the CrashHandler as well to release the
   20455         shared memory segment even on crash.
   20456         (WebKit::SharedMemory::~SharedMemory):
   20457         * Shared/qt/CrashHandler.cpp: Added.
   20458         CrashHandler has a container for QObjects that we want to
   20459         destroy on crash. When we got a signal that we interpret as
   20460         a crash then it destroys those objects.
   20461         (WebKit::CrashHandler::CrashHandler):
   20462         (WebKit::CrashHandler::signalHandler):
   20463         (WebKit::CrashHandler::deleteObjects):
   20464         * Shared/qt/CrashHandler.h: Added.
   20465         (WebKit::CrashHandler::instance):
   20466         (WebKit::CrashHandler::didDelete):
   20467         (WebKit::CrashHandler::markForDeletionOnCrash):
   20468         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   20469         (WebKit::ProcessLauncherHelper::ProcessLauncherHelper):
   20470         Add the object itself to the CrashHandler to close the QLocalServer
   20471         even on crash. Without that the QLocalServer leaves over socket files on the disk.
   20472         (WebKit::ProcessLauncherHelper::~ProcessLauncherHelper):
   20473         * WebKit2.pro:
   20474 
   20475 2010-11-04  Jia Pu  <jpu (a] apple.com>
   20476 
   20477         Reviewed by Dan Bernstein.
   20478 
   20479         reversion bubble in WebViews
   20480         https://bugs.webkit.org/show_bug.cgi?id=47630
   20481         <rdar://problem/8530960>
   20482 
   20483         This patch is to add reversion to correction panel. Please see WebCore/ChangeLog for detail.
   20484 
   20485         * WebProcess/WebCoreSupport/WebEditorClient.h: Adopted new signature of base class method.
   20486         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm: Ditto.
   20487         (WebKit::WebEditorClient::showCorrectionPanel):
   20488         (WebKit::WebEditorClient::dismissCorrectionPanel):
   20489 
   20490 2010-11-04  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>
   20491 
   20492         Reviewed by David Hyatt.
   20493 
   20494         Delegate scrolling via a separate method
   20495         https://bugs.webkit.org/show_bug.cgi?id=48988
   20496 
   20497         Add delegatedScrollRequested method to WebChromeClient,
   20498         which is only used in conjunging with tiling, and thus ifdef'ed.
   20499 
   20500         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   20501         (WebKit::WebChromeClient::delegatedScrollRequested):
   20502         * WebProcess/WebCoreSupport/WebChromeClient.h:
   20503 
   20504 2010-11-03  Enrica Casucci  <enrica (a] apple.com>
   20505 
   20506         Reviewed by Alexey Proskuryakov.
   20507 
   20508         Need a way to test in WebKit2 whether a form field contains marked text
   20509         <rdar://problem/8555293>
   20510         https://bugs.webkit.org/show_bug.cgi?id=48969
   20511         
   20512         Added a selection changed notification from the Web process to the UI process.
   20513         The message being sent contains information about the current selection.
   20514         Event though for this specific bug the only information required is the marked text,
   20515         I've added other selection information that will be needed to support IME.
   20516         All the stubbed methods are required methods by the NSTextInput protocol.
   20517         
   20518         * UIProcess/API/mac/PageClientImpl.h:
   20519         * UIProcess/API/mac/PageClientImpl.mm:
   20520         (WebKit::PageClientImpl::selectionChanged): Added.
   20521         * UIProcess/API/mac/WKView.h:
   20522         * UIProcess/API/mac/WKView.mm:
   20523         (-[WKView initWithFrame:pageNamespaceRef:]): Added initialization of new members.
   20524         (-[WKView _selectionChanged:isEditable:isPassword:hasMarkedText:]): Stores the values from
   20525         the selection changed message.
   20526         (-[WKView selectedRange]): Added stub.
   20527         (-[WKView hasMarkedText]): Implemented.
   20528         (-[WKView unmarkText]): Added stub.
   20529         (-[WKView validAttributesForMarkedText]): Added stub.
   20530         (-[WKView setMarkedText:selectedRange:]): Added stub.
   20531         (-[WKView markedRange]): Added stub.
   20532         (-[WKView attributedSubstringFromRange:]): Added stub.
   20533         (-[WKView conversationIdentifier]): Added stub.
   20534         (-[WKView characterIndexForPoint:]): Added stub.
   20535         (-[WKView firstRectForCharacterRange:]): Added stub.
   20536         * UIProcess/API/mac/WKViewInternal.h:
   20537         * UIProcess/API/qt/qwkpage.cpp:
   20538         (QWKPagePrivate::selectionChanged): Added.
   20539         * UIProcess/API/qt/qwkpage_p.h:
   20540         * UIProcess/PageClient.h:
   20541         * UIProcess/WebPageProxy.cpp:
   20542         (WebKit::WebPageProxy::didSelectionChange): New message handler.
   20543         * UIProcess/WebPageProxy.h:
   20544         * UIProcess/WebPageProxy.messages.in:
   20545         * UIProcess/win/WebView.cpp:
   20546         (WebKit::WebView::selectionChanged): Added.
   20547         * UIProcess/win/WebView.h:
   20548         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   20549         (WebKit::WebEditorClient::respondToChangedSelection): Added implementation.
   20550 
   20551 2010-11-04  Balazs Kelemen  <kbalazs (a] webkit.org>
   20552 
   20553         Reviewed by Andreas Kling.
   20554 
   20555         [Qt][WK2] Cleanup UpdateChunk and MappedMemoryPool
   20556         https://bugs.webkit.org/show_bug.cgi?id=48994
   20557 
   20558         * Platform/qt/MappedMemoryPool.cpp:
   20559         (WebKit::MappedMemoryPool::mapMemory):
   20560         Removed argument with default value that was always
   20561         used with the default value.
   20562         (WebKit::MappedMemoryPool::mapFile): Ditto and
   20563         add some asserts.
   20564         * Platform/qt/MappedMemoryPool.h:
   20565         Encapsulating MappedMemory and remove the unused
   20566         MappedMemoryPool::searchForMappedMemory method.
   20567         (WebKit::MappedMemory::mappedFile):
   20568         (WebKit::MappedMemory::markFree):
   20569         (WebKit::MappedMemory::data):
   20570         (WebKit::MappedMemory::MappedMemory):
   20571         (WebKit::MappedMemory::markUsed):
   20572         (WebKit::MappedMemory::mapSize):
   20573         (WebKit::MappedMemory::isFree):
   20574         (WebKit::MappedMemoryPool::instance):
   20575         * Shared/qt/UpdateChunk.cpp:
   20576         Removed the unused data method besides other cleanups.
   20577         (WebKit::UpdateChunk::UpdateChunk):
   20578         (WebKit::UpdateChunk::encode):
   20579         (WebKit::UpdateChunk::decode):
   20580         (WebKit::UpdateChunk::createImage):
   20581         * Shared/qt/UpdateChunk.h:
   20582 
   20583 2010-11-04  Andreas Kling  <kling (a] webkit.org>
   20584 
   20585         Reviewed by Tor Arne Vestb.
   20586 
   20587         [Qt] Add a stub WebContextMenuProxy
   20588 
   20589         This is the Qt equivalent of r71333.
   20590 
   20591         * UIProcess/API/qt/qwkpage.cpp:
   20592         (QWKPagePrivate::createContextMenuProxy):
   20593         * UIProcess/qt/WebContextMenuProxyQt.cpp: Added.
   20594         (WebKit::WebContextMenuProxyQt::WebContextMenuProxyQt):
   20595         (WebKit::WebContextMenuProxyQt::create):
   20596         (WebKit::WebContextMenuProxyQt::showContextMenu):
   20597         (WebKit::WebContextMenuProxyQt::hideContextMenu):
   20598         * UIProcess/qt/WebContextMenuProxyQt.h: Added.
   20599         * WebKit2.pro:
   20600 
   20601 2010-11-04  Adam Roben  <aroben (a] apple.com>
   20602 
   20603         Add a do-nothing WebContextMenuProxy implementation on Windows
   20604 
   20605         Fixes <http://webkit.org/b/48992> REGRESSION (r71041): Crash in
   20606         WebPageProxy::showContextMenu when right-clicking in WebKit2 on
   20607         Windows
   20608 
   20609         Reviewed by Dan Bernstein.
   20610 
   20611         * UIProcess/win/WebContextMenuProxyWin.cpp: Added.
   20612         (WebKit::WebContextMenuProxyWin::WebContextMenuProxyWin):
   20613         (WebKit::WebContextMenuProxyWin::create):
   20614         (WebKit::WebContextMenuProxyWin::showContextMenu):
   20615         (WebKit::WebContextMenuProxyWin::hideContextMenu):
   20616         * UIProcess/win/WebContextMenuProxyWin.h: Added.
   20617         Just stubbed-out this class.
   20618 
   20619         * UIProcess/win/WebView.cpp:
   20620         (WebKit::WebView::createContextMenuProxy): Create a new
   20621         WebContextMenuProxyWin and return it. Returning 0 results in a crash.
   20622 
   20623         * win/WebKit2.vcproj: Added WebContextMenuProxyWin.
   20624 
   20625 2010-11-04  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   20626 
   20627         Reviewed by Andreas Kling..
   20628 
   20629         [Qt] Build Webkit2 both in debug and release on Mac
   20630 
   20631         On Mac OS X we build QtWebKit in both debug and release, so
   20632         we need to also build the webkit2 library in both configs.
   20633 
   20634         * WebKit2.pro:
   20635 
   20636 2010-11-04  Adam Roben  <aroben (a] apple.com>
   20637 
   20638         Remove lame puts()s from WebPageProxy
   20639 
   20640         Rubber-stamped by Anders Carlsson.
   20641 
   20642         * UIProcess/WebPageProxy.cpp:
   20643         (WebKit::WebPageProxy::loadURL):
   20644         (WebKit::WebPageProxy::loadURLRequest):
   20645 
   20646 2010-11-03  Alice Liu  <alice.liu (a] apple.com>
   20647 
   20648         Fix clang++ build 
   20649 
   20650         * PluginProcess/PluginProcess.h:
   20651         * UIProcess/Plugins/PluginProcessProxy.h:
   20652         * UIProcess/WebContextMenuProxy.h:
   20653         Change class to struct and vise versa where needed.
   20654 
   20655 2010-11-03  Anders Carlsson  <andersca (a] apple.com>
   20656 
   20657         Reviewed by Adam Roben.
   20658 
   20659         Implement NP_SetProperty
   20660         https://bugs.webkit.org/show_bug.cgi?id=48956
   20661 
   20662         * Shared/Plugins/NPObjectMessageReceiver.cpp:
   20663         (WebKit::NPObjectMessageReceiver::setProperty):
   20664         Call the NPClass setProperty function.
   20665 
   20666         * Shared/Plugins/NPObjectMessageReceiver.messages.in:
   20667         Add SetProperty message.
   20668 
   20669         * Shared/Plugins/NPObjectProxy.cpp:
   20670         (WebKit::NPObjectProxy::setProperty):
   20671         Send a SetProperty message.
   20672 
   20673         (WebKit::NPObjectProxy::NP_SetProperty):
   20674         Call NPObjectProxy::setProperty.
   20675 
   20676 2010-11-03  Anders Carlsson  <andersca (a] apple.com>
   20677 
   20678         Reviewed by Simon Fraser.
   20679 
   20680         Out of process plug-ins don't support the CA drawing model
   20681         https://bugs.webkit.org/show_bug.cgi?id=48950
   20682         <rdar://problem/8626019>
   20683 
   20684         * Platform/CoreIPC/HandleMessage.h:
   20685         (CoreIPC::callMemberFunction):
   20686         Add new overload.
   20687 
   20688         * PluginProcess/PluginControllerProxy.cpp:
   20689         (WebKit::PluginControllerProxy::initialize):
   20690         Call platformInitialize().
   20691 
   20692         (WebKit::PluginControllerProxy::destroy):
   20693         Call platformDestroy().
   20694 
   20695         (WebKit::PluginControllerProxy::isAcceleratedCompositingEnabled):
   20696         Assume that accelerated compositing is available if we have a render server port.
   20697 
   20698         (WebKit::PluginControllerProxy::geometryDidChange):
   20699         Call platformGeometryDidChange().
   20700 
   20701         * PluginProcess/PluginProcess.h:
   20702         * PluginProcess/WebProcessConnection.cpp:
   20703         (WebKit::WebProcessConnection::createPlugin):
   20704         Pass back the remote layer client ID.
   20705 
   20706         * PluginProcess/WebProcessConnection.messages.in:
   20707         Add a remoteLayerClientID out parameter to CreatePlugin.
   20708 
   20709         * PluginProcess/mac/PluginControllerProxyMac.mm: Added.
   20710         (WebKit::PluginControllerProxy::platformInitialize):
   20711         If the plug-in has a layer, create a remote layer client and associate it with the layer.
   20712 
   20713         (WebKit::PluginControllerProxy::platformDestroy):
   20714         Invalidate the remote layer client.
   20715 
   20716         (WebKit::PluginControllerProxy::remoteLayerClientID):
   20717         Return the remote layer client ID if one exists.
   20718 
   20719         (WebKit::PluginControllerProxy::platformGeometryDidChange):
   20720         Update the layer bounds.
   20721 
   20722         * WebKit2.xcodeproj/project.pbxproj:
   20723         Add new files.
   20724 
   20725         * WebProcess/Plugins/Netscape/mac/PluginProxyMac.mm: Added.
   20726         (WebKit::PluginProxy::pluginLayer):
   20727         Create a render layer if needed.
   20728 
   20729         (WebKit::PluginProxy::needsBackingStore):
   20730         Return whether the plug-in needs a backing store. (It doesn't need a backing store if it's a CA plug-in).
   20731 
   20732         * WebProcess/Plugins/PluginProxy.cpp:
   20733         (WebKit::PluginProxy::PluginProxy):
   20734         Initialize m_remoteLayerClientID.
   20735 
   20736         (WebKit::PluginProxy::initialize):
   20737         Set m_remoteLayerClientID.
   20738 
   20739         (WebKit::PluginProxy::paint):
   20740         Bail if the plug-in doesn't need a backing store.
   20741 
   20742         (WebKit::PluginProxy::geometryDidChange):
   20743         Don't create a backing store if the plug-in doesn't need one.
   20744 
   20745         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   20746         (WebKit::LayerBackedDrawingArea::LayerBackedDrawingArea):
   20747         Remove RetainPtr initialization.
   20748 
   20749         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   20750         (WebKit::LayerBackedDrawingArea::platformClear):
   20751         Use nullptr instead of 0.
   20752 
   20753 2010-11-03  Anders Carlsson  <andersca (a] apple.com>
   20754 
   20755         Reviewed by Simon Fraser.
   20756 
   20757         Crash when layout in response to setSize changes the drawing area
   20758         https://bugs.webkit.org/show_bug.cgi?id=48947
   20759 
   20760         This is tested by compositing/plugins/small-to-large-composited-plugin.html.
   20761 
   20762         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   20763         (WebKit::ChunkedUpdateDrawingArea::setSize):
   20764         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   20765         (WebKit::LayerBackedDrawingArea::setSize):
   20766 
   20767 2010-11-03  Anders Carlsson  <andersca (a] apple.com>
   20768 
   20769         Reviewed by Adam Roben.
   20770 
   20771         Pass the accelerated compositing render server port to the plug-in process at startup
   20772         https://bugs.webkit.org/show_bug.cgi?id=48925
   20773 
   20774         * PluginProcess/PluginProcess.cpp:
   20775         (WebKit::PluginProcess::PluginProcess):
   20776         Initialize m_compositingRenderServerPort to MACH_PORT_NULL.
   20777 
   20778         (WebKit::PluginProcess::initialize):
   20779         Get the plug-in path and render server port from the creation parameters.
   20780         
   20781         * PluginProcess/PluginProcess.messages.in:
   20782         Change the Initialize message to take a PluginProcessCreationParameters struct.
   20783 
   20784         * Shared/Plugins/PluginProcessCreationParameters.cpp: Added.
   20785         * Shared/Plugins/PluginProcessCreationParameters.h: Added.
   20786         Add new PluginProcessCreationParameters struct.
   20787 
   20788         * UIProcess/Plugins/PluginProcessProxy.cpp:
   20789         (WebKit::PluginProcessProxy::didFinishLaunching):
   20790         Initialize now takes a PluginProcessCreationParameters struct.
   20791 
   20792         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: Added.
   20793         (WebKit::PluginProcessProxy::platformInitializePluginProcess):
   20794         Initialize the render server port.
   20795 
   20796         * WebKit2.xcodeproj/project.pbxproj:
   20797         Add new files.
   20798 
   20799 2010-11-03  Tor Arne Vestb  <tor.arne.vestbo (a] nokia.com>
   20800 
   20801         Reviewed by Kenneth Rohde Christiansen.
   20802 
   20803         [Qt] Add the webkit2 library to LIBS instead of QMAKE_LFLAGS
   20804 
   20805         Otherwise the library order will get messed up and cause
   20806         missing symbols on Mac OS X.
   20807 
   20808         * WebKit2.pri:
   20809         * WebKit2.pro:
   20810 
   20811 2010-11-02  Daniel Bates  <dbates (a] rim.com>
   20812 
   20813         Reviewed by Adam Barth.
   20814 
   20815         For unnamed frames, window.name returns a generated name
   20816         https://bugs.webkit.org/show_bug.cgi?id=6751
   20817 
   20818         Part 1 of 2.
   20819 
   20820         Substitute FrameTree::uniqueName() for FrameTree::name() in WebKit2.
   20821 
   20822         * WebProcess/WebPage/WebFrame.cpp:
   20823         (WebKit::WebFrame::name):
   20824 
   20825 2010-11-02  Amruth Raj  <amruthraj (a] motorola.com> and Ravi Kasibhatla  <ravi.kasibhatla (a] motorola.com>
   20826 
   20827         Reviewed by Martin Robinson.
   20828 
   20829         Changes to enable building WebKit2 for Gtk port.
   20830         (https://bugs.webkit.org/show_bug.cgi?id=37369)
   20831 
   20832         * Platform/gtk: Added.
   20833         * Platform/gtk/SharedMemoryGtk.cpp: Added.  Stubbed implementation for GTK port. Yet to implement.
   20834         (WebKit::SharedMemory::Handle::Handle):
   20835         (WebKit::SharedMemory::Handle::~Handle):
   20836         (WebKit::SharedMemory::Handle::encode):
   20837         (WebKit::SharedMemory::Handle::decode):
   20838         (WebKit::SharedMemory::create):
   20839         (WebKit::SharedMemory::~SharedMemory):
   20840         (WebKit::SharedMemory::createHandle):
   20841         (WebKit::SharedMemory::systemPageSize):
   20842         * Shared/gtk: Added.
   20843         * Shared/gtk/BackingStoreGtk.cpp: Added. Stubbed implementation for GTK port. Yet to implement.
   20844         (WebKit::BackingStore::createGraphicsContext):
   20845         (WebKit::BackingStore::paint):
   20846         * Shared/gtk/PlatformCertificateInfo.h: Added. Added. Stubbed implementation for GTK port. Yet to implement.
   20847         (WebKit::PlatformCertificateInfo::PlatformCertificateInfo):
   20848         (WebKit::PlatformCertificateInfo::encode):
   20849         (WebKit::PlatformCertificateInfo::decode):
   20850         * Shared/gtk/WebCoreArgumentCodersGtk.cpp: Added. Stubbed implementation for GTK port. Yet to implement.
   20851         (CoreIPC::encodeResourceRequest):
   20852         (CoreIPC::decodeResourceRequest):
   20853         * UIProcess/Plugins/gtk: Added.
   20854         * UIProcess/Plugins/gtk/PluginInfoStoreGtk.cpp: Added.  Stubbed implementation for GTK port. Yet to implement.
   20855         (WebKit::PluginInfoStore::pluginsDirectories):
   20856         (WebKit::PluginInfoStore::pluginPathsInDirectory):
   20857         (WebKit::PluginInfoStore::individualPluginPaths):
   20858         (WebKit::PluginInfoStore::getPluginInfo):
   20859         (WebKit::PluginInfoStore::shouldUsePlugin):
   20860         * WebProcess/InjectedBundle/InjectedBundle.h:
   20861         * WebProcess/InjectedBundle/gtk: Added.
   20862         * WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp: Added. Stubbed implementation for GTK port. Yet to implement.
   20863         (WebKit::InjectedBundle::load):
   20864         (WebKit::InjectedBundle::activateMacFontAscentHack):
   20865         * WebProcess/Plugins/Netscape/gtk: Added.
   20866         * WebProcess/Plugins/Netscape/gtk/NetscapePluginGtk.cpp: Added.  Stubbed implementation for GTK port. Yet to implement.
   20867         (WebKit::NetscapePlugin::platformPostInitialize):
   20868         (WebKit::NetscapePlugin::platformDestroy):
   20869         (WebKit::NetscapePlugin::platformGeometryDidChange):
   20870         (WebKit::NetscapePlugin::platformPaint):
   20871         (WebKit::toNP):
   20872         (WebKit::NetscapePlugin::platformHandleMouseEvent):
   20873         (WebKit::NetscapePlugin::platformHandleWheelEvent):
   20874         (WebKit::NetscapePlugin::platformSetFocus):
   20875         (WebKit::NetscapePlugin::platformHandleMouseEnterEvent):
   20876         (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent):
   20877         (WebKit::NetscapePlugin::platformHandleKeyboardEvent):
   20878         * WebProcess/WebCoreSupport/gtk: Added.
   20879         * WebProcess/WebCoreSupport/gtk/WebFrameNetworkingContext.h: Added. Added. Stubbed implementation for GTK port. Yet to implement.
   20880         (WebFrameNetworkingContext::create):
   20881         (WebFrameNetworkingContext::WebFrameNetworkingContext):
   20882 
   20883 2010-11-02  Jing Jin  <jjin (a] apple.com>
   20884 
   20885         Reviewed by Alexey Proskuryakov.
   20886 
   20887         Key down calls are not being sent to the application.
   20888         https://bugs.webkit.org/show_bug.cgi?id=48867
   20889 
   20890         * UIProcess/API/mac/WKView.mm:
   20891         (-[WKView keyDown:]): Call super when ignoring a key down.
   20892 
   20893 2010-11-02  Anders Carlsson  <andersca (a] apple.com>
   20894 
   20895         Reviewed by John Sullivan.
   20896 
   20897         Add Null and Int32 to NPVariantData
   20898         https://bugs.webkit.org/show_bug.cgi?id=48887
   20899 
   20900         * Shared/Plugins/NPRemoteObjectMap.cpp:
   20901         (WebKit::NPRemoteObjectMap::npVariantToNPVariantData):
   20902         (WebKit::NPRemoteObjectMap::npVariantDataToNPVariant):
   20903         * Shared/Plugins/NPVariantData.cpp:
   20904         (WebKit::NPVariantData::NPVariantData):
   20905         (WebKit::NPVariantData::makeNull):
   20906         (WebKit::NPVariantData::makeInt32):
   20907         (WebKit::NPVariantData::encode):
   20908         (WebKit::NPVariantData::decode):
   20909         * Shared/Plugins/NPVariantData.h:
   20910         (WebKit::NPVariantData::int32Value):
   20911 
   20912 2010-11-02  Anders Carlsson  <andersca (a] apple.com>
   20913 
   20914         Reviewed by Adam Roben.
   20915 
   20916         Add support for NP_HasMethod and NP_Invoke
   20917         https://bugs.webkit.org/show_bug.cgi?id=48882
   20918 
   20919         * Platform/CoreIPC/HandleMessage.h:
   20920         (CoreIPC::callMemberFunction):
   20921         Add new overload.
   20922 
   20923         * Shared/Plugins/NPObjectMessageReceiver.cpp:
   20924         (WebKit::NPObjectMessageReceiver::hasMethod):
   20925         Call hasMethod and return the result.
   20926 
   20927         (WebKit::NPObjectMessageReceiver::invoke):
   20928         Convert the arguments, call invoke and return the result.
   20929 
   20930         (WebKit::NPObjectMessageReceiver::getProperty):
   20931         Release the converted variant.
   20932 
   20933         * Shared/Plugins/NPObjectMessageReceiver.messages.in:
   20934         Add HasMethod and Invoke messages.
   20935         
   20936         * Shared/Plugins/NPObjectProxy.cpp:
   20937         (WebKit::NPObjectProxy::hasMethod):
   20938         Send the HasMethod message.
   20939 
   20940         (WebKit::NPObjectProxy::invoke):
   20941         Send the Invoke message.
   20942 
   20943         (WebKit::NPObjectProxy::NP_HasMethod):
   20944         Call hasMethod.
   20945 
   20946         (WebKit::NPObjectProxy::NP_Invoke):
   20947         Call invoke.
   20948 
   20949 2010-11-02  Anders Carlsson  <andersca (a] apple.com>
   20950 
   20951         Reviewed by Sam Weinig.
   20952 
   20953         Implement NP_HasProperty for NPObjectProxy
   20954         https://bugs.webkit.org/show_bug.cgi?id=48876
   20955 
   20956         * Shared/Plugins/NPObjectMessageReceiver.cpp:
   20957         (WebKit::NPObjectMessageReceiver::hasProperty):
   20958         Call The hasProperty callback function.
   20959 
   20960         * Shared/Plugins/NPObjectMessageReceiver.messages.in:
   20961         Add HasProperty message.
   20962 
   20963         * Shared/Plugins/NPObjectProxy.cpp:
   20964         (WebKit::NPObjectProxy::hasProperty):
   20965         Send the HasProperty message.
   20966 
   20967         (WebKit::NPObjectProxy::NP_HasProperty):
   20968         Call hasProperty.
   20969 
   20970 
   20971 2010-11-02  Sam Weinig  <sam (a] webkit.org>
   20972 
   20973         Reviewed by Anders Carlsson.
   20974 
   20975         Add a way to send startup messages on the context which can be posted when a process launches
   20976         <rdar://problem/8617928>
   20977         https://bugs.webkit.org/show_bug.cgi?id=48838
   20978 
   20979         Adds WKContextSetInitializationUserDataForInjectedBundle which sets an
   20980         APIObject on WebContext to be sent to the InjectedBundle's WKBundleInitialize
   20981         function each time a process starts up. This can help in cases where
   20982         the WebProcess dies, and will be helpful in the world where there are
   20983         multiple WebProcess's per context.
   20984 
   20985         * Scripts/webkit2/messages.py:
   20986         * UIProcess/API/C/WKContext.cpp:
   20987         (WKContextSetInitializationUserDataForInjectedBundle):
   20988         * UIProcess/API/C/WKContext.h:
   20989         * UIProcess/WebContext.cpp:
   20990         (WebKit::WebContext::ensureWebProcess):
   20991         * UIProcess/WebContext.h:
   20992         (WebKit::WebContext::setInjectedBundleInitializationUserData):
   20993         (WebKit::WebContext::injectedBundleInitializationUserData):
   20994         * WebProcess/InjectedBundle/API/c/WKBundleInitialize.h:
   20995         * WebProcess/InjectedBundle/InjectedBundle.h:
   20996         * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp:
   20997         (WebKit::InjectedBundle::load):
   20998         * WebProcess/InjectedBundle/qt/InjectedBundleQt.cpp:
   20999         (WebKit::InjectedBundle::load):
   21000         * WebProcess/InjectedBundle/win/InjectedBundleWin.cpp:
   21001         (WebKit::InjectedBundle::load):
   21002         * WebProcess/WebProcess.cpp:
   21003         (WebKit::WebProcess::initializeWebProcess):
   21004         * WebProcess/WebProcess.h:
   21005         * WebProcess/WebProcess.messages.in:
   21006 
   21007 2010-11-02  Anders Carlsson  <andersca (a] apple.com>
   21008 
   21009         Reviewed by Sam Weinig.
   21010 
   21011         Implement PluginProxy::pluginScriptableNPObject
   21012         https://bugs.webkit.org/show_bug.cgi?id=48874
   21013 
   21014         * PluginProcess/PluginControllerProxy.cpp:
   21015         (WebKit::PluginControllerProxy::getPluginScriptableNPObject):
   21016         Ask the plug-in for its scriptable NPObject, register it with the map and return its object ID.
   21017 
   21018         * PluginProcess/PluginControllerProxy.messages.in:
   21019         Add GetPluginScriptableNPObject message.
   21020 
   21021         * WebProcess/Plugins/PluginProxy.cpp:
   21022         (WebKit::PluginProxy::pluginScriptableNPObject):
   21023         Send the GetPluginScriptableNPObject message.
   21024 
   21025 2010-11-02  Anders Carlsson  <andersca (a] apple.com>
   21026 
   21027         Reviewed by Dan Bernstein.
   21028 
   21029         Add strings to NPVariantData
   21030         https://bugs.webkit.org/show_bug.cgi?id=48871
   21031 
   21032         * Shared/Plugins/NPRemoteObjectMap.cpp:
   21033         (WebKit::NPRemoteObjectMap::npVariantToNPVariantData):
   21034         (WebKit::NPRemoteObjectMap::npVariantDataToNPVariant):
   21035         * Shared/Plugins/NPVariantData.cpp:
   21036         (WebKit::NPVariantData::makeString):
   21037         (WebKit::NPVariantData::encode):
   21038         (WebKit::NPVariantData::decode):
   21039         * Shared/Plugins/NPVariantData.h:
   21040         (WebKit::NPVariantData::stringValue):
   21041 
   21042 2010-11-02  Anders Carlsson  <andersca (a] apple.com>
   21043 
   21044         Reviewed by Dan Bernstein.
   21045 
   21046         Add convenience functions for allocating NPAPI memory
   21047         https://bugs.webkit.org/show_bug.cgi?id=48870
   21048 
   21049         Add npnMemAlloc, npnMemFree and createNPString functions and 
   21050         npnMemNew, npnMemNewArray function templates.
   21051 
   21052         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
   21053         (WebKit::JSNPObject::getOwnPropertyNames):
   21054         Use npnMemFree.
   21055 
   21056         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
   21057         (WebKit::NPJSObject::enumerate):
   21058         Use npnMemNewArray.
   21059 
   21060         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
   21061         (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
   21062         Use createNPString.
   21063 
   21064         * WebProcess/Plugins/Netscape/NPRuntimeUtilities.cpp:
   21065         (WebKit::npnMemAlloc):
   21066         Call malloc.
   21067 
   21068         (WebKit::npnMemFree):
   21069         Call free.
   21070 
   21071         (WebKit::createNPString):
   21072         Allocate the characters for a new NPString.
   21073 
   21074         (WebKit::createNPObject):
   21075         Call npnMemNew.
   21076 
   21077         (WebKit::deallocateNPObject):
   21078         Call npnMemFree.
   21079 
   21080         (WebKit::releaseNPVariantValue):
   21081         Call npnMemFree.
   21082 
   21083         * WebProcess/Plugins/Netscape/NPRuntimeUtilities.h:
   21084         (WebKit::npnMemNew):
   21085         (WebKit::npnMemNewArray):
   21086         Add new functions.
   21087 
   21088         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   21089         (WebKit::NPN_MemAlloc):
   21090         Call npnMemAlloc.
   21091 
   21092         (WebKit::NPN_MemFree):
   21093         Call npnMemFree.
   21094 
   21095         (WebKit::NPN_UTF8FromIdentifier):
   21096         Call npnMemNewArray.
   21097 
   21098         (WebKit::copyCString):
   21099         Call npnMemNewArray. Correctly initialize the "len" out parameter.
   21100 
   21101 2010-11-02  Jessie Berlin  <jberlin (a] apple.com>
   21102 
   21103         Windows build fix. Unreviewed.
   21104 
   21105         * win/WebKit2Generated.make:
   21106         Add WKInspector.h so that it is copied over to the WebKitBuild directory.
   21107 
   21108 2010-11-02  Anders Carlsson  <andersca (a] apple.com>
   21109 
   21110         Reviewed by Adam Roben.
   21111 
   21112         Add some support for remote and local NPObjects to NPRemoteObjectMap
   21113         https://bugs.webkit.org/show_bug.cgi?id=48864
   21114 
   21115         * Shared/Plugins/NPRemoteObjectMap.cpp:
   21116         (WebKit::NPRemoteObjectMap::npVariantToNPVariantData):
   21117         If the NPVariant contains an NPObject that isn't an NPObjectProxy, register it
   21118         and return its ID.
   21119 
   21120         (WebKit::NPRemoteObjectMap::npVariantDataToNPVariant):
   21121         If the NPVariantData contains a remote object, create an NPObjectProxy and return it.
   21122 
   21123         * Shared/Plugins/NPVariantData.cpp:
   21124         (WebKit::NPVariantData::NPVariantData):
   21125         Initialize m_localNPObjectIDValue and m_remoteNPObjectIDValue.
   21126 
   21127         (WebKit::NPVariantData::makeLocalNPObjectID):
   21128         Create an NPVariantData that contains a local NPObject ID.
   21129 
   21130         (WebKit::NPVariantData::encode):
   21131         Handle local and remote NPObject IDs.
   21132 
   21133         (WebKit::NPVariantData::decode):
   21134         Decode local and remote NPObject IDs and "swap them" so an encoded remote NPObject ID is
   21135         decoded as a local NPObjectID (and vice versa).
   21136 
   21137         * Shared/Plugins/NPVariantData.h:
   21138         (WebKit::NPVariantData::localNPObjectIDValue):
   21139         (WebKit::NPVariantData::remoteNPObjectIDValue):
   21140 
   21141 2010-11-02  Anders Carlsson  <andersca (a] apple.com>
   21142 
   21143         Attempt to fix a GCC release only warning.
   21144 
   21145         * Shared/Plugins/NPVariantData.cpp:
   21146         (WebKit::NPVariantData::NPVariantData):
   21147 
   21148 2010-11-02  Anders Carlsson  <andersca (a] apple.com>
   21149 
   21150         Reviewed by John Sullivan.
   21151 
   21152         Invalidate the NPRemoteObjectMap
   21153         https://bugs.webkit.org/show_bug.cgi?id=48856
   21154 
   21155         * Shared/Plugins/NPObjectMessageReceiver.cpp:
   21156         (WebKit::NPObjectMessageReceiver::~NPObjectMessageReceiver):
   21157         Remove FIXME. The NPRemoteObjectMap always outlives the NPObjectMessageReceiver.
   21158 
   21159         * Shared/Plugins/NPObjectProxy.cpp:
   21160         (WebKit::NPObjectProxy::~NPObjectProxy):
   21161         Call npObjectProxyDestroyed here.
   21162 
   21163         (WebKit::NPObjectProxy::invalidate):
   21164         Null out m_npRemoteObjectMap.
   21165 
   21166         * Shared/Plugins/NPRemoteObjectMap.cpp:
   21167         (WebKit::NPRemoteObjectMap::~NPRemoteObjectMap):
   21168         Add assertions.
   21169 
   21170         (WebKit::NPRemoteObjectMap::createNPObjectProxy):
   21171         Keep track of the NPObjectProxy by adding it to the m_npObjectProxies set.
   21172 
   21173         (WebKit::NPRemoteObjectMap::npObjectProxyDestroyed):
   21174         Remove the NPObjectProxy from the m_npObjectProxies set.
   21175 
   21176         (WebKit::NPRemoteObjectMap::invalidate):
   21177         Delete all NPObjectMessageReceivers. Iterate over all NPObjectProxy objects and invalidate them.
   21178 
   21179 2010-11-02  Mike Thole  <mthole (a] apple.com>
   21180 
   21181         Reviewed by Anders Carlsson.
   21182 
   21183         WebProcessManager informed about crashes too late (pages may have already tried to load a new URL)
   21184         https://bugs.webkit.org/show_bug.cgi?id=48853
   21185 
   21186         This also fixes: <rdar://problem/8610451> Webkit2: Crash in WebKit!WebKit::WebProcessProxy::sendMessage opening google.com page
   21187 
   21188         * UIProcess/WebProcessProxy.cpp:
   21189         (WebKit::WebProcessProxy::~WebProcessProxy):
   21190         Removed invalid assertion that is hit when the WebProcess dies unexpectedly.
   21191         (WebKit::WebProcessProxy::didClose):
   21192         Reordered so that the individual pages are informed that the processDidCrash() after the shared
   21193         WebProcessManager has been. This allows the pages to properly trigger a new process to be launched.
   21194 
   21195 2010-11-02  Enrica Casucci  <enrica (a] apple.com>
   21196 
   21197         Reviewed by Alexey Proskuryakov.
   21198 
   21199         WebKit2: Repeated cmd-key presses lead to unusable UI state
   21200         https://bugs.webkit.org/show_bug.cgi?id=48811
   21201         <rdar://problem/8611924>
   21202 
   21203         Given the asynchronous nature of every interaction with the WebProcess,
   21204         we could re-send a keyDown event to AppKit that maps to an
   21205         action that is currently disabled and therefore will not trigger an action
   21206         but a call to the keyDown method of the NSView. We need to detect this
   21207         situation to avoid an infinite loop.
   21208 
   21209         * UIProcess/API/mac/WKView.mm:
   21210         (-[WKView performKeyEquivalent:]): Delay the release of the last processed event
   21211         to the moment we receive another event.
   21212         (-[WKView keyDown:]): Added early return in case the event is one we have re-sent.
   21213 
   21214 2010-11-02  Anders Carlsson  <andersca (a] apple.com>
   21215 
   21216         Reviewed by John Sullivan.
   21217 
   21218         Handle boolean values in NPVariant and NPVariantData
   21219         https://bugs.webkit.org/show_bug.cgi?id=48852
   21220 
   21221         * Shared/Plugins/NPRemoteObjectMap.cpp:
   21222         (WebKit::NPRemoteObjectMap::npVariantToNPVariantData):
   21223         (WebKit::NPRemoteObjectMap::npVariantDataToNPVariant):
   21224         * Shared/Plugins/NPVariantData.cpp:
   21225         (WebKit::NPVariantData::makeBool):
   21226         (WebKit::NPVariantData::encode):
   21227         (WebKit::NPVariantData::decode):
   21228         * Shared/Plugins/NPVariantData.h:
   21229         (WebKit::NPVariantData::boolValue):
   21230 
   21231 2010-11-02  Anders Carlsson  <andersca (a] apple.com>
   21232 
   21233         Reviewed by John Sullivan.
   21234 
   21235         Assertion hit in WebProcessProxy::~WebProcessProxy()
   21236         https://bugs.webkit.org/show_bug.cgi?id=48849
   21237         <rdar://problem/8617676>
   21238 
   21239         It is perfectly valid for the page map to contain pages if the web process proxy
   21240         goes away, this can happen if the process crashes for example.
   21241 
   21242         * UIProcess/WebProcessProxy.cpp:
   21243         (WebKit::WebProcessProxy::~WebProcessProxy):
   21244         Remove the assertion.
   21245 
   21246 2010-11-02  Christian Sejersen  <christian.webkit (a] gmail.com>
   21247 
   21248         Reviewed by Andreas Kling.
   21249 
   21250         The previous patch only took into account arm targets. This one
   21251         now checks whether the build is done inside Scratchbox.
   21252         https://bugs.webkit.org/show_bug.cgi?id=47895
   21253 
   21254         * DerivedSources.pro:
   21255 
   21256 2010-11-02  Anders Carlsson  <andersca (a] apple.com>
   21257 
   21258         Reviewed by Adam Roben.
   21259 
   21260         More NPRuntime work
   21261         https://bugs.webkit.org/show_bug.cgi?id=48847
   21262 
   21263         * PluginProcess/WebProcessConnection.cpp:
   21264         (WebKit::WebProcessConnection::~WebProcessConnection):
   21265         Add assertions.
   21266 
   21267         (WebKit::WebProcessConnection::removePluginControllerProxy):
   21268         If we have no more plug-in controller proxies, invalidate the remote object map.
   21269 
   21270         * Shared/Plugins/NPIdentifierData.cpp:
   21271         (WebKit::NPIdentifierData::createNPIdentifier):
   21272         Create an NPIdentifier from the given NPIdentifierData.
   21273 
   21274         * Shared/Plugins/NPObjectMessageReceiver.cpp:
   21275         (WebKit::NPObjectMessageReceiver::create):
   21276         (WebKit::NPObjectMessageReceiver::NPObjectMessageReceiver):
   21277         This now takes the NPRemoteObjectMap as well as the npObjectID of the object.
   21278 
   21279         (WebKit::NPObjectMessageReceiver::~NPObjectMessageReceiver):
   21280         Unregister the object.
   21281 
   21282         (WebKit::NPObjectMessageReceiver::deallocate):
   21283         Delete the object.
   21284 
   21285         (WebKit::NPObjectMessageReceiver::getProperty):
   21286         Ask the NPObject for the property and convert it back to an NPVariantData.
   21287 
   21288         * Shared/Plugins/NPObjectProxy.cpp:
   21289         (WebKit::NPObjectProxy::~NPObjectProxy):
   21290         Send a Deallocate message to the corresponding message receiver on the other side.
   21291 
   21292         (WebKit::NPObjectProxy::getProperty):
   21293         Convert the NPVariantData back to an NPVariant and return it.
   21294 
   21295         * Shared/Plugins/NPRemoteObjectMap.cpp:
   21296         (WebKit::NPRemoteObjectMap::registerNPObject):
   21297         Pass the NPRemoteObjectMap and the npObjectID to NPObjectMessageReceiver::create.
   21298 
   21299         (WebKit::NPRemoteObjectMap::unregisterNPObject):
   21300         Remove the given object from the map of registered objects.
   21301 
   21302         (WebKit::NPRemoteObjectMap::npVariantToNPVariantData):
   21303         Given an NPVariant, create an NPVariantData. Only supports void and double types right now.
   21304 
   21305         (WebKit::NPRemoteObjectMap::npVariantDataToNPVariant):
   21306         Given an NPVariantData, create an NPVariant. Only supports void and double types right now.
   21307 
   21308         (WebKit::NPRemoteObjectMap::invalidate):
   21309         Add stub.
   21310 
   21311         * Shared/Plugins/NPVariantData.cpp:
   21312         (WebKit::NPVariantData::NPVariantData):
   21313         Set the type to void by default.
   21314 
   21315         (WebKit::NPVariantData::makeVoid):
   21316         Return a void NPVariantData.
   21317 
   21318         (WebKit::NPVariantData::makeDouble):
   21319         Return an NPVariantData that contains a double value.
   21320 
   21321         (WebKit::NPVariantData::encode):
   21322         Encode the NPVariantData.
   21323 
   21324         (WebKit::NPVariantData::decode):
   21325         Decode the NPVariantData.
   21326 
   21327         * Shared/Plugins/NPVariantData.h:
   21328         (WebKit::NPVariantData::type):
   21329         Return the type of the NPVariantData.
   21330 
   21331         (WebKit::NPVariantData::doubleValue):
   21332         Return the double value of the NPVariantData.
   21333         
   21334         * UIProcess/WebProcessProxy.cpp:
   21335         (WebKit::WebProcessProxy::didClose):
   21336         Use nullptr instead of 0.
   21337 
   21338         * WebProcess/Plugins/PluginProcessConnection.cpp:
   21339         (WebKit::PluginProcessConnection::~PluginProcessConnection):
   21340         Assert that the connection and the remote object map are both null.
   21341 
   21342         (WebKit::PluginProcessConnection::removePluginProxy):
   21343         If this was the last plug-in proxy, invalidate the remote object map.
   21344 
   21345         * WebProcess/WebProcess.cpp:
   21346         (WebKit::WebProcess::shutdown):
   21347         Use nullptr instead of 0.
   21348 
   21349 2010-11-02  Balazs Kelemen  <kbalazs (a] webkit.org>
   21350 
   21351         Unreviewed Qt buildfix.
   21352 
   21353         * DerivedSources.pro: Add WebInspector to the list of
   21354         message recievers.
   21355 
   21356 2010-11-02  Balazs Kelemen  <kbalazs (a] webkit.org>
   21357 
   21358         Reviewed by Andreas Kling.
   21359 
   21360         [Qt][WK2] SharedMemory is broken
   21361         https://bugs.webkit.org/show_bug.cgi?id=48520
   21362 
   21363         Implement SharedMemory with QSharedMemory to correctly handle
   21364         ownership and to avoid extra allocation for page size requests.
   21365         * Platform/SharedMemory.h:
   21366         * Platform/qt/SharedMemoryQt.cpp:
   21367         (WebKit::SharedMemory::Handle::Handle):
   21368         (WebKit::SharedMemory::Handle::isNull):
   21369         (WebKit::SharedMemory::Handle::encode):
   21370         (WebKit::SharedMemory::Handle::decode):
   21371         (WebKit::createUniqueKey):
   21372         (WebKit::SharedMemory::create):
   21373         (WebKit::accessMode):
   21374         (WebKit::SharedMemory::~SharedMemory):
   21375         (WebKit::SharedMemory::createHandle):
   21376 
   21377 2010-11-02  Timothy Hatcher  <timothy (a] apple.com>
   21378 
   21379         Add WKInspector public APIs.
   21380 
   21381         https://webkit.org/b/48718
   21382 
   21383         Reviewed by Pavel Feldman.
   21384 
   21385         * DerivedSources.make: Added WebInspector to MESSAGE_RECEIVERS section.
   21386         * UIProcess/API/C/WKInspector.cpp:
   21387         (WKInspectorIsVisible): Added.
   21388         (WKInspectorShow): Added.
   21389         (WKInspectorClose): Added.
   21390         (WKInspectorShowConsole): Added.
   21391         (WKInspectorIsAttached): Added.
   21392         (WKInspectorAttach): Added.
   21393         (WKInspectorDetach): Added.
   21394         (WKInspectorIsDebuggingJavaScript): Added.
   21395         (WKInspectorToggleJavaScriptDebugging): Added.
   21396         (WKInspectorIsProfilingJavaScript): Added.
   21397         (WKInspectorToggleJavaScriptProfiling): Added.
   21398         (WKInspectorIsProfilingPage): Added.
   21399         (WKInspectorTogglePageProfiling): Added.
   21400         * UIProcess/API/C/WKInspector.h: Added new functions.
   21401         * UIProcess/WebInspectorProxy.cpp:
   21402         (WebKit::WebInspectorProxy::WebInspectorProxy): Initialize new booleans.
   21403         (WebKit::WebInspectorProxy::invalidate): Reset new booleans.
   21404         (WebKit::WebInspectorProxy::show): Added.
   21405         (WebKit::WebInspectorProxy::close): Added.
   21406         (WebKit::WebInspectorProxy::showConsole): Added.
   21407         (WebKit::WebInspectorProxy::attach): Added.
   21408         (WebKit::WebInspectorProxy::detach): Added.
   21409         (WebKit::WebInspectorProxy::toggleJavaScriptDebugging): Added.
   21410         (WebKit::WebInspectorProxy::toggleJavaScriptProfiling): Added.
   21411         (WebKit::WebInspectorProxy::togglePageProfiling): Added.
   21412         * UIProcess/WebInspectorProxy.h:
   21413         (WebKit::WebInspectorProxy::isVisible): Added.
   21414         (WebKit::WebInspectorProxy::isAttached): Added.
   21415         (WebKit::WebInspectorProxy::isDebuggingJavaScript): Added.
   21416         (WebKit::WebInspectorProxy::isProfilingJavaScript): Added.
   21417         (WebKit::WebInspectorProxy::isProfilingPage): Added.
   21418         * UIProcess/WebPageProxy.cpp:
   21419         (WebKit::WebPageProxy::close): Invalidate the WebInspectorProxy.
   21420         (WebKit::WebPageProxy::inspector): Return 0 if closed or invalid.
   21421         * WebKit2.pro: Added new files.
   21422         * WebKit2.xcodeproj/project.pbxproj: Added new Files.
   21423         * WebProcess/WebPage/WebInspector.cpp:
   21424         (WebKit::WebInspector::show): Added.
   21425         (WebKit::WebInspector::close): Added.
   21426         (WebKit::WebInspector::showConsole): Added.
   21427         (WebKit::WebInspector::startJavaScriptDebugging): Added.
   21428         (WebKit::WebInspector::stopJavaScriptDebugging): Added.
   21429         (WebKit::WebInspector::startJavaScriptProfiling): Added.
   21430         (WebKit::WebInspector::stopJavaScriptProfiling): Added.
   21431         (WebKit::WebInspector::startPageProfiling): Added.
   21432         (WebKit::WebInspector::stopPageProfiling): Added.
   21433         * WebProcess/WebPage/WebInspector.h:
   21434         (WebKit::WebInspector::page): Added.
   21435         * WebProcess/WebPage/WebInspector.messages.in: Added.
   21436         * WebProcess/WebPage/WebPage.cpp:
   21437         (WebKit::WebPage::close): Destroy the WebInspector.
   21438         (WebKit::WebPage::inspector): Return 0 if closed.
   21439         (WebKit::WebPage::didReceiveMessage): Send the message to the WebInspector
   21440         if the message class is MessageClassWebInspector.
   21441         * win/WebKit2.vcproj: Added new files.
   21442 
   21443 2010-11-02  Timothy Hatcher  <timothy (a] apple.com>
   21444 
   21445         Make WebInspectorFrontendClient inherit from InspectorFrontendClientLocal.
   21446 
   21447         We can do this since the Web Inspector WebPage will share the same process
   21448         with the inspected WebPage.
   21449 
   21450         https://webkit.org/b/48652
   21451 
   21452         Reviewed by Pavel Feldman.
   21453 
   21454         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
   21455         (WebKit::WebInspectorFrontendClient::WebInspectorFrontendClient):
   21456         Call the InspectorFrontendClientLocal constructor.
   21457         (WebKit::WebInspectorFrontendClient::attachWindow): Added.
   21458         (WebKit::WebInspectorFrontendClient::detachWindow): Added.
   21459         (WebKit::WebInspectorFrontendClient::setAttachedWindowHeight): Added.
   21460         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
   21461 
   21462 2010-11-01  Juha Savolainen  <juha.savolainen (a] weego.fi>
   21463 
   21464         Reviewed by Kenneth Rohde Christiansen.
   21465 
   21466         Initial implementation of QWKHistoryItem.
   21467         https://bugs.webkit.org/show_bug.cgi?id=48620
   21468 
   21469         The QWkHistoryItem represents one item in the history of QWKPage.
   21470 
   21471         * UIProcess/API/qt/qwkhistory.cpp:
   21472         (QWKHistoryItemPrivate::QWKHistoryItemPrivate):
   21473         (QWKHistoryItem::QWKHistoryItem):
   21474         (QWKHistoryItem::~QWKHistoryItem):
   21475         (QWKHistoryItem::title): The page title
   21476         (QWKHistoryItem::url): The URL of the page.
   21477         (QWKHistoryItem::originalUrl): The URL used to access the page.
   21478         * UIProcess/API/qt/qwkhistory.h:
   21479         * UIProcess/API/qt/qwkhistory_p.h:
   21480         * WebKit2.pro: Added WKBackForwardListItem.h and WKBackForwardListItem.cpp
   21481 
   21482 2010-11-01  Anders Carlsson  <andersca (a] apple.com>
   21483 
   21484         Reviewed by Oliver Hunt.
   21485 
   21486         Make NPRemoteObjectMap a ref counted object
   21487         https://bugs.webkit.org/show_bug.cgi?id=48808
   21488 
   21489         * PluginProcess/PluginControllerProxy.cpp:
   21490         (WebKit::PluginControllerProxy::windowScriptNPObject):
   21491         * PluginProcess/WebProcessConnection.cpp:
   21492         (WebKit::WebProcessConnection::WebProcessConnection):
   21493         (WebKit::WebProcessConnection::didReceiveSyncMessage):
   21494         * PluginProcess/WebProcessConnection.h:
   21495         (WebKit::WebProcessConnection::npRemoteObjectMap):
   21496         * Shared/Plugins/NPRemoteObjectMap.cpp:
   21497         (WebKit::NPRemoteObjectMap::create):
   21498         (WebKit::NPRemoteObjectMap::~NPRemoteObjectMap):
   21499         (WebKit::NPRemoteObjectMap::createNPObjectProxy):
   21500         * Shared/Plugins/NPRemoteObjectMap.h:
   21501         * WebProcess/Plugins/PluginProcessConnection.cpp:
   21502         (WebKit::PluginProcessConnection::PluginProcessConnection):
   21503         (WebKit::PluginProcessConnection::didReceiveSyncMessage):
   21504         * WebProcess/Plugins/PluginProcessConnection.h:
   21505         (WebKit::PluginProcessConnection::npRemoteObjectMap):
   21506         * WebProcess/Plugins/PluginProxy.cpp:
   21507         (WebKit::PluginProxy::getWindowScriptNPObject):
   21508 
   21509 2010-11-01  Anders Carlsson  <andersca (a] apple.com>
   21510 
   21511         Reviewed by John Sullivan.
   21512 
   21513         Respond to NP_GetProperty by sending a GetProperty message
   21514         https://bugs.webkit.org/show_bug.cgi?id=48797
   21515 
   21516         * Platform/CoreIPC/HandleMessage.h:
   21517         (CoreIPC::callMemberFunction):
   21518         Add new sync message overload.
   21519 
   21520         * PluginProcess/WebProcessConnection.cpp:
   21521         (WebKit::WebProcessConnection::didReceiveSyncMessage):
   21522         If the message class is MessageClassNPObjectMessageReceiver, pass it to the NPRemoteObjectMap.
   21523 
   21524         * Shared/Plugins/NPIdentifierData.cpp:
   21525         * Shared/Plugins/NPIdentifierData.h:
   21526         Add NPIdentifierData, a CoreIPC representation of an NPIdentifier.
   21527 
   21528         * Shared/Plugins/NPObjectMessageReceiver.cpp:
   21529         (WebKit::NPObjectMessageReceiver::getProperty):
   21530         Add stub.
   21531 
   21532         * Shared/Plugins/NPObjectMessageReceiver.messages.in:
   21533         Add GetProperty.
   21534 
   21535         * Shared/Plugins/NPObjectProxy.cpp:
   21536         (WebKit::NPObjectProxy::create):
   21537         (WebKit::NPObjectProxy::NPObjectProxy):
   21538         (WebKit::NPObjectProxy::initialize):
   21539         NPObjectProxy now takes an NPRemoteObjectMap in its create function.
   21540 
   21541         (WebKit::NPObjectProxy::getProperty):
   21542         Send a GetProperty message.
   21543 
   21544         (WebKit::NPObjectProxy::NP_GetProperty):
   21545         Call getProperty.
   21546 
   21547         * Shared/Plugins/NPRemoteObjectMap.cpp:
   21548         (WebKit::NPRemoteObjectMap::createNPObjectProxy):
   21549         Pass the NPRemoteObjectMap.
   21550 
   21551         (WebKit::NPRemoteObjectMap::didReceiveSyncMessage):
   21552         Find the right message receiver and dispatch the message to it.
   21553 
   21554         * Shared/Plugins/NPVariantData.cpp:
   21555         * Shared/Plugins/NPVariantData.h:
   21556         Add NPVariantData, which will be a CoreIPC representation of an NPVariant.
   21557         
   21558         * WebKit2.xcodeproj/project.pbxproj:
   21559         Add new files.
   21560 
   21561         * WebProcess/Plugins/PluginProcessConnection.cpp:
   21562         (WebKit::PluginProcessConnection::didReceiveSyncMessage):
   21563         If the message class is MessageClassNPObjectMessageReceiver, pass it to the NPRemoteObjectMap.
   21564 
   21565 2010-11-01  Anders Carlsson  <andersca (a] apple.com>
   21566 
   21567         Reviewed by Sam Weinig.
   21568 
   21569         Add ArgumentCoder specialization for WTF::CString
   21570         https://bugs.webkit.org/show_bug.cgi?id=48796
   21571 
   21572         * Platform/CoreIPC/ArgumentCoders.h:
   21573 
   21574 2010-11-01  Anders Carlsson  <andersca (a] apple.com>
   21575 
   21576         Fix build.
   21577 
   21578         * WebKit2.xcodeproj/project.pbxproj:
   21579 
   21580 2010-11-01  Anders Carlsson  <andersca (a] apple.com>
   21581 
   21582         Reviewed by Adam Roben.
   21583 
   21584         Add NPObjectMessageReceiver.messages.in
   21585         https://bugs.webkit.org/show_bug.cgi?id=48782
   21586 
   21587         * DerivedSources.make:
   21588         Add NPObjectMessageReceiver.
   21589 
   21590         * Platform/CoreIPC/MessageID.h:
   21591         Add MessageClassNPObjectMessageReceiver message class.
   21592 
   21593         * Shared/Plugins/NPObjectMessageReceiver.cpp:
   21594         (WebKit::NPObjectMessageReceiver::deallocate):
   21595         Add stubbed out deallocate member function.
   21596 
   21597         * Shared/Plugins/NPObjectMessageReceiver.messages.in: Added.
   21598 
   21599         * WebKit2.xcodeproj/project.pbxproj:
   21600         Add NPObjectMessageReceiver.messages.in.
   21601 
   21602 2010-11-01  Anders Carlsson  <andersca (a] apple.com>
   21603 
   21604         Reviewed by Adam Roben.
   21605 
   21606         Start stubbing out NPClass functions in NPObjectProxy
   21607         https://bugs.webkit.org/show_bug.cgi?id=48778
   21608 
   21609         * PluginProcess/PluginControllerProxy.cpp:
   21610         (WebKit::PluginControllerProxy::windowScriptNPObject):
   21611         getOrCreateNPObjectProxy is now createNPObjectProxy.
   21612 
   21613         * Shared/Plugins/NPObjectProxy.cpp:
   21614         (WebKit::NPObjectProxy::create):
   21615         Allocate and initialize an NPObjectProxy object.
   21616 
   21617         (WebKit::NPObjectProxy::NPObjectProxy):
   21618         Initialize m_npObjectID to 0.
   21619 
   21620         (WebKit::NPObjectProxy::isNPObjectProxy):
   21621         Check the class.
   21622 
   21623         (WebKit::NPObjectProxy::initialize):
   21624         Set m_npObjectID.
   21625 
   21626         (WebKit::NPObjectProxy::npClass):
   21627         Return the NPClass with all functions filled in.
   21628 
   21629         (WebKit::NPObjectProxy::NP_Allocate):
   21630         Create a new NPObjectProxy object.
   21631 
   21632         (WebKit::NPObjectProxy::NP_Deallocate):
   21633         Deallocate the NPObjectProxy object.
   21634 
   21635         (WebKit::NPObjectProxy::NP_HasMethod):
   21636         (WebKit::NPObjectProxy::NP_Invoke):
   21637         (WebKit::NPObjectProxy::NP_InvokeDefault):
   21638         (WebKit::NPObjectProxy::NP_HasProperty):
   21639         (WebKit::NPObjectProxy::NP_GetProperty):
   21640         (WebKit::NPObjectProxy::NP_SetProperty):
   21641         (WebKit::NPObjectProxy::NP_RemoveProperty):
   21642         (WebKit::NPObjectProxy::NP_Enumerate):
   21643         (WebKit::NPObjectProxy::NP_Construct):
   21644         Add stubs.
   21645 
   21646         * Shared/Plugins/NPRemoteObjectMap.cpp:
   21647         (WebKit::NPRemoteObjectMap::createNPObjectProxy):
   21648         * Shared/Plugins/NPRemoteObjectMap.h:
   21649         Rename getOrCreateNPObjectProxy to createNPObjectProxy.
   21650 
   21651         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
   21652         (WebKit::NPJSObject::NP_Allocate):
   21653         Remove unused parameter.
   21654 
   21655 2010-11-01  Anders Carlsson  <andersca (a] apple.com>
   21656 
   21657         Reviewed by Adam Roben.
   21658 
   21659         Both the WebProcessConnection and PluginProcessConnection should have NPRemoteObjectMaps
   21660         https://bugs.webkit.org/show_bug.cgi?id=48775
   21661 
   21662         * PluginProcess/PluginControllerProxy.cpp:
   21663         (WebKit::PluginControllerProxy::windowScriptNPObject):
   21664         Ask for an NPObjectProxy for the window script NPObject.
   21665 
   21666         * PluginProcess/WebProcessConnection.cpp:
   21667         (WebKit::WebProcessConnection::WebProcessConnection):
   21668         Initialize m_npRemoteObjectMap.
   21669 
   21670         * Shared/Plugins/NPObjectMessageReceiver.cpp:
   21671         (WebKit::NPObjectMessageReceiver::create):
   21672         Add a create member function that takes an NPObject.
   21673 
   21674         (WebKit::NPObjectMessageReceiver::NPObjectMessageReceiver):
   21675         Retain the NPObject.
   21676 
   21677         (WebKit::NPObjectMessageReceiver::~NPObjectMessageReceiver):
   21678         Release the NPObject.
   21679 
   21680         * Shared/Plugins/NPRemoteObjectMap.cpp:
   21681         (WebKit::generateNPObjectID):
   21682         Generate a unique 64-bit NPObject ID.
   21683 
   21684         (WebKit::NPRemoteObjectMap::getOrCreateNPObjectProxy):
   21685         Add stub.
   21686 
   21687         (WebKit::NPRemoteObjectMap::registerNPObject):
   21688         Create a NPObjectMessageReceiver and add it to the map.
   21689 
   21690         * WebKit2.xcodeproj/project.pbxproj:
   21691         Set the correct target for NPRuntime related files.
   21692 
   21693         * WebProcess/Plugins/PluginProcessConnection.cpp:
   21694         (WebKit::PluginProcessConnection::PluginProcessConnection):
   21695         Initialize m_npRemoteObjectMap
   21696 
   21697         * WebProcess/Plugins/PluginProxy.cpp:
   21698         (WebKit::PluginProxy::getWindowScriptNPObject):
   21699         Ask the real plug-in controller for the window script NPObject and register it.
   21700 
   21701 2010-11-01  John Sullivan  <sullivan (a] apple.com>
   21702 
   21703         Reviewed by Anders Carlsson.
   21704 
   21705         https://bugs.webkit.org/show_bug.cgi?id=48774
   21706         minimFontSize preference needs to be exposed in WebKit2
   21707 
   21708         * UIProcess/WebPreferences.cpp:
   21709         (WebKit::WebPreferences::setMinimumFontSize):
   21710         New function, parallel to existing functions for other preferences.
   21711         (WebKit::WebPreferences::minimumFontSize):
   21712         Ditto.
   21713 
   21714         * UIProcess/WebPreferences.h:
   21715         Declared new function.
   21716 
   21717         * UIProcess/API/C/WKPreferences.cpp:
   21718         (WKPreferencesSetMinimumFontSize):
   21719         New UI process wrapper for new function.
   21720         (WKPreferencesGetMinimumFontSize):
   21721         Ditto.
   21722 
   21723         * UIProcess/API/C/WKPreferences.h:
   21724         Declared new functions.
   21725 
   21726 2010-11-01  Anders Carlsson  <andersca (a] apple.com>
   21727 
   21728         Reviewed by John Sullivan.
   21729 
   21730         Tear down the related WebProcessProxy when a WebContext is deallocated
   21731         https://bugs.webkit.org/show_bug.cgi?id=48769
   21732 
   21733         * UIProcess/WebContext.cpp:
   21734         (WebKit::WebContext::~WebContext):
   21735         Call WebProcessManager::contextWasDestroyed.
   21736 
   21737         (WebKit::WebContext::didNavigateWithNavigationData):
   21738         (WebKit::WebContext::didPerformClientRedirect):
   21739         (WebKit::WebContext::didPerformServerRedirect):
   21740         (WebKit::WebContext::didUpdateHistoryTitle):
   21741         It is valid for a frame to have a null page here, if the frame has outlived
   21742         its page.
   21743 
   21744         * UIProcess/WebProcessManager.cpp:
   21745         (WebKit::WebProcessManager::contextWasDestroyed):
   21746         Remove the context from the map.
   21747 
   21748         * UIProcess/WebProcessProxy.cpp:
   21749         (WebKit::WebProcessProxy::~WebProcessProxy):
   21750         It's OK for the connection to be non-null here if the process goes away because
   21751         the context has been deallocated.
   21752 
   21753 2010-11-01  Brady Eidson  <beidson (a] apple.com>
   21754 
   21755         Windows build fix.
   21756 
   21757         * UIProcess/win/WebView.cpp:
   21758 
   21759 2010-11-01  Brady Eidson  <beidson (a] apple.com>
   21760 
   21761         Reviewed by Anders Carlsson.
   21762 
   21763         <rdar://problem/7660547> and https://bugs.webkit.org/show_bug.cgi?id=48699
   21764         Context menu support for WebKit 2.
   21765 
   21766         * WebKit2.pro:
   21767         * WebKit2.xcodeproj/project.pbxproj:
   21768         * win/WebKit2.vcproj:
   21769 
   21770         * Shared/WebContextMenuItem.cpp: Added.
   21771         (WebKit::WebContextMenuItem::WebContextMenuItem):
   21772         (WebKit::WebContextMenuItem::encode):
   21773         (WebKit::WebContextMenuItem::decode):
   21774         (WebKit::kitItems):
   21775         * Shared/WebContextMenuItem.h: Added.
   21776 
   21777         * UIProcess/API/mac/PageClientImpl.h:
   21778         * UIProcess/API/mac/PageClientImpl.mm:
   21779         (WebKit::PageClientImpl::createContextMenuProxy):
   21780         * UIProcess/API/qt/qwkpage.cpp:
   21781         (QWKPagePrivate::createContextMenuProxy): Stub to keep the build working.
   21782         * UIProcess/API/qt/qwkpage_p.h:
   21783         * UIProcess/PageClient.h:
   21784 
   21785         * UIProcess/WebContextMenuProxy.cpp: Added.
   21786         (WebKit::WebContextMenuProxy::~WebContextMenuProxy):
   21787         (WebKit::WebContextMenuProxy::WebContextMenuProxy):
   21788         * UIProcess/WebContextMenuProxy.h: Added.
   21789 
   21790         * UIProcess/WebPageProxy.cpp:
   21791         (WebKit::WebPageProxy::showContextMenu): Shows the menu after receiving the message from the WebProcess.
   21792         (WebKit::WebPageProxy::contextMenuItemSelected): Sends info about the selected menu item to the WebProcess
   21793         * UIProcess/WebPageProxy.h:
   21794         * UIProcess/WebPageProxy.messages.in:
   21795 
   21796         * UIProcess/mac/WebContextMenuProxyMac.h: Added.
   21797         (WebKit::WebContextMenuProxyMac::create):
   21798         * UIProcess/mac/WebContextMenuProxyMac.mm: Added.
   21799         (+[WebMenuTarget sharedMenuTarget]):
   21800         (-[WebMenuTarget WebKit::]):
   21801         (-[WebMenuTarget setMenuProxy:WebKit::]):
   21802         (-[WebMenuTarget forwardContextMenuAction:]):
   21803         (WebKit::WebContextMenuProxyMac::WebContextMenuProxyMac):
   21804         (WebKit::WebContextMenuProxyMac::~WebContextMenuProxyMac):
   21805         (WebKit::WebContextMenuProxyMac::contextMenuItemSelected):
   21806         (WebKit::populateNSMenu):
   21807         (WebKit::nsMenuItemVector):
   21808         (WebKit::WebContextMenuProxyMac::populate):
   21809         (WebKit::WebContextMenuProxyMac::showContextMenu):
   21810         (WebKit::WebContextMenuProxyMac::hideContextMenu):
   21811 
   21812         * UIProcess/win/WebView.cpp:
   21813         (WebKit::WebView::createContextMenuProxy): Stub for now.
   21814         * UIProcess/win/WebView.h:
   21815 
   21816         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   21817         (WebKit::WebChromeClient::showContextMenu):
   21818         * WebProcess/WebCoreSupport/WebChromeClient.h:
   21819 
   21820         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
   21821         (WebKit::WebContextMenuClient::getCustomMenuFromDefaultItems): Return the WebCore-provided default
   21822           menu for now. Embedding app customization will come later (see bug 48720)
   21823 
   21824         * WebProcess/WebPage/WebContextMenu.cpp: Added.
   21825         (WebKit::WebContextMenu::WebContextMenu):
   21826         (WebKit::WebContextMenu::~WebContextMenu):
   21827         (WebKit::WebContextMenu::show):
   21828         (WebKit::WebContextMenu::itemSelected):
   21829         * WebProcess/WebPage/WebContextMenu.h: Added.
   21830         (WebKit::WebContextMenu::create):
   21831 
   21832         * WebProcess/WebPage/WebPage.cpp:
   21833         (WebKit::WebPage::contextMenu):
   21834         (WebKit::handleMouseEvent): Pass right mouse presses along to WebCore as both a mouse event and context menu event, 
   21835           the same way WebKit1 does.
   21836         (WebKit::WebPage::didSelectItemFromActiveContextMenu):
   21837         * WebProcess/WebPage/WebPage.h:
   21838         * WebProcess/WebPage/WebPage.messages.in:
   21839 
   21840 2010-11-01  Adam Roben  <aroben (a] apple.com>
   21841 
   21842         Cancel main resource loads after we hand them off to the media engine
   21843 
   21844         This is the WebKit2 equivalent of r51104. Clearly this code should be
   21845         moved to a cross-platform location someday.
   21846 
   21847         Fixes <http://webkit.org/b/48561> <rdar://problem/8606679> Assertion
   21848         failure in DocumentLoader::commitData when loading a media document in
   21849         WebKit2
   21850 
   21851         Reviewed by Eric Carlson.
   21852 
   21853         * WebProcess/WebCoreSupport/WebErrors.h: Added pluginWillHandleLoadError.
   21854 
   21855         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   21856         (WebFrameLoaderClient::committedLoad): Cancel the main resource load
   21857         after handing off the load to the media engine. This code originally
   21858         came from -[WebHTMLRepresentation receivedData:withDataSource:].
   21859         (WebKit::WebFrameLoaderClient::pluginWillHandleLoadError): Call through to WebErrors.
   21860         (WebKit::WebFrameLoaderClient::shouldFallBack): Implemented. We fall
   21861         back for all errors except when the load was cancelled or we handed it
   21862         off to the media engine or a plugin.
   21863 
   21864         * WebProcess/WebCoreSupport/mac/WebErrorsMac.mm:
   21865         (WebKit::pluginWillHandleLoadError): Implemented.
   21866 
   21867         * WebProcess/WebCoreSupport/qt/WebErrorsQt.cpp:
   21868         (WebKit::pluginWillHandleLoadError): Stubbed out.
   21869 
   21870         * WebProcess/WebCoreSupport/win/WebErrorsWin.cpp:
   21871         (WebKit::pluginWillHandleLoadError): Implemented.
   21872 
   21873 2010-11-01  Andreas Kling  <kling (a] webkit.org>
   21874 
   21875         Reviewed by Kenneth Rohde Christiansen.
   21876 
   21877         [Qt][WK2] Cleanup viewportAttributesForSize API
   21878 
   21879         Change QSize argument to a const QSize&.
   21880 
   21881         * UIProcess/API/qt/qwkpage.cpp:
   21882         (QWKPage::viewportAttributesForSize):
   21883         * UIProcess/API/qt/qwkpage.h:
   21884 
   21885 2010-10-31  Darin Adler  <darin (a] apple.com>
   21886 
   21887         Reviewed by Dan Bernstein.
   21888 
   21889         Visited links not populated correctly in new web processes after the first
   21890         https://bugs.webkit.org/show_bug.cgi?id=48735
   21891         rdar://problem/8442177
   21892 
   21893         * UIProcess/VisitedLinkProvider.cpp:
   21894         (WebKit::VisitedLinkProvider::VisitedLinkProvider): Initialize
   21895         m_webProcessHasVisitedLinkState.
   21896         (WebKit::VisitedLinkProvider::processDidFinishLaunching): Renamed
   21897         from populateVisitedLinksIfNeeded. Set m_webProcessHasVisitedLinkState
   21898         to false, since this is a new process, and also start the timer
   21899         so the visited links messages will be sent.
   21900         (WebKit::VisitedLinkProvider::processDidClose): Renamed from
   21901         stopVisitedLinksTimer.
   21902         (WebKit::VisitedLinkProvider::pendingVisitedLinksTimerFired):
   21903         Added logic so we send SetVisitedLinkTable and
   21904         AllVisitedLinkStateChanged once to each new process and to set
   21905         m_webProcessHasVisitedLinkState to true once that is done.
   21906 
   21907         * UIProcess/VisitedLinkProvider.h: Updated for above changes.
   21908 
   21909         * UIProcess/WebContext.cpp:
   21910         (WebKit::WebContext::processDidFinishLaunching): Called
   21911         VisitedLinkProvider function under its new name. Also used
   21912         ASSERT_UNUSED rather than ASSERT since the argument is used
   21913         only for the assertion.
   21914         (WebKit::WebContext::processDidClose): Ditto.
   21915 
   21916 2010-10-30  Andreas Kling  <kling (a] webkit.org>
   21917 
   21918         Reviewed by Kenneth Rohde Christiansen.
   21919 
   21920         [Qt][WK2] Crash in drawUpdateChunkIntoBackingStore
   21921         https://bugs.webkit.org/show_bug.cgi?id=48707
   21922 
   21923         UpdateChunk images have to be created using the QImage constructor
   21924         that takes a bytesPerLine (stride) value, or the data length won't
   21925         match UpdateChunk::size().
   21926 
   21927         * Shared/qt/UpdateChunk.cpp:
   21928         (WebKit::UpdateChunk::createImage):
   21929 
   21930 2010-10-29  Daniel Bates  <dbates (a] rim.com>
   21931 
   21932         No review, rolling out 70971.
   21933         http://trac.webkit.org/changeset/70971
   21934         https://bugs.webkit.org/show_bug.cgi?id=6751
   21935 
   21936         Rolling out changeset 70971 <http://trac.webkit.org/changeset/70971> since
   21937         it caused layout test failures on all bots. In particular, the
   21938         child count in a generated frame name differs after this patch. We need
   21939         to look into this further.
   21940 
   21941         * WebProcess/WebPage/WebFrame.cpp:
   21942         (WebKit::WebFrame::name):
   21943 
   21944 2010-10-29  Daniel Bates  <dbates (a] rim.com>
   21945 
   21946         Reviewed by Adam Barth.
   21947 
   21948         For unnamed frames, window.name returns a generated name
   21949         https://bugs.webkit.org/show_bug.cgi?id=6751
   21950 
   21951         Modified WebKit2 to use FrameTree::uniqueName().
   21952 
   21953         * WebProcess/WebPage/WebFrame.cpp:
   21954         (WebKit::WebFrame::name):
   21955 
   21956 2010-10-29  Sam Weinig  <weinig (a] apple.com>
   21957 
   21958         Reviewed by Simon Fraser.
   21959 
   21960         Implement WebProcess::platformSetCacheModel for windows
   21961         <rdar://problem/8605796>
   21962         https://bugs.webkit.org/show_bug.cgi?id=48703
   21963 
   21964         * WebProcess/win/WebProcessWin.cpp:
   21965         (WebKit::memorySize):
   21966         (WebKit::volumeFreeSize):
   21967         (WebKit::WebProcess::platformSetCacheModel):
   21968         Add implemenation based on the version in WebKit/win/WebView.cpp.
   21969 
   21970 2010-10-29  Andreas Kling  <kling (a] webkit.org>
   21971 
   21972         Reviewed by Anders Carlsson.
   21973 
   21974         WK2: Unbreak compilation of WebPlatformTouchPoint::decode()
   21975 
   21976         * Shared/WebPlatformTouchPoint.cpp:
   21977         (WebKit::WebPlatformTouchPoint::decode):
   21978 
   21979 2010-10-29  Darin Adler  <darin (a] apple.com>
   21980 
   21981         Reviewed by Sam Weinig.
   21982 
   21983         More back/forward refactoring
   21984 
   21985         * WebKit2.pro: Removed WebBackForwardControllerClient.cpp and .h.
   21986         * WebKit2.xcodeproj/project.pbxproj: Ditto.
   21987 
   21988         * WebProcess/WebCoreSupport/WebBackForwardControllerClient.cpp: Removed.
   21989         * WebProcess/WebCoreSupport/WebBackForwardControllerClient.h: Removed.
   21990 
   21991         * WebProcess/InjectedBundle/InjectedBundleBackForwardList.cpp:
   21992         (WebKit::InjectedBundleBackForwardList::itemAtIndex): Use backForward.
   21993         (WebKit::InjectedBundleBackForwardList::backListCount): Ditto.
   21994         (WebKit::InjectedBundleBackForwardList::forwardListCount): Ditto.
   21995         (WebKit::InjectedBundleBackForwardList::clear): Ditto.
   21996 
   21997         * WebProcess/WebPage/WebBackForwardListProxy.h: Added newly-needed include.
   21998 
   21999         * WebProcess/WebPage/WebPage.cpp:
   22000         (WebKit::WebPage::WebPage): Set up backForwardClient.
   22001 
   22002 2010-10-29  Adam Roben  <aroben (a] apple.com>
   22003 
   22004         Stop using encode/decodeBytes for WebEvent subclasses
   22005 
   22006         The use of encode/decodeBytes was making these classes sensitive to
   22007         differences in padding on different architectures (e.g., 32-bit vs.
   22008         64-bit). By encoding each data member explicitly we remove this
   22009         sensitivity, allowing these classes to be passed between processes
   22010         with different padding.
   22011 
   22012         Fixes <http://webkit.org/b/48552> <rdar://problem/8606571> Mouse
   22013         events never reach Flash in WebKit2 on Mac (asserts in Debug builds)
   22014 
   22015         Reviewed by Anders Carlsson.
   22016 
   22017         * Platform/CoreIPC/Arguments.h:
   22018         (CoreIPC::Arguments8::Arguments8):
   22019         (CoreIPC::Arguments8::encode):
   22020         (CoreIPC::Arguments8::decode):
   22021         (CoreIPC::In):
   22022         (CoreIPC::Out):
   22023         Added Arguments8, the biggest Arguments yet.
   22024 
   22025         * Shared/WebEvent.cpp:
   22026         (WebKit::WebEvent::encode):
   22027         (WebKit::WebEvent::decode):
   22028         * Shared/WebKeyboardEvent.cpp:
   22029         (WebKit::WebKeyboardEvent::encode):
   22030         (WebKit::WebKeyboardEvent::decode):
   22031         * Shared/WebMouseEvent.cpp:
   22032         (WebKit::WebMouseEvent::encode):
   22033         (WebKit::WebMouseEvent::decode):
   22034         * Shared/WebPlatformTouchPoint.cpp:
   22035         (WebKit::WebPlatformTouchPoint::encode):
   22036         (WebKit::WebPlatformTouchPoint::decode):
   22037         * Shared/WebTouchEvent.cpp:
   22038         (WebKit::WebTouchEvent::encode):
   22039         (WebKit::WebTouchEvent::decode):
   22040         * Shared/WebWheelEvent.cpp:
   22041         (WebKit::WebWheelEvent::encode):
   22042         (WebKit::WebWheelEvent::decode):
   22043         Changed all encode/decode function to use CoreIPC::In/Out to
   22044         encode/decode data members individually.
   22045 
   22046 2010-10-29  Adam Roben  <aroben (a] apple.com>
   22047 
   22048         Use only CoreIPC-sanctioned types in WebEvent subclasses
   22049 
   22050         Fixes <http://webkit.org//48694> WebEvent subclasses should not use
   22051         architecture-dependent types
   22052 
   22053         Reviewed by Anders Carlsson.
   22054 
   22055         * Shared/WebEvent.h:
   22056         (WebKit::WebEvent::type):
   22057         (WebKit::WebMouseEvent::button):
   22058         (WebKit::WebMouseEvent::clickCount):
   22059         (WebKit::WebWheelEvent::granularity):
   22060         (WebKit::WebPlatformTouchPoint::id):
   22061         (WebKit::WebPlatformTouchPoint::state):
   22062         Replaced enums, ints, and unsigneds with uint32_ts, int32_ts, and
   22063         uint32_ts, respectively.
   22064 
   22065 2010-10-29  Anders Carlsson  <andersca (a] apple.com>
   22066 
   22067         Reviewed by Adam Roben.
   22068 
   22069         Generate a DelayedReply struct for sync messages marked delayed
   22070         https://bugs.webkit.org/show_bug.cgi?id=48696
   22071 
   22072         * Scripts/webkit2/messages.py:
   22073         If we encounter a sync message marked delayed, generate a DelayedReply struct with a send member funciton
   22074         that can be used for sending the reply.
   22075 
   22076         * Scripts/webkit2/messages_unittest.py:
   22077         Update expected results.
   22078 
   22079 2010-10-29  Anders Carlsson  <andersca (a] apple.com>
   22080 
   22081         Reviewed by Adam Roben.
   22082 
   22083         Use WebPage::send in a couple of more places.
   22084 
   22085         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   22086         (WebKit::WebChromeClient::setWindowRect):
   22087         (WebKit::WebChromeClient::takeFocus):
   22088         (WebKit::WebChromeClient::setToolbarsVisible):
   22089         (WebKit::WebChromeClient::setStatusbarVisible):
   22090         (WebKit::WebChromeClient::setMenubarVisible):
   22091         (WebKit::WebChromeClient::setResizable):
   22092         (WebKit::WebChromeClient::setStatusbarText):
   22093         (WebKit::WebChromeClient::contentsSizeChanged):
   22094         (WebKit::WebChromeClient::mouseDidMoveOverElement):
   22095         (WebKit::WebChromeClient::setToolTip):
   22096         (WebKit::WebChromeClient::setCursor):
   22097         (WebKit::WebChromeClient::dispatchViewportDataDidChange):
   22098         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   22099         (WebKit::WebEditorClient::registerCommandForUndo):
   22100         (WebKit::WebEditorClient::clearUndoRedoOperations):
   22101         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   22102         (WebKit::WebFrameLoaderClient::detachedFromParent2):
   22103         (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
   22104         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
   22105         (WebKit::WebFrameLoaderClient::dispatchDidReceiveTitle):
   22106         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
   22107         (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
   22108         (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
   22109         (WebKit::WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
   22110         (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
   22111         (WebKit::WebFrameLoaderClient::dispatchDidFirstLayout):
   22112         (WebKit::WebFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
   22113         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
   22114         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
   22115         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
   22116         (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
   22117         (WebKit::WebFrameLoaderClient::postProgressStartedNotification):
   22118         (WebKit::WebFrameLoaderClient::postProgressEstimateChangedNotification):
   22119         (WebKit::WebFrameLoaderClient::postProgressFinishedNotification):
   22120         (WebKit::WebFrameLoaderClient::didDisplayInsecureContent):
   22121         (WebKit::WebFrameLoaderClient::didRunInsecureContent):
   22122         (WebKit::WebFrameLoaderClient::dispatchDidBecomeFrameset):
   22123         * WebProcess/WebPage/FindController.cpp:
   22124         (WebKit::FindController::findString):
   22125         (WebKit::FindController::hideFindIndicator):
   22126         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   22127         (WebKit::WebBackForwardListProxy::addItem):
   22128         (WebKit::WebBackForwardListProxy::goToItem):
   22129         (WebKit::WebBackForwardListProxy::clear):
   22130         * WebProcess/WebPage/WebFrame.cpp:
   22131         (WebKit::WebFrame::createMainFrame):
   22132         (WebKit::WebFrame::createSubframe):
   22133         * WebProcess/WebPage/WebPage.cpp:
   22134         (WebKit::WebPage::sendClose):
   22135         (WebKit::WebPage::pageDidScroll):
   22136         (WebKit::WebPage::mouseEvent):
   22137         (WebKit::WebPage::wheelEvent):
   22138         (WebKit::WebPage::keyEvent):
   22139         (WebKit::WebPage::validateMenuItem):
   22140         (WebKit::WebPage::touchEvent):
   22141         (WebKit::WebPage::show):
   22142         (WebKit::WebPage::runJavaScriptInMainFrame):
   22143         (WebKit::WebPage::getRenderTreeExternalRepresentation):
   22144         (WebKit::WebPage::getSourceForFrame):
   22145 
   22146 2010-10-29  Anders Carlsson  <andersca (a] apple.com>
   22147 
   22148         Reviewed by Adam Roben.
   22149 
   22150         Add a MessageSender class template
   22151         https://bugs.webkit.org/show_bug.cgi?id=48683
   22152 
   22153         * Platform/CoreIPC/MessageSender.h: Added.
   22154         (CoreIPC::MessageSender::send):
   22155         Add send overloads for simple message sending.
   22156 
   22157         * WebKit2.pro:
   22158         * WebKit2.xcodeproj/project.pbxproj:
   22159         Add MessageSender.h
   22160 
   22161         * WebProcess/WebPage/FindController.cpp:
   22162         (WebKit::FindController::countStringMatches):
   22163         (WebKit::FindController::findString):
   22164         (WebKit::FindController::updateFindIndicator):
   22165         Call send on the web page.
   22166 
   22167         * WebProcess/WebPage/WebPage.cpp:
   22168         (WebKit::WebPage::connection):
   22169         Add connection(), used by the MessageSender.
   22170         
   22171         * WebProcess/WebPage/WebPage.h:
   22172         (WebKit::WebPage::destinationID):
   22173         Add destinationID(), used by the MessageSender.
   22174 
   22175         * win/WebKit2.vcproj:
   22176         Add MessageSender.h
   22177 
   22178 2010-10-29  Adam Roben  <aroben (a] apple.com>
   22179 
   22180         Remove redundant data members from WebTouchEvent
   22181 
   22182         WebEvent already stores the Type and timestamp.
   22183 
   22184         Fixes <http://webkit.org/b/48671> WebTouchEvent duplicates data from
   22185         WebEvent
   22186 
   22187         Reviewed by Anders Carlsson.
   22188 
   22189         * Shared/WebEvent.h:
   22190         * Shared/WebTouchEvent.cpp:
   22191         (WebKit::WebTouchEvent::WebTouchEvent):
   22192         Removed m_type and m_timestamp (which was never even getting
   22193         initialized!).
   22194 
   22195 2010-10-29  Anders Carlsson  <andersca (a] apple.com>
   22196 
   22197         Reviewed by Adam Roben.
   22198 
   22199         Add the plug-in proxy to the map before sending the CreatePlugin message
   22200         https://bugs.webkit.org/show_bug.cgi?id=48678
   22201 
   22202         * WebProcess/Plugins/PluginProxy.cpp:
   22203         (WebKit::PluginProxy::initialize):
   22204 
   22205 2010-10-29  Anders Carlsson  <andersca (a] apple.com>
   22206 
   22207         Reviewed by Adam Roben.
   22208 
   22209         Add GetWindowScriptNPObject message
   22210         https://bugs.webkit.org/show_bug.cgi?id=48670
   22211 
   22212         * PluginProcess/PluginControllerProxy.cpp:
   22213         (WebKit::PluginControllerProxy::windowScriptNPObject):
   22214         Send the GetWindowScriptNPObject message.
   22215 
   22216         * WebProcess/Plugins/PluginProxy.cpp:
   22217         (WebKit::PluginProxy::getWindowScriptNPObject):
   22218         Add stub.
   22219 
   22220         * WebProcess/Plugins/PluginProxy.messages.in:
   22221         Add GetWindowScriptNPObject message.
   22222 
   22223 2010-10-29  Anders Carlsson  <andersca (a] apple.com>
   22224 
   22225         Reviewed by Dan Bernstein.
   22226 
   22227         Change the Connection::sendSync timeout parameter to have the NoTimeout argument as a default
   22228         argument and update all the call sites.
   22229 
   22230         * Platform/CoreIPC/Connection.h:
   22231         * PluginProcess/PluginControllerProxy.cpp:
   22232         (WebKit::PluginControllerProxy::proxiesForURL):
   22233         (WebKit::PluginControllerProxy::cookiesForURL):
   22234         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   22235         (WebKit::InjectedBundle::postSynchronousMessage):
   22236         * WebProcess/Plugins/PluginProcessConnectionManager.cpp:
   22237         (WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
   22238         * WebProcess/Plugins/PluginProxy.cpp:
   22239         (WebKit::PluginProxy::initialize):
   22240         (WebKit::PluginProxy::destroy):
   22241         (WebKit::PluginProxy::paint):
   22242         (WebKit::PluginProxy::handleMouseEvent):
   22243         (WebKit::PluginProxy::handleWheelEvent):
   22244         (WebKit::PluginProxy::handleMouseEnterEvent):
   22245         (WebKit::PluginProxy::handleMouseLeaveEvent):
   22246         (WebKit::PluginProxy::handleKeyboardEvent):
   22247         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   22248         (WebKit::WebChromeClient::windowRect):
   22249         (WebKit::WebChromeClient::createWindow):
   22250         (WebKit::WebChromeClient::toolbarsVisible):
   22251         (WebKit::WebChromeClient::statusbarVisible):
   22252         (WebKit::WebChromeClient::menubarVisible):
   22253         (WebKit::WebChromeClient::canRunBeforeUnloadConfirmPanel):
   22254         (WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
   22255         (WebKit::WebChromeClient::runJavaScriptAlert):
   22256         (WebKit::WebChromeClient::runJavaScriptConfirm):
   22257         (WebKit::WebChromeClient::runJavaScriptPrompt):
   22258         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   22259         (WebKit::WebPlatformStrategies::populatePluginCache):
   22260         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   22261         (WebKit::WebBackForwardListProxy::itemAtIndex):
   22262         (WebKit::WebBackForwardListProxy::backListCount):
   22263         (WebKit::WebBackForwardListProxy::forwardListCount):
   22264         * WebProcess/WebPage/WebPage.cpp:
   22265         (WebKit::WebPage::createPlugin):
   22266         (WebKit::WebPage::changeAcceleratedCompositingMode):
   22267         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   22268         (WebKit::LayerBackedDrawingArea::attachCompositingContext):
   22269         * WebProcess/WebPage/mac/WebPageMac.mm:
   22270         (WebKit::WebPage::interceptEditingKeyboardEvent):
   22271 
   22272 2010-10-29  John Sullivan  <sullivan (a] apple.com>
   22273 
   22274         Reviewed by Anders Carlsson.
   22275 
   22276         https://bugs.webkit.org/show_bug.cgi?id=48666
   22277         WebKit2 should provide counterpart getter to WKBundleNodeHandleSetHTMLInputElementAutofilled
   22278 
   22279         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
   22280         (WKBundleNodeHandleGetHTMLInputElementAutofilled):
   22281         New function, calls through to InjectedBundleNodeHandle.
   22282 
   22283         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h:
   22284         Declared new function.
   22285 
   22286         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
   22287         (WebKit::InjectedBundleNodeHandle::isHTMLInputElementAutofilled):
   22288         New function, calls through to HTMLInputElement.
   22289 
   22290         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
   22291         Declared new function.
   22292 
   22293 2010-10-29  Jessie Berlin  <jberlin (a] apple.com>
   22294 
   22295         Reviewed by Anders Carlsson.
   22296 
   22297         ASSERTION FAILURE in WebProcessProxy::frameDestroyed when a Page is closed before it can send
   22298         the DidCreateMainFrame messsage to the UIProcess.
   22299         https://bugs.webkit.org/show_bug.cgi?id=48654
   22300 
   22301         WebProcessProxy::frameDestroyed was asserting that the frameID it was called with was
   22302         registered in WebProcessProxy::frameCreated (which is called when the WebPageProxy is
   22303         created). However, in the case where we close the page before it's had the chance to send
   22304         the DidCreateMainFrame message back to the UI process, the UI Process will get the
   22305         DidDestroyFrame message because it's sent directly to the WebProcessProxy and doesn't go
   22306         through WebPageProxy.
   22307 
   22308         Remove the assert because it is invalid in this case.
   22309 
   22310         * UIProcess/WebProcessProxy.cpp:
   22311         (WebKit::WebProcessProxy::frameDestroyed):
   22312 
   22313 2010-10-29  Adam Roben  <aroben (a] apple.com>
   22314 
   22315         Build fix when Carbon plugins are disabled
   22316 
   22317         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   22318         (WebKit::NetscapePlugin::platformHandleMouseEvent):
   22319 
   22320 2010-10-29  Adam Roben  <aroben (a] apple.com>
   22321 
   22322         Move NPRuntime-related files into WebProcess/Plugins/Netscape
   22323 
   22324         Fixes <http://webkit.org/b/48645>.
   22325 
   22326         Reviewed by Anders Carlsson.
   22327 
   22328         * WebKit2.pro:
   22329         * WebKit2.xcodeproj/project.pbxproj:
   22330         * win/WebKit2.vcproj:
   22331         Updated the files' paths.
   22332 
   22333         * WebProcess/Plugins/Netscape/JSNPMethod.cpp: Renamed from WebKit2/WebProcess/Plugins/JSNPMethod.cpp.
   22334         * WebProcess/Plugins/Netscape/JSNPMethod.h: Renamed from WebKit2/WebProcess/Plugins/JSNPMethod.h.
   22335         * WebProcess/Plugins/Netscape/JSNPObject.cpp: Renamed from WebKit2/WebProcess/Plugins/JSNPObject.cpp.
   22336         * WebProcess/Plugins/Netscape/JSNPObject.h: Renamed from WebKit2/WebProcess/Plugins/JSNPObject.h.
   22337         * WebProcess/Plugins/Netscape/NPJSObject.cpp: Renamed from WebKit2/WebProcess/Plugins/NPJSObject.cpp.
   22338         * WebProcess/Plugins/Netscape/NPJSObject.h: Renamed from WebKit2/WebProcess/Plugins/NPJSObject.h.
   22339         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp: Renamed from WebKit2/WebProcess/Plugins/NPRuntimeObjectMap.cpp.
   22340         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h: Renamed from WebKit2/WebProcess/Plugins/NPRuntimeObjectMap.h.
   22341         * WebProcess/Plugins/Netscape/NPRuntimeUtilities.cpp: Renamed from WebKit2/WebProcess/Plugins/NPRuntimeUtilities.cpp.
   22342         * WebProcess/Plugins/Netscape/NPRuntimeUtilities.h: Renamed from WebKit2/WebProcess/Plugins/NPRuntimeUtilities.h.
   22343 
   22344 2010-10-29  Alexey Proskuryakov  <ap (a] apple.com>
   22345 
   22346         Reviewed by Darin Adler.
   22347 
   22348         https://bugs.webkit.org/show_bug.cgi?id=48576
   22349         Let WebKit2 client know when a frame is a frameset
   22350 
   22351         * UIProcess/WebFrameProxy.cpp:
   22352         (WebKit::WebFrameProxy::WebFrameProxy):
   22353         * UIProcess/WebFrameProxy.h:
   22354         (WebKit::WebFrameProxy::setIsFrameSet):
   22355         (WebKit::WebFrameProxy::isFrameSet):
   22356         Remember whether the frame is currently a frameset.
   22357 
   22358         * UIProcess/API/C/WKFrame.cpp: (WKFrameIsFrameSet):
   22359         * UIProcess/API/C/WKFrame.h:
   22360         Added client API.
   22361 
   22362         * UIProcess/WebPageProxy.cpp:
   22363         (WebKit::WebPageProxy::didCommitLoadForFrame):
   22364         (WebKit::WebPageProxy::frameDidBecomeFrameSet):
   22365         * UIProcess/WebPageProxy.h:
   22366         * UIProcess/WebPageProxy.messages.in:
   22367         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   22368         (WebKit::WebFrameLoaderClient::dispatchDidBecomeFrameset):
   22369         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   22370         Pass notification from web process to UI process.
   22371 
   22372 2010-10-28  Adam Roben  <aroben (a] apple.com>
   22373 
   22374         Use IntPoint/FloatSize in WebEvent subclasses
   22375 
   22376         This is nicer than passing around pairs of ints/floats.
   22377 
   22378         Fixes <http://webkit.org/b/48611>.
   22379 
   22380         Reviewed by Anders Carlsson.
   22381 
   22382         * Shared/WebEvent.h:
   22383         * Shared/WebMouseEvent.cpp:
   22384         * Shared/WebPlatformTouchPoint.cpp:
   22385         * Shared/WebWheelEvent.cpp:
   22386         Changed all x/y pairs to either use IntPoint or FloatSize, as
   22387         appropriate.
   22388 
   22389         * Shared/WebEventConversion.cpp:
   22390         * Shared/mac/WebEventFactory.mm:
   22391         * Shared/qt/WebEventFactoryQt.cpp:
   22392         * Shared/win/WebEventFactory.cpp:
   22393         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   22394         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
   22395         Updated for WebEvent changes.
   22396 
   22397 2010-10-29  Adam Roben  <aroben (a] apple.com>
   22398 
   22399         Touch WebKit2Prefix.h to fix incremental builds on Windows
   22400 
   22401         * WebKit2Prefix.h:
   22402 
   22403 2010-10-28  Adam Roben  <aroben (a] apple.com>
   22404 
   22405         Remove unnecessary #includes from WebEvent.h
   22406 
   22407         Fixes <http://webkit.org/b/48609> WebEvent.h #includes things it
   22408         doesn't need
   22409 
   22410         Reviewed by Sam Weinig.
   22411 
   22412         * Scripts/webkit2/messages.py:
   22413         (MessageReceiver.iterparameters): Merged iterreplyparameters into this
   22414         function. All callers to iterparameters are really interested in the
   22415         reply parameters, too. This will cause us to, e.g., add
   22416         forward-declarations for types used in sync replies.
   22417         (headers_for_type): Added a special case for WebCore::KeypressCommand.
   22418 
   22419         * Scripts/webkit2/messages_unittest.py: Added a test to cover the
   22420         failing case that inspired the above changes.
   22421 
   22422         * Shared/WebEvent.h: Replaced #includes with forward-declarations.
   22423 
   22424         * Shared/API/c/WKSharedAPICast.h:
   22425         * Shared/NativeWebKeyboardEvent.h:
   22426         * Shared/WebEvent.cpp:
   22427         * Shared/WebKeyboardEvent.cpp:
   22428         * Shared/WebMouseEvent.cpp:
   22429         * Shared/WebPlatformTouchPoint.cpp:
   22430         * Shared/WebTouchEvent.cpp:
   22431         * Shared/WebWheelEvent.cpp:
   22432         * Shared/qt/WebEventFactoryQt.cpp:
   22433         * Shared/win/WebEventFactory.cpp:
   22434         * UIProcess/API/qt/qwkpage.cpp:
   22435         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   22436         * UIProcess/WebUIClient.cpp:
   22437         * UIProcess/WebUIClient.h:
   22438         * UIProcess/win/WebView.cpp:
   22439         * WebProcess/WebPage/FindController.cpp:
   22440         * WebProcess/WebPage/mac/WebPageMac.mm:
   22441         Added now-needed #includes and declarations.
   22442 
   22443 2010-10-29  Csaba Osztrogonc  <ossy (a] webkit.org>
   22444 
   22445         Reviewed by Adam Roben and David Kilzer.
   22446 
   22447         Fix and cleanup of build systems
   22448         https://bugs.webkit.org/show_bug.cgi?id=48342
   22449 
   22450         * Configurations/FeatureDefines.xcconfig: Remove unnecessary ENABLE_SANDBOX and add missing features.
   22451 
   22452 2010-10-28  Dan Bernstein  <mitz (a] apple.com>
   22453 
   22454         LLVM compiler build fix
   22455 
   22456         * WebProcess/Downloads/mac/DownloadMac.mm:
   22457         (-[WKDownloadAsDelegate download:didReceiveResponse:]): Removed a stray semicolon.
   22458 
   22459 2010-10-28  Adam Roben  <aroben (a] apple.com>
   22460 
   22461         Move some function definitions from WebEvent.h into new .cpp files
   22462 
   22463         Someday maybe we'll split the classes into their own header files,
   22464         too.
   22465 
   22466         Fixes <http://webkit.org/b/48604>.
   22467 
   22468         Reviewed by Anders Carlsson.
   22469 
   22470         * Shared/WebEvent.h: Moved code from here...
   22471 
   22472         * Shared/WebEvent.cpp: Added.
   22473         * Shared/WebKeyboardEvent.cpp: Added.
   22474         * Shared/WebMouseEvent.cpp: Added.
   22475         * Shared/WebPlatformTouchPoint.cpp: Added.
   22476         * Shared/WebTouchEvent.cpp: Added.
   22477         * Shared/WebWheelEvent.cpp: Added.
   22478         ...to here. Also changed WebTouchEvent::touchPoints not to copy the
   22479         Vector.
   22480 
   22481         * WebKit2.pro:
   22482         * WebKit2.xcodeproj/project.pbxproj:
   22483         * win/WebKit2.vcproj:
   22484         Added the new files.
   22485 
   22486 2010-10-28  Anders Carlsson  <andersca (a] apple.com>
   22487 
   22488         Reviewed by Adam Roben.
   22489 
   22490         Connection::sendSyncMessage needs to dispatch incoming sync messages
   22491         https://bugs.webkit.org/show_bug.cgi?id=48606
   22492 
   22493         * Platform/CoreIPC/Connection.cpp:
   22494         (CoreIPC::Connection::sendSyncMessage):
   22495         Protect the connection when waiting for a reply. Schedule for any remaining incoming sync messages
   22496         to be sent once the bottom-most waitForSyncReply calls returns.
   22497 
   22498         (CoreIPC::Connection::waitForSyncReply):
   22499         Make sure to dispatch any incoming sync messages.
   22500 
   22501         (CoreIPC::Connection::processIncomingMessage):
   22502         If the incoming message is a sync message and we're waiting for a sync reply, add the message to the
   22503         queue of "sync messages received while waiting for sync reply" and wake up the client thread.
   22504 
   22505         * Platform/CoreIPC/Connection.h:
   22506 
   22507 2010-10-28  Anders Carlsson  <andersca (a] apple.com>
   22508 
   22509         Reviewed by Adam Roben.
   22510 
   22511         Move code to dispatch a sync message out into a separate function
   22512         https://bugs.webkit.org/show_bug.cgi?id=48605
   22513 
   22514         * Platform/CoreIPC/Connection.cpp:
   22515         (CoreIPC::Connection::dispatchSyncMessage):
   22516         Factor code out from dispatchMessage. Handle receiving a message with an invalid reply ID.
   22517 
   22518         (CoreIPC::Connection::dispatchMessages):
   22519         Call dispatchSyncMessage.
   22520 
   22521         * Platform/CoreIPC/Connection.h:
   22522 
   22523 2010-10-28  Anders Carlsson  <andersca (a] apple.com>
   22524 
   22525         Reviewed by Darin Adler.
   22526 
   22527         Add NPObjectMessageReceiver class.
   22528         https://bugs.webkit.org/show_bug.cgi?id=48599
   22529 
   22530         * Shared/Plugins/NPObjectMessageReceiver.cpp: Added.
   22531         (WebKit::NPObjectMessageReceiver::NPObjectMessageReceiver):
   22532         (WebKit::NPObjectMessageReceiver::~NPObjectMessageReceiver):
   22533         * Shared/Plugins/NPObjectMessageReceiver.h: Added.
   22534         * WebKit2.xcodeproj/project.pbxproj:
   22535 
   22536 2010-10-28  Anders Carlsson  <andersca (a] apple.com>
   22537 
   22538         Reviewed by Sam Weinig.
   22539 
   22540         Add NPObjectProxy class
   22541         https://bugs.webkit.org/show_bug.cgi?id=48558
   22542 
   22543         * Shared/Plugins/NPObjectProxy.cpp: Added.
   22544         (WebKit::NPObjectProxy::NPObjectProxy):
   22545         (WebKit::NPObjectProxy::~NPObjectProxy):
   22546         * Shared/Plugins/NPObjectProxy.h: Added.
   22547         * WebKit2.xcodeproj/project.pbxproj:
   22548 
   22549 2010-10-28  Anders Carlsson  <andersca (a] apple.com>
   22550 
   22551         Reviewed by Sam Weinig.
   22552 
   22553         Add NPRemoteObjectMap class
   22554         https://bugs.webkit.org/show_bug.cgi?id=48553
   22555 
   22556         * Shared/Plugins/NPRemoteObjectMap.cpp: Added.
   22557         (WebKit::NPRemoteObjectMap::NPRemoteObjectMap):
   22558         * Shared/Plugins/NPRemoteObjectMap.h: Added.
   22559         * WebKit2.xcodeproj/project.pbxproj:
   22560 
   22561 2010-10-28  Sam Weinig  <sam (a] webkit.org>
   22562 
   22563         Reviewed by Anders Carlsson.
   22564 
   22565         WKURLRefs should be allowed to be null
   22566         <rdar://problem/8575621>
   22567         https://bugs.webkit.org/show_bug.cgi?id=48535
   22568 
   22569         * Shared/API/c/WKSharedAPICast.h:
   22570         (WebKit::toURLRef):
   22571         (WebKit::toCopiedURLAPI):
   22572         Turn a null WTF::String into a null WKURLRef.
   22573 
   22574 2010-10-28  Sam Weinig  <sam (a] webkit.org>
   22575 
   22576         Reviewed by Anders Carlsson.
   22577 
   22578         Add WebKit2 API for window feature getter/setters
   22579         <rdar://problem/8590373>
   22580         https://bugs.webkit.org/show_bug.cgi?id=48496
   22581 
   22582         * UIProcess/API/C/WKPage.h:
   22583         * UIProcess/WebPageProxy.cpp:
   22584         (WebKit::WebPageProxy::setToolbarsAreVisible):
   22585         (WebKit::WebPageProxy::getToolbarsAreVisible):
   22586         (WebKit::WebPageProxy::setMenuBarIsVisible):
   22587         (WebKit::WebPageProxy::getMenuBarIsVisible):
   22588         (WebKit::WebPageProxy::setStatusBarIsVisible):
   22589         (WebKit::WebPageProxy::getStatusBarIsVisible):
   22590         (WebKit::WebPageProxy::setIsResizable):
   22591         (WebKit::WebPageProxy::getIsResizable):
   22592         * UIProcess/WebPageProxy.h:
   22593         * UIProcess/WebPageProxy.messages.in:
   22594         * UIProcess/WebUIClient.cpp:
   22595         (WebKit::WebUIClient::toolbarsAreVisible):
   22596         (WebKit::WebUIClient::setToolbarsAreVisible):
   22597         (WebKit::WebUIClient::menuBarIsVisible):
   22598         (WebKit::WebUIClient::setMenuBarIsVisible):
   22599         (WebKit::WebUIClient::statusBarIsVisible):
   22600         (WebKit::WebUIClient::setStatusBarIsVisible):
   22601         (WebKit::WebUIClient::isResizable):
   22602         (WebKit::WebUIClient::setIsResizable):
   22603         * UIProcess/WebUIClient.h:
   22604         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   22605         (WebKit::WebChromeClient::setToolbarsVisible):
   22606         (WebKit::WebChromeClient::toolbarsVisible):
   22607         (WebKit::WebChromeClient::setStatusbarVisible):
   22608         (WebKit::WebChromeClient::statusbarVisible):
   22609         (WebKit::WebChromeClient::setMenubarVisible):
   22610         (WebKit::WebChromeClient::menubarVisible):
   22611         (WebKit::WebChromeClient::setResizable):
   22612         Plumb through the calls.
   22613 
   22614 2010-10-28  Dan Bernstein  <mitz (a] apple.com>
   22615 
   22616         Build fix.
   22617 
   22618         * win/WebKit2Common.vsprops:
   22619 
   22620 2010-10-28  Dan Bernstein  <mitz (a] apple.com>
   22621 
   22622         Reviewed by Adam Roben.
   22623 
   22624         No longer soft-link zlib
   22625         https://bugs.webkit.org/show_bug.cgi?id=48004
   22626 
   22627         * win/WebKit2Common.vsprops: Added zlib.lib to AdditionalDependencies.
   22628 
   22629 2010-10-28  Adam Roben  <aroben (a] apple.com>
   22630 
   22631         Make PluginView retain its HTMLPlugInElement
   22632 
   22633         This matches WebKit/mac's WebBaseNetscapePluginView. WebCore didn't do
   22634         this, but had a very different mechanism for implementing NPRuntime
   22635         that didn't require it.
   22636 
   22637         Fixes <http://webkit.org/b/46672> <rdar://problem/8484208> Crash
   22638         (preceded by assertion) in Node::document when running
   22639         plugins/document-open.html in WebKit2 on Windows
   22640 
   22641         Reviewed by Anders Carlsson.
   22642 
   22643         * WebProcess/Plugins/PluginView.cpp:
   22644         (WebKit::PluginView::create): Moved here from the header file so that
   22645         clients of the header file won't have to pull in HTMLPlugInElement.h.
   22646         Changed to take a PassRefPtr<HTMLPlugInElement>.
   22647         (WebKit::PluginView::PluginView): Changed to take a
   22648         PassRefPtr<HTMLPlugInElement> and to use m_pluginElement later (because
   22649         the parameter to the function will be nulled-out after assigning into
   22650         m_pluginElement).
   22651         (WebKit::PluginView::pluginElementNPObject): Updated for change to m_pluginElement.
   22652 
   22653         * WebProcess/Plugins/PluginView.h: Made m_pluginElement a RefPtr.
   22654 
   22655 2010-10-28  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>
   22656 
   22657         Reviewed by Andreas Kling.
   22658 
   22659         Make Qt viewportAttributesForSize not assert on (0, 0) size
   22660         https://bugs.webkit.org/show_bug.cgi?id=48524
   22661 
   22662         We now return an invalid (isValid() == false) ViewportAttributes
   22663         instance when the supplied size is (0, 0).
   22664 
   22665         * UIProcess/API/qt/qwkpage.cpp:
   22666         (QWKPage::viewportAttributesForSize):
   22667 
   22668 2010-10-28  Balazs Kelemen  <kbalazs (a] webkit.org>
   22669 
   22670         Reviewed by Andreas Kling.
   22671 
   22672         [Qt][WK2] SharedMemory should be released by the receiving process
   22673         https://bugs.webkit.org/show_bug.cgi?id=48520
   22674 
   22675         * Platform/qt/SharedMemoryQt.cpp:
   22676         (WebKit::SharedMemory::~SharedMemory):
   22677         (WebKit::SharedMemory::createHandle):
   22678 
   22679 2010-10-28  Kimmo Kinnunen  <kimmo.t.kinnunen (a] nokia.com>
   22680 
   22681          Reviewed by Kenneth Rohde Christiansen.
   22682 
   22683          [Qt] Web process cannot be debugged if it crashes in initialization
   22684          https://bugs.webkit.org/show_bug.cgi?id=47399
   22685 
   22686          Wait 3 seconds for the debugger on debug mode if
   22687          WEBKIT2_PAUSE_WEB_PROCESS_ON_LAUNCH environment variable is set.
   22688 
   22689          The debugging can be initiated for example in following way:
   22690           export WEBKIT2_PAUSE_WEB_PROCESS_ON_LAUNCH=1
   22691           ./MiniBrowser & while [ -z `pidof QtWebProcess` ]; do sleep 1; done; \
   22692            gdb --pid=`pidof QtWebProcess`
   22693 
   22694          * WebProcess/qt/WebProcessMainQt.cpp:
   22695          (WebKit::WebProcessMainQt):
   22696 
   22697 2010-10-28  Mark Rowe  <mrowe (a] apple.com>
   22698 
   22699         32-bit build fix.
   22700 
   22701         Qualify references to Rect to avoid ambiguity between WebCore::Rect and Carbon's Rect.
   22702 
   22703         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   22704         (WebKit::NetscapePlugin::platformPostInitialize):
   22705         (WebKit::NetscapePlugin::windowFrameChanged):
   22706 
   22707 2010-10-28  Ivan Krsti  <ike (a] apple.com>
   22708 
   22709         Reviewed by Mark Rowe.
   22710 
   22711         Remove unused experimental proxied panel interface.
   22712         <rdar://problem/7237059>
   22713 
   22714         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
   22715         (InitWebCoreSystemInterface):
   22716 
   22717 2010-10-27  Mark Rowe  <mrowe (a] apple.com>
   22718 
   22719         Build fix.
   22720 
   22721         * UIProcess/API/mac/PageClientImpl.mm: Reference the file using the correct case.
   22722 
   22723 2010-10-27  Anders Carlsson  <andersca (a] apple.com>
   22724 
   22725         Reviewed by Sam Weinig.
   22726 
   22727         Find indicators do not bounce
   22728         https://bugs.webkit.org/show_bug.cgi?id=48490
   22729         <rdar://problem/8564276>
   22730 
   22731         * UIProcess/API/mac/FindIndicatorWindow.h:
   22732         * UIProcess/API/mac/FindIndicatorWindow.mm:
   22733         (-[WebFindIndicatorWindowAnimation _initWithFindIndicatorWindow:WebKit::animationDuration:animationProgressCallback:WebKit::FindIndicatorWindow::animationDidEndCallback:WebKit::FindIndicatorWindow::]):
   22734         Add an animationDuration parameter.
   22735         
   22736         (WebKit::FindIndicatorWindow::FindIndicatorWindow):
   22737         Initialize m_bounceAnimationContext.
   22738 
   22739         (WebKit::FindIndicatorWindow::setFindIndicator):
   22740         Create a bounce animation and start it.
   22741 
   22742         (WebKit::FindIndicatorWindow::closeWindow):
   22743         Stop the bounce animation and destroy the bounce animation context.
   22744 
   22745         (WebKit::FindIndicatorWindow::startFadeOutTimerFired):
   22746         pass the fade out duration.
   22747 
   22748         (WebKit::FindIndicatorWindow::bounceAnimationCallback):
   22749         Set the bounce animation progress.
   22750 
   22751         (WebKit::FindIndicatorWindow::bounceAnimationDidEnd):
   22752         Destroy the bounce animation context.
   22753 
   22754 2010-10-27  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>
   22755 
   22756         Reviewed by Andreas Kling.
   22757 
   22758         Remove the reference to the pageNamespace in the QWKPagePrivate.
   22759         Access it through the WebPageProxy instead which holds a strong
   22760         ref to it.
   22761 
   22762         * UIProcess/API/qt/qwkpage.cpp:
   22763         (QWKPagePrivate::QWKPagePrivate):
   22764         (QWKPage::preferences):
   22765         * UIProcess/API/qt/qwkpage_p.h:
   22766 
   22767 2010-10-27  Enrica Casucci  <enrica (a] apple.com>
   22768 
   22769         Reviewed by Alexey Proskuryakov.
   22770 
   22771         Support Appkit key bindings and custom key bindings in WebKit2
   22772         https://bugs.webkit.org/show_bug.cgi?id=48271
   22773         <rdar://problem/7660723>
   22774         
   22775         We need to support AppKit key bindings and custom key bindings in WebKit2.
   22776         Every keyboard event is first sent to the WebProcess and we inform AppKit that
   22777         we don't need further processing. When the event is processed by the WebProcess and no handler consumes it,
   22778         we send a synchronous message back to the UI process to let AppKit perform the key bindings.
   22779         This operation can result in one or more editing commands to execute or a noop.
   22780         The WebProcess then replies back to the UI process to inform whether further processing is required, in
   22781         which case the event is sent back to the application to be mapped.
   22782         There is a potential for a race condition: in case the WebProcess is very slow to process the key events, the UI
   22783         process could be in a completely different state when the event is being resent (for example it might not have the
   22784         keyboard focus anymore) and the command could be lost. We should look out for user experience impact.
   22785 
   22786         * Scripts/webkit2/messages.py: Added header file in the generated file.
   22787         * Shared/WebCoreArgumentCoders.h: Added encoder/decoder for KeypressCommand.
   22788         * UIProcess/API/mac/PageClientImpl.h:
   22789         * UIProcess/API/mac/PageClientImpl.mm:
   22790         (WebKit::PageClientImpl::interceptKeyEvent): Pass-through call to WKView.
   22791         (WebKit::PageClientImpl::didNotHandleKeyEvent): Added logic to resend the event to the application.
   22792         * UIProcess/API/mac/WKView.mm:
   22793         (-[WKView validateUserInterfaceItem:]): Changed the default return value to YES, otherwise no menu shortcut is performed.
   22794         (-[WKView doCommandBySelector:]): Added.
   22795         (-[WKView insertText:]): Added.
   22796         (-[WKView _handleStyleKeyEquivalent:]): Added to handle command-B and command-I.
   22797         (-[WKView performKeyEquivalent:]): Added to intercept key binding sequences.
   22798         (-[WKView _setEventBeingResent:]):
   22799         (-[WKView _interceptKeyEvent:]):
   22800         * UIProcess/API/mac/WKViewInternal.h:
   22801         * UIProcess/PageClient.h:
   22802         * UIProcess/WebPageProxy.cpp:
   22803         (WebKit::WebPageProxy::interpretKeyEvent):
   22804         * UIProcess/WebPageProxy.h:
   22805         * UIProcess/WebPageProxy.messages.in:
   22806         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   22807         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
   22808         (WebKit::WebEditorClient::handleKeyboardEvent):
   22809         (WebKit::WebEditorClient::handleInputMethodKeydown):
   22810         * WebProcess/WebPage/WebPage.cpp:
   22811         * WebProcess/WebPage/WebPage.h:
   22812         * WebProcess/WebPage/mac/WebPageMac.mm: Moved handleKeyboardEvent and handleInputMethodKeydown
   22813         to the Mac specific implementation.
   22814         (WebKit::WebPage::interceptEditingKeyboardEvent): Added.
   22815 
   22816 2010-10-27  Brian Weinstein  <bweinstein (a] apple.com>
   22817 
   22818         More Windows build fixage. Copy another new header into WebKitOutputDir.
   22819 
   22820         * win/WebKit2Generated.make:
   22821 
   22822 2010-10-27  Brian Weinstein  <bweinstein (a] apple.com>
   22823 
   22824         Windows build fix. Copy a new header into WebKitOutputDir.
   22825 
   22826         * win/WebKit2Generated.make:
   22827 
   22828 2010-10-26  Darin Adler  <darin (a] apple.com>
   22829 
   22830         Reviewed by Sam Weinig.
   22831 
   22832         WebKitTestRunner needs to support layoutTestController.dumpBackForwardList
   22833         https://bugs.webkit.org/show_bug.cgi?id=42322
   22834         rdar://problem/8193631
   22835 
   22836         WebKitTestRunner needs to support layoutTestController.clearBackForwardList
   22837         https://bugs.webkit.org/show_bug.cgi?id=42333
   22838         rdar://problem/8193643
   22839 
   22840         * Shared/API/c/WKBase.h: Added WKBundleBackForwardListRef and
   22841         WKBundleBackForwardListItemRef.
   22842 
   22843         * Shared/API/c/WKURL.cpp:
   22844         (WKURLCopyString): Added.
   22845         * Shared/API/c/WKURL.h: Added WKURLCopyString.
   22846 
   22847         * Shared/API/c/cf/WKURLCF.h: Fixed incorrect argument name.
   22848 
   22849         * Shared/APIObject.h: Added TypeBundleBackForwardList and
   22850         TypeBundleBackForwardListItem.
   22851 
   22852         * Shared/ImmutableArray.h: Marked destructor virtual explicitly.
   22853         * Shared/ImmutableDictionary.h: Ditto.
   22854         * UIProcess/WebBackForwardListItem.h: Ditto.
   22855         * UIProcess/WebContext.h: Ditto.
   22856         * UIProcess/WebFrameProxy.h: Ditto.
   22857         * UIProcess/WebNavigationData.h: Ditto.
   22858         * UIProcess/WebPageNamespace.h: Ditto.
   22859         * UIProcess/WebPreferences.h: Ditto.
   22860         * WebProcess/InjectedBundle/InjectedBundleScriptWorld.h: Ditto.
   22861         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h: Ditto.
   22862         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.h: Ditto.
   22863 
   22864         * UIProcess/WebBackForwardList.cpp: Removed unneeded backListWithLimit
   22865         and forwardListWithLimit functions.
   22866         (WebKit::WebBackForwardList::clear): Added.
   22867         * UIProcess/WebBackForwardList.h: Marked destructor virtual explicitly.
   22868         Added clear, removed backListWithLimit and forwardListWithLimit functions.
   22869 
   22870         * UIProcess/WebPageProxy.cpp: Removed unneeded backForwardBackItem,
   22871         backForwardCurrentItem, and backForwardForwardItem functions.
   22872         (WebKit::WebPageProxy::backForwardClear): Added.
   22873         * UIProcess/WebPageProxy.h: Ditto.
   22874         * UIProcess/WebPageProxy.messages.in: Ditto.
   22875 
   22876         * WebKit2.pro: Added new files.
   22877         * WebKit2.xcodeproj/project.pbxproj: Ditto.
   22878         * win/WebKit2.vcproj: Ditto.
   22879 
   22880         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h: Added
   22881         WKBundleBackForwardListRef and WKBundleBackForwardListItemRef.
   22882 
   22883         * WebProcess/InjectedBundle/API/c/WKBundleBackForwardList.cpp:
   22884         Started with a copy of from WebKit2/UIProcess/API/C/WKBackForwardList.cpp.
   22885         * WebProcess/InjectedBundle/API/c/WKBundleBackForwardList.h:
   22886         Started with a copy of WebKit2/UIProcess/API/C/WKBackForwardList.h.
   22887 
   22888         * WebProcess/InjectedBundle/API/c/WKBundleBackForwardListItem.cpp:
   22889         Started with a copy of WebKit2/UIProcess/API/C/WKBackForwardListItem.cpp.
   22890         * WebProcess/InjectedBundle/API/c/WKBundleBackForwardListItem.h:
   22891         Started with a copy of WebKit2/UIProcess/API/C/WKBackForwardListItem.h.
   22892 
   22893         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   22894         (WKBundlePageGetBackForwardList): Added.
   22895         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Ditto.
   22896 
   22897 
   22898         * WebProcess/InjectedBundle/InjectedBundleBackForwardList.cpp:
   22899         Started with a copy of WebKit2/UIProcess/WebBackForwardList.cpp.
   22900         * WebProcess/InjectedBundle/InjectedBundleBackForwardList.h:
   22901         Started with a copy of WebKit2/UIProcess/WebBackForwardList.h.
   22902 
   22903         * WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.cpp:
   22904         Started with a copy of WebKit2/UIProcess/WebBackForwardListItem.cpp.
   22905         * WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.h:
   22906         Started with a copy of WebKit2/UIProcess/WebBackForwardListItem.h.
   22907 
   22908         * WebProcess/WebPage/WebBackForwardListProxy.cpp: Removed
   22909         many unneeded functions.
   22910         (WebKit::WebBackForwardListProxy::WebBackForwardListProxy):
   22911         Removed unneeded initialization of m_closed.
   22912         (WebKit::WebBackForwardListProxy::addItem): Added a check for
   22913         the case of a capacity of 0.
   22914         (WebKit::WebBackForwardListProxy::goToItem): Added a check for
   22915         when the proxy outlives its page.
   22916         (WebKit::WebBackForwardListProxy::itemAtIndex): Ditto.
   22917         (WebKit::WebBackForwardListProxy::backListCount): Ditto.
   22918         (WebKit::WebBackForwardListProxy::forwardListCount): Ditto.
   22919         (WebKit::WebBackForwardListProxy::close): Removed unneeded code
   22920         setting m_closed.
   22921         (WebKit::WebBackForwardListProxy::isActive): Added.
   22922         (WebKit::WebBackForwardListProxy::clear): Added.
   22923 
   22924         * WebProcess/WebPage/WebBackForwardListProxy.h: Added clear,
   22925         isActive, and detach functions. Removed many other unneeded
   22926         function and data members.
   22927 
   22928         * WebProcess/WebPage/WebPage.cpp:
   22929         (WebKit::WebPage::~WebPage): Added call to detach on the
   22930         back/forward list.
   22931         (WebKit::WebPage::backForwardList): Added.
   22932         * WebProcess/WebPage/WebPage.h: Added backForwardList function
   22933         and m_backForwardList data member.
   22934 
   22935 2010-10-27  Beth Dakin  <bdakin (a] apple.com>
   22936 
   22937         Reviewed by Darin Adler.
   22938 
   22939         Fix for https://bugs.webkit.org/show_bug.cgi?id=48385 Add WebKit 
   22940         SPI to scale a WebView
   22941         -and corresponding-
   22942         <rdar://problem/8107667>
   22943 
   22944         This patch adds SPI to Mac WebKit that scales the page by the given 
   22945         scale factor.
   22946 
   22947         Implement scaleWebView(), which tells WebCore::Frame to scale, and 
   22948         viewScaleFactor() which returns the current scale factor.
   22949         * Shared/API/c/WKSharedAPICast.h:
   22950         * UIProcess/API/C/WKPage.cpp:
   22951         (WKPageScaleWebView):
   22952         (WKPageGetViewScaleFactor):
   22953         * UIProcess/API/C/WKPage.h:
   22954         * UIProcess/WebPageProxy.cpp:
   22955         (WebKit::WebPageProxy::WebPageProxy):
   22956         (WebKit::WebPageProxy::scaleWebView):
   22957         * UIProcess/WebPageProxy.h:
   22958         (WebKit::WebPageProxy::viewScaleFactor):
   22959         * WebProcess/WebPage/WebPage.cpp:
   22960         (WebKit::WebPage::scaleWebView):
   22961         (WebKit::WebPage::viewScaleFactor):
   22962         * WebProcess/WebPage/WebPage.h:
   22963         * WebProcess/WebPage/WebPage.messages.in:
   22964 
   22965 2010-10-27  Jessie Berlin  <jberlin (a] apple.com>
   22966 
   22967         Reviewed by Sam Weinig.
   22968 
   22969         Fix the WebKit2 API tests.
   22970         https://bugs.webkit.org/show_bug.cgi?id=48461
   22971 
   22972         The API tests were failing because the tests expect to be able to send messages before the
   22973         WebProcess finishes launching.
   22974 
   22975         Instead of dispatching the pending messages in processDidFinishLaunching, dispatch them in
   22976         ensureWebProcess but do not make messages pending if the process is launching.
   22977 
   22978         * UIProcess/WebContext.cpp:
   22979         (WebKit::WebContext::processDidFinishLaunching):
   22980         Move dispatching the pending messages back from here ...
   22981         (WebKit::WebContext::ensureWebProcess):
   22982         ... to here.
   22983         (WebKit::WebContext::postMessageToInjectedBundle):
   22984         Check whether the process can send messages in order to determine if a message needs to be
   22985         sent later.
   22986 
   22987         * UIProcess/WebProcessProxy.h:
   22988         (WebKit::WebProcessProxy::canSendMessage):
   22989         The WebProcessProxy can send a message if it is valid or if it is launching.
   22990 
   22991 2010-10-27  Anders Carlsson  <andersca (a] apple.com>
   22992 
   22993         Reviewed by Sam Weinig.
   22994 
   22995         More work on downloads
   22996         https://bugs.webkit.org/show_bug.cgi?id=48480
   22997 
   22998         * WebProcess/Downloads/Download.cpp:
   22999         (WebKit::Download::~Download):
   23000         Call platformInvalidate().
   23001 
   23002         (WebKit::Download::didBegin):
   23003         (WebKit::Download::didReceiveData):
   23004         (WebKit::Download::didFinish):
   23005         Add empty stubs.
   23006 
   23007         * WebProcess/Downloads/DownloadManager.cpp:
   23008         (WebKit::DownloadManager::startDownload):
   23009         Create a Download object and insert it into the m_downloads map.
   23010 
   23011         * WebProcess/Downloads/cf/DownloadCFNet.cpp:
   23012         (WebKit::Download::platformInvalidate):
   23013         Add empty stub.
   23014         
   23015         * WebProcess/Downloads/mac/DownloadMac.mm:
   23016         (WebKit::Download::platformInvalidate):
   23017         Tell the WKDownloadAsDelegate object that we're being invalidated.
   23018 
   23019         (-[WKDownloadAsDelegate downloadDidBegin:]):
   23020         Call Download::didBegin.
   23021 
   23022         (-[WKDownloadAsDelegate download:didReceiveDataOfLength:]):
   23023         Call Download::didReceiveData.
   23024 
   23025         (-[WKDownloadAsDelegate downloadDidFinish:]):
   23026         Call Download::didFinish.
   23027 
   23028         * WebProcess/Downloads/qt/DownloadQt.cpp:
   23029         (WebKit::Download::platformInvalidate):
   23030         Add empty stub.
   23031 
   23032 2010-10-27  Anders Carlsson  <andersca (a] apple.com>
   23033 
   23034         Reviewed by Sam Weinig.
   23035 
   23036         WebPageProxy::isValid should return false if the page has been explicitly closed
   23037         https://bugs.webkit.org/show_bug.cgi?id=48458
   23038 
   23039         * UIProcess/WebPageProxy.cpp:
   23040         (WebKit::WebPageProxy::WebPageProxy):
   23041         (WebKit::WebPageProxy::isValid):
   23042         (WebKit::WebPageProxy::relaunch):
   23043         (WebKit::WebPageProxy::close):
   23044         (WebKit::WebPageProxy::processDidCrash):
   23045         * UIProcess/WebPageProxy.h:
   23046         (WebKit::WebPageProxy::isClosed):
   23047 
   23048 2010-10-27  Anders Carlsson  <andersca (a] apple.com>
   23049 
   23050         Reviewed by Adam Roben.
   23051 
   23052         Begin stubbing out the Download class
   23053         https://bugs.webkit.org/show_bug.cgi?id=48447
   23054 
   23055         * WebKit2.pro:
   23056         * WebKit2.xcodeproj/project.pbxproj:
   23057         Add new files.
   23058         
   23059         * WebKit2Prefix.h:
   23060         Include WebCore/EmptyProtocolDefinitions.h
   23061         
   23062         * WebProcess/Downloads/Download.cpp: Added.
   23063         * WebProcess/Downloads/Download.h: Added.
   23064 
   23065         * WebProcess/Downloads/DownloadManager.cpp:
   23066         (WebKit::DownloadManager::startDownload):
   23067         Create a Download object and start it.
   23068 
   23069         * WebProcess/Downloads/mac/DownloadMac.mm: Added.
   23070         (WebKit::Download::start):
   23071         Create an NSURLDownload.
   23072     
   23073         * WebProcess/WebPage/WebFrame.cpp:
   23074         (WebKit::WebFrame::startDownload):
   23075         Ask the download manager to start downloading.
   23076 
   23077         * win/WebKit2.vcproj:
   23078         * win/WebKit2Common.vsprops:
   23079         Add new files.
   23080 
   23081 2010-10-27  Adam Roben  <aroben (a] apple.com>
   23082 
   23083         Don't allow setting NetscapePlugin::m_isWindowed after NPP_New has
   23084         completed
   23085 
   23086         In Firefox, Chrome, and WebKit1 trying to set this value after NPP_New
   23087         does not actually affect whether the plugin is windowed.
   23088 
   23089         Fixes <http://webkit.org/b/46673> <rdar://problem/8484211> Assertion
   23090         failure in NetscapePlugin::platformDestroy when running
   23091         plugins/mouse-events.html in WebKit2 on Windows
   23092 
   23093         Reviewed by Anders Carlsson.
   23094 
   23095         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   23096         (WebKit::NetscapePlugin::setIsWindowed): Moved here from the header.
   23097         Bail out if m_isStarted is true, indicating that NPP_New has already
   23098         finished.
   23099 
   23100         * WebProcess/Plugins/Netscape/NetscapePlugin.h: Removed the
   23101         implementation of setIsWindowed.
   23102 
   23103 2010-10-27  Timothy Hatcher  <timothy (a] apple.com>
   23104 
   23105         Add API for enabling the developer extras (Web Inspector).
   23106 
   23107         http://webkit.org/b/48439
   23108 
   23109         Reviewed by John Sullivan.
   23110 
   23111         * Shared/WebPreferencesStore.cpp:
   23112         (WebKit::WebPreferencesStore::WebPreferencesStore):
   23113         (WebKit::WebPreferencesStore::encode):
   23114         (WebKit::WebPreferencesStore::decode):
   23115         * Shared/WebPreferencesStore.h:
   23116         * UIProcess/API/C/WKPreferences.cpp:
   23117         (WKPreferencesSetDeveloperExtrasEnabled):
   23118         (WKPreferencesGetDeveloperExtrasEnabled):
   23119         * UIProcess/API/C/WKPreferences.h:
   23120         * UIProcess/WebPreferences.cpp:
   23121         (WebKit::WebPreferences::setDeveloperExtrasEnabled):
   23122         (WebKit::WebPreferences::developerExtrasEnabled):
   23123         * UIProcess/WebPreferences.h:
   23124         * WebProcess/WebPage/WebPage.cpp:
   23125         (WebKit::WebPage::updatePreferences):
   23126 
   23127 2010-10-27  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>
   23128 
   23129         Reviewed by Anders Carlsson.
   23130 
   23131         Move contentsSizeChange from the UIClient into the PageClient and
   23132         and make it a private Qt-only API in the process.
   23133 
   23134         Make WKPageContentsSizeChangedCallback be a private API
   23135         https://bugs.webkit.org/show_bug.cgi?id=48409
   23136 
   23137         * UIProcess/API/C/WKPage.h:
   23138         * UIProcess/API/qt/qwkpage.cpp:
   23139         (QWKPagePrivate::didChangeContentsSize):
   23140         (QWKPage::QWKPage):
   23141         * UIProcess/API/qt/qwkpage_p.h:
   23142         * UIProcess/PageClient.h:
   23143         * UIProcess/WebPageProxy.cpp:
   23144         (WebKit::WebPageProxy::didChangeContentsSize):
   23145         * UIProcess/WebPageProxy.h:
   23146         * UIProcess/WebPageProxy.messages.in:
   23147         * UIProcess/WebUIClient.cpp:
   23148         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   23149         (WebKit::WebChromeClient::contentsSizeChanged):
   23150 
   23151 2010-10-26  Brian Weinstein  <bweinstein (a] apple.com>
   23152 
   23153         Reviewed by Adam Roben.
   23154 
   23155         WebKit2 shouldn't try to send an empty user agent
   23156         https://bugs.webkit.org/show_bug.cgi?id=48397
   23157         
   23158         Change the check of the custom user agent to an empty check instead of a null check. When the client application
   23159         sets a custom user agent and then resets it, the custom user agent is set to an empty string. If all we do
   23160         is check for a null string, then we will think we have a custom user agent (which is empty) and send an empty
   23161         user agent.
   23162 
   23163         * WebProcess/WebPage/WebPage.cpp:
   23164         (WebKit::WebPage::userAgent):
   23165 
   23166 2010-10-27  Adam Roben  <aroben (a] apple.com>
   23167 
   23168         Don't call NPP_GetValue if the plugin didn't provide an implementation
   23169 
   23170         Fixes <http://webkit.org/b/48433> Crash in
   23171         NetscapePlugin::shouldLoadSrcURL when using Shockwave Director 10.3 in
   23172         WebKit2 on Windows
   23173 
   23174         Reviewed by Eric Carlson.
   23175 
   23176         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   23177         (WebKit::NetscapePlugin::NPP_GetValue): Null-check the getvalue pointer
   23178         before using it to call NPP_GetValue.
   23179 
   23180 2010-10-27  Balazs Kelemen  <kbalazs (a] webkit.org>
   23181 
   23182         Reviewed by Andreas Kling.
   23183 
   23184         [Qt] Assert due to multiple initialization of WebPlatformStrategies
   23185         https://bugs.webkit.org/show_bug.cgi?id=48327
   23186 
   23187         We are using the LocalizationStrategy in the UI process
   23188         so the previous attempt to fix this (http://trac.webkit.org/changeset/70620)
   23189         was wrong.
   23190         * UIProcess/API/qt/qwkpage.cpp:
   23191         (initializePlatformStrategiesIfNeeded):
   23192         Call WebPlatformStrategies::initialize exactly once.
   23193         (QWKPagePrivate::QWKPagePrivate):
   23194 
   23195 2010-10-27  Kimmo Kinnunen  <kimmo.t.kinnunen (a] nokia.com>
   23196 
   23197         Reviewed by Andreas Kling.
   23198 
   23199         [Qt] WebKit2 UI process crashes if web process crashes
   23200         https://bugs.webkit.org/show_bug.cgi?id=48400
   23201 
   23202         Check the success of socket write operations.
   23203         Avoids crashing the UI process if web process has crashed.
   23204         Qt socket code segfaults when write is called for a socket
   23205         that has had an error.
   23206 
   23207         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   23208         (CoreIPC::Connection::platformInvalidate):
   23209         Reset m_socket after deletion.
   23210 
   23211         (CoreIPC::Connection::sendOutgoingMessage):
   23212         Check error status of write operations and
   23213         invalidate socket if writes fail.
   23214 
   23215 2010-10-27  Kimmo Kinnunen  <kimmo.t.kinnunen (a] nokia.com>
   23216 
   23217         Reviewed by Andreas Kling.
   23218 
   23219         [Qt] Type mismatch while serializing/deserializing message id size
   23220         https://bugs.webkit.org/show_bug.cgi?id=48401
   23221 
   23222         Use correct types when reading data from connection buffer.
   23223 
   23224         The message id is written as uint32_t, thus the buffer size should be
   23225         calculated based on sizeof(uint32_t) and not sizeof(MessageID).
   23226 
   23227         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   23228         (CoreIPC::Connection::readyReadHandler):
   23229 
   23230 2010-10-27  Zalan Bujtas  <zbujtas (a] gmail.com>
   23231 
   23232         Reviewed by Kenneth Rohde Christiansen.
   23233 
   23234         Multiple WebPlatformStrategy initialization triggers assert in WebCore/PlatformStrategies. 
   23235         Remove the code for now, as it is not used at all.
   23236         https://bugs.webkit.org/show_bug.cgi?id=48327
   23237 
   23238         * UIProcess/API/qt/qwkpage.cpp:
   23239         (QWKPagePrivate::QWKPagePrivate):
   23240 
   23241 2010-10-26  Brent Fulgham  <bfulgham (a] webkit.org>
   23242 
   23243         Unreviewed build fix.
   23244 
   23245         * WebProcess/WebCoreSupport/win/WebErrorsWin.cpp:
   23246         (WebKit::cancelledError): Conditionalize use of CFNetwork calls
   23247         and includes.
   23248 
   23249 2010-10-26  Alexey Proskuryakov  <ap (a] apple.com>
   23250 
   23251         Build fix.
   23252 
   23253         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Modified original file, not its framework
   23254         copy this time.
   23255 
   23256 2010-10-26  Anders Carlsson  <andersca (a] apple.com>
   23257 
   23258         Reviewed by Sam Weinig.
   23259 
   23260         Add DownloadManager class
   23261         https://bugs.webkit.org/show_bug.cgi?id=48388
   23262 
   23263         * WebKit2.pro:
   23264         * WebKit2.xcodeproj/project.pbxproj:
   23265         Add new files.
   23266 
   23267         * WebProcess/Downloads/DownloadManager.cpp: Added.
   23268         (WebKit::DownloadManager::shared):
   23269         (WebKit::DownloadManager::DownloadManager):
   23270         * WebProcess/Downloads/DownloadManager.h: Added.
   23271 
   23272         * win/WebKit2.vcproj:
   23273         * win/WebKit2Common.vsprops:
   23274         Add new files.
   23275 
   23276 2010-10-26  Anders Carlsson  <andersca (a] apple.com>
   23277 
   23278         Reviewed by Sam Weinig.
   23279 
   23280         Pass a downloadID to the web process whenever a download is requested
   23281         https://bugs.webkit.org/show_bug.cgi?id=48380
   23282 
   23283         * UIProcess/WebContext.cpp:
   23284         (WebKit::WebContext::generateDownloadID):
   23285         Generate a unique download ID.
   23286 
   23287         * UIProcess/WebPageProxy.cpp:
   23288         (WebKit::WebPageProxy::receivedPolicyDecision):
   23289         Pass along a download ID if needed.
   23290 
   23291         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   23292         (WebKit::WebFrameLoaderClient::startDownload):
   23293         Call the web frame member function.
   23294 
   23295         * WebProcess/WebPage/WebFrame.cpp:
   23296         (WebKit::WebFrame::WebFrame):
   23297         Initialize m_policyDownloadID.
   23298 
   23299         (WebKit::WebFrame::invalidatePolicyListener):
   23300         Reset m_policyDownloadID.
   23301 
   23302         (WebKit::WebFrame::didReceivePolicyDecision):
   23303         Set m_policyDownloadID.
   23304 
   23305         (WebKit::WebFrame::startDownload):
   23306         Assert that m_policyDownloadID is not zero.
   23307 
   23308         * WebProcess/WebPage/WebPage.cpp:
   23309         (WebKit::WebPage::didReceivePolicyDecision):
   23310         Pass along the download ID.
   23311 
   23312         * WebProcess/WebPage/WebPage.messages.in:
   23313         Add the download ID.
   23314 
   23315 2010-10-26  Alexey Proskuryakov  <ap (a] apple.com>
   23316 
   23317         Reviewed by Sam Weinig.
   23318 
   23319         https://bugs.webkit.org/show_bug.cgi?id=48375
   23320         <rdar://problem/8392724> Need delegate calls in PageLoaderClient to indicate if we have
   23321         loaded insecure content
   23322 
   23323         Added the delegate. Just like the bundle version, it misses WebOrigin parameter that Mac
   23324         delegate call used to have. It doesn't seem necessary for clients.
   23325 
   23326         * UIProcess/API/C/WKPage.h:
   23327         * UIProcess/API/qt/qwkpage.cpp:
   23328         (QWKPage::QWKPage):
   23329         * UIProcess/WebLoaderClient.cpp:
   23330         (WebKit::WebLoaderClient::didDisplayInsecureContentForFrame):
   23331         (WebKit::WebLoaderClient::didRunInsecureContentForFrame):
   23332         * UIProcess/WebLoaderClient.h:
   23333         * UIProcess/WebPageProxy.cpp:
   23334         (WebKit::WebPageProxy::didDisplayInsecureContentForFrame):
   23335         (WebKit::WebPageProxy::didRunInsecureContentForFrame):
   23336         * UIProcess/WebPageProxy.h:
   23337         * UIProcess/WebPageProxy.messages.in:
   23338         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   23339         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   23340         (WebKit::InjectedBundlePageLoaderClient::didDisplayInsecureContentForFrame):
   23341         (WebKit::InjectedBundlePageLoaderClient::didRunInsecureContentForFrame):
   23342         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   23343         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   23344         (WebKit::WebFrameLoaderClient::didDisplayInsecureContent):
   23345         (WebKit::WebFrameLoaderClient::didRunInsecureContent):
   23346 
   23347 2010-10-26  Jenn Braithwaite  <jennb (a] chromium.org>
   23348 
   23349         Reviewed by Dmitry Titov.
   23350 
   23351         Resource tracking failure when trying to move a frame between documents
   23352         https://bugs.webkit.org/show_bug.cgi?id=44713
   23353 
   23354         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   23355         (WebKit::WebFrameLoaderClient::transferLoadingResourceFromPage):
   23356         Empty method.
   23357         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   23358 
   23359 2010-10-26  Jessie Berlin  <jberlin (a] apple.com>
   23360 
   23361         Reviewed by Darin Adler.
   23362 
   23363         Post any pending messages to the Injected Bundle in WebContext::processDidFinishLaunching
   23364         instead of in WebContext::ensureWebProcess.
   23365         https://bugs.webkit.org/show_bug.cgi?id=48367
   23366 
   23367         Send pending injected bundle messages after the process finished launching instead of of
   23368         directly after creating it.
   23369 
   23370         * UIProcess/WebContext.cpp:
   23371         (WebKit::WebContext::ensureWebProcess):
   23372         Move the logic to dispatch pending injected bundle messages from here ...
   23373         (WebKit::WebContext::processDidFinishLaunching):
   23374         ... to here.
   23375         Also use a reference instead of a pointer when sending the pending messages.
   23376 
   23377 2010-10-26  Anders Carlsson  <andersca (a] apple.com>
   23378 
   23379         Reviewed by Sam Weinig.
   23380 
   23381         pageDidScroll callback should be on the UI process client rather than (or in addition to) the web process client
   23382         https://bugs.webkit.org/show_bug.cgi?id=48366
   23383 
   23384         * UIProcess/API/qt/qwkpage.cpp:
   23385         (QWKPage::QWKPage):
   23386         Add zero initializer.
   23387 
   23388         * UIProcess/WebPageProxy.cpp:
   23389         (WebKit::WebPageProxy::pageDidScroll):
   23390         Call the pageDidScroll client function.
   23391 
   23392         * UIProcess/WebPageProxy.messages.in:
   23393         Add PageDidScroll message.
   23394 
   23395         * WebProcess/WebPage/WebPage.cpp:
   23396         (WebKit::WebPage::pageDidScroll):
   23397         Send the PageDidScroll message.
   23398 
   23399 2010-10-26  Brian Weinstein  <bweinstein (a] apple.com>
   23400 
   23401         Reviewed by Darin Adler.
   23402 
   23403         Need a way to retrieve custom user agent from a WKPage
   23404         https://bugs.webkit.org/show_bug.cgi?id=48360
   23405         <rdar://problem/8466537>
   23406         
   23407         Add an exported function on WKPage to get the page's custom user agent.
   23408 
   23409         * UIProcess/API/C/WKPage.cpp:
   23410         (WKPageCopyCustomUserAgent): Exported function that returns the custom user
   23411             agent.
   23412         * UIProcess/API/C/WKPage.h:
   23413         * UIProcess/WebPageProxy.cpp:
   23414         (WebKit::WebPageProxy::close): Clear the custom user agent string.
   23415         (WebKit::WebPageProxy::processDidCrash): Ditto.
   23416         (WebKit::WebPageProxy::setCustomUserAgent): Add a new early return if we're setting
   23417             the custom user agent to what it was before, and set the custom user agent member
   23418             variable.
   23419         * UIProcess/WebPageProxy.h:
   23420         (WebKit::WebPageProxy::customUserAgent): Returns the custom user agent.
   23421 
   23422 2010-10-26  Simon Fraser  <simon.fraser (a] apple.com>
   23423 
   23424         Reviewed by Sam Weinig.
   23425 
   23426         Support layoutTestController.layerTreeAsText in WebKitTestRunner
   23427         https://bugs.webkit.org/show_bug.cgi?id=42145
   23428         
   23429         Expose layerTreeAsText() as private API so that 
   23430         WebKitTestRunner can use it.
   23431 
   23432         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   23433         (WKBundleFrameCopyLayerTreeAsText):
   23434         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
   23435         * WebProcess/WebPage/WebFrame.cpp:
   23436         (WebKit::WebFrame::numberOfActiveAnimations):
   23437         (WebKit::WebFrame::layerTreeAsText):
   23438         (WebKit::WebFrame::pendingUnloadCount):
   23439         * WebProcess/WebPage/WebFrame.h:
   23440 
   23441 2010-10-26  Anders Carlsson  <andersca (a] apple.com>
   23442 
   23443         Reviewed by Sam Weinig.
   23444 
   23445         Enable the plug-in process on Mac
   23446         https://bugs.webkit.org/show_bug.cgi?id=48350
   23447 
   23448         * WebKit2Prefix.h:
   23449         Flip the switch and enable the plug-in process on Mac.
   23450 
   23451         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   23452         (WebKit::NetscapePlugin::platformDestroy):
   23453         Fix a bogus assert.
   23454 
   23455 2010-10-26  Zoltan Horvath  <zoltan (a] webkit.org>
   23456 
   23457         Reviewed by Kenneth Rohde Christiansen.
   23458 
   23459         [Qt] Implement SharedMemory for WebKit2
   23460         https://bugs.webkit.org/show_bug.cgi?id=47345
   23461 
   23462         Implement unimplemented functions in SharedMemoryQt.cpp.
   23463         Rename MappedMemory.h to MappedMemoryPool.h, move MappedMemoryPool.{h|cpp} from
   23464         Shared/qt to Platform/qt. Modify affected lines of WebKit2.pro.
   23465         Move MappedMemory implementation into MappedMemoryPool. Remove unnecessary 
   23466         methods of MappedMemoryPool.
   23467 
   23468         * Platform/SharedMemory.h: Add a handle member for Qt.
   23469         * Platform/qt/MappedMemoryPool.cpp: Copied from WebKit2/Shared/qt/MappedMemoryPool.cpp.
   23470         (WebKit::MappedMemoryPool::searchForMappedMemory):
   23471         (WebKit::MappedMemoryPool::mapMemory):
   23472         (WebKit::MappedMemoryPool::mapFile):
   23473         * Platform/qt/MappedMemoryPool.h: Copied from WebKit2/Shared/qt/MappedMemory.h.
   23474         (WebKit::MappedMemoryPool::MappedMemory::mapSize):
   23475         (WebKit::MappedMemoryPool::MappedMemory::markUsed):
   23476         (WebKit::MappedMemoryPool::MappedMemory::markFree):
   23477         (WebKit::MappedMemoryPool::MappedMemory::isFree):
   23478         (WebKit::MappedMemoryPool::MappedMemory::data):
   23479         (WebKit::MappedMemoryPool::MappedMemoryPool):
   23480         Move MappedMemory implementation into MappedMemoryPool.
   23481         * Platform/qt/SharedMemoryQt.cpp:
   23482         (WebKit::SharedMemory::Handle::Handle): Implement.
   23483         (WebKit::SharedMemory::Handle::~Handle):
   23484         (WebKit::SharedMemory::Handle::isNull): Implement.
   23485         (WebKit::SharedMemory::Handle::encode): Implement.
   23486         (WebKit::SharedMemory::Handle::decode): Implement.
   23487         (WebKit::SharedMemory::create): Implement.
   23488         (WebKit::mapProtection): Added.
   23489         (WebKit::SharedMemory::~SharedMemory): Implement.
   23490         (WebKit::SharedMemory::createHandle): Implement.
   23491         (WebKit::SharedMemory::systemPageSize): Implement.
   23492         * Shared/qt/MappedMemory.h: Removed.
   23493         * Shared/qt/MappedMemoryPool.cpp: Removed.
   23494         * Shared/qt/UpdateChunk.cpp:
   23495         (WebKit::UpdateChunk::UpdateChunk):
   23496         (WebKit::UpdateChunk::decode):
   23497         Modify to use MappedMemoryPool.
   23498         * Shared/qt/UpdateChunk.h:
   23499         * WebKit2.pro:
   23500         Modify affected lines.
   23501 
   23502 2010-10-25  Anders Carlsson  <andersca (a] apple.com>
   23503 
   23504         Reviewed by Sam Weinig.
   23505 
   23506         WebKit2 callbacks for findString() and countMatchesForString() should report whether the match count was exceeded
   23507         https://bugs.webkit.org/show_bug.cgi?id=48285
   23508         <rdar://problem/8576318>
   23509 
   23510         * UIProcess/API/C/WKPage.h:
   23511         Add a kWKMoreThanMaximumMatchCount constant.
   23512 
   23513         * WebProcess/WebPage/FindController.cpp:
   23514         (WebKit::FindController::findString):
   23515         If we get back more matches than allowed, send kWKMoreThanMaximumMatchCount as the match constant.
   23516 
   23517 2010-10-25  Dan Bernstein  <mitz (a] apple.com>
   23518 
   23519         Non-Carbon build fix.
   23520 
   23521         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   23522         (WebKit::NetscapePlugin::windowFrameChanged):
   23523 
   23524 2010-10-25  Timothy Hatcher  <timothy (a] apple.com>
   23525 
   23526         Stub out WebInspector objects and WKInspectorRef API.
   23527 
   23528         https://webkit.org/b/48265
   23529 
   23530         Reviewed by Anders Carlsson.
   23531 
   23532         * Platform/CoreIPC/MessageID.h: Added MessageClassWebInspector and MessageClassWebInspectorProxy.
   23533         * Shared/API/c/WKBase.h: Added WKInspectorRef.
   23534         * Shared/APIObject.h: Added TypeInspector.
   23535         * UIProcess/API/C/WKAPICast.h: Added WKInspectorRef to WebInspectorProxy mapping.
   23536         * UIProcess/API/C/WKInspector.cpp: Added.
   23537         (WKInspectorGetTypeID):
   23538         (WKInspectorGetPage):
   23539         * UIProcess/API/C/WKInspector.h: Added.
   23540         * UIProcess/API/C/WKPage.cpp:
   23541         (WKPageGetInspector): Added.
   23542         * UIProcess/API/C/WKPage.h:
   23543         * UIProcess/WebInspectorProxy.cpp: Added.
   23544         (WebKit::WebInspectorProxy::WebInspectorProxy):
   23545         (WebKit::WebInspectorProxy::~WebInspectorProxy):
   23546         (WebKit::WebInspectorProxy::invalidate):
   23547         * UIProcess/WebInspectorProxy.h:
   23548         (WebKit::WebInspectorProxy::create):
   23549         (WebKit::WebInspectorProxy::page):
   23550         (WebKit::WebInspectorProxy::type):
   23551         * UIProcess/WebPageProxy.cpp:
   23552         (WebKit::WebPageProxy::inspector): Lazily create the WebInspectorProxy.
   23553         * UIProcess/WebPageProxy.h:
   23554         * WebKit2.pro: Added new files.
   23555         * WebKit2.xcodeproj/project.pbxproj: Added new files.
   23556         * WebProcess/WebPage/WebInspector.cpp: Added.
   23557         (WebKit::WebInspector::WebInspector):
   23558         * WebProcess/WebPage/WebInspector.h: Added.
   23559         * WebProcess/WebPage/WebPage.cpp:
   23560         (WebKit::WebPage::inspector): Lazily create the WebInspector.
   23561         * WebProcess/WebPage/WebPage.h:
   23562         * win/WebKit2.vcproj: Added new files.
   23563 
   23564 2010-10-25  Anders Carlsson  <andersca (a] apple.com>
   23565 
   23566         Reviewed by Dan Bernstein.
   23567 
   23568         Update the fake Carbon window when the window frame changes
   23569         https://bugs.webkit.org/show_bug.cgi?id=48273
   23570 
   23571         * UIProcess/API/mac/WKView.mm:
   23572         (screenForWindow):
   23573         (-[WKView _updateWindowFrame]):
   23574         Pass the window frame in Carbon coordinates.
   23575 
   23576         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   23577         (WebKit::NetscapePlugin::windowFrameChanged):
   23578         Update the window bounds.
   23579 
   23580         * WebProcess/Plugins/PluginView.cpp:
   23581         (WebKit::PluginView::setWindowFrame):
   23582         Call the plug-in.
   23583 
   23584         (WebKit::PluginView::platformLayer):
   23585         Fix a crash when WebCore asked for the layer before it was initialized.
   23586 
   23587 2010-10-25  Oliver Hunt  <oliver (a] apple.com>
   23588 
   23589         Reviewed by Gavin Barraclough.
   23590 
   23591         Remove exec and globalData arguments from jsNumber
   23592         https://bugs.webkit.org/show_bug.cgi?id=48270
   23593 
   23594         Mechanical removal of exec parameter to jsNumber
   23595 
   23596         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   23597         (WebKit::NPRuntimeObjectMap::convertNPVariantToJSValue):
   23598 
   23599 2010-10-25  Anders Carlsson  <andersca (a] apple.com>
   23600 
   23601         Reviewed by Darin Adler.
   23602 
   23603         Replace matchCountDidChange with didFindString/didFailToFindString
   23604         https://bugs.webkit.org/show_bug.cgi?id=48262
   23605         <rdar://problem/8568928>
   23606 
   23607         * UIProcess/API/C/WKPage.h:
   23608         * UIProcess/WebFindClient.cpp:
   23609         (WebKit::WebFindClient::didFindString):
   23610         (WebKit::WebFindClient::didFailToFindString):
   23611         * UIProcess/WebFindClient.h:
   23612         * UIProcess/WebPageProxy.cpp:
   23613         (WebKit::WebPageProxy::didFindString):
   23614         (WebKit::WebPageProxy::didFailToFindString):
   23615         * UIProcess/WebPageProxy.h:
   23616         * UIProcess/WebPageProxy.messages.in:
   23617         * WebProcess/WebPage/FindController.cpp:
   23618         (WebKit::FindController::findString):
   23619 
   23620 2010-10-25  Anders Carlsson  <andersca (a] apple.com>
   23621 
   23622         Reviewed by Adam Roben.
   23623 
   23624         Add a pageDidScroll BundleUIClient callback
   23625         https://bugs.webkit.org/show_bug.cgi?id=48260
   23626         <rdar://problem/8531159>
   23627 
   23628         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   23629         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
   23630         (WebKit::InjectedBundlePageUIClient::pageDidScroll):
   23631         Call the pageDidScroll callback.
   23632 
   23633         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
   23634         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   23635         (WebKit::WebChromeClient::invalidateContentsForSlowScroll):
   23636         (WebKit::WebChromeClient::scroll):
   23637         Call pageDidScroll.
   23638 
   23639         * WebProcess/WebPage/WebPage.cpp:
   23640         (WebKit::WebPage::pageDidScroll):
   23641         Hide the find banner UI and call the BundleUIClient pageDidScroll callback.
   23642 
   23643 2010-10-25  Brian Weinstein  <bweinstein (a] apple.com>
   23644 
   23645         Reviewed by Adam Roben.
   23646 
   23647         Control + Mousewheel shouldn't be handled in WebKit2
   23648         https://bugs.webkit.org/show_bug.cgi?id=48253
   23649         
   23650         Don't handle a wheel event if Control is pressed, pass the message back to DefWindowProc.
   23651 
   23652         * UIProcess/win/WebView.cpp:
   23653         (WebKit::WebView::onWheelEvent):
   23654 
   23655 2010-10-25  Sam Weinig  <sam (a] webkit.org>
   23656 
   23657         Reviewed by Dan Bernstein.
   23658 
   23659         cancelledError for WebKit2 on windows should use kCFErrorDomainCFNetwork instead of webKitErrorDomain
   23660         https://bugs.webkit.org/show_bug.cgi?id=48254
   23661 
   23662         * WebProcess/WebCoreSupport/win/WebErrorsWin.cpp:
   23663         (WebKit::cancelledError): Use kCFErrorDomainCFNetwork instead of webKitErrorDomain and switch over
   23664         to using kCFURLErrorCancelled instead of a hard coded constant.
   23665 
   23666 2010-10-25  Sam Weinig  <sam (a] webkit.org>
   23667 
   23668         Reviewed by Anders Carlsson.
   23669 
   23670         Need WebKit2 API to figure out if a frame can provide source
   23671         <rdar://problem/8424632>
   23672         https://bugs.webkit.org/show_bug.cgi?id=48252
   23673 
   23674         * UIProcess/API/C/WKFrame.cpp:
   23675         (WKFrameCanProvideSource):
   23676         * UIProcess/API/C/WKFrame.h:
   23677         * UIProcess/WebFrameProxy.cpp:
   23678         (WebKit::WebFrameProxy::canProvideSource):
   23679         * UIProcess/WebFrameProxy.h:
   23680         Add API to figure out if a frame can provide source based on its
   23681         MIME type.
   23682 
   23683 2010-10-25  Anders Carlsson  <andersca (a] apple.com>
   23684 
   23685         Reviewed by Dan Bernstein.
   23686 
   23687         Java applets don't display on the page
   23688         https://bugs.webkit.org/show_bug.cgi?id=48251
   23689         <rdar://problem/8483759>
   23690 
   23691         Add WKPreferencesSetJavaEnabled and initialize it to true by default, matching old WebKit.
   23692 
   23693         * Shared/WebPreferencesStore.cpp:
   23694         (WebKit::WebPreferencesStore::WebPreferencesStore):
   23695         Initialize javaEnabled.
   23696 
   23697         (WebKit::WebPreferencesStore::encode):
   23698         Encode javaEnabled.
   23699 
   23700         (WebKit::WebPreferencesStore::decode):
   23701         Decode javaEnabled.
   23702 
   23703         * Shared/WebPreferencesStore.h:
   23704         Add javaEnabled.
   23705 
   23706         * UIProcess/API/C/WKPreferences.cpp:
   23707         (WKPReferencesSetJavaEnabled):
   23708         (WKPReferencesGetJavaEnabled):
   23709         Call the WebPreferences functions.
   23710 
   23711         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   23712         (WebKit::WebFrameLoaderClient::createJavaAppletWidget):
   23713         Just call createPlugin.
   23714 
   23715         * WebProcess/WebPage/WebPage.cpp:
   23716         (WebKit::WebPage::updatePreferences):
   23717         Call Settings::setJavaEnabled.
   23718 
   23719 2010-10-25  Patrick Gansterer  <paroga (a] webkit.org>
   23720 
   23721         Reviewed by David Kilzer.
   23722 
   23723         Replace _countof with WTF_ARRAY_LENGTH
   23724         https://bugs.webkit.org/show_bug.cgi?id=48229
   23725 
   23726         * UIProcess/Launcher/win/ProcessLauncherWin.cpp:
   23727         (WebKit::ProcessLauncher::launchProcess):
   23728         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
   23729         (WebKit::safariPluginsDirectory):
   23730         (WebKit::addMozillaPluginDirectories):
   23731         (WebKit::addWindowsMediaPlayerPluginDirectory):
   23732         (WebKit::addAdobeAcrobatPluginDirectory):
   23733         (WebKit::addMacromediaPluginDirectories):
   23734         (WebKit::addPluginPathsFromRegistry):
   23735         * WebProcess/WebPage/win/WebPageWin.cpp:
   23736         (WebKit::WebPage::interpretKeyEvent):
   23737 
   23738 2010-10-25  Adam Roben  <aroben (a] apple.com>
   23739 
   23740         Stop copying .messages.in files into WebKit2's framework bundle
   23741 
   23742         Fixes <http://webkit.org/b/48232> Several .messages.in files end up in
   23743         WebKit2's framework bundle
   23744 
   23745         Reviewed by Dan Bernstein.
   23746 
   23747         * WebKit2.xcodeproj/project.pbxproj:
   23748 
   23749 2010-10-25  Andras Becsi  <abecsi (a] webkit.org>
   23750 
   23751         Reviewed by Csaba Osztrogonc.
   23752 
   23753         [Qt] Fix the WebKit2 build after sheriffbot messed up the rollout patch.
   23754         https://bugs.webkit.org/show_bug.cgi?id=48238
   23755 
   23756         * Shared/qt/MappedMemory.h: Renamed from WebKit2/Platform/qt/MappedMemoryPool.h.
   23757         (WebKit::MappedMemory::mapSize):
   23758         (WebKit::MappedMemory::markUsed):
   23759         (WebKit::MappedMemory::markFree):
   23760         (WebKit::MappedMemory::isFree):
   23761         (WebKit::MappedMemory::data):
   23762 
   23763 2010-10-25  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   23764 
   23765         Unreviewed, rolling out r70450.
   23766         http://trac.webkit.org/changeset/70450
   23767         https://bugs.webkit.org/show_bug.cgi?id=48238
   23768 
   23769         Causes WTR to crash on tests which use SharedMemory.
   23770         (Requested by bbandix on #webkit).
   23771 
   23772         * Platform/SharedMemory.h:
   23773         * Platform/qt/MappedMemoryPool.cpp: Removed.
   23774         * Platform/qt/SharedMemoryQt.cpp:
   23775         (WebKit::SharedMemory::Handle::Handle):
   23776         (WebKit::SharedMemory::Handle::~Handle):
   23777         (WebKit::SharedMemory::Handle::encode):
   23778         (WebKit::SharedMemory::Handle::decode):
   23779         (WebKit::SharedMemory::create):
   23780         (WebKit::SharedMemory::~SharedMemory):
   23781         (WebKit::SharedMemory::createHandle):
   23782         (WebKit::SharedMemory::systemPageSize):
   23783         * Shared/qt/MappedMemory.h: Renamed from WebKit2/Platform/qt/MappedMemoryPool.h.
   23784         (WebKit::MappedMemory::mapSize):
   23785         (WebKit::MappedMemory::markUsed):
   23786         (WebKit::MappedMemory::markFree):
   23787         (WebKit::MappedMemory::isFree):
   23788         (WebKit::MappedMemory::data):
   23789         * Shared/qt/MappedMemoryPool.cpp: Added.
   23790         (WebKit::MappedMemoryPool::MappedMemoryPool):
   23791         (WebKit::MappedMemoryPool::instance):
   23792         (WebKit::MappedMemoryPool::size):
   23793         (WebKit::MappedMemoryPool::at):
   23794         (WebKit::MappedMemoryPool::append):
   23795         (WebKit::MappedMemoryPool::cleanUp):
   23796         * Shared/qt/UpdateChunk.cpp:
   23797         (WebKit::mapMemory):
   23798         (WebKit::mapFile):
   23799         (WebKit::UpdateChunk::UpdateChunk):
   23800         (WebKit::UpdateChunk::decode):
   23801         * Shared/qt/UpdateChunk.h:
   23802         * WebKit2.pro:
   23803 
   23804 2010-10-25  Zoltan Horvath  <zoltan (a] webkit.org>
   23805 
   23806         Reviewed by Kenneth Rohde Christiansen.
   23807 
   23808         [Qt] Implement SharedMemory for WebKit2
   23809         https://bugs.webkit.org/show_bug.cgi?id=47345
   23810 
   23811         Implement unimplemented functions in SharedMemoryQt.cpp.
   23812         Rename MappedMemory.h to MappedMemoryPool.h, move MappedMemoryPool.{h|cpp} from
   23813         Shared/qt to Platform/qt. Modify affected lines of WebKit2.pro.
   23814         Move MappedMemory implementation into MappedMemoryPool. Remove unnecessary 
   23815         methods of MappedMemoryPool.
   23816 
   23817         * Platform/SharedMemory.h: Add a handle member for Qt.
   23818         * Platform/qt/MappedMemoryPool.cpp: Copied from WebKit2/Shared/qt/MappedMemoryPool.cpp.
   23819         (WebKit::MappedMemoryPool::searchForMappedMemory):
   23820         (WebKit::MappedMemoryPool::mapMemory):
   23821         (WebKit::MappedMemoryPool::mapFile):
   23822         * Platform/qt/MappedMemoryPool.h: Copied from WebKit2/Shared/qt/MappedMemory.h.
   23823         (WebKit::MappedMemoryPool::MappedMemory::mapSize):
   23824         (WebKit::MappedMemoryPool::MappedMemory::markUsed):
   23825         (WebKit::MappedMemoryPool::MappedMemory::markFree):
   23826         (WebKit::MappedMemoryPool::MappedMemory::isFree):
   23827         (WebKit::MappedMemoryPool::MappedMemory::data):
   23828         (WebKit::MappedMemoryPool::MappedMemoryPool):
   23829         Move MappedMemory implementation into MappedMemoryPool.
   23830         * Platform/qt/SharedMemoryQt.cpp:
   23831         (WebKit::SharedMemory::Handle::Handle): Implement.
   23832         (WebKit::SharedMemory::Handle::~Handle):
   23833         (WebKit::SharedMemory::Handle::isNull): Implement.
   23834         (WebKit::SharedMemory::Handle::encode): Implement.
   23835         (WebKit::SharedMemory::Handle::decode): Implement.
   23836         (WebKit::SharedMemory::create): Implement.
   23837         (WebKit::mapProtection): Added.
   23838         (WebKit::SharedMemory::~SharedMemory): Implement.
   23839         (WebKit::SharedMemory::createHandle): Implement.
   23840         (WebKit::SharedMemory::systemPageSize): Implement.
   23841         * Shared/qt/MappedMemory.h: Removed.
   23842         * Shared/qt/MappedMemoryPool.cpp: Removed.
   23843         * Shared/qt/UpdateChunk.cpp:
   23844         (WebKit::UpdateChunk::UpdateChunk):
   23845         (WebKit::UpdateChunk::decode):
   23846         Modify to use MappedMemoryPool.
   23847         * Shared/qt/UpdateChunk.h:
   23848         * WebKit2.pro:
   23849         Modify affected lines.
   23850 
   23851 2010-10-24  Sam Weinig  <sam (a] webkit.org>
   23852 
   23853         Reviewed by Dan Bernstein.
   23854 
   23855         Need a way to determine the screen rect for a form control in WebKit2
   23856         <rdar://problem/8530670>
   23857         https://bugs.webkit.org/show_bug.cgi?id=48216
   23858 
   23859         * Shared/API/c/WKSharedAPICast.h:
   23860         (WebKit::toAPI):
   23861         Add conversion from IntRect to WKRect.
   23862 
   23863         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
   23864         (WKBundleNodeHandleGetElementBounds):
   23865         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h:
   23866         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
   23867         (WebKit::InjectedBundleNodeHandle::elementBounds):
   23868         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
   23869         Add SPI to get the rect in window space. The client can then convert this to screen
   23870         space if they wish to.
   23871 
   23872 2010-10-23  Xan Lopez  <xlopez (a] igalia.com>
   23873 
   23874         Reviewed by Sam Weinig.
   23875 
   23876         Unify globalData APIs
   23877         https://bugs.webkit.org/show_bug.cgi?id=47969
   23878 
   23879         Adapt code to JSGlobalObject::globalData returning a reference
   23880         instead of a pointer.
   23881 
   23882         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   23883         (WebKit::NPRuntimeObjectMap::getOrCreateJSObject):
   23884         (WebKit::NPRuntimeObjectMap::evaluate):
   23885 
   23886 2010-10-23  Alexey Proskuryakov  <ap (a] apple.com>
   23887 
   23888         Reviewed by Anders Carlsson.
   23889 
   23890         https://bugs.webkit.org/show_bug.cgi?id=48083
   23891         <rdar://problem/8489082> Need WebKit2 API for private browsing (48083)
   23892 
   23893         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: (InitWebCoreSystemInterface):
   23894         Initialize the new method.
   23895 
   23896 2010-10-21  Timothy Hatcher  <timothy (a] apple.com>
   23897 
   23898         Stub out WebInspectorFrontendClient.
   23899 
   23900         https://bugs.webkit.org/show_bug.cgi?id=48091
   23901 
   23902         Reviewed by Adam Roben.
   23903 
   23904         * WebKit2.pro: Added WebInspectorFrontendClient.{cpp,h}.
   23905         * WebKit2.xcodeproj/project.pbxproj: Added WebInspectorFrontendClient.{cpp,h}.
   23906         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp: Added.
   23907         (WebKit::WebInspectorFrontendClient::windowObjectCleared): Added.
   23908         (WebKit::WebInspectorFrontendClient::frontendLoaded): Added.
   23909         (WebKit::WebInspectorFrontendClient::moveWindowBy): Added.
   23910         (WebKit::WebInspectorFrontendClient::localizedStringsURL): Added.
   23911         (WebKit::WebInspectorFrontendClient::hiddenPanels): Added.
   23912         (WebKit::WebInspectorFrontendClient::bringToFront): Added.
   23913         (WebKit::WebInspectorFrontendClient::closeWindow): Added.
   23914         (WebKit::WebInspectorFrontendClient::disconnectFromBackend): Added.
   23915         (WebKit::WebInspectorFrontendClient::requestAttachWindow): Added.
   23916         (WebKit::WebInspectorFrontendClient::requestDetachWindow): Added.
   23917         (WebKit::WebInspectorFrontendClient::changeAttachedWindowHeight): Added.
   23918         (WebKit::WebInspectorFrontendClient::inspectedURLChanged): Added.
   23919         (WebKit::WebInspectorFrontendClient::sendMessageToBackend): Added.
   23920         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h: Added.
   23921         (WebKit::WebInspectorFrontendClient::WebInspectorFrontendClient): Added.
   23922         * win/WebKit2.vcproj: Added WebInspectorFrontendClient.{cpp,h}.
   23923 
   23924 2010-10-21  Timothy Hatcher  <timothy (a] apple.com>
   23925 
   23926         Remove stale stubs that are not longer part of InspectorClient.
   23927 
   23928         https://bugs.webkit.org/show_bug.cgi?id=48090
   23929 
   23930         Reviewed by Adam Roben.
   23931 
   23932         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
   23933         * WebProcess/WebCoreSupport/WebInspectorClient.h:
   23934 
   23935 2010-10-22  Andy Estes  <aestes (a] apple.com>
   23936 
   23937         Reviewed by Adam Roben and Sam Weinig.
   23938 
   23939         WebKit shouldn't load a plug-in based on file extension if a MIME type
   23940         is specified.
   23941         https://bugs.webkit.org/show_bug.cgi?id=48046
   23942 
   23943         The fix landed in r70332 only covered the Mac port. Implement this fix
   23944         for WebKit2 as well.
   23945 
   23946         * UIProcess/Plugins/PluginInfoStore.cpp:
   23947         (WebKit::PluginInfoStore::findPlugin):
   23948 
   23949 2010-10-22  Anders Carlsson  <andersca (a] apple.com>
   23950 
   23951         Fix clang++ build.
   23952 
   23953         * Scripts/webkit2/messages.py:
   23954 
   23955 2010-10-22  Anders Carlsson  <andersca (a] apple.com>
   23956 
   23957         Fix build.
   23958 
   23959         * UIProcess/API/qt/qwkpage_p.h:
   23960         (QWKPagePrivate::didRelaunchProcess):
   23961         * UIProcess/win/WebView.cpp:
   23962         (WebKit::WebView::didRelaunchProcess):
   23963         * UIProcess/win/WebView.h:
   23964         * WebKit2.xcodeproj/project.pbxproj:
   23965 
   23966 2010-10-22  Anders Carlsson  <andersca (a] apple.com>
   23967 
   23968         Reviewed by Sam Weinig.
   23969 
   23970         WebContext::ensureWebProcess shouldn't send multiple InitializeWebProcess messages.
   23971         https://bugs.webkit.org/show_bug.cgi?id=48158
   23972         <rdar://problem/8512572>
   23973 
   23974         If the web process was launching when another call to ensureWebProcess is sent, we
   23975         would end up sending another InitializeWebProcess message to it which would result
   23976         in assertions firing. Fix this by only checking for m_process, and not requiring a process
   23977         to be valid (which it won't be until it's finished launching).
   23978         
   23979         * UIProcess/WebContext.cpp:
   23980         (WebKit::WebContext::ensureWebProcess):
   23981 
   23982 2010-10-22  Anders Carlsson  <andersca (a] apple.com>
   23983 
   23984         Reviewed by Sam Weinig.
   23985 
   23986         Rename revive to relaunch everywhere.
   23987 
   23988         * UIProcess/API/mac/PageClientImpl.h:
   23989         * UIProcess/API/mac/PageClientImpl.mm:
   23990         (WebKit::PageClientImpl::didRelaunchProcess):
   23991         * UIProcess/API/mac/WKView.mm:
   23992         (-[WKView _didRelaunchProcess]):
   23993         * UIProcess/API/mac/WKViewInternal.h:
   23994         * UIProcess/PageClient.h:
   23995         * UIProcess/WebContext.cpp:
   23996         (WebKit::WebContext::relaunchProcessIfNecessary):
   23997         * UIProcess/WebContext.h:
   23998         * UIProcess/WebPageNamespace.h:
   23999         * UIProcess/WebPageProxy.cpp:
   24000         (WebKit::WebPageProxy::relaunch):
   24001         (WebKit::WebPageProxy::initializeWebPage):
   24002         (WebKit::WebPageProxy::loadURL):
   24003         (WebKit::WebPageProxy::loadURLRequest):
   24004         * UIProcess/WebPageProxy.h:
   24005 
   24006 2010-10-22  Anders Carlsson  <andersca (a] apple.com>
   24007 
   24008         Reviewed by Adam Roben.
   24009 
   24010         Fix assert when a NetscapePluginModule loses its last NetscapePlugin.
   24011         https://bugs.webkit.org/show_bug.cgi?id=48155
   24012 
   24013         (The assert in question is ASSERT(pluginModuleIndex != notFound) in 
   24014         NetscapePluginModule::shutdown()).
   24015 
   24016         * WebProcess/Plugins/Netscape/NetscapePluginModule.cpp:
   24017         (WebKit::NetscapePluginModule::pluginCreated):
   24018         If we didn't have any live plug-ins, load the plug-in module.
   24019 
   24020         (WebKit::NetscapePluginModule::pluginDestroyed):
   24021         If this was the last plug-in, unload the plug-in module.
   24022 
   24023         (WebKit::NetscapePluginModule::shutdown):
   24024         Set m_isInitialized to false.
   24025 
   24026         (WebKit::NetscapePluginModule::load):
   24027         Don't do anything if the plug-in module has already been initialized.
   24028 
   24029         (WebKit::NetscapePluginModule::unload):
   24030         Assert that we're not initialized.
   24031 
   24032         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   24033         (WebKit::NetscapePlugin::platformPostInitialize):
   24034         Assert that we successfully created the window.
   24035 
   24036 2010-10-22  Jessie Berlin  <jberlin (a] apple.com>
   24037 
   24038         Reviewed by Anders Carlsson.
   24039 
   24040         Crash in Connection::isValid when called in response to
   24041         VisitedLinksProvider::pendingVisitedLinksTimerFired after WebProcessProxy::didClose was
   24042         already called.
   24043         https://bugs.webkit.org/show_bug.cgi?id=48153
   24044 
   24045         * UIProcess/VisitedLinkProvider.cpp:
   24046         (WebKit::VisitedLinkProvider::stopVisitedLinksTimer):
   24047         * UIProcess/VisitedLinkProvider.h:
   24048 
   24049         * UIProcess/WebContext.cpp:
   24050         (WebKit::WebContext::processDidClose):
   24051         Stop the pendingVisitedLinksTimer and null out the process.
   24052         * UIProcess/WebContext.h:
   24053 
   24054         * UIProcess/WebProcessProxy.cpp:
   24055         (WebKit::WebProcessProxy::didClose):
   24056         Tell the WebContext that the WebProcess did close.
   24057 
   24058 2010-10-22  Sam Weinig  <sam (a] webkit.org>
   24059 
   24060         Fix Qt build.
   24061 
   24062         * UIProcess/API/qt/ClientImpl.h:
   24063 
   24064 2010-10-22  Sam Weinig  <sam (a] webkit.org>
   24065 
   24066         Reviewed by Anders Carlsson.
   24067 
   24068         WebKit2 needs to pass the current event modifier flags when requesting a new window
   24069         https://bugs.webkit.org/show_bug.cgi?id=48140
   24070 
   24071         In addition to passing modifier flags from the now passed NavigationAction, also pass
   24072         the WindowFeatures to the UIProcess.
   24073 
   24074         * Platform/CoreIPC/HandleMessage.h:
   24075         (CoreIPC::callMemberFunction):
   24076         * Shared/WebCoreArgumentCoders.h:
   24077         * Shared/WebEvent.h:
   24078         (WebKit::WebEvent::modifiers):
   24079         * UIProcess/API/C/WKPage.h:
   24080         * UIProcess/WebPageProxy.cpp:
   24081         (WebKit::WebPageProxy::createNewPage):
   24082         * UIProcess/WebPageProxy.h:
   24083         * UIProcess/WebPageProxy.messages.in:
   24084         * UIProcess/WebUIClient.cpp:
   24085         (WebKit::WebUIClient::createNewPage):
   24086         * UIProcess/WebUIClient.h:
   24087         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   24088         (WebKit::WebChromeClient::createWindow):
   24089         * WebProcess/WebCoreSupport/WebChromeClient.h:
   24090         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   24091         (WebKit::WebFrameLoaderClient::dispatchCreatePage):
   24092         (WebKit::modifiersForNavigationAction):
   24093         (WebKit::mouseButtonForNavigationAction):
   24094         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   24095 
   24096 2010-10-22  Anders Carlsson  <andersca (a] apple.com>
   24097 
   24098         Reviewed by Sam Weinig.
   24099 
   24100         Rename processDidExit to processDidCrash
   24101         https://bugs.webkit.org/show_bug.cgi?id=48146
   24102 
   24103         * UIProcess/API/C/WKPage.h:
   24104         * UIProcess/API/mac/PageClientImpl.h:
   24105         * UIProcess/API/mac/PageClientImpl.mm:
   24106         (WebKit::PageClientImpl::processDidCrash):
   24107         * UIProcess/API/mac/WKView.mm:
   24108         (-[WKView _processDidCrash]):
   24109         * UIProcess/API/mac/WKViewInternal.h:
   24110         * UIProcess/API/qt/qwkpage.cpp:
   24111         (QWKPage::QWKPage):
   24112         * UIProcess/API/qt/qwkpage_p.h:
   24113         (QWKPagePrivate::processDidCrash):
   24114         * UIProcess/PageClient.h:
   24115         * UIProcess/WebLoaderClient.cpp:
   24116         (WebKit::WebLoaderClient::processDidBecomeUnresponsive):
   24117         (WebKit::WebLoaderClient::processDidBecomeResponsive):
   24118         (WebKit::WebLoaderClient::processDidCrash):
   24119         * UIProcess/WebLoaderClient.h:
   24120         * UIProcess/WebPageProxy.cpp:
   24121         (WebKit::WebPageProxy::processDidBecomeUnresponsive):
   24122         (WebKit::WebPageProxy::processDidBecomeResponsive):
   24123         (WebKit::WebPageProxy::processDidCrash):
   24124         * UIProcess/WebPageProxy.h:
   24125         * UIProcess/WebProcessProxy.cpp:
   24126         (WebKit::WebProcessProxy::didClose):
   24127         * UIProcess/win/WebView.cpp:
   24128         (WebKit::WebView::processDidCrash):
   24129         * UIProcess/win/WebView.h:
   24130 
   24131 2010-10-22  Dan Bernstein  <mitz (a] apple.com>
   24132 
   24133         Reviewed by Sam Weinig.
   24134 
   24135         Corrected target dependencies.
   24136 
   24137         * WebKit2.xcodeproj/project.pbxproj: Made WebKit2 depend on DerivedSources and removed
   24138         the explicit dependency of All on DerivedSources and WebKit2, since WebProcess depends on
   24139         them.
   24140 
   24141 2010-10-20  Jon Honeycutt  <jhoneycutt (a] apple.com>
   24142 
   24143         <rdar://problem/8423766> Cursor does not become "busy" when a page is
   24144         loading with WebKit2
   24145 
   24146         Reviewed by Sam Weinig.
   24147 
   24148         * UIProcess/API/C/win/WKViewPrivate.cpp: Added.
   24149         (WKViewSetOverrideCursor):
   24150         Call the WebView's setOverrideCursor().
   24151 
   24152         * UIProcess/API/C/win/WKViewPrivate.h: Added.
   24153         Declare WKViewSetOVerrideCursor().
   24154 
   24155         * UIProcess/win/WebView.cpp:
   24156         (WebKit::WebView::WebView):
   24157         Initialize new member vars to 0.
   24158         (WebKit::WebView::updateNativeCursor):
   24159         If there is an override cursor, and the last cursor set from the web
   24160         process was the arrow cursor, use the override cursor. Otherwise, use
   24161         the cursor from the web process.
   24162         (WebKit::WebView::setCursor):
   24163         Record the web process's cursor, and call updateNativeCursor().
   24164         (WebKit::WebView::setOverrideCursor):
   24165         Record the override cursor, and call updateNativeCursor().
   24166 
   24167         * UIProcess/win/WebView.h:
   24168         Declare setOverrideCursor() and updateNativeCursor(). Add members to
   24169         hold the last cursor set from the web process and the override cursor.
   24170 
   24171         * win/WebKit2.vcproj:
   24172         Add new files to project.
   24173 
   24174         * win/WebKit2Generated.make:
   24175         Copy WKViewPrivate.h with other headers.
   24176 
   24177 2010-10-21  Anders Carlsson  <andersca (a] apple.com>
   24178 
   24179         Reviewed by Adam Roben.
   24180 
   24181         Crash evaluating JavaScript string that throws an exception
   24182         https://bugs.webkit.org/show_bug.cgi?id=48092
   24183         <rdar://problem/8487657>
   24184 
   24185         * UIProcess/WebProcessProxy.cpp:
   24186         (WebKit::WebProcessProxy::sendMessage):
   24187         m_connection can be null here; just return false if that is the case.
   24188     
   24189         * WebProcess/WebPage/WebPage.cpp:
   24190         (WebKit::WebPage::runJavaScriptInMainFrame):
   24191         If the JSValue returned is null we just send along a null string.
   24192 
   24193 2010-10-21  Adam Roben  <aroben (a] apple.com>
   24194 
   24195         Invalidate the plugin's HWND when NPN_InvalidateRect is called
   24196 
   24197         Fixes <http://webkit.org/b/48086> <rdar://problem/8482944> Silverlight
   24198         doesn't repaint in WebKit2
   24199 
   24200         Reviewed by Anders Carlsson.
   24201 
   24202         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   24203         (WebKit::NetscapePlugin::invalidate): Call platformInvalidate before
   24204         invalidating via the PluginController.
   24205 
   24206         * WebProcess/Plugins/Netscape/NetscapePlugin.h: Added platformInvalidate.
   24207 
   24208         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   24209         (WebKit::NetscapePlugin::platformInvalidate):
   24210         * WebProcess/Plugins/Netscape/qt/NetscapePluginQt.cpp:
   24211         (WebKit::NetscapePlugin::platformInvalidate):
   24212         Stubbed out.
   24213 
   24214         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
   24215         (WebKit::NetscapePlugin::platformInvalidate): If the plugin is
   24216         windowed, invalidate its HWND via ::InvalidateRect.
   24217 
   24218 2010-10-21  Anders Carlsson  <andersca (a] apple.com>
   24219 
   24220         Reviewed by John Sullivan.
   24221 
   24222         Find indicator does not draw found text in WebKit2 when page is not scrolled to top
   24223         <rdar://problem/8562647>
   24224         https://bugs.webkit.org/show_bug.cgi?id=48089
   24225 
   24226         We always want the selection rectangle in "WebCore window coordinates" which is the same
   24227         as WKView coordinates in WebKit2.
   24228 
   24229         * WebProcess/WebPage/FindController.cpp:
   24230         (WebKit::FindController::updateFindIndicator):
   24231 
   24232 2010-10-21  Anders Carlsson  <andersca (a] apple.com>
   24233 
   24234         Reviewed by David Hyatt.
   24235 
   24236         Always clear the selection when the find string isn't found
   24237         https://bugs.webkit.org/show_bug.cgi?id=48087
   24238         <rdar://problem/8564640>
   24239 
   24240         * WebProcess/WebPage/FindController.cpp:
   24241         (WebKit::FindController::findString):
   24242 
   24243 2010-10-21  Alexey Proskuryakov  <ap (a] apple.com>
   24244 
   24245         Reviewed by John Sullivan.
   24246 
   24247         https://bugs.webkit.org/show_bug.cgi?id=48083
   24248         <rdar://problem/8489082> Need WebKit2 API for private browsing
   24249 
   24250         This just adds glue code for passing the preference from embedder to WebCore. The aspects of
   24251         private browsing that WebCore is responsible for do work, but cookies are not handled yet.
   24252 
   24253         * Shared/WebPreferencesStore.cpp:
   24254         (WebKit::WebPreferencesStore::WebPreferencesStore):
   24255         (WebKit::WebPreferencesStore::encode):
   24256         (WebKit::WebPreferencesStore::decode):
   24257         * Shared/WebPreferencesStore.h:
   24258         * UIProcess/API/C/WKPreferences.cpp:
   24259         (WKPreferencesSetPrivateBrowsingEnabled):
   24260         (WKPreferencesGetPrivateBrowsingEnabled):
   24261         * UIProcess/API/C/WKPreferences.h:
   24262         * UIProcess/WebPreferences.cpp:
   24263         (WebKit::WebPreferences::setPrivateBrowsingEnabled):
   24264         (WebKit::WebPreferences::privateBrowsingEnabled):
   24265         * UIProcess/WebPreferences.h:
   24266         * WebProcess/WebPage/WebPage.cpp:
   24267         (WebKit::WebPage::updatePreferences):
   24268         Do what it takes to pass a single boolean from WebKit2 to WebCore. And we aren't even syncing
   24269         the preference to user defaults yet.
   24270 
   24271 2010-10-20  Adam Roben  <aroben (a] apple.com>
   24272 
   24273         Ask the UI client to close the page when the WKView receives a WM_CLOSE
   24274         message
   24275 
   24276         Fixes <http://webkit.org/b/48044> <rdar://problem/8488446> Pressing
   24277         Ctrl+W when viewing a full-page PDF destroys the WKView but doesn't
   24278         close its parent window
   24279 
   24280         Reviewed by Jon Honeycutt.
   24281 
   24282         * UIProcess/win/WebView.cpp:
   24283         (WebKit::WebView::wndProc): Call through to WebPageProxy::tryClose when
   24284         we receive a WM_CLOSE message, rather than passing the message along to
   24285         ::DefWindowProcW. tryClose will end up asking the UI client to close
   24286         the page, while ::DefWindowProcW would destroy us synchronously without
   24287         notifying the UI client at all. One case where we'll get sent a
   24288         WM_CLOSE message is when the user presses Ctrl+W when using the Adobe
   24289         Reader plugin to view a PDF.
   24290 
   24291 2010-10-20  Adam Roben  <aroben (a] apple.com>
   24292 
   24293         Remove confusing and redundant "host window" terminology from WKView on
   24294         Windows
   24295 
   24296         WKView's "host window" is really just its HWND's parent window. The
   24297         terminology has been updated to reflect this. The unnecessary
   24298         WKViewGetHostWindow function has been removed, as it was a synonym for
   24299         ::GetParent(WKViewGetWindow(view)).
   24300 
   24301         Fixes <http://webkit.org/b/48039> WKView's "host window" API is
   24302         confusing
   24303 
   24304         Reviewed by Sam Weinig.
   24305 
   24306         * UIProcess/API/C/win/WKView.cpp:
   24307         (WKViewCreate):
   24308         (WKViewSetParentWindow):
   24309         * UIProcess/API/C/win/WKView.h:
   24310         Replaced "host window" with "parent window". Removed
   24311         WKViewGetHostWindow.
   24312 
   24313         * UIProcess/win/WebView.cpp:
   24314         (WebKit::WebView::WebView):
   24315         (WebKit::WebView::setParentWindow):
   24316         (WebKit::WebView::windowAncestryDidChange):
   24317         (WebKit::WebView::close):
   24318         * UIProcess/win/WebView.h:
   24319         (WebKit::WebView::create):
   24320         Replaced "host window" with "parent window". Removed m_hostWindow and
   24321         hostWindow().
   24322 
   24323 2010-10-21  Sam Weinig  <sam (a] webkit.org>
   24324 
   24325         Reviewed by Adam Roben.
   24326 
   24327         Null frame passed when running alert from UserScript run at document start
   24328         <rdar://problem/8573809>
   24329         https://bugs.webkit.org/show_bug.cgi?id=48036
   24330 
   24331         Don't initialize a Frame until after we have notified the UIProcess of its creation.
   24332         This is necessary since arbitrary actions can happen during the call to Frame::init()
   24333         such as the running of UserScripts.
   24334 
   24335         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   24336         (WebKit::WebFrameLoaderClient::createFrame):
   24337         * WebProcess/WebPage/WebFrame.cpp:
   24338         (WebKit::WebFrame::createMainFrame):
   24339         (WebKit::WebFrame::createSubframe):
   24340         (WebKit::WebFrame::create):
   24341         (WebKit::WebFrame::WebFrame):
   24342         (WebKit::WebFrame::init):
   24343         * WebProcess/WebPage/WebFrame.h:
   24344         * WebProcess/WebPage/WebPage.cpp:
   24345         (WebKit::WebPage::WebPage):
   24346 
   24347 2010-10-21  Balazs Kelemen  <kbalazs (a] webkit.org>
   24348 
   24349         Reviewed by Andreas Kling.
   24350 
   24351         [Qt] PluginInfoStore does not set up mime types for plugins
   24352         https://bugs.webkit.org/show_bug.cgi?id=48063
   24353 
   24354         * UIProcess/Plugins/qt/PluginInfoStoreQt.cpp:
   24355         (WebKit::PluginInfoStore::getPluginInfo): Store the mime types
   24356         that are supported by the plugin into the plugin argument.
   24357 
   24358 2010-10-21  Juha Savolainen  <juha.savolainen (a] weego.fi>
   24359 
   24360         Reviewed by Kenneth Rohde Christiansen.
   24361 
   24362         This is initial implementation of QWKHistory. The QWKHistory class represents the history of a QWKPage.
   24363         https://bugs.webkit.org/show_bug.cgi?id=47716
   24364 
   24365         Each QWKPage instance contains a history of a visited pages that can be accessed by QWKHistory::history().
   24366         The QWKPagePrivate class creates QWKHistory in constructor.
   24367 
   24368         * UIProcess/API/qt/qwkhistory.cpp: Added.
   24369         (QWKHistoryPrivate::QWKHistoryPrivate):
   24370         (QWKHistoryPrivate::createHistory): Creates history object.
   24371         (QWKHistoryPrivate::~QWKHistoryPrivate):
   24372         (QWKHistory::QWKHistory):
   24373         (QWKHistory::~QWKHistory):
   24374         (QWKHistory::backListCount): Gets items count in back.
   24375         (QWKHistory::forwardListCount): Gets items count in forward.
   24376         (QWKHistory::count): Gets items count.
   24377         * UIProcess/API/qt/qwkhistory.h: Added.
   24378         * UIProcess/API/qt/qwkhistory_p.h: Added.
   24379         * UIProcess/API/qt/qwkpage.cpp:
   24380         (QWKPagePrivate::QWKPagePrivate):
   24381         (QWKPagePrivate::~QWKPagePrivate):
   24382         (QWKPage::history): Returns history object.
   24383         * UIProcess/API/qt/qwkpage.h:
   24384         * UIProcess/API/qt/qwkpage_p.h: Added history member variable.
   24385         * WebKit2.pro: Added WKBackForwardList.h, WKBackForwardList.cpp and new files.
   24386 
   24387 2010-10-14  Adam Roben  <aroben (a] apple.com>
   24388 
   24389         Don't require the plugin to always use the same NPP struct we gave it
   24390         in NPP_New
   24391 
   24392         Neither WebCore, nor WebKit/mac, nor Firefox requires this, and
   24393         Shockwave (at least) seems to use a different NPP struct that contains
   24394         the same ndata member. So we shouldn't enforce it, either.
   24395 
   24396         Fixes <http://webkit.org/b/47690> <rdar://problem/8553020> Assertion
   24397         failure in NetscapePlugin::fromNPP when using Shockwave in WebKit2
   24398 
   24399         Reviewed by John Sullivan.
   24400 
   24401         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   24402         (WebKit::NetscapePlugin::fromNPP): Removed the bogus assertion.
   24403 
   24404 2010-10-20  Anders Carlsson  <andersca (a] apple.com>
   24405 
   24406         Fix clang++ build.
   24407 
   24408         * UIProcess/API/C/WKNativeEvent.h:
   24409 
   24410 2010-10-20  Eric Carlson  <eric.carlson (a] apple.com>
   24411 
   24412         Reviewed by Simon Fraser.
   24413 
   24414         Crash closing page with <video> element
   24415         https://bugs.webkit.org/show_bug.cgi?id=47960
   24416         <rdar://problem/8573297>
   24417 
   24418         I couldn't think of a good way to make a layout test for this because the
   24419         crash isn't triggered by closing an iframe.
   24420 
   24421         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   24422         (WebKit::WebChromeClient::scheduleCompositingLayerSync): NULL check drawingArea().
   24423 
   24424 2010-10-20  Anders Carlsson  <andersca (a] apple.com>
   24425 
   24426         Reviewed by Darin Adler.
   24427 
   24428         Out of process plug-ins are never asked to initially paint
   24429         https://bugs.webkit.org/show_bug.cgi?id=47993
   24430         <rdar://problem/8570342>
   24431 
   24432         * Platform/CoreIPC/HandleMessage.h:
   24433         (CoreIPC::callMemberFunction):
   24434         Add new callMemberFunction overload.
   24435 
   24436         * PluginProcess/PluginControllerProxy.cpp:
   24437         (WebKit::PluginControllerProxy::paintEntirePlugin):
   24438         Set the dirty rect to be the entire plug-in rect and then paint the plug-in.
   24439 
   24440         * PluginProcess/PluginControllerProxy.messages.in:
   24441         Add PaintEntirePlugin message.
   24442 
   24443         * WebProcess/Plugins/PluginProxy.cpp:
   24444         (WebKit::PluginProxy::PluginProxy):
   24445         Initialize m_pluginBackingStoreContainsValidData to false.
   24446 
   24447         (WebKit::PluginProxy::paint):
   24448         If m_pluginBackingStoreContainsValidData is false, synchronously ask the plug-in to paint,
   24449         then blit the plug-in backing store into our own backing store.
   24450 
   24451         (WebKit::PluginProxy::geometryDidChange):
   24452         Set m_pluginBackingStoreContainsValidData to false.
   24453 
   24454         (WebKit::PluginProxy::update):
   24455         Set m_pluginBackingStoreContainsValidData to true if the plug-in has painted its entire area.
   24456 
   24457 2010-10-19  Jessie Berlin  <jberlin (a] apple.com>
   24458 
   24459         Reviewed by Geoffrey Garen.
   24460 
   24461         ASSERTION FAILURE: !m_adoptionIsRequired for the WebFrame under the
   24462         InjectedBundlePageLoaderClient::didClearWindowObjectForFrame callback.
   24463         https://bugs.webkit.org/show_bug.cgi?id=47960
   24464 
   24465         Do not try to initialize the coreFrame (which results in the
   24466         InjectedBundlePageLoaderClient::didClearWindowObjectForFrame being called) until after the
   24467         WebFrame constructor has returned and the WebFrame has been adopted.
   24468 
   24469         * WebProcess/WebPage/WebFrame.cpp:
   24470         (WebKit::WebFrame::create):
   24471         Moved the call to init the coreFrame here ...
   24472         (WebKit::WebFrame::WebFrame):
   24473         ... from here.
   24474 
   24475 2010-10-20  Dirk Schulze  <krit (a] webkit.org>
   24476 
   24477         Reviewed by Nikolas Zimmermann.
   24478 
   24479         Merge ColorSpace and ImageColorSpace enums
   24480         https://bugs.webkit.org/show_bug.cgi?id=47922
   24481 
   24482         Renamed ColorSpace enum entries DeviceColorSpace and sRGBColorSpace to ColorSpaceDeviceRGB and ColorSpaceSRGB
   24483         to follow webkit style rules.
   24484 
   24485         * UIProcess/FindIndicator.cpp:
   24486         (WebKit::FindIndicator::draw):
   24487         * WebProcess/WebPage/FindPageOverlay.cpp:
   24488         (WebKit::FindPageOverlay::drawRect):
   24489 
   24490 2010-10-20  Nikolas Zimmermann  <nzimmermann (a] rim.com>
   24491 
   24492         Not reviewed.
   24493 
   24494         Fix Qt/WebKit2 build, also needs a svg/properties include.
   24495 
   24496         * WebKit2.pro:
   24497 
   24498 2010-10-19  Anders Carlsson  <andersca (a] apple.com>
   24499 
   24500         Reviewed by Sam Weinig.
   24501 
   24502         Fix MiniBrowser crashes during startup and shutdown
   24503         https://bugs.webkit.org/show_bug.cgi?id=47954
   24504 
   24505         * UIProcess/WebContext.cpp:
   24506         (WebKit::WebContext::sharedProcessContext):
   24507         Initialize the main thread.
   24508         
   24509         (WebKit::WebContext::create):
   24510         Ditto.
   24511 
   24512         (WebKit::WebContext::WebContext):
   24513         Add the language observer here so we know that it will always be set up.
   24514 
   24515         (WebKit::WebContext::ensureWebProcess):
   24516         Remove code.
   24517 
   24518         * UIProcess/WebContext.h:
   24519 
   24520 2010-10-19  Anders Carlsson  <andersca (a] apple.com>
   24521 
   24522         Reviewed by Sam Weinig.
   24523 
   24524         Coalesce plug-in drawing
   24525         https://bugs.webkit.org/show_bug.cgi?id=47939
   24526 
   24527         Coalesce plug-in drawing in the same manner as we do it in the chunked update drawing area.
   24528 
   24529         * PluginProcess/PluginControllerProxy.cpp:
   24530         (WebKit::PluginControllerProxy::PluginControllerProxy):
   24531         Initialize m_waitingForDidUpdate to false.
   24532 
   24533         (WebKit::PluginControllerProxy::startPaintTimer):
   24534         Move code from invalidate out to here. Don't start the paint timer if m_waitingForDidUpdate is true.
   24535 
   24536         (WebKit::PluginControllerProxy::invalidate):
   24537         Call startPaintTimer.
   24538 
   24539         (WebKit::PluginControllerProxy::didUpdate):
   24540         Set m_waitingForDidUpdate to false and start the paint timer.
   24541 
   24542         * PluginProcess/PluginControllerProxy.messages.in:
   24543         Add DidUpdate message.
   24544 
   24545         * WebProcess/Plugins/PluginProxy.cpp:
   24546         (WebKit::PluginProxy::PluginProxy):
   24547         Initialize m_waitingForPaintInResponseToUpdate to false.
   24548 
   24549         (WebKit::PluginProxy::paint):
   24550         If m_waitingForPaintInResponseToUpdate is true, send a DidUpdate message.
   24551 
   24552         (WebKit::PluginProxy::update):
   24553         Set m_waitingForPaintInResponseToUpdate to true.
   24554 
   24555 2010-10-19  Sam Weinig  <sam (a] webkit.org>
   24556 
   24557         Reviewed by Anders Carlsson.
   24558 
   24559         Add alternateHTMLString and unreachableURL API to WebKit2
   24560         <rdar://problem/8557864>
   24561         https://bugs.webkit.org/show_bug.cgi?id=47938
   24562 
   24563         * UIProcess/API/C/WKFrame.cpp:
   24564         (WKFrameCopyUnreachableURL):
   24565         * UIProcess/API/C/WKFrame.h:
   24566         Add accessor for the unreachableURL if one is set. It will only be
   24567         set during a loadAlternateHTMLString and will be unset on the next normal
   24568         didStartProvisionalLoadForFrame call.
   24569 
   24570         * UIProcess/API/C/WKPage.cpp:
   24571         (WKPageLoadHTMLString): Remove whitespace.
   24572         (WKPageLoadAlternateHTMLString):
   24573         * UIProcess/API/C/WKPage.h:
   24574         Add function to load a string as "alternate", meant for use as error pages.
   24575 
   24576         * UIProcess/WebFrameProxy.h:
   24577         (WebKit::WebFrameProxy::setUnreachableURL): 
   24578         (WebKit::WebFrameProxy::unreachableURL):
   24579         Add setter/getter for the unreachableURL.
   24580 
   24581         * UIProcess/WebPageProxy.cpp:
   24582         (WebKit::WebPageProxy::loadAlternateHTMLString):
   24583         Plumb through the call to loadAlternateHTMLString to the WebProcess
   24584         and set the main frame's unreachableURL. This does nothing if no pages
   24585         have ever been loaded in this page.
   24586 
   24587         (WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
   24588         If this is not a provisional load of substitute data for an unreachableURL
   24589         (e.g. someone who called WKPageLoadAlternateHTMLString), reset the
   24590         frame's unreachableURL.
   24591 
   24592         * UIProcess/WebPageProxy.h:
   24593         * UIProcess/WebPageProxy.messages.in:
   24594         Update function signatures.
   24595 
   24596         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   24597         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
   24598         Pass whether or not this is a load of SubstituteData for an unreachableURL
   24599         to the UIProcess.
   24600 
   24601         * WebProcess/WebPage/WebPage.cpp:
   24602         (WebKit::WebPage::loadData):
   24603         (WebKit::WebPage::loadAlternateHTMLString):
   24604         * WebProcess/WebPage/WebPage.h:
   24605         * WebProcess/WebPage/WebPage.messages.in:
   24606         Plumb through the loading of the alternate HTML string. 
   24607 
   24608 2010-10-19  Alexey Proskuryakov  <ap (a] apple.com>
   24609 
   24610         Reviewed by Anders Carlsson.
   24611 
   24612         https://bugs.webkit.org/show_bug.cgi?id=47933
   24613         <rdar://problem/8494337> navigator.language doesn't work in WebKit2
   24614 
   24615         * Shared/WebProcessCreationParameters.cpp:
   24616         (WebKit::WebProcessCreationParameters::encode):
   24617         (WebKit::WebProcessCreationParameters::decode):
   24618         * Shared/WebProcessCreationParameters.h:
   24619         Pass language code when creating a web process.
   24620 
   24621         * UIProcess/WebContext.cpp:
   24622         (WebKit::WebContext::~WebContext): Don't send language change notifications to the destroyed
   24623         process.
   24624         (WebKit::languageChanged): Make web process know about the change.
   24625         (WebKit::WebContext::ensureWebProcess): Fill WebProcessCreationParameters, and register for
   24626         change notifications.
   24627 
   24628         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: (InitWebCoreSystemInterface):
   24629         Initialize wkCopyCFLocalizationPreferredName.
   24630 
   24631         * WebProcess/WebProcess.cpp:
   24632         (WebKit::WebProcess::initializeWebProcess): Use passed in language as an override. Web process
   24633         doesn't know about per-application settings, so it depends on UI process for those.
   24634         (WebKit::WebProcess::languageChanged): Update the language override when messaged.
   24635 
   24636         * WebProcess/WebProcess.h:
   24637         * WebProcess/WebProcess.messages.in:
   24638         Added LanguageChanged message.
   24639 
   24640 2010-10-19  Anders Carlsson  <andersca (a] apple.com>
   24641 
   24642         Reviewed by Adam Roben.
   24643 
   24644         Stop waiting for sync replies if the connection is closed
   24645         https://bugs.webkit.org/show_bug.cgi?id=47930
   24646 
   24647         * Platform/CoreIPC/Connection.cpp:
   24648         (CoreIPC::Connection::Connection):
   24649         Initialize m_shouldWaitForSyncReplies to true.
   24650 
   24651         (CoreIPC::Connection::sendSyncMessage):
   24652         Don't attempt to send a message if m_shouldWaitForSyncReplies is false.
   24653 
   24654         (CoreIPC::Connection::waitForSyncReply):
   24655         Return if m_shouldWaitForSyncReplies was set to false.
   24656 
   24657         (CoreIPC::Connection::connectionDidClose):
   24658         Set m_shouldWaitForSyncReplies to true and signal the semaphore.
   24659 
   24660         * Platform/CoreIPC/Connection.h:
   24661 
   24662 2010-10-19  Adam Roben  <aroben (a] apple.com>
   24663 
   24664         Windows build fix
   24665 
   24666         * WebProcess/WebCoreSupport/win/WebErrorsWin.cpp:
   24667         (WebKit::interruptForPolicyChangeError): Add a missing comma.
   24668 
   24669 2010-10-19  Sam Weinig  <sam (a] webkit.org>
   24670 
   24671         Reviewed by Anders Carlsson.
   24672 
   24673         Part 2 of:
   24674         Need to include WKErrorRef in the WKPageDidFail... functions
   24675         <rdar://problem/8564110>
   24676         https://bugs.webkit.org/show_bug.cgi?id=47871
   24677 
   24678         * Shared/API/c/WKError.cpp:
   24679         (WKErrorCopyWKErrorDomain):
   24680         * Shared/API/c/WKError.h:
   24681         * Shared/WebError.cpp: Added.
   24682         (WebKit::WebError::webKitErrorDomain):
   24683         * Shared/WebError.h:
   24684         * WebKit2.pro:
   24685         * WebKit2.xcodeproj/project.pbxproj:
   24686         * WebProcess/WebCoreSupport/mac/WebErrorsMac.mm:
   24687         (+[NSError _webKitErrorWithCode:failingURL:]):
   24688         (registerErrors):
   24689         (WebKit::blockedError):
   24690         (WebKit::cannotShowURLError):
   24691         (WebKit::interruptForPolicyChangeError):
   24692         (WebKit::cannotShowMIMETypeError):
   24693         * WebProcess/WebCoreSupport/win/WebErrorsWin.cpp:
   24694         (WebKit::cancelledError):
   24695         (WebKit::blockedError):
   24696         (WebKit::cannotShowURLError):
   24697         (WebKit::interruptForPolicyChangeError):
   24698         * win/WebKit2.vcproj:
   24699 
   24700 2010-10-19  Sam Weinig  <sam (a] webkit.org>
   24701 
   24702         Reviewed by Dan Bernstein.
   24703 
   24704         Need to include WKErrorRef in the WKPageDidFail... functions
   24705         <rdar://problem/8564110>
   24706         https://bugs.webkit.org/show_bug.cgi?id=47871
   24707 
   24708         Give WebError a WebCore::ResourceError backing and start passing it over the wire
   24709         for failure cases.  Also, fill out the WKError API to include domain, errorCode, 
   24710         failingURL and localizedDescription.
   24711 
   24712         * Shared/API/c/WKError.cpp:
   24713         (WKErrorCopyDomain):
   24714         (WKErrorGetErrorCode):
   24715         (WKErrorCopyFailingURL):
   24716         (WKErrorCopyLocalizedDescription):
   24717         * Shared/API/c/WKError.h:
   24718         * Shared/API/c/WKSharedAPICast.h:
   24719         (WebKit::toAPI):
   24720         * Shared/WebCoreArgumentCoders.h:
   24721         * Shared/WebError.h:
   24722         (WebKit::WebError::create):
   24723         (WebKit::WebError::domain):
   24724         (WebKit::WebError::errorCode):
   24725         (WebKit::WebError::failingURL):
   24726         (WebKit::WebError::localizedDescription):
   24727         (WebKit::WebError::platformError):
   24728         (WebKit::WebError::WebError):
   24729         * UIProcess/API/C/WKPage.h:
   24730         * UIProcess/API/qt/ClientImpl.cpp:
   24731         (qt_wk_didFailProvisionalLoadWithErrorForFrame):
   24732         (qt_wk_didFailLoadWithErrorForFrame):
   24733         * UIProcess/API/qt/ClientImpl.h:
   24734         * UIProcess/WebLoaderClient.cpp:
   24735         (WebKit::WebLoaderClient::didFailProvisionalLoadWithErrorForFrame):
   24736         (WebKit::WebLoaderClient::didFailLoadWithErrorForFrame):
   24737         * UIProcess/WebLoaderClient.h:
   24738         * UIProcess/WebPageProxy.cpp:
   24739         (WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
   24740         (WebKit::WebPageProxy::didFailLoadForFrame):
   24741         * UIProcess/WebPageProxy.h:
   24742         * UIProcess/WebPageProxy.messages.in:
   24743         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   24744         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   24745         (WebKit::InjectedBundlePageLoaderClient::didFailProvisionalLoadWithErrorForFrame):
   24746         (WebKit::InjectedBundlePageLoaderClient::didFailLoadWithErrorForFrame):
   24747         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   24748         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   24749         (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
   24750         (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
   24751 
   24752 2010-10-19  Christian Sejersen  <christian.webkit (a] gmail.com>
   24753 
   24754         Reviewed by Kenneth Rohde Christiansen.
   24755 
   24756         Scratchbox has an old version of python as the default one, so
   24757         force it to use version 2.6.
   24758         https://bugs.webkit.org/show_bug.cgi?id=47895
   24759 
   24760         * DerivedSources.pro:
   24761 
   24762 2010-10-19  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   24763 
   24764         Reviewed by Antti Koivisto.
   24765 
   24766         [Qt] WebKit2 MacOS build fix
   24767         https://bugs.webkit.org/show_bug.cgi?id=47897
   24768 
   24769         Qt WebKit2 MacOS build fix.
   24770 
   24771         * UIProcess/WebPageProxy.cpp:
   24772         * WebKit2.pri:
   24773         * WebKit2.pro:
   24774 
   24775 2010-10-18  Anders Carlsson  <andersca (a] apple.com>
   24776 
   24777         Reviewed by Sam Weinig.
   24778 
   24779         Initialize the API client.
   24780 
   24781         * Shared/APIClient.h:
   24782         (WebKit::APIClient::APIClient):
   24783 
   24784 2010-10-18  Anders Carlsson  <andersca (a] apple.com>
   24785 
   24786         Reviewed by John Sullivan.
   24787 
   24788         WebKit2 should handle dismissing the Find overlay on mouse-down
   24789         https://bugs.webkit.org/show_bug.cgi?id=47854
   24790 
   24791         * WebProcess/WebPage/FindPageOverlay.cpp:
   24792         (WebKit::FindPageOverlay::mouseEvent):
   24793         Dismiss the find UI on MouseDown.
   24794 
   24795         * WebProcess/WebPage/WebPage.cpp:
   24796         (WebKit::WebPage::mouseEvent):
   24797         If there's a page overlay, let it have a go at the event.
   24798 
   24799 2010-10-18  Anders Carlsson  <andersca (a] apple.com>
   24800 
   24801         Fix clang build.
   24802 
   24803         * UIProcess/API/mac/FindIndicatorWindow.mm:
   24804         (-[WebFindIndicatorWindowAnimation _initWithFindIndicatorWindow:WebKit::animationProgressCallback:WebKit::FindIndicatorWindow::animationDidEndCallback:WebKit::FindIndicatorWindow::]):
   24805         (WebKit::FindIndicatorWindow::setFindIndicator):
   24806         * UIProcess/WebPageProxy.h:
   24807         * UIProcess/WebPopupMenuProxy.h:
   24808         * WebProcess/WebCoreSupport/WebPopupMenu.h:
   24809 
   24810 2010-10-18  Sam Weinig  <sam (a] webkit.org>
   24811 
   24812         Fix Qt build.
   24813 
   24814         * WebKit2.pro:
   24815 
   24816 2010-10-18  Anders Carlsson  <andersca (a] apple.com>
   24817 
   24818         Reviewed by Simon Fraser.
   24819 
   24820         Don't try to change accelerated compositing mode if the web page is closed
   24821         https://bugs.webkit.org/show_bug.cgi?id=47852
   24822 
   24823         changeAcceleratedCompositingMode ends up sending a sync message to the UI process which is unnecessary if
   24824         the UI process is being torn down.
   24825         
   24826         * WebProcess/WebPage/WebPage.cpp:
   24827         (WebKit::WebPage::WebPage):
   24828         (WebKit::WebPage::changeAcceleratedCompositingMode):
   24829         (WebKit::WebPage::close):
   24830         * WebProcess/WebPage/WebPage.h:
   24831 
   24832 2010-10-18  Anders Carlsson  <andersca (a] apple.com>
   24833 
   24834         Reviewed by Sam Weinig.
   24835 
   24836         <rdar://problem/8036034>
   24837         WebKit2's WebProcess dies immediately on Mac due to DYLD_FRAMEWORK_PATH problem
   24838 
   24839         Pass the path to the WebKit2 framework along to the web process and don't rely on DYLD_FRAMEWORK_PATH being set.
   24840 
   24841         * Shared/mac/CommandLineMac.cpp:
   24842         (WebKit::CommandLine::parse):
   24843         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   24844         (WebKit::ProcessLauncher::launchProcess):
   24845         * mac/MainMac.cpp:
   24846         (main):
   24847 
   24848 2010-10-18  Jessie Berlin  <jberlin (a] apple.com>
   24849 
   24850         Reviewed by Sam Weinig.
   24851 
   24852         Need a WebKit2 equivalent of the WebKit1 WebUserContentURLPattern.
   24853         https://bugs.webkit.org/show_bug.cgi?id=47783
   24854 
   24855         * Shared/API/c/WKBase.h:
   24856 
   24857         * Shared/API/c/WKSharedAPICast.h:
   24858 
   24859         * Shared/API/c/WKUserContentURLPattern.cpp: Added.
   24860         (WKUserContentURLPatternGetTypeID):
   24861         (WKUserContentURLPatternCreate):
   24862         (WKUserContentURLPatternMatchesURL):
   24863         * Shared/API/c/WKUserContentURLPattern.h: Added.
   24864 
   24865         * Shared/APIObject.h:
   24866 
   24867         * Shared/UserMessageCoders.h:
   24868         Use the original pattern string to encode and decode a UserContentURLPattern.
   24869         (WebKit::UserMessageEncoder::baseEncode):
   24870         (WebKit::UserMessageDecoder::baseDecode):
   24871 
   24872         * Shared/WebUserContentURLPattern.h: Added.
   24873         (WebKit::WebUserContentURLPattern::create):
   24874         (WebKit::WebUserContentURLPattern::matchesURL):
   24875         Use WebCore::UserContentURLPattern::matches.
   24876         (WebKit::WebUserContentURLPattern::patternString):
   24877         Expose the pattern string used to create the UserContentURLPattern for the purpose of
   24878         encoding and decoding.
   24879         (WebKit::WebUserContentURLPattern::WebUserContentURLPattern):
   24880         (WebKit::WebUserContentURLPattern::type):
   24881 
   24882         * WebKit2.pro:
   24883         * WebKit2.xcodeproj/project.pbxproj:
   24884         * win/WebKit2.vcproj:
   24885         Add WKUserContentURLPattern.h/.cpp and WebUserContentURLPattern.h
   24886 
   24887         * win/WebKit2Generated.make:
   24888         Copy over WKUsercontentURLPattern into the output directory.
   24889 
   24890 2010-10-18  Anders Carlsson  <andersca (a] apple.com>
   24891 
   24892         Fix build.
   24893 
   24894         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   24895         (WebKit::NetscapePlugin::platformHandleMouseEnterEvent):
   24896         (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent):
   24897         (WebKit::NetscapePlugin::platformSetFocus):
   24898 
   24899 2010-10-18  Anders Carlsson  <andersca (a] apple.com>
   24900 
   24901         Reviewed by Darin Adler.
   24902 
   24903         Add matchCountDidChange callback
   24904         https://bugs.webkit.org/show_bug.cgi?id=47840
   24905 
   24906         * UIProcess/API/C/WKPage.h:
   24907         Add matchCountDidChange WKPageFindClient callback.
   24908         
   24909         * UIProcess/WebFindClient.cpp:
   24910         (WebKit::WebFindClient::matchCountDidChange):
   24911         Call the WKPageFindClient callback.
   24912 
   24913         * UIProcess/WebPageProxy.messages.in:
   24914         Add MatchCountDidChange message.
   24915 
   24916         * WebProcess/WebPage/FindController.cpp:
   24917         (WebKit::FindController::countStringMatches):
   24918         Move code here from WebPage.
   24919 
   24920         (WebKit::FindController::findString):
   24921         Send the MatchCountDidChange message.
   24922         
   24923         * WebProcess/WebPage/WebPage.cpp:
   24924         (WebKit::WebPage::countStringMatches):
   24925         Move this code over to FindController.
   24926 
   24927 2010-10-18  Anders Carlsson  <andersca (a] apple.com>
   24928 
   24929         Reviewed by Darin Adler.
   24930 
   24931         Use nullptr instead of 0.
   24932 
   24933         * UIProcess/API/mac/FindIndicatorWindow.mm:
   24934         (WebKit::FindIndicatorWindow::closeWindow):
   24935         * UIProcess/API/mac/WKView.mm:
   24936         (-[WKView renewGState]):
   24937         * WebProcess/Plugins/PluginProcessConnection.cpp:
   24938         (WebKit::PluginProcessConnection::removePluginProxy):
   24939 
   24940 2010-10-15  Sam Weinig  <sam (a] webkit.org>
   24941 
   24942         Fix Qt build.
   24943 
   24944         * UIProcess/API/qt/qwkpage.cpp:
   24945         (QWKPagePrivate::createPopupMenuProxy):
   24946 
   24947 2010-10-15  Sam Weinig  <sam (a] webkit.org>
   24948 
   24949         Reviewed by Anders Carlsson.
   24950 
   24951         Popup widget support (<select>)
   24952         <rdar://problem/8147746>
   24953         https://bugs.webkit.org/show_bug.cgi?id=47740
   24954 
   24955         Add initial support for popup menus. Only works on the mac at this time.
   24956 
   24957         * Shared/WebPopupItem.cpp: Added.
   24958         (WebKit::WebPopupItem::WebPopupItem):
   24959         (WebKit::WebPopupItem::encode):
   24960         (WebKit::WebPopupItem::decode):
   24961         * Shared/WebPopupItem.h: Added.
   24962         Serializable representation of a menu item.
   24963 
   24964         * UIProcess/API/mac/PageClientImpl.h:
   24965         * UIProcess/API/mac/PageClientImpl.mm:
   24966         (WebKit::PageClientImpl::createPopupMenuProxy):
   24967         Create a WebPopupMenuProxyMac.
   24968 
   24969         * UIProcess/API/qt/qwkpage.cpp:
   24970         (WebView::createPopupMenuProxy):
   24971         * UIProcess/API/qt/qwkpage_p.h:
   24972         Create a WebPopupMenuProxyQt (which is just a stub right now).
   24973 
   24974         (WebKit::WebPopupMenuProxyWin::create):
   24975         * UIProcess/win/WebView.cpp:
   24976         (WebKit::WebView::createPopupMenuProxy):
   24977         * UIProcess/win/WebView.h:
   24978         Create a WebPopupMenuProxyWin (which is just a stub right now).
   24979 
   24980         * UIProcess/PageClient.h:
   24981         Add new client function to get a platform specific WebPopupMenuProxy.
   24982 
   24983         * UIProcess/WebPageProxy.cpp:
   24984         (WebKit::WebPageProxy::close):
   24985         (WebKit::WebPageProxy::showPopupMenu):
   24986         (WebKit::WebPageProxy::hidePopupMenu):
   24987         (WebKit::WebPageProxy::processDidExit):
   24988         * UIProcess/WebPageProxy.h:
   24989         * UIProcess/WebPageProxy.messages.in:
   24990         Pipe through calls to set up the menu.
   24991 
   24992         * UIProcess/mac/WebPopupMenuProxyMac.h: Added.
   24993         (WebKit::WebPopupMenuProxyMac::create):
   24994         * UIProcess/mac/WebPopupMenuProxyMac.mm: Added.
   24995         (WebKit::WebPopupMenuProxyMac::WebPopupMenuProxyMac):
   24996         (WebKit::WebPopupMenuProxyMac::~WebPopupMenuProxyMac):
   24997         (WebKit::WebPopupMenuProxyMac::populate):
   24998         (WebKit::WebPopupMenuProxyMac::showPopupMenu):
   24999         (WebKit::WebPopupMenuProxyMac::hidePopupMenu):
   25000         Add UI process side implementation. Currently this does not support
   25001         custom fonts as the old implementation did.
   25002 
   25003         * UIProcess/qt/WebPopupMenuProxyQt.cpp: Added.
   25004         (WebKit::WebPopupMenuProxyQt::WebPopupMenuProxyQt):
   25005         (WebKit::WebPopupMenuProxyQt::~WebPopupMenuProxyQt):
   25006         (WebKit::WebPopupMenuProxyQt::showPopupMenu):
   25007         (WebKit::WebPopupMenuProxyQt::hidePopupMenu):
   25008         * UIProcess/qt/WebPopupMenuProxyQt.h: Added.
   25009         (WebKit::WebPopupMenuProxyQt::create):
   25010         * UIProcess/win/WebPopupMenuProxyWin.cpp: Added.
   25011         (WebKit::WebPopupMenuProxyWin::WebPopupMenuProxyWin):
   25012         (WebKit::WebPopupMenuProxyWin::~WebPopupMenuProxyWin):
   25013         (WebKit::WebPopupMenuProxyWin::showPopupMenu):
   25014         (WebKit::WebPopupMenuProxyWin::hidePopupMenu):
   25015         * UIProcess/win/WebPopupMenuProxyWin.h: Added.
   25016         Add stubbed out implementations for Qt and windows.
   25017 
   25018         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   25019         (WebKit::WebChromeClient::createPopupMenu):
   25020         (WebKit::WebChromeClient::createSearchPopupMenu):
   25021         Pass the page in the create function.
   25022 
   25023         * WebProcess/WebCoreSupport/WebPopupMenu.cpp:
   25024         (WebKit::WebPopupMenu::create):
   25025         (WebKit::WebPopupMenu::WebPopupMenu):
   25026         (WebKit::WebPopupMenu::didChangeSelectedIndex):
   25027         (WebKit::WebPopupMenu::populateItems):
   25028         (WebKit::WebPopupMenu::show):
   25029         (WebKit::WebPopupMenu::hide):
   25030         * WebProcess/WebCoreSupport/WebPopupMenu.h:
   25031         (WebKit::WebPopupMenu::disconnectFromPage):
   25032         * WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp:
   25033         (WebKit::WebSearchPopupMenu::create):
   25034         (WebKit::WebSearchPopupMenu::WebSearchPopupMenu):
   25035         (WebKit::WebSearchPopupMenu::popupMenu):
   25036         * WebProcess/WebCoreSupport/WebSearchPopupMenu.h:
   25037         * WebProcess/WebPage/WebPage.cpp:
   25038         (WebKit::WebPage::close):
   25039         (WebKit::WebPage::setActivePopupMenu):
   25040         (WebKit::WebPage::didChangeSelectedIndexForActivePopupMenu):
   25041         * WebProcess/WebPage/WebPage.h:
   25042         * WebProcess/WebPage/WebPage.messages.in:
   25043         Pipe through calls to set up the menu.
   25044 
   25045         * WebKit2.pro:
   25046         * WebKit2.xcodeproj/project.pbxproj:
   25047         * win/WebKit2.vcproj:
   25048         Add new files.
   25049 
   25050 2010-10-15  Anders Carlsson  <andersca (a] apple.com>
   25051 
   25052         Fix build.
   25053 
   25054         * UIProcess/API/mac/FindIndicatorWindow.mm:
   25055         (-[WebFindIndicatorWindowAnimation setCurrentProgress:]):
   25056 
   25057 2010-10-15  Simon Fraser  <simon.fraser (a] apple.com>
   25058 
   25059         Reviewed by Dan Bernstein.
   25060 
   25061         Add 'didDraw' callback for framerate tracking
   25062         https://bugs.webkit.org/show_bug.cgi?id=47478
   25063         
   25064         Hook up the 'didDraw' callback for WebKit2 on Mac.
   25065 
   25066         * UIProcess/API/C/WKPage.h:
   25067         * UIProcess/API/mac/WKView.mm:
   25068         (-[WKView drawRect:]):
   25069         * UIProcess/API/qt/qwkpage.cpp:
   25070         (QWKPage::QWKPage):
   25071         * UIProcess/WebPageProxy.cpp:
   25072         (WebKit::WebPageProxy::didDraw):
   25073         * UIProcess/WebPageProxy.h:
   25074         * UIProcess/WebUIClient.cpp:
   25075         (WebKit::WebUIClient::didDraw):
   25076         * UIProcess/WebUIClient.h:
   25077 
   25078 2010-10-15  Anders Carlsson  <andersca (a] apple.com>
   25079 
   25080         Reviewed by Sam Weinig.
   25081 
   25082         Make the find indicator window fade out when requested
   25083         https://bugs.webkit.org/show_bug.cgi?id=47747
   25084 
   25085         * UIProcess/API/mac/FindIndicatorWindow.h:
   25086         * UIProcess/API/mac/FindIndicatorWindow.mm:
   25087         Add WebFindIndicatorWindowAnimation - an NSAnimation subclass that takes two
   25088         C++ member function pointers and invokes them the animation progress changes and
   25089         when the animation stops.
   25090 
   25091         (-[WebFindIndicatorWindowAnimation setCurrentProgress:]):
   25092         Call the _animationProgressCallback.
   25093 
   25094         (-[WebFindIndicatorWindowAnimation animationDidEnd:]):
   25095         Call the _animationDidEndCallback.
   25096 
   25097         (WebKit::FindIndicatorWindow::FindIndicatorWindow):
   25098         Initialize the fade out start timer.
   25099 
   25100         (WebKit::FindIndicatorWindow::setFindIndicator):
   25101         When asked to fade out, we start the fade out timer.
   25102 
   25103         (WebKit::FindIndicatorWindow::closeWindow):
   25104         Stop the fade out timer and the fade out animation.
   25105 
   25106         (WebKit::FindIndicatorWindow::startFadeOutTimerFired):
   25107         Create a fade out animation.
   25108 
   25109         (WebKit::FindIndicatorWindow::fadeOutAnimationCallback):
   25110         Update the window alpha.
   25111 
   25112         (WebKit::FindIndicatorWindow::fadeOutAnimationDidEnd):
   25113         Close the window.
   25114 
   25115 2010-10-15  Anders Carlsson  <andersca (a] apple.com>
   25116 
   25117         Reviewed by Sam Weinig.
   25118 
   25119         Move find indicator window logic to WKView
   25120         https://bugs.webkit.org/show_bug.cgi?id=47739
   25121 
   25122         * UIProcess/API/mac/PageClientImpl.h:
   25123         * UIProcess/API/mac/PageClientImpl.mm:
   25124         (WebKit::PageClientImpl::setFindIndicator):
   25125         Call -[WKView _setFindIndicator:fadeOut:].
   25126 
   25127         * UIProcess/API/mac/WKView.mm:
   25128         (-[WKView renewGState]):
   25129         Hide the find indicator.
   25130 
   25131         (-[WKView _setFindIndicator:fadeOut:]):
   25132         Move the find indicator logic here.
   25133 
   25134 2010-10-15  Anders Carlsson  <andersca (a] apple.com>
   25135 
   25136         Reviewed by Sam Weinig.
   25137 
   25138         Hide the find indicator/overlay when necessary
   25139         https://bugs.webkit.org/show_bug.cgi?id=47737
   25140 
   25141         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   25142         (WebKit::WebChromeClient::invalidateContentsForSlowScroll):
   25143         Hide the find indicator.
   25144 
   25145         (WebKit::WebChromeClient::scroll):
   25146         Ditto.
   25147 
   25148         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   25149         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
   25150         Hide the find indicator and the find overlay.
   25151 
   25152         * WebProcess/WebPage/FindController.cpp:
   25153         (WebKit::FindController::findString):
   25154         Always hide all previous find matches. Only clear the selection if the string
   25155         not found wasn't empty.
   25156 
   25157         (WebKit::FindController::hideFindUI):
   25158         Uninstall the page overlay and hide the find indicator.
   25159 
   25160         (WebKit::FindController::hideFindIndicator):
   25161         Rename resetFindIndicator to hideFindIndicator.
   25162 
   25163         * WebProcess/WebPage/WebPage.cpp:
   25164         (WebKit::WebPage::uninstallPageOverlay):
   25165         Invalidate the entire page.
   25166 
   25167 2010-10-15  Anders Carlsson  <andersca (a] apple.com>
   25168 
   25169         Reviewed by Sam Weinig.
   25170 
   25171         Add FindIndicatorWindow class
   25172         https://bugs.webkit.org/show_bug.cgi?id=47731
   25173 
   25174         * UIProcess/API/mac/FindIndicatorWindow.h: Added.
   25175         * UIProcess/API/mac/FindIndicatorWindow.mm: Added.
   25176         (-[WebFindIndicatorView _initWithFindIndicator:WebKit::]):
   25177         Initialize the find indicator view.
   25178 
   25179         (-[WebFindIndicatorView drawRect:]):
   25180         Ask the find indicator to draw.
   25181 
   25182         (-[WebFindIndicatorView isFlipped]):
   25183         Return YES.
   25184 
   25185         (WebKit::FindIndicatorWindow::~FindIndicatorWindow):
   25186         Make sure to close the window.
   25187 
   25188         (WebKit::FindIndicatorWindow::setFindIndicator):
   25189         Update the find indicator window.
   25190 
   25191         (WebKit::FindIndicatorWindow::closeWindow):
   25192         Close and release the window.
   25193 
   25194         * UIProcess/API/mac/PageClientImpl.h:
   25195         * UIProcess/API/mac/PageClientImpl.mm:
   25196         (WebKit::PageClientImpl::setFindIndicator):
   25197         Create a find indicator window.
   25198 
   25199         * WebKit2.xcodeproj/project.pbxproj:
   25200         Add new files.
   25201 
   25202 2010-10-15  Anders Carlsson  <andersca (a] apple.com>
   25203 
   25204         Fix build.
   25205 
   25206         * UIProcess/API/qt/qwkpage.cpp:
   25207         * UIProcess/win/WebView.cpp:
   25208 
   25209 2010-10-15  Anders Carlsson  <andersca (a] apple.com>
   25210 
   25211         Reviewed by Sam Weinig.
   25212 
   25213         Add a FindIndicator class
   25214         https://bugs.webkit.org/show_bug.cgi?id=47635
   25215 
   25216         * Shared/BackingStore.h:
   25217         (WebKit::BackingStore::bounds):
   25218         New function that returns the bounds of the backing store.
   25219 
   25220         * UIProcess/API/mac/PageClientImpl.mm:
   25221         (WebKit::PageClientImpl::setFindIndicator):
   25222         Add stub.
   25223 
   25224         * UIProcess/API/qt/qwkpage.cpp:
   25225         (QWKPagePrivate::setFindIndicator):
   25226         Add stub.
   25227 
   25228         * UIProcess/FindIndicator.cpp: Added.
   25229         * UIProcess/FindIndicator.h:
   25230 
   25231         * UIProcess/PageClient.h:
   25232         Add setFindIndicator client member function.
   25233 
   25234         * UIProcess/WebPageProxy.cpp:
   25235         (WebKit::WebPageProxy::setFindIndicator):
   25236         Call PageClient::setFindIndicator.
   25237 
   25238         * UIProcess/WebPageProxy.messages.in:
   25239         Add a fadeOut boolean to the message.
   25240 
   25241         * UIProcess/win/WebView.cpp:
   25242         (WebKit::WebView::setFindIndicator):
   25243         Add stub.
   25244 
   25245         * UIProcess/win/WebView.h:
   25246         * WebKit2.pro:
   25247         * WebKit2.xcodeproj/project.pbxproj:
   25248         * WebProcess/WebPage/FindController.cpp:
   25249         (WebKit::FindController::findString):
   25250         (WebKit::FindController::updateFindIndicator):
   25251         (WebKit::FindController::resetFindIndicator):
   25252         * WebProcess/WebPage/FindController.h:
   25253         * win/WebKit2.vcproj:
   25254 
   25255 2010-10-14  Simon Fraser  <simon.fraser (a] apple.com>
   25256 
   25257         Reviewed by Sam Weinig.
   25258 
   25259         Plumb accelerated compositing prefs through WebKit2
   25260         https://bugs.webkit.org/show_bug.cgi?id=46860
   25261         <rdar://problem/8495312>
   25262         
   25263         Wire up the prefs to enable accelerated compositing, and
   25264         show debug borders and repaint counters.
   25265 
   25266         * Shared/WebPreferencesStore.cpp:
   25267         (WebKit::WebPreferencesStore::WebPreferencesStore):
   25268         (WebKit::WebPreferencesStore::encode):
   25269         (WebKit::WebPreferencesStore::decode):
   25270         * Shared/WebPreferencesStore.h:
   25271         * UIProcess/API/C/WKPreferencesPrivate.cpp:
   25272         (WKPreferencesSetAcceleratedCompositingEnabled):
   25273         (WKPreferencesGetAcceleratedCompositingEnabled):
   25274         (WKPreferencesSetCompositingBordersVisible):
   25275         (WKPreferencesGetCompositingBordersVisible):
   25276         (WKPreferencesSetCompositingRepaintCountersVisible):
   25277         (WKPreferencesGetCompositingRepaintCountersVisible):
   25278         * UIProcess/API/C/WKPreferencesPrivate.h:
   25279         * UIProcess/WebPreferences.cpp:
   25280         (WebKit::WebPreferences::setAcceleratedCompositingEnabled):
   25281         (WebKit::WebPreferences::acceleratedCompositingEnabled):
   25282         (WebKit::WebPreferences::setCompositingBordersVisible):
   25283         (WebKit::WebPreferences::compositingBordersVisible):
   25284         (WebKit::WebPreferences::setCompositingRepaintCountersVisible):
   25285         (WebKit::WebPreferences::compositingRepaintCountersVisible):
   25286         * UIProcess/WebPreferences.h:
   25287         * WebProcess/WebPage/WebPage.cpp:
   25288         (WebKit::WebPage::WebPage):
   25289         (WebKit::WebPage::preferencesDidChange):
   25290         (WebKit::WebPage::updatePreferences):
   25291         * WebProcess/WebPage/WebPage.h:
   25292 
   25293 2010-10-14  Ada Chan  <adachan (a] apple.com>
   25294 
   25295         Reviewed by Sam Weinig.
   25296 
   25297         WebKit2: Store the certificate chain in PlatformCertificateInfo.
   25298         https://bugs.webkit.org/show_bug.cgi?id=47603
   25299 
   25300         * Shared/API/c/win/WKCertificateInfoWin.cpp:
   25301         (WKCertificateInfoGetCertificateChainLength):
   25302         (WKCertificateInfoGetCertificateContextAtIndex):
   25303         * Shared/API/c/win/WKCertificateInfoWin.h:
   25304         * Shared/win/PlatformCertificateInfo.cpp:
   25305         (WebKit::PlatformCertificateInfo::PlatformCertificateInfo): Get the chain context from the response and duplicate the certificate contexts
   25306         in the chain to store in m_certificateChain.
   25307         (WebKit::PlatformCertificateInfo::~PlatformCertificateInfo): Free all the certificate contexts in the chain.
   25308         (WebKit::PlatformCertificateInfo::operator=): Duplicate the certificate contexts from the other PlatformCertificateInfo's certificate chain
   25309         to store in m_certificateChain.
   25310         (WebKit::PlatformCertificateInfo::encode):
   25311         (WebKit::PlatformCertificateInfo::decode):
   25312         (WebKit::PlatformCertificateInfo::clearCertificateChain): Free all the certificate contexts in the chain and clear the vector.
   25313         * Shared/win/PlatformCertificateInfo.h:
   25314         (WebKit::PlatformCertificateInfo::certificateChain):
   25315 
   25316 2010-10-14  Adam Roben  <aroben (a] apple.com>
   25317 
   25318         Make sure WebKit2 only loads each plugin once
   25319 
   25320         Fixes <http://webkit.org/b/47677> <rdar://problem/8552178> WebKit2 can
   25321         load the same plugin multiple times
   25322 
   25323         Reviewed by Sam Weinig.
   25324 
   25325         * UIProcess/Plugins/PluginInfoStore.cpp:
   25326         (WebKit::addFromVector): Helper function that adds all the elements
   25327         from a Vector to a HashSet.
   25328         (WebKit::PluginInfoStore::loadPluginsIfNecessary): Put all the plugin
   25329         paths into a HashSet, then load the plugins specified in the HashSet.
   25330         On Windows, the HashSet is case-insensitive, just like the file
   25331         system.
   25332 
   25333         * UIProcess/Plugins/PluginInfoStore.h: Removed loadPluginsInDirectory,
   25334         which is no longer used.
   25335 
   25336         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
   25337         (WebKit::addPluginPathsFromRegistry):
   25338         (WebKit::PluginInfoStore::individualPluginPaths):
   25339         Changed to store the paths in a Vector instead of a HashSet now that
   25340         loadPluginsIfNecessary will handle duplicates for us.
   25341 
   25342 2010-10-14  Adam Roben  <aroben (a] apple.com>
   25343 
   25344         Load plugins that are specified in the MozillaPlugins registry key
   25345 
   25346         Fixes <http://webkit.org/b/44271> <rdar://problem/8329750> WebKit2
   25347         should load plugins specified in the MozillaPlugins registry key (like
   25348         old WebKit does)
   25349 
   25350         I couldn't think of a good way to test this.
   25351 
   25352         Reviewed by Steve Falkenburg.
   25353 
   25354         * UIProcess/Plugins/PluginInfoStore.cpp:
   25355         (WebKit::PluginInfoStore::loadPluginsIfNecessary): Also load plugins
   25356         specified by individualPluginPaths.
   25357 
   25358         * UIProcess/Plugins/PluginInfoStore.h: Added individualPluginPaths and
   25359         some comments.
   25360 
   25361         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
   25362         (WebKit::PluginInfoStore::individualPluginPaths):
   25363         * UIProcess/Plugins/qt/PluginInfoStoreQt.cpp:
   25364         (WebKit::PluginInfoStore::individualPluginPaths):
   25365         Stubbed out.
   25366 
   25367         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
   25368         (WebKit::addPluginPathsFromRegistry):
   25369         (WebKit::PluginInfoStore::individualPluginPaths):
   25370         Ported this code from WebCore's PluginDatabaseWin.cpp. I slightly
   25371         cleaned it up and changed it to use a case-insensitive hash, since
   25372         paths on Windows are case-insensitive.
   25373 
   25374 2010-10-14  Adam Roben  <aroben (a] apple.com>
   25375 
   25376         Call ::DefWindowProcW for unhandled key events
   25377 
   25378         ::DefWindowProcW does important things for at least some key events
   25379         (e.g., it generates a WM_SYSCOMMAND message when the Alt key is
   25380         released), so we need to make sure to call it when we don't handle key
   25381         events.
   25382 
   25383         Fixes <http://webkit.org/b/47671> <rdar://problem/8435594> Pressing
   25384         the Alt key when MiniBrowser's WKView is focused doesn't send focus to
   25385         the menu bar
   25386 
   25387         Reviewed by Steve Falkenburg.
   25388 
   25389         * UIProcess/API/mac/PageClientImpl.h:
   25390         * UIProcess/API/mac/PageClientImpl.mm:
   25391         (WebKit::PageClientImpl::didNotHandleKeyEvent):
   25392         * UIProcess/API/qt/qwkpage.cpp:
   25393         (QWKPagePrivate::didNotHandleKeyEvent):
   25394         * UIProcess/API/qt/qwkpage_p.h:
   25395         Stubbed out didNotHandleKeyEvent.
   25396 
   25397         * UIProcess/PageClient.h: Added didNotHandleKeyEvent.
   25398 
   25399         * UIProcess/WebPageProxy.cpp:
   25400         (WebKit::WebPageProxy::didReceiveEvent): Tell the PageClient about the
   25401         unhandled event.
   25402 
   25403         * UIProcess/win/WebView.cpp:
   25404         (WebKit::WebView::onKeyEvent): Added a comment.
   25405         (WebKit::WebView::didNotHandleKeyEvent): Pass the event to
   25406         ::DefWindowProcW.
   25407 
   25408         * UIProcess/win/WebView.h: Added didNotHandleKeyEvent.
   25409 
   25410 2010-10-13  Sam Weinig  <sam (a] webkit.org>
   25411 
   25412         Reviewed by Jon Honeycutt.
   25413 
   25414         Memory smasher in WebKit2 InjectedBundleHitTestResult::absoluteLinkURL
   25415         https://bugs.webkit.org/show_bug.cgi?id=47648
   25416 
   25417         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
   25418         (WebKit::InjectedBundleHitTestResult::absoluteLinkURL):
   25419         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h: Return a String instead of
   25420         a const String&.
   25421 
   25422 2010-10-13  Sam Weinig  <sam (a] webkit.org>
   25423 
   25424         Reviewed by Jon Honeycutt.
   25425 
   25426         PlatformMouseEvents need to contain modifier flags
   25427         https://bugs.webkit.org/show_bug.cgi?id=47651
   25428 
   25429         * Shared/WebEventConversion.cpp:
   25430         (WebKit::WebKit2PlatformMouseEvent::WebKit2PlatformMouseEvent):
   25431         Fill in m_modifierFlags.
   25432 
   25433 2010-10-13  Anders Carlsson  <andersca (a] apple.com>
   25434 
   25435         Reviewed by John Sullivan.
   25436 
   25437         Draw the find overlay holes
   25438         https://bugs.webkit.org/show_bug.cgi?id=47631
   25439 
   25440         * WebProcess/WebPage/FindPageOverlay.cpp:
   25441         (WebKit::FindPageOverlay::drawRect):
   25442         Draw the white frames and the holes.
   25443 
   25444 2010-10-13  Anders Carlsson  <andersca (a] apple.com>
   25445 
   25446         Reviewed by Darin Adler.
   25447 
   25448         Use WKSI to get wheel event deltas
   25449         https://bugs.webkit.org/show_bug.cgi?id=47617
   25450 
   25451         * Shared/mac/WebEventFactory.mm:
   25452         (WebKit::WebEventFactory::createWebWheelEvent):
   25453         Call WKGetWheelEventDeltas.
   25454 
   25455         * UIProcess/API/mac/WKView.mm:
   25456         (-[WKView initWithFrame:pageNamespaceRef:]):
   25457         Call InitWebCoreSystemInterface.
   25458 
   25459         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
   25460         (InitWebCoreSystemInterface):
   25461         Use dispatch_once.
   25462 
   25463 2010-10-13  Adam Roben  <aroben (a] apple.com>
   25464 
   25465         Fix the Cairo build
   25466 
   25467         * Shared/cairo/BackingStoreCairo.cpp: Added.
   25468         (WebKit::BackingStore::createGraphicsContext):
   25469         (WebKit::BackingStore::paint):
   25470         Stubbed out.
   25471 
   25472         * win/WebKit2.vcproj: Build BackingStoreCG.cpp in CG builds and
   25473         BackingStoreCairo.cpp in Cairo builds.
   25474 
   25475 2010-10-13  Anders Carlsson  <andersca (a] apple.com>
   25476 
   25477         Build fix.
   25478 
   25479         * Shared/cg/BackingStoreCG.cpp:
   25480 
   25481 2010-10-13  Gavin Barraclough  <barraclough (a] apple.com>
   25482 
   25483         Reviewed by Oliver Hunt.
   25484 
   25485         https://bugs.webkit.org/show_bug.cgi?id=43987
   25486         Switch XMLHttpRequest, FileReader, and FileReaderSync to use a Stringbuilder
   25487         to construct their internal result string.  Remove ScriptString (this is now
   25488         redundant).
   25489 
   25490         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   25491         (WebKit::WebFrameLoaderClient::dispatchDidLoadResourceByXMLHttpRequest):
   25492         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   25493 
   25494 2010-10-13  Anders Carlsson  <andersca (a] apple.com>
   25495 
   25496         Reviewed by Sam Weinig.
   25497 
   25498         Send over find indicator information to the UI process
   25499         https://bugs.webkit.org/show_bug.cgi?id=47612
   25500 
   25501         * UIProcess/WebPageProxy.cpp:
   25502         (WebKit::WebPageProxy::setFindIndicator):
   25503         Add stub.
   25504 
   25505         * UIProcess/WebPageProxy.messages.in:
   25506         Add SetFindIndicator.
   25507 
   25508         * WebProcess/WebPage/FindController.cpp:
   25509         (WebKit::FindController::FindController):
   25510         Initialize m_isShowingFindIndicator.
   25511 
   25512         (WebKit::FindController::findString):
   25513         Update the find indicator if needed.
   25514 
   25515         (WebKit::FindController::updateFindIndicator):
   25516         Compute find indicator information, paint the find indicator text into a 
   25517         backing store and send it over.
   25518 
   25519         (WebKit::FindController::resetFindIndicator):
   25520         Send a SetFindIndicator message with a null backing store.
   25521 
   25522 2010-10-13  Anders Carlsson  <andersca (a] apple.com>
   25523 
   25524         Reviewed by Sam Weinig.
   25525 
   25526         Add BackingStoreQt.cpp file with stubbed out BackingStore member functions
   25527         https://bugs.webkit.org/show_bug.cgi?id=47614
   25528 
   25529         * Shared/BackingStore.h:
   25530         Remove unused include.
   25531 
   25532         * Shared/qt/BackingStoreQt.cpp: Added.
   25533         (WebKit::BackingStore::createGraphicsContext):
   25534         (WebKit::BackingStore::paint):
   25535 
   25536         * WebKit2.pro:
   25537         Add BackingStore.cpp, BackingStore.h and BackingStoreQt.cpp
   25538 
   25539 2010-10-13  Brent Fulgham  <bfulgham (a] webkit.org>
   25540 
   25541         Unreviewed build fixes after r69538.
   25542 
   25543         * UIProcess/WebBackForwardList.h: Add missing include directive
   25544         for CoreFoundation.
   25545         * UIProcess/cf/WebBackForwardListCF.cpp: Add missing include
   25546         directives for RetainPtr.h and CoreFoundation.
   25547         * UIProcess/cf/WebPageProxyCF.cpp: Add missing include directive
   25548         for RetainPtr.h.
   25549 
   25550 2010-10-13  Adam Roben  <aroben (a] apple.com>
   25551 
   25552         Start compiling BackingStore on Windows
   25553 
   25554         Rubber-stamped by Anders Carlsson.
   25555 
   25556         * win/WebKit2.vcproj: Added BackingStore.
   25557 
   25558 2010-10-13  Adam Roben  <aroben (a] apple.com>
   25559 
   25560         Rename BackingStoreMac.mm to BackingStoreCG.cpp
   25561 
   25562         There's nothing Mac-specific about this file.
   25563 
   25564         Rubber-stamped by Anders Carlsson.
   25565 
   25566         * Shared/cg/BackingStoreCG.cpp: Renamed from WebKit2/Shared/mac/BackingStoreMac.mm.
   25567 
   25568         * WebKit2.xcodeproj/project.pbxproj: Updated for rename.
   25569 
   25570 2010-10-13  Anders Carlsson  <andersca (a] apple.com>
   25571 
   25572         Reviewed by Sam Weinig.
   25573 
   25574         Allow all signals to be delivered to the web process
   25575         https://bugs.webkit.org/show_bug.cgi?id=47602
   25576         <rdar://problem/8546399>
   25577 
   25578         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   25579         (WebKit::ProcessLauncher::launchProcess):
   25580 
   25581 2010-10-12  Adam Roben  <aroben (a] apple.com>
   25582 
   25583         Let WebCore handle scrolling when the spacebar is pressed on Windows
   25584 
   25585         WebCore already has code to do this, and WebKit2 was doing it on
   25586         keydown instead of keypress, which caused problems with text fields.
   25587 
   25588         WebCore's spacebar-handling code is currently compiled out on Mac and
   25589         Qt, so we continue to handle spacebar in WebKit2 on those platforms.
   25590 
   25591         Fixes <http://webkit.org/b/47544> <rdar://problem/8540645> REGRESSION:
   25592         Pressing spacebar in a text field in WebKit2 does not insert a space,
   25593         scrolls the page instead
   25594 
   25595         Test: WebKit2/SpacebarScrolling
   25596 
   25597         Reviewed by Sam Weinig.
   25598 
   25599         * WebProcess/WebPage/win/WebPageWin.cpp:
   25600         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
   25601         Removed handling for spacebar presses. WebCore already does this for
   25602         us, and does it better.
   25603 
   25604 2010-10-12  Jessie Berlin  <jberlin (a] apple.com>
   25605 
   25606         Reviewed by Jon Honeycutt.
   25607 
   25608         Add ability for WK2 to set domain relaxation forbidden for a URL scheme.
   25609         https://bugs.webkit.org/show_bug.cgi?id=47562
   25610 
   25611         Add the schemes for which domain relaxation is forbidden to the
   25612         WebProcessCreationParameters.
   25613         * Shared/WebProcessCreationParameters.cpp:
   25614         (WebKit::WebProcessCreationParameters::encode):
   25615         (WebKit::WebProcessCreationParameters::decode):
   25616         * Shared/WebProcessCreationParameters.h:
   25617 
   25618         * UIProcess/API/C/WKContext.cpp:
   25619         (WKContextSetDomainRelaxationForbiddenForURLScheme):
   25620         * UIProcess/API/C/WKContextPrivate.h:
   25621 
   25622         * UIProcess/WebContext.cpp:
   25623         (WebKit::WebContext::ensureWebProcess):
   25624         Copy over the schemes for which domain relaxation is forbidden to
   25625         WebProcessCreationParameters.
   25626         (WebKit::WebContext::setDomainRelaxationForbiddenForURLScheme):
   25627         Only send a message to the WebProcess if it is valid.
   25628         * UIProcess/WebContext.h:
   25629 
   25630         * WebProcess/WebProcess.cpp:
   25631         (WebKit::WebProcess::initializeWebProcess):
   25632         Set domain relaxation forbidden for the schemes in
   25633         WebProcesCreationParameters.urlSchemesForWhichDomainRelaxationIsForbidden.
   25634         (WebKit::WebProcess::setDomainRelaxationForbiddenForURLScheme):
   25635         * WebProcess/WebProcess.h:
   25636 
   25637         * WebProcess/WebProcess.messages.in:
   25638         Add the SetDomainRelaxationFobiddenForURLScheme message.
   25639 
   25640 2010-10-13  Csaba Osztrogonc  <ossy (a] webkit.org>
   25641 
   25642         Reviewed by Kenneth Rohde Christiansen.
   25643 
   25644         [Qt] Simplify code generation in WebKit2/DerivedSources.pro
   25645         https://bugs.webkit.org/show_bug.cgi?id=47543
   25646 
   25647         * DerivedSources.pro: General generator rules added instead of copy/paste code to converge Makefile.DerivedSources.
   25648         * WebKit2.pro: PluginProcess' headers and sources added.
   25649 
   25650 2010-10-13  Andreas Kling  <kling (a] webkit.org>
   25651 
   25652         Reviewed by Kenneth Rohde Christiansen.
   25653 
   25654         [Qt] Use flag instead of magic word to mark memory map free/used
   25655 
   25656         Original patch by Antti Koivisto.
   25657 
   25658         * Shared/qt/MappedMemory.h:
   25659         (WebKit::MappedMemory::mapSize):
   25660         (WebKit::MappedMemory::markUsed):
   25661         (WebKit::MappedMemory::markFree):
   25662         (WebKit::MappedMemory::isFree):
   25663         (WebKit::MappedMemory::data):
   25664         * Shared/qt/MappedMemoryPool.cpp:
   25665         (WebKit::MappedMemoryPool::cleanUp):
   25666         * Shared/qt/UpdateChunk.cpp:
   25667         (WebKit::mapMemory):
   25668         (WebKit::mapFile):
   25669         (WebKit::UpdateChunk::data):
   25670         (WebKit::UpdateChunk::decode):
   25671 
   25672 2010-10-12  Jon Honeycutt  <jhoneycutt (a] apple.com>
   25673 
   25674         Build fix. Unreviewed.
   25675 
   25676         * win/WebKit2Generated.make:
   25677         Copy over WKBundleHitTestResult.h.
   25678 
   25679 2010-10-12  Sam Weinig  <sam (a] webkit.org>
   25680 
   25681         Reviewed by Gavin "Sometimes" Barraclough.
   25682 
   25683         Add API to get the target frame from a HitTestResult.
   25684 
   25685         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:
   25686         (WKBundleHitTestResultGetFrame):
   25687         (WKBundleHitTestResultGetTargetFrame):
   25688         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h:
   25689         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
   25690         (WebKit::InjectedBundleHitTestResult::frame): Rename from webFrame.
   25691         (WebKit::InjectedBundleHitTestResult::targetFrame):
   25692         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
   25693 
   25694 2010-10-12  Anders Carlsson  <andersca (a] apple.com>
   25695 
   25696         Reviewed by Dan Bernstein.
   25697 
   25698         Paint the find overlay background
   25699         https://bugs.webkit.org/show_bug.cgi?id=47565
   25700 
   25701         * WebProcess/WebPage/FindController.cpp:
   25702         (WebKit::FindController::findString):
   25703         Don't show the overlay if we have too many matches.
   25704 
   25705         * WebProcess/WebPage/FindPageOverlay.cpp:
   25706         (WebKit::FindPageOverlay::rectsForTextMatches):
   25707         Get the rects for all text matches.
   25708 
   25709         (WebKit::FindPageOverlay::drawRect):
   25710         Assert that we're only being called if there are any text matches.
   25711         Paint the background.
   25712 
   25713 2010-10-12  Sam Weinig  <sam (a] webkit.org>
   25714 
   25715         Reviewed by Dan Bernstein.
   25716 
   25717         When a provisional load fails, the provisional URL returned
   25718         from WKFrameCopyProvisionalURL should be empty
   25719         <rdar://problem/8540878>
   25720         https://bugs.webkit.org/show_bug.cgi?id=47546
   25721 
   25722         API Tests: FailedLoad (updated).
   25723 
   25724         * UIProcess/WebFrameProxy.cpp:
   25725         (WebKit::WebFrameProxy::didFailProvisionalLoad): Empty out the provisional URL.
   25726 
   25727 2010-10-12  Anders Carlsson  <andersca (a] apple.com>
   25728 
   25729         Reviewed by Sam Weinig.
   25730 
   25731         Start fleshing out find page overlays
   25732         https://bugs.webkit.org/show_bug.cgi?id=47559
   25733 
   25734         * UIProcess/API/C/WKAPICast.h:
   25735         (WebKit::toFindOptions):
   25736         Handle the kWKFindOptionsShowFindIndicator flag.
   25737 
   25738         * WebKit2.pro:
   25739         * WebKit2.xcodeproj/project.pbxproj:
   25740         Add new files.
   25741         
   25742         * WebProcess/WebPage/FindController.cpp:
   25743         (WebKit::FindController::FindController):
   25744         Initialize the find page overlay.
   25745 
   25746         (WebKit::FindController::findString):
   25747         Hide or show the find page overlay.
   25748 
   25749         (WebKit::FindController::findPageOverlayDestroyed):
   25750         Null out the find page overlay.
   25751 
   25752         * WebProcess/WebPage/FindPageOverlay.cpp: Added.
   25753         * WebProcess/WebPage/FindPageOverlay.h: Added.
   25754         Add stubbed out FindPageOverlay class.
   25755 
   25756         * WebProcess/WebPage/PageOverlay.cpp: Added.
   25757         (WebKit::PageOverlay::setPage):
   25758         Set the parent web page.
   25759 
   25760         (WebKit::PageOverlay::setNeedsDisplay):
   25761         Invalidate the parent web page.
   25762 
   25763         * WebProcess/WebPage/WebPage.cpp:
   25764         (WebKit::WebPage::drawRect):
   25765         If there's a page overlay, ask it to draw on top of the page contents.
   25766 
   25767         (WebKit::WebPage::installPageOverlay):
   25768         Set the page overlay.
   25769 
   25770         (WebKit::WebPage::uninstallPageOverlay):
   25771         Clear the page overlay.
   25772 
   25773         * win/WebKit2.vcproj:
   25774         Add new files.
   25775 
   25776 2010-10-12  Jessie Berlin  <jberlin (a] apple.com>
   25777 
   25778         Reviewed by Jon Honeycutt.
   25779 
   25780         Add ability for WK2 to register a scheme as secure.
   25781         https://bugs.webkit.org/show_bug.cgi?id=47557
   25782 
   25783         Add the schemes that need to be registered as secure to the WebProcessCreationParameters.
   25784         * Shared/WebProcessCreationParameters.cpp:
   25785         (WebKit::WebProcessCreationParameters::encode):
   25786         (WebKit::WebProcessCreationParameters::decode):
   25787         * Shared/WebProcessCreationParameters.h:
   25788 
   25789         * UIProcess/API/C/WKContext.cpp:
   25790         (WKContextRegisterURLSchemeAsSecure):
   25791         * UIProcess/API/C/WKContextPrivate.h:
   25792 
   25793         * UIProcess/WebContext.cpp:
   25794         (WebKit::WebContext::ensureWebProcess):
   25795         Copy over the schemes that are to be registered as secure to the
   25796         WebProcessCreationParameters.
   25797         (WebKit::WebContext::registerURLSchemeAsSecure):
   25798         Only send a message to the WebProcess if it is valid.
   25799         * UIProcess/WebContext.h:
   25800 
   25801         * WebProcess/WebProcess.cpp:
   25802         (WebKit::WebProcess::initializeWebProcess):
   25803         Register the schemes that need to be registered as secure from the
   25804         WebProcessCreationParameters.
   25805         (WebKit::WebProcess::registerURLSchemeAsSecure):
   25806         * WebProcess/WebProcess.h:
   25807 
   25808         * WebProcess/WebProcess.messages.in:
   25809         Add the RegisterURLSchemeAsSecure message.
   25810 
   25811 2010-10-12  John Sullivan  <sullivan (a] apple.com>
   25812 
   25813         Reviewed by Anders Carlsson.
   25814 
   25815         https://bugs.webkit.org/show_bug.cgi?id=47556
   25816         WKBundleNodeHandlePrivate.h should be marked private, not project
   25817 
   25818         * WebKit2.xcodeproj/project.pbxproj:
   25819         Marked WKBundleNodeHandlePrivate.h as private.
   25820 
   25821 2010-10-12  Anders Carlsson  <andersca (a] apple.com>
   25822 
   25823         Reviewed by Sam Weinig.
   25824 
   25825         Add FindController class
   25826         https://bugs.webkit.org/show_bug.cgi?id=47555
   25827 
   25828         * WebKit2.pro:
   25829         * WebKit2.xcodeproj/project.pbxproj:
   25830         Add new files.
   25831 
   25832         * WebProcess/WebPage/FindController.cpp: Added.
   25833         (WebKit::FindController::FindController):
   25834         (WebKit::FindController::findString):
   25835         Ask WebCore to find the given string for us.
   25836 
   25837         (WebKit::FindController::hideFindUI):
   25838         Add stub.
   25839 
   25840         * WebProcess/WebPage/WebPage.cpp:
   25841         (WebKit::WebPage::WebPage):
   25842         Initialize the find controller.
   25843 
   25844         (WebKit::WebPage::findString):
   25845         (WebKit::WebPage::hideFindUI):
   25846         Call the find controller.
   25847         
   25848         * win/WebKit2.vcproj:
   25849         Add new files.
   25850 
   25851 2010-10-12  Sam Weinig  <sam (a] webkit.org>
   25852 
   25853         Reviewed by Anders Carlsson.
   25854 
   25855         Need WebKit2 API to get the cell above a table cell
   25856         <rdar://problem/8537111>
   25857         https://bugs.webkit.org/show_bug.cgi?id=47532
   25858 
   25859         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
   25860         (WKBundleNodeHandleCopyHTMLTableCellElementCellAbove):
   25861         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h:
   25862         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
   25863         (WebKit::InjectedBundleNodeHandle::copyHTMLTableCellElementCellAbove):
   25864         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
   25865 
   25866 2010-10-11  Anders Carlsson  <andersca (a] apple.com>
   25867 
   25868         Reviewed by Sam Weinig.
   25869 
   25870         Add BinarySemaphore class to CoreIPC and use it in Connection::waitForSyncReply
   25871         https://bugs.webkit.org/show_bug.cgi?id=47526
   25872 
   25873         * Platform/CoreIPC/BinarySemaphore.cpp: Added.
   25874         * Platform/CoreIPC/BinarySemaphore.h: Added.
   25875         Add BinarySemaphore class.
   25876 
   25877         * Platform/CoreIPC/Connection.cpp:
   25878         (CoreIPC::Connection::sendSyncMessage):
   25879         (CoreIPC::Connection::waitForSyncReply):
   25880         (CoreIPC::Connection::processIncomingMessage):
   25881         Use the binary semaphore and the newly added m_pendingSyncRepliesMutex.
   25882 
   25883         * WebKit2.pro:
   25884         * WebKit2.xcodeproj/project.pbxproj:
   25885         * win/WebKit2.vcproj:
   25886         Add new files.
   25887 
   25888 2010-10-12  Adam Roben  <aroben (a] apple.com>
   25889 
   25890         Bring WebKit2 .vcproj files up-to-date with reality
   25891 
   25892         * win/WebKit2.vcproj:
   25893         * win/WebKit2Generated.vcproj:
   25894         Added missing files, removed non-existent files.
   25895 
   25896 2010-10-12  Mark Rowe  <mrowe (a] apple.com>
   25897 
   25898         Fix the 32-bit WebKit2 build.
   25899 
   25900         * UIProcess/cf/WebBackForwardListCF.cpp:
   25901         (WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation): Change currentIndex to be of
   25902         type CFIndex and specify kCFNumberCFIndexType when calling CFNumberGetValue. This avoids a warning
   25903         when comparing currentIndex with another variable of type CFIndex later in the function.
   25904 
   25905 2010-10-12  Mark Rowe  <mrowe (a] apple.com>
   25906 
   25907         Fix class vs struct forward declaration issues in WebKit2 observed when using clang.
   25908 
   25909         * Scripts/webkit2/messages.py: Add WebCore::ViewportArguments to the set of structs.
   25910         * UIProcess/PageClient.h:
   25911         * UIProcess/WebPageProxy.h:
   25912 
   25913 2010-10-12  Juha Savolainen  <juha.savolainen (a] weego.fi>
   25914 
   25915         Reviewed by Antti Koivisto.
   25916 
   25917         [Qt] Adding Qt WebKit2 API for zooming.
   25918         https://bugs.webkit.org/show_bug.cgi?id=47539
   25919 
   25920         Adding zoom methods to QWKPage.
   25921         
   25922         * UIProcess/API/qt/qwkpage.cpp:
   25923         (QWKPage::textZoomFactor): Added
   25924         (QWKPage::setTextZoomFactor): Added
   25925         (QWKPage::pageZoomFactor): Added
   25926         (QWKPage::setPageZoomFactor): Added
   25927         (QWKPage::setPageAndTextZoomFactors): Added
   25928         * UIProcess/API/qt/qwkpage.h:
   25929 
   25930 2010-10-11  Brady Eidson  <beidson (a] apple.com>
   25931 
   25932         Reviewed by Darin Adler of the past.
   25933 
   25934         Address some of Darin's review feedback in https://bugs.webkit.org/show_bug.cgi?id=47354
   25935         that wasn't left till after my original commit.
   25936 
   25937         * UIProcess/API/C/WKPage.cpp:
   25938         (WKPageCopySessionState): Nuke the temporary variable.
   25939         * UIProcess/API/C/WKPage.h:
   25940 
   25941         * UIProcess/WebPageProxy.h: Fix up function declarations.
   25942         
   25943         * UIProcess/cf/WebPageProxyCF.cpp:
   25944         (WebKit::WebPageProxy::sessionStateData): Use sizeof(UInt32) instead of 4.
   25945         (WebKit::WebPageProxy::restoreFromSessionStateData): Ditto.
   25946 
   25947 2010-10-11  Brady Eidson  <beidson (a] apple.com>
   25948 
   25949         Reviewed by BUILD FIX.
   25950 
   25951         Build fix for Windows in https://bugs.webkit.org/show_bug.cgi?id=47354
   25952 
   25953         * UIProcess/cf/WebPageProxyCF.cpp:
   25954         (WebKit::WebPageProxy::sessionStateData): Change to use CF APIs that exist on Windows.
   25955         (WebKit::WebPageProxy::restoreFromSessionStateData): Ditto.
   25956 
   25957 2010-10-11  Sam Weinig  <sam (a] webkit.org>
   25958 
   25959         Reviewed by Anders Carlsson.
   25960 
   25961         Add WebKit2 equivalents for setValueForUser and setAutofilled
   25962         <rdar://problem/8475934>
   25963         https://bugs.webkit.org/show_bug.cgi?id=47524
   25964 
   25965         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
   25966         (WKBundleNodeHandleSetHTMLInputElementValueForUser):
   25967         (WKBundleNodeHandleSetHTMLInputElementAutofilled):
   25968         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h:
   25969         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
   25970         (WebKit::InjectedBundleNodeHandle::setHTMLInputElementValueForUser):
   25971         (WebKit::InjectedBundleNodeHandle::setHTMLInputElementAutofilled):
   25972         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
   25973 
   25974 2010-10-11  Brian Weinstein  <bweinstein (a] apple.com>
   25975 
   25976         Windows build fix. Add a needed include.
   25977 
   25978         * UIProcess/cf/WebPageProxyCF.cpp:
   25979 
   25980 2010-10-11  Brian Weinstein  <bweinstein (a] apple.com>
   25981 
   25982         Windows build fix. Wrap calls to CFSTR in parentheses.
   25983 
   25984         * UIProcess/cf/WebBackForwardListCF.cpp:
   25985         * UIProcess/cf/WebPageProxyCF.cpp:
   25986 
   25987 2010-10-11  Sam Weinig  <sam (a] webkit.org>
   25988 
   25989         Reviewed by Anders Carlsson.
   25990 
   25991         Add ability to convert from a JSObjectRef back to a WKBundleNodeHandleRef
   25992         https://bugs.webkit.org/show_bug.cgi?id=47509
   25993 
   25994         Add SPI to convert a JSObjectRef to a WKBundleNodeHandleRef.
   25995 
   25996         * DerivedSources.pro:
   25997         * WebKit2.pro:
   25998         * WebKit2.xcodeproj/project.pbxproj:
   25999         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
   26000         (WKBundleNodeHandleCreate):
   26001         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h: Added.
   26002         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
   26003         (WebKit::InjectedBundleNodeHandle::getOrCreate):
   26004         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
   26005         * win/WebKit2.vcproj:
   26006         * win/WebKit2Generated.make:
   26007 
   26008 2010-10-11  Brady Eidson  <beidson (a] apple.com>
   26009 
   26010         Reviewed by Darin Adler and Sam Weinig.
   26011 
   26012         <rdar://problem/8262202> and https://bugs.webkit.org/show_bug.cgi?id=47354
   26013         Need WKPage API for serializing and restoring a page's state
   26014 
   26015         * WebKit2.xcodeproj/project.pbxproj:
   26016         * win/WebKit2.vcproj:
   26017 
   26018         * WebKit2Prefix.h: Add DEFINE_STATIC_GETTER convenience.
   26019 
   26020         * UIProcess/API/C/WKPage.cpp:
   26021         (WKPageGetSessionHistoryURLValueType):
   26022         (WKPageCopySessionState): Change to use a filter function to allow the API client to decide what
   26023           types of things get serialized as session state.  For now it only filters based on URL in
   26024           session history entries.
   26025         (WKPageRestoreFromSessionState):
   26026         * UIProcess/API/C/WKPage.h:
   26027 
   26028         * UIProcess/WebBackForwardList.h:
   26029         (WebKit::WebBackForwardList::restoredCurrentURL):
   26030 
   26031         * UIProcess/WebPageProxy.cpp:
   26032         (WebKit::WebPageProxy::sessionStateData): Leave stubs for non-CF platform builds.
   26033         (WebKit::WebPageProxy::restoreFromSessionStateData): Ditto.
   26034         * UIProcess/WebPageProxy.h:
   26035 
   26036         * UIProcess/cf: Added.
   26037         * UIProcess/cf/WebBackForwardListCF.cpp: Added.
   26038         (WebKit::WebBackForwardList::createCFDictionaryRepresentation): Store back/forward list info CF property list style.
   26039         (WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation): Restore from that data - but for now we don't 
   26040           actually put the back/forward list back into place and instead only remember the current URL.
   26041 
   26042         * UIProcess/cf/WebPageProxyCF.cpp: Added.
   26043         (WebKit::WebPageProxy::sessionStateData): Create the sessions state date CF property list style, plus a version header.
   26044         (WebKit::WebPageProxy::restoreFromSessionStateData): Restore from that property list style session state data.
   26045 
   26046 2010-10-11  Adam Roben  <aroben (a] apple.com>
   26047 
   26048         Implement SharedMemory on Windows
   26049 
   26050         This makes visited links be colored correctly.
   26051 
   26052         Fixes <http://webkit.org/b/47499> <rdar://problem/8422725>.
   26053 
   26054         Reviewed by Anders Carlsson.
   26055 
   26056         * Platform/SharedMemory.h: Add Windows-specific members to
   26057         SharedMemory and SharedMemory::Handle.
   26058 
   26059         * Platform/win/SharedMemoryWin.cpp:
   26060         (WebKit::SharedMemory::Handle::Handle): Initialize our members.
   26061         (WebKit::SharedMemory::Handle::~Handle): Close our HANDLE if we have
   26062         one.
   26063         (WebKit::SharedMemory::Handle::encode): Encode our size, HANDLE, and
   26064         PID. Null out our HANDLE member, as it is now the receiving process's
   26065         responsibility to close the HANDLE.
   26066         (WebKit::SharedMemory::Handle::decode): Copy the handle from the
   26067         sending process into the receiving process and close the HANDLE the
   26068         sending process gave us.
   26069         (WebKit::SharedMemory::create): Map some memory and store it in a new
   26070         SharedMemory object.
   26071         (WebKit::accessRights): Helper function to convert a
   26072         SharedMemory::Protection to a file-mapping access right.
   26073         (WebKit::SharedMemory::create): Map the memory represented by the
   26074         Handle, and adopt the HANDLE from it.
   26075         (WebKit::SharedMemory::~SharedMemory): Clean up our memory mapping.
   26076         (WebKit::SharedMemory::createHandle): Give the Handle a copy of our
   26077         HANDLE with the specified protection.
   26078 
   26079 2010-10-11  Adam Roben  <aroben (a] apple.com>
   26080 
   26081         Make it possible to restart a RunLoop::Timer on Windows
   26082 
   26083         Fixes <http://webkit.org/b/47505> RunLoop::Timer only ever fires once
   26084         on Windows
   26085 
   26086         Reviewed by Anders Carlsson.
   26087 
   26088         * Platform/win/RunLoopWin.cpp:
   26089         (RunLoop::TimerBase::timerFired): Remove non-repeating timers from the
   26090         set of active timers when they fire, just like we do when stopping
   26091         them manually.
   26092 
   26093 2010-10-11  Jessie Berlin  <jberlin (a] apple.com>
   26094 
   26095         Reviewed by Darin Adler.
   26096 
   26097         Add Private API for creating a WebKit2 WebSerializedScriptValue from the internal
   26098         representation of a WebKit1 WebSerializedJSValue.
   26099         https://bugs.webkit.org/show_bug.cgi?id=47439
   26100 
   26101         * Shared/API/c/WKSerializedScriptValue.cpp:
   26102         (WKSerializedScriptValueCreateWithInternalRepresentation):
   26103         Use the existing WebSerializedScriptValue constructor that takes a pointer to the internal
   26104         representation (a WebCore::SerializedScriptValue).
   26105         * Shared/API/c/WKSerializedScriptValuePrivate.h:
   26106 
   26107 2010-10-11  Mike Thole  <mthole (a] apple.com>
   26108 
   26109         Reviewed by Darin Adler.
   26110 
   26111         Rename WKCertificateInfoGetPeerCertificates() to WKCertificateInfoGetCertificateChain()
   26112         https://bugs.webkit.org/show_bug.cgi?id=47495
   26113 
   26114         * Shared/API/c/mac/WKCertificateInfoMac.h:
   26115         Renamed WKCertificateInfoGetPeerCertificates() to WKCertificateInfoGetCertificateChain()
   26116         * Shared/API/c/mac/WKCertificateInfoMac.mm:
   26117         (WKCertificateInfoGetCertificateChain): Updated for name change.
   26118         * Shared/mac/PlatformCertificateInfo.h:
   26119         (WebKit::PlatformCertificateInfo::certificateChain): Renamed from peerCertificates()
   26120         * Shared/mac/PlatformCertificateInfo.mm:
   26121         (WebKit::PlatformCertificateInfo::PlatformCertificateInfo): Updated for name change.
   26122         (WebKit::PlatformCertificateInfo::encode): Ditto.
   26123         (WebKit::PlatformCertificateInfo::decode): Ditto.
   26124         (WebKit::PlatformCertificateInfo::dump): Ditto.
   26125 
   26126 2010-10-11  Balazs Kelemen  <kbalazs (a] webkit.org>
   26127 
   26128         Reviewed by Kenneth Rohde Christiansen.
   26129 
   26130         [Qt] Issue a warning when an InjectedBundle can't be loaded.
   26131         https://bugs.webkit.org/show_bug.cgi?id=47497
   26132 
   26133         The original author of the patch is Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com>.
   26134 
   26135         * WebProcess/InjectedBundle/qt/InjectedBundleQt.cpp:
   26136         (WebKit::InjectedBundle::load):
   26137 
   26138 2010-10-11  Sam Weinig  <sam (a] webkit.org>
   26139 
   26140         Reviewed by Simon Fraser.
   26141 
   26142         Rename transformToDeviceSpace to convertToDeviceSpace and 
   26143         transformToUserSpace to convertToUserSpace at Simon's request.
   26144 
   26145         * UIProcess/API/mac/PageClientImpl.h:
   26146         * UIProcess/API/mac/PageClientImpl.mm:
   26147         (WebKit::PageClientImpl::convertToDeviceSpace):
   26148         (WebKit::PageClientImpl::convertToUserSpace):
   26149         * UIProcess/API/mac/WKView.mm:
   26150         (-[WKView _convertToDeviceSpace:]):
   26151         (-[WKView _convertToUserSpace:]):
   26152         * UIProcess/API/mac/WKViewInternal.h:
   26153         * UIProcess/API/qt/qwkpage.cpp:
   26154         (QWKPagePrivate::convertToDeviceSpace):
   26155         (QWKPagePrivate::convertToUserSpace):
   26156         * UIProcess/API/qt/qwkpage_p.h:
   26157         * UIProcess/PageClient.h:
   26158         * UIProcess/WebPageProxy.cpp:
   26159         (WebKit::WebPageProxy::setWindowFrame):
   26160         (WebKit::WebPageProxy::getWindowFrame):
   26161         * UIProcess/win/WebView.cpp:
   26162         (WebKit::WebView::convertToDeviceSpace):
   26163         (WebKit::WebView::convertToUserSpace):
   26164         * UIProcess/win/WebView.h:
   26165 
   26166 2010-10-11  Sam Weinig  <sam (a] webkit.org>
   26167 
   26168         Try to fix the Mac release build.
   26169 
   26170         * UIProcess/API/mac/WKView.mm:
   26171         (-[WKView _transformToDeviceSpace:]):
   26172         (-[WKView _transformToUserSpace:]):
   26173         * UIProcess/API/mac/WKViewInternal.h:
   26174 
   26175 2010-10-11  Balazs Kelemen  <kbalazs (a] webkit.org>
   26176 
   26177         Reviewed by Kenneth Rohde Christiansen.
   26178 
   26179         WebProcess ASSERTs with a null application cache dir creation parameter
   26180         https://bugs.webkit.org/show_bug.cgi?id=47489
   26181 
   26182         * WebProcess/WebProcess.cpp:
   26183         (WebKit::WebProcess::initializeWebProcess):
   26184 
   26185 2010-10-11  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   26186 
   26187         Reviewed by Andreas Kling.
   26188 
   26189         Unlink the files used for I/O mapped memory as soon as they are
   26190         created.
   26191 
   26192         * Shared/qt/UpdateChunk.cpp:
   26193         (WebKit::mapMemory):
   26194         (WebKit::mapFile):
   26195 
   26196 2010-10-11  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   26197 
   26198         Rubberstamped by Andreas Kling.
   26199 
   26200         Build fix when using MeeGo Touch
   26201 
   26202         * WebProcess/qt/WebProcessMainQt.cpp:
   26203 
   26204 2010-10-11  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   26205 
   26206         Reviewed by Andreas Kling.
   26207 
   26208         Use raster for the QtWebProcess.
   26209 
   26210         * WebProcess/qt/WebProcessMainQt.cpp:
   26211         (WebKit::WebProcessMainQt):
   26212 
   26213 2010-10-11  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   26214 
   26215         Unreviewed win build fix.
   26216 
   26217         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   26218 
   26219 2010-10-08  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   26220 
   26221         Reviewed by Sam Weinig.
   26222 
   26223         Adding Qt WebKit2 API for dealing with viewport meta info
   26224         https://bugs.webkit.org/show_bug.cgi?id=47202
   26225 
   26226         Add new API for setting scale and layout viewport given the data
   26227         provided by the viewport meta tag.
   26228 
   26229         Any Qt view components who wants to support this, will need to
   26230         compute the viewport attributes before first load using
   26231         viewportAttributesForSize(..), and then again everytime
   26232         the viewport attributes gets invalidates (loading a new page,
   26233         navigating page cache) or every time on of the browser
   26234         attributes change, such as when the device is rotates (which
   26235         changes the actual visible viewport). A signal
   26236         viewportChangeRequested() is provided for the former.
   26237 
   26238         * Shared/WebCoreArgumentCoders.h:
   26239         * UIProcess/API/mac/PageClientImpl.h:
   26240         * UIProcess/API/mac/PageClientImpl.mm:
   26241         (WebKit::PageClientImpl::setViewportArguments):
   26242         * UIProcess/API/qt/qwkpage.cpp:
   26243         (QWKPagePrivate::setViewportArguments):
   26244         (QWKPage::ViewportAttributes::ViewportAttributes):
   26245         (QWKPage::ViewportAttributes::~ViewportAttributes):
   26246         (QWKPage::ViewportAttributes::operator=):
   26247         (QWKPage::viewportAttributesForSize):
   26248         * UIProcess/API/qt/qwkpage.h:
   26249         * UIProcess/API/qt/qwkpage_p.h:
   26250         (QtViewportAttributesPrivate::QtViewportAttributesPrivate):
   26251         * UIProcess/PageClient.h:
   26252         * UIProcess/WebPageProxy.cpp:
   26253         (WebKit::WebPageProxy::didReceiveMessage):
   26254         (WebKit::WebPageProxy::didChangeViewportData):
   26255         * UIProcess/WebPageProxy.h:
   26256         * UIProcess/WebPageProxy.messages.in:
   26257         * UIProcess/win/WebView.cpp:
   26258         (WebKit::WebView::setViewportArguments):
   26259         * UIProcess/win/WebView.h:
   26260         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   26261         (WebKit::WebChromeClient::dispatchViewportDataDidChange):
   26262         * WebProcess/WebCoreSupport/WebChromeClient.h:
   26263 
   26264 2010-10-11  Csaba Osztrogonc  <ossy (a] webkit.org>
   26265 
   26266         Reviewed by Andreas Kling.
   26267 
   26268         [Qt] WebKit2 build scripts are buggy
   26269         https://bugs.webkit.org/show_bug.cgi?id=47377
   26270 
   26271         Generated sources must depends on WebKit2/Scripts/webkit2/messages.py too.
   26272 
   26273         * DerivedSources.pro: Missing dependencies added.
   26274 
   26275 2010-10-09  Sam Weinig  <sam (a] webkit.org>
   26276 
   26277         Reviewed by Dan Bernstein.
   26278 
   26279         WKFrameGetFrameLoadState() returns kWKFrameLoadStateCommitted after the load has been stopped
   26280         <rdar://problem/8173667>
   26281         https://bugs.webkit.org/show_bug.cgi?id=47461
   26282 
   26283         API Test: WebKit2/FailedLoad
   26284 
   26285         * UIProcess/WebFrameProxy.cpp:
   26286         (WebKit::WebFrameProxy::didFailProvisionalLoad):
   26287         (WebKit::WebFrameProxy::didFailLoad):
   26288         * UIProcess/WebFrameProxy.h:
   26289         * UIProcess/WebPageProxy.cpp:
   26290         (WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
   26291         (WebKit::WebPageProxy::didFailLoadForFrame):
   26292         Set the frame load state to LoadStateFinished for both didFailProvisionalLoadForFrame
   26293         and didFailLoadForFrame.
   26294 
   26295 2010-10-09  Sam Weinig  <sam (a] webkit.org>
   26296 
   26297         Reviewed by Dan Bernstein.
   26298 
   26299         Add WebKit2 version of runBeforeUnloadConfirmPanelWithMessage
   26300         <rdar://problem/8447690>
   26301         https://bugs.webkit.org/show_bug.cgi?id=47459
   26302 
   26303         * UIProcess/API/C/WKPage.h:
   26304         * UIProcess/API/qt/qwkpage.cpp:
   26305         (QWKPage::QWKPage):
   26306         * UIProcess/WebPageProxy.cpp:
   26307         (WebKit::WebPageProxy::setWindowFrame):
   26308         (WebKit::WebPageProxy::getWindowFrame):
   26309         (WebKit::WebPageProxy::canRunBeforeUnloadConfirmPanel):
   26310         (WebKit::WebPageProxy::runBeforeUnloadConfirmPanel):
   26311         * UIProcess/WebPageProxy.h:
   26312         * UIProcess/WebPageProxy.messages.in:
   26313         * UIProcess/WebUIClient.cpp:
   26314         (WebKit::WebUIClient::canRunBeforeUnloadConfirmPanel):
   26315         (WebKit::WebUIClient::runBeforeUnloadConfirmPanel):
   26316         * UIProcess/WebUIClient.h:
   26317         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   26318         (WebKit::WebChromeClient::canRunBeforeUnloadConfirmPanel):
   26319         (WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
   26320         Pipe calls through to the UIProcess.
   26321 
   26322 2010-10-09  Sam Weinig  <sam (a] webkit.org>
   26323 
   26324         Reviewed by Dan Bernstein.
   26325 
   26326         Need implementation of ChromeClient windowRect related functions.
   26327         <rdar://problem/8469476>
   26328         https://bugs.webkit.org/show_bug.cgi?id=47386
   26329 
   26330         * Shared/API/c/WKGeometry.h: Added.
   26331         Adds WKPoint, WKSize and WKRect structs.
   26332 
   26333         * Shared/API/c/WKSharedAPICast.h:
   26334         (WebKit::toImpl):
   26335         (WebKit::toAPI):
   26336         Add conversion functions for WKRect.
   26337 
   26338         * Shared/WebCoreArgumentCoders.h:
   26339         Add encoding for FloatPoint, FloatSize and FloatRect.
   26340 
   26341         * UIProcess/API/C/WKPage.h:
   26342         * UIProcess/API/mac/PageClientImpl.h:
   26343         * UIProcess/API/mac/PageClientImpl.mm:
   26344         (WebKit::PageClientImpl::transformToDeviceSpace):
   26345         (WebKit::PageClientImpl::transformToUserSpace):
   26346         * UIProcess/API/mac/WKView.mm:
   26347         (-[WKView _transformToDeviceSpace:]):
   26348         (-[WKView _transformToUserSpace:]):
   26349         * UIProcess/API/mac/WKViewInternal.h:
   26350         * UIProcess/API/qt/qwkpage.cpp:
   26351         (QWKPagePrivate::transformToDeviceSpace):
   26352         (QWKPagePrivate::transformToUserSpace):
   26353         (QWKPage::QWKPage):
   26354         * UIProcess/API/qt/qwkpage_p.h:
   26355         * UIProcess/PageClient.h:
   26356         * UIProcess/WebPageProxy.cpp:
   26357         (WebKit::WebPageProxy::setWindowFrame):
   26358         (WebKit::WebPageProxy::getWindowFrame):
   26359         * UIProcess/WebPageProxy.h:
   26360         * UIProcess/WebPageProxy.messages.in:
   26361         * UIProcess/WebUIClient.cpp:
   26362         (WebKit::WebUIClient::setWindowFrame):
   26363         (WebKit::WebUIClient::windowFrame):
   26364         * UIProcess/WebUIClient.h:
   26365         * UIProcess/win/WebView.cpp:
   26366         (WebKit::WebView::setEditCommandState):
   26367         (WebKit::WebView::transformToDeviceSpace):
   26368         (WebKit::WebView::transformToUserSpace):
   26369         * UIProcess/win/WebView.h:
   26370         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   26371         (WebKit::WebChromeClient::setWindowFrame):
   26372         (WebKit::WebChromeClient::windowFrame):
   26373         Pipe calls through to the UIProcess, and give ports a chance to transform
   26374         the rect (via the PageClient) before it is passed on.
   26375 
   26376         * WebKit2.pro:
   26377         * WebKit2.xcodeproj/project.pbxproj:
   26378         * win/WebKit2.vcproj:
   26379         * win/WebKit2Generated.make:
   26380         Add new files.
   26381 
   26382 2010-10-07  Jessie Berlin  <jberlin (a] apple.com>
   26383 
   26384         Reviewed by Sam Weinig.
   26385 
   26386         Add Private API for creating a WebKit1 WebSerializedJSValue from the internal
   26387         representation of a WebKit2 WebSerializedScriptValue.
   26388         https://bugs.webkit.org/show_bug.cgi?id=47390
   26389 
   26390         * Shared/API/c/WKSerializedScriptValue.cpp:
   26391         (WKSerializedScriptValueGetInternalRepresentation):
   26392         * Shared/API/c/WKSerializedScriptValuePrivate.h: Added.
   26393 
   26394         * Shared/WebSerializedScriptValue.h:
   26395         (WebKit::WebSerializedScriptValue::internalRepresentation):
   26396         Return the WebCore::SerializedScriptValue as a void* so that it can be passed through the
   26397         API.
   26398 
   26399         * WebKit2.xcodeproj/project.pbxproj:
   26400         Add WKSerializedScriptValuePrivate.h.
   26401         * win/WebKit2.vcproj:
   26402         Ditto, also some sorting.
   26403 
   26404         * win/WebKit2Generated.make:
   26405         Copy over WKSerializedScriptValuePrivate.h.
   26406 
   26407 2010-10-08  Jocelyn Turcotte  <jocelyn.turcotte (a] nokia.com>
   26408 
   26409         Reviewed by Andreas Kling.
   26410 
   26411         [Qt] Fix WKStringQt.h and WKURLQt.h API problems.
   26412         https://bugs.webkit.org/show_bug.cgi?id=47412
   26413 
   26414         * UIProcess/API/cpp/qt/WKStringQt.h:
   26415         Remove the extern "C"
   26416         * UIProcess/API/cpp/qt/WKURLQt.h:
   26417         Remove the extern "C"
   26418         * UIProcess/API/qt/qgraphicswkview.h:
   26419         Fix the forwarded declaration
   26420 
   26421 2010-10-08  Jocelyn Turcotte  <jocelyn.turcotte (a] nokia.com>
   26422 
   26423         Reviewed by Kenneth Rohde Christiansen.
   26424 
   26425         [Qt] Don't use -whole-archive to link-in libWebKit2.a except for libQtWebKit.so
   26426         https://bugs.webkit.org/show_bug.cgi?id=47347
   26427 
   26428         * WebKit2.pri:
   26429 
   26430 2010-10-08  Kimmo Kinnunen  <kimmo.t.kinnunen (a] nokia.com>
   26431 
   26432         Reviewed by Andreas Kling.
   26433 
   26434         Notify WebPage when QGraphicsWKView gains focus. Set both
   26435         active flag and focused flag, similar to QWebPage behavior.
   26436 
   26437         [Qt] WebKit2 should support focusing
   26438         https://bugs.webkit.org/show_bug.cgi?id=47168
   26439 
   26440         * UIProcess/API/qt/qgraphicswkview.cpp:
   26441         (QGraphicsWKView::focusInEvent): Added.
   26442         (QGraphicsWKView::focusOutEvent): Added.
   26443         * UIProcess/API/qt/qgraphicswkview.h: Added declarations.
   26444 
   26445 2010-10-07  Ivan Krsti  <ike (a] apple.com>
   26446 
   26447         Reviewed by Mark Rowe.
   26448 
   26449         <rdar://problem/8349882> Many WebProcess sandbox violations during basic browsing operations.
   26450 
   26451         * WebProcess/com.apple.WebProcess.sb:
   26452         * WebProcess/mac/WebProcessMainMac.mm:
   26453         (WebKit::WebProcessMain):
   26454 
   26455 2010-10-07  Brady Eidson  <beidson (a] apple.com>
   26456 
   26457         Build fix.
   26458 
   26459         GCC continued to mask the fact that I still hadn't declared the correct symbol.
   26460 
   26461         * Platform/Logging.cpp:
   26462         (initializeLogChannel):
   26463         * Platform/Logging.h:
   26464 
   26465 2010-10-07  Brian Weinstein  <bweinstein (a] apple.com>
   26466 
   26467         Build Fix. Fix the vcproj to make it valid and openable by Visual Studio.
   26468 
   26469         * win/WebKit2.vcproj:
   26470 
   26471 2010-10-07  Anders Carlsson  <andersca (a] apple.com>
   26472 
   26473         Reviewed by Sam Weinig.
   26474 
   26475         Add a WKPageFindClient, hook up WKPageCountStringMatches
   26476         https://bugs.webkit.org/show_bug.cgi?id=47373
   26477 
   26478         * Shared/APIClient.h: Added.
   26479         Add an APIClient class template which can be used to reduce duplicated
   26480         code in the client wrappers.
   26481 
   26482         * UIProcess/API/C/WKPage.cpp:
   26483         (WKPageSetPageFindClient):
   26484         Initialize the page find client.
   26485 
   26486         * UIProcess/API/C/WKPage.h:
   26487         * UIProcess/WebFindClient.cpp: Added.
   26488         (WebKit::WebFindClient::didCountStringMatches):
   26489         Call the WKPageFindClient function.
   26490 
   26491         * UIProcess/WebFindClient.h: Added.
   26492         * UIProcess/WebPageProxy.cpp:
   26493         (WebKit::WebPageProxy::initializeFindClient):
   26494         Initialize the WebFindClient.
   26495 
   26496         (WebKit::WebPageProxy::findString):
   26497         Send a FindString message.
   26498 
   26499         (WebKit::WebPageProxy::hideFindUI):
   26500         Send a HideFindUI message.
   26501 
   26502         (WebKit::WebPageProxy::countStringMatches):
   26503         Send a CountStringMatches message.
   26504 
   26505         (WebKit::WebPageProxy::didCountStringMatches):
   26506         Call the find client.
   26507 
   26508         * UIProcess/WebPageProxy.messages.in:
   26509         Add new message.
   26510 
   26511         * WebKit2.pro:
   26512         * WebKit2.xcodeproj/project.pbxproj:
   26513         Add new files.
   26514 
   26515         * WebProcess/WebPage/WebPage.cpp:
   26516         (WebKit::WebPage::findString):
   26517         (WebKit::WebPage::hideFindUI):
   26518         Add stubs.
   26519 
   26520         (WebKit::WebPage::countStringMatches):
   26521         Figure out the number of matches and send them back in the DidCountStringMatches msessage.
   26522 
   26523         * WebProcess/WebPage/WebPage.h:
   26524         * WebProcess/WebPage/WebPage.messages.in:
   26525         Add new messages.
   26526 
   26527         * win/WebKit2.vcproj:
   26528         Add new files.
   26529 
   26530 2010-10-07  Sam Weinig  <sam (a] webkit.org>
   26531 
   26532         Update unit tests results.
   26533 
   26534         * Scripts/webkit2/messages_unittest.py:
   26535 
   26536 2010-10-07  Brady Eidson  <beidson (a] apple.com>
   26537 
   26538         Reviewed by BUILD FIX for non-gcc builds.
   26539 
   26540         * Platform/Logging.cpp:
   26541         (initializeLogChannel):  GCC optimized out the only caller of this function. Windows doesn't, and is breaking.
   26542 
   26543 2010-10-07  Darin Adler  <darin (a] apple.com>
   26544 
   26545         Fix include mistake that makes build fail with non-Objective-C.
   26546 
   26547         * Shared/API/c/mac/WKCertificateInfoMac.h: Include CoreFoundation.h,
   26548         not Foundation.h.
   26549 
   26550 2010-10-07  Sam Weinig  <sam (a] webkit.org>
   26551 
   26552         Reviewed by Anders Carlsson.
   26553 
   26554         Generate the messages sent to the WebPageProxy
   26555         https://bugs.webkit.org/show_bug.cgi?id=47239
   26556 
   26557         * DerivedSources.make:
   26558         * DerivedSources.pro:
   26559         * Platform/CoreIPC/Arguments.h:
   26560         * Platform/CoreIPC/HandleMessage.h:
   26561         (CoreIPC::handleMessage):
   26562         * Scripts/webkit2/messages.py:
   26563         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h: Removed.
   26564         * Shared/StringPairVector.h: Added.
   26565         * UIProcess/API/mac/PageClientImpl.h:
   26566         * UIProcess/API/mac/PageClientImpl.mm:
   26567         (WebKit::PageClientImpl::registerEditCommand):
   26568         * UIProcess/API/qt/qwkpage.cpp:
   26569         (QWKPagePrivate::registerEditCommand):
   26570         * UIProcess/API/qt/qwkpage_p.h:
   26571         * UIProcess/PageClient.h:
   26572         * UIProcess/WebEditCommandProxy.cpp:
   26573         (WebKit::WebEditCommandProxy::unapply):
   26574         (WebKit::WebEditCommandProxy::reapply):
   26575         * UIProcess/WebFormClient.cpp:
   26576         (WebKit::WebFormClient::willSubmitForm):
   26577         * UIProcess/WebFormClient.h:
   26578         * UIProcess/WebPageProxy.cpp:
   26579         * UIProcess/WebPageProxy.h:
   26580         * UIProcess/WebPageProxy.messages.in: Added.
   26581         * UIProcess/win/WebView.cpp:
   26582         (WebKit::WebView::registerEditCommand):
   26583         * UIProcess/win/WebView.h:
   26584         * WebKit2.pro:
   26585         * WebKit2.xcodeproj/project.pbxproj:
   26586         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   26587         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   26588         (WebKit::WebEditorClient::registerCommandForUndo):
   26589         (WebKit::WebEditorClient::clearUndoRedoOperations):
   26590         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   26591         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   26592         * WebProcess/WebPage/WebPage.cpp:
   26593         * win/WebKit2.vcproj:
   26594 
   26595 2010-10-07  Brady Eidson  <beidson (a] apple.com>
   26596 
   26597         Reviewed by BUILD FIX.
   26598 
   26599         Forgot this to keep the build working.
   26600 
   26601         * WebKit2Prefix.h:
   26602 
   26603 2010-10-07  Anders Carlsson  <andersca (a] apple.com>
   26604 
   26605         Reviewed by John Sullivan.
   26606 
   26607         Start stubbing out the find API
   26608         https://bugs.webkit.org/show_bug.cgi?id=47366
   26609         <rdar://problem/8524998>
   26610 
   26611         * Shared/FindOptions.h: Added.
   26612         * UIProcess/API/C/WKAPICast.h:
   26613         (WebKit::toFindDirection):
   26614         (WebKit::toFindOptions):
   26615         * UIProcess/API/C/WKPage.cpp:
   26616         (WKPageFindString):
   26617         (WKPageHideFindUI):
   26618         (WKPageCountStringMatches):
   26619         * UIProcess/API/C/WKPage.h:
   26620         * UIProcess/WebPageProxy.cpp:
   26621         (WebKit::WebPageProxy::findString):
   26622         (WebKit::WebPageProxy::hideFindUI):
   26623         (WebKit::WebPageProxy::countStringMatches):
   26624         * UIProcess/WebPageProxy.h:
   26625 
   26626 2010-10-07  Jocelyn Turcotte  <jocelyn.turcotte (a] nokia.com>, Andras Becsi  <abecsi (a] webkit.org>, Balazs Kelemen  <kbalazs (a] webkit.org>
   26627 
   26628         Reviewed by Kenneth Rohde Christiansen.
   26629 
   26630         [Qt] Add WTR's InjectedBundle build files.
   26631         https://bugs.webkit.org/show_bug.cgi?id=47333
   26632 
   26633         * WebKit2.pro:
   26634 
   26635 2010-10-07  Brady Eidson  <beidson (a] apple.com>
   26636 
   26637         Reviewed by Sam Weinig.
   26638 
   26639         Part of https://bugs.webkit.org/show_bug.cgi?id=47354 - Add WebCore/WebKit1 style logging channel mechanism0 to WebKit2, 
   26640         including the first channel to be used for SessionState work.
   26641 
   26642         * Platform/Logging.cpp: Added.
   26643         (initializeLogChannelsIfNecessary):
   26644         * Platform/Logging.h: Added.
   26645 
   26646         * WebKit2.pro:
   26647         * WebKit2.xcodeproj/project.pbxproj:
   26648         * win/WebKit2.vcproj:
   26649 
   26650 2010-10-07  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   26651 
   26652         Unreviewed, rolling out r69315.
   26653         http://trac.webkit.org/changeset/69315
   26654         https://bugs.webkit.org/show_bug.cgi?id=47363
   26655 
   26656         Forgot to add the new files (Requested by kbalazs on #webkit).
   26657 
   26658         * WebKit2.pro:
   26659 
   26660 2010-10-07  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   26661 
   26662         Reviewed by Kenneth Rohde Christiansen.
   26663 
   26664         Fixing viewport meta tag user-scalable handling
   26665         https://bugs.webkit.org/show_bug.cgi?id=47330
   26666 
   26667         user-scalable attribute was not considered in viewport meta tag handling.
   26668 
   26669         * UIProcess/API/qt/qwkpage.cpp:
   26670         (QWKPage::viewportConfigurationForSize):
   26671 
   26672 2010-10-07  Jocelyn Turcotte  <jocelyn.turcotte (a] nokia.com>, Andras Becsi  <abecsi (a] webkit.org>, Balazs Kelemen  <kbalazs (a] webkit.org>
   26673 
   26674         Reviewed by Kenneth Rohde Christiansen.
   26675 
   26676         [Qt] Add WTR's InjectedBundle build files.
   26677         https://bugs.webkit.org/show_bug.cgi?id=47333
   26678 
   26679         * WebKit2.pro:
   26680 
   26681 2010-10-07  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   26682 
   26683         Reviewed by Kenneth Rohde Christiansen.
   26684 
   26685         Some viewport meta tag api refactoring
   26686         https://bugs.webkit.org/show_bug.cgi?id=47334
   26687 
   26688         WebCore::findConfigurationForViewportData renamed to computeViewportAttributes.
   26689         WebCore::ViewportAttributes::layoutViewport renamed to layoutSize.
   26690 
   26691         * UIProcess/API/qt/qwkpage.cpp:
   26692         (QWKPage::viewportConfigurationForSize):
   26693 
   26694 2010-10-06  Jessie Berlin  <jberlin (a] apple.com>
   26695 
   26696         Reviewed by John Sullivan.
   26697 
   26698         Bundle should expose a reportException method.
   26699         https://bugs.webkit.org/show_bug.cgi?id=46769
   26700 
   26701         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   26702         (WKBundleReportException):
   26703         * WebProcess/InjectedBundle/API/c/WKBundle.h:
   26704 
   26705         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   26706         (WebKit::InjectedBundle::reportException):
   26707         Mimic the behavior of WebView::reportException.
   26708         * WebProcess/InjectedBundle/InjectedBundle.h:
   26709 
   26710 2010-10-07  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   26711 
   26712         Reviewed by Adam Roben.
   26713 
   26714         [Qt] Webkit2 MacOS build fix
   26715         https://bugs.webkit.org/show_bug.cgi?id=47167
   26716 
   26717         There were two problems when building Qt WebKit2 in Mac. The first was that
   26718         ld does not support flag -whole-archive and it needed to be replaced by flag -all_load.
   26719         The second problem was that __APPLE__ is been used to identify safari builds and, when
   26720         building Qt in MacOS, Qt was ending up using the wrong typedef. The solution was to use
   26721         a Qt specific WKNativeEvent.h that only has the proper Qt typedef instead of the original one.
   26722 
   26723         * UIProcess/API/C/qt/WKNativeEvent.h: Added.
   26724         * WebKit2.pri:
   26725         * WebKit2.pro:
   26726 
   26727 2010-10-07  Balazs Kelemen  <kbalazs (a] webkit.org>
   26728 
   26729         Reviewed by Kenneth Rohde Christiansen.
   26730 
   26731         WebKitTestRunner should be portable
   26732         https://bugs.webkit.org/show_bug.cgi?id=45393
   26733 
   26734         Introducing additional URL API.
   26735         * Shared/API/c/WKURL.cpp:
   26736         (WKURLCreateWithUTF8CString):
   26737         (WKURLIsEqual):
   26738         * Shared/API/c/WKURL.h:
   26739 
   26740 2010-10-06  Balazs Kelemen  <kbalazs (a] webkit.org>
   26741 
   26742         Reviewed by Kenneth Rohde Christiansen.
   26743 
   26744         [Qt] Add WebKitTestRunner's build files
   26745         https://bugs.webkit.org/show_bug.cgi?id=44155
   26746 
   26747         * DerivedSources.pro: Changes according the new location
   26748         of generate-forwarding-headers.pl.
   26749         * UIProcess/API/C/WebKit2.h: Do not check the value of the
   26750         __APPLE__ define if it is not defined.
   26751         * WebKit2.pro: Changes according the new location
   26752         of generate-forwarding-headers.pl. Added missing files
   26753         to the build that provides API that is used by WTR.
   26754         * generate-forwarding-headers.pl: Moved to WebKitTools/Scripts
   26755         since from now this is not only used by WebKit2.
   26756 
   26757 2010-10-06  Anders Carlsson  <andersca (a] apple.com>
   26758 
   26759         Reviewed by Sam Weinig.
   26760 
   26761         Separate actually calling the member function from decoding/encoding arguments
   26762         and remove any ambiguities when calling the function.
   26763 
   26764         * Platform/CoreIPC/Arguments.h:
   26765         * Platform/CoreIPC/HandleMessage.h:
   26766         (CoreIPC::callMemberFunction):
   26767         (CoreIPC::handleMessage):
   26768 
   26769 2010-10-06  Anders Carlsson  <andersca (a] apple.com>
   26770 
   26771         Reviewed by Sam Weinig.
   26772 
   26773         More Arguments.h cleanup.
   26774 
   26775         * Platform/CoreIPC/Arguments.h:
   26776         * Platform/CoreIPC/HandleMessage.h:
   26777         Remove unnecessary typedefs, simplify.
   26778 
   26779         * Scripts/webkit2/messages.py:
   26780         * UIProcess/WebContext.h:
   26781         Fix clang++ build.
   26782 
   26783 2010-10-06  Anders Carlsson  <andersca (a] apple.com>
   26784 
   26785         Reviewed by Sam Weinig.
   26786 
   26787         Start cleaning up Arguments.h
   26788         https://bugs.webkit.org/show_bug.cgi?id=47304
   26789 
   26790         This is a first step towards simplifying all the handleMessage overloads we have.
   26791 
   26792         * Platform/CoreIPC/Arguments.h:
   26793         (CoreIPC::Arguments1):
   26794         Make Arguments1 a struct and get rid of the FirstArgumentType typedef. Instead, add a
   26795         ValueType typedef which is defined to an Arguments1 type whose type parameter is not
   26796         a reference type.
   26797 
   26798         * Platform/CoreIPC/HandleMessage.h:
   26799         (CoreIPC::handleMessage):
   26800         Update for the Arguments1 change. Rename "arguments" to "argumentDecoder" and "reply" to
   26801         "replyEncoder".
   26802 
   26803 2010-10-06  Andras Becsi  <abecsi (a] webkit.org>
   26804 
   26805         Reviewed by Kenneth Rohde Christiansen.
   26806 
   26807         [Qt] Fix the build after API changes introduced in r69214.
   26808 
   26809         * UIProcess/API/cpp/qt/WKStringQt.cpp:
   26810         (WKStringCreateWithQString):
   26811         * UIProcess/API/cpp/qt/WKURLQt.cpp:
   26812         (WKURLCreateWithQUrl):
   26813 
   26814 2010-10-06  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   26815 
   26816         Unreviewed, rolling out r69210.
   26817         http://trac.webkit.org/changeset/69210
   26818         https://bugs.webkit.org/show_bug.cgi?id=47297
   26819 
   26820         This patch broke Windows (Requested by andersca on #webkit).
   26821 
   26822         * DerivedSources.make:
   26823         * DerivedSources.pro:
   26824         * Platform/CoreIPC/Arguments.h:
   26825         * Platform/CoreIPC/HandleMessage.h:
   26826         (CoreIPC::handleMessage):
   26827         * Scripts/webkit2/messages.py:
   26828         * Scripts/webkit2/messages_unittest.py:
   26829         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h: Added.
   26830         * Shared/StringPairVector.h: Removed.
   26831         * UIProcess/API/mac/PageClientImpl.h:
   26832         * UIProcess/API/mac/PageClientImpl.mm:
   26833         (WebKit::PageClientImpl::registerEditCommand):
   26834         * UIProcess/API/qt/qwkpage.cpp:
   26835         (QWKPagePrivate::registerEditCommand):
   26836         * UIProcess/API/qt/qwkpage_p.h:
   26837         * UIProcess/PageClient.h:
   26838         * UIProcess/WebEditCommandProxy.cpp:
   26839         (WebKit::WebEditCommandProxy::unapply):
   26840         (WebKit::WebEditCommandProxy::reapply):
   26841         * UIProcess/WebFormClient.cpp:
   26842         (WebKit::WebFormClient::willSubmitForm):
   26843         * UIProcess/WebFormClient.h:
   26844         * UIProcess/WebPageProxy.cpp:
   26845         (WebKit::WebPageProxy::didReceiveMessage):
   26846         (WebKit::WebPageProxy::didReceiveSyncMessage):
   26847         (WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
   26848         (WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame):
   26849         (WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
   26850         (WebKit::WebPageProxy::didCommitLoadForFrame):
   26851         (WebKit::WebPageProxy::didFinishDocumentLoadForFrame):
   26852         (WebKit::WebPageProxy::didFinishLoadForFrame):
   26853         (WebKit::WebPageProxy::didFailLoadForFrame):
   26854         (WebKit::WebPageProxy::didReceiveTitleForFrame):
   26855         (WebKit::WebPageProxy::didFirstLayoutForFrame):
   26856         (WebKit::WebPageProxy::didFirstVisuallyNonEmptyLayoutForFrame):
   26857         (WebKit::WebPageProxy::didRemoveFrameFromHierarchy):
   26858         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
   26859         (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
   26860         (WebKit::WebPageProxy::decidePolicyForMIMEType):
   26861         (WebKit::WebPageProxy::willSubmitForm):
   26862         (WebKit::WebPageProxy::createNewPage):
   26863         (WebKit::WebPageProxy::runJavaScriptAlert):
   26864         (WebKit::WebPageProxy::runJavaScriptConfirm):
   26865         (WebKit::WebPageProxy::runJavaScriptPrompt):
   26866         (WebKit::WebPageProxy::mouseDidMoveOverElement):
   26867         (WebKit::WebPageProxy::contentsSizeChanged):
   26868         (WebKit::WebPageProxy::addItemToBackForwardList):
   26869         (WebKit::WebPageProxy::goToItemInBackForwardList):
   26870         (WebKit::WebPageProxy::registerEditCommandForUndo):
   26871         (WebKit::WebPageProxy::registerEditCommandForRedo):
   26872         (WebKit::WebPageProxy::didReceiveEvent):
   26873         (WebKit::WebPageProxy::didChangeAcceleratedCompositing):
   26874         * UIProcess/WebPageProxy.h:
   26875         * UIProcess/WebPageProxy.messages.in: Removed.
   26876         * UIProcess/win/WebView.cpp:
   26877         (WebKit::WebView::registerEditCommand):
   26878         * UIProcess/win/WebView.h:
   26879         * WebKit2.pro:
   26880         * WebKit2.xcodeproj/project.pbxproj:
   26881         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   26882         (WebKit::WebChromeClient::setWindowRect):
   26883         (WebKit::WebChromeClient::takeFocus):
   26884         (WebKit::WebChromeClient::createWindow):
   26885         (WebKit::WebChromeClient::runJavaScriptAlert):
   26886         (WebKit::WebChromeClient::runJavaScriptConfirm):
   26887         (WebKit::WebChromeClient::runJavaScriptPrompt):
   26888         (WebKit::WebChromeClient::setStatusbarText):
   26889         (WebKit::WebChromeClient::contentsSizeChanged):
   26890         (WebKit::WebChromeClient::mouseDidMoveOverElement):
   26891         (WebKit::WebChromeClient::setToolTip):
   26892         (WebKit::WebChromeClient::setCursor):
   26893         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   26894         (WebKit::WebEditorClient::registerCommandForUndo):
   26895         (WebKit::WebEditorClient::clearUndoRedoOperations):
   26896         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   26897         (WebKit::WebFrameLoaderClient::detachedFromParent2):
   26898         (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
   26899         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
   26900         (WebKit::WebFrameLoaderClient::dispatchDidReceiveTitle):
   26901         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
   26902         (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
   26903         (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
   26904         (WebKit::WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
   26905         (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
   26906         (WebKit::WebFrameLoaderClient::dispatchDidFirstLayout):
   26907         (WebKit::WebFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
   26908         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
   26909         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
   26910         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
   26911         (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
   26912         (WebKit::WebFrameLoaderClient::postProgressStartedNotification):
   26913         (WebKit::WebFrameLoaderClient::postProgressEstimateChangedNotification):
   26914         (WebKit::WebFrameLoaderClient::postProgressFinishedNotification):
   26915         (WebKit::WebFrameLoaderClient::createFrame):
   26916         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   26917         (WebKit::WebBackForwardListProxy::addItem):
   26918         (WebKit::WebBackForwardListProxy::goToItem):
   26919         (WebKit::WebBackForwardListProxy::backItem):
   26920         (WebKit::WebBackForwardListProxy::currentItem):
   26921         (WebKit::WebBackForwardListProxy::forwardItem):
   26922         (WebKit::WebBackForwardListProxy::itemAtIndex):
   26923         (WebKit::WebBackForwardListProxy::backListCount):
   26924         (WebKit::WebBackForwardListProxy::forwardListCount):
   26925         * WebProcess/WebPage/WebPage.cpp:
   26926         (WebKit::WebPage::WebPage):
   26927         (WebKit::WebPage::changeAcceleratedCompositingMode):
   26928         (WebKit::WebPage::enterAcceleratedCompositingMode):
   26929         (WebKit::WebPage::sendClose):
   26930         (WebKit::WebPage::mouseEvent):
   26931         (WebKit::WebPage::wheelEvent):
   26932         (WebKit::WebPage::keyEvent):
   26933         (WebKit::WebPage::validateMenuItem):
   26934         (WebKit::WebPage::touchEvent):
   26935         (WebKit::WebPage::show):
   26936         (WebKit::WebPage::runJavaScriptInMainFrame):
   26937         (WebKit::WebPage::getRenderTreeExternalRepresentation):
   26938         (WebKit::WebPage::getSourceForFrame):
   26939         * win/WebKit2.vcproj:
   26940 
   26941 2010-10-06  Jessie Berlin  <jberlin (a] apple.com>
   26942 
   26943         Rubber-stamped by Dan Bernstein.
   26944 
   26945         WKSerializedScriptValue.h needs to be copied over into the WEBKITOUTPUTDIR on Windows.
   26946         https://bugs.webkit.org/show_bug.cgi?id=47287
   26947 
   26948         * win/WebKit2Generated.make:
   26949         Copy WKSerializedScriptValue.h into $(WEBKITOUTPUTDIR)\include\WebKit2.
   26950 
   26951 2010-10-06  Anders Carlsson  <andersca (a] apple.com>
   26952 
   26953         Reviewed by Sam Weinig.
   26954 
   26955         Rename toRef/toWK to toAPI/toImpl
   26956         https://bugs.webkit.org/show_bug.cgi?id=47281
   26957 
   26958         * Shared/API/c/WKArray.cpp:
   26959         * Shared/API/c/WKCertificateInfo.cpp:
   26960         * Shared/API/c/WKData.cpp:
   26961         * Shared/API/c/WKDictionary.cpp:
   26962         * Shared/API/c/WKError.cpp:
   26963         * Shared/API/c/WKMutableArray.cpp:
   26964         * Shared/API/c/WKMutableDictionary.cpp:
   26965         * Shared/API/c/WKNumber.cpp:
   26966         * Shared/API/c/WKSerializedScriptValue.cpp:
   26967         * Shared/API/c/WKSharedAPICast.h:
   26968         * Shared/API/c/WKString.cpp:
   26969         * Shared/API/c/WKType.cpp:
   26970         * Shared/API/c/WKURL.cpp:
   26971         * Shared/API/c/WKURLRequest.cpp:
   26972         * Shared/API/c/WKURLResponse.cpp:
   26973         * Shared/API/c/cf/WKStringCF.cpp:
   26974         * Shared/API/c/cf/WKURLCF.cpp:
   26975         * Shared/API/c/cf/WKURLRequestCF.cpp:
   26976         * Shared/API/c/cf/WKURLResponseCF.cpp:
   26977         * Shared/API/c/mac/WKCertificateInfoMac.mm:
   26978         * Shared/API/c/mac/WKURLRequestNS.mm:
   26979         * Shared/API/c/mac/WKURLResponseNS.mm:
   26980         * Shared/API/c/win/WKCertificateInfoWin.cpp:
   26981         * UIProcess/API/C/WKAPICast.h:
   26982         * UIProcess/API/C/WKBackForwardList.cpp:
   26983         * UIProcess/API/C/WKBackForwardListItem.cpp:
   26984         * UIProcess/API/C/WKContext.cpp:
   26985         * UIProcess/API/C/WKFormSubmissionListener.cpp:
   26986         * UIProcess/API/C/WKFrame.cpp:
   26987         * UIProcess/API/C/WKFramePolicyListener.cpp:
   26988         * UIProcess/API/C/WKNavigationData.cpp:
   26989         * UIProcess/API/C/WKPage.cpp:
   26990         * UIProcess/API/C/WKPageNamespace.cpp:
   26991         * UIProcess/API/C/WKPreferences.cpp:
   26992         * UIProcess/API/C/WKPreferencesPrivate.cpp:
   26993         * UIProcess/API/C/win/WKContextWin.cpp:
   26994         * UIProcess/API/C/win/WKView.cpp:
   26995         * UIProcess/API/cpp/qt/WKStringQt.cpp:
   26996         * UIProcess/API/cpp/qt/WKURLQt.cpp:
   26997         * UIProcess/API/mac/PageClientImpl.mm:
   26998         * UIProcess/API/mac/WKView.mm:
   26999         * UIProcess/API/qt/ClientImpl.cpp:
   27000         * UIProcess/API/qt/qwkpage.cpp:
   27001         * UIProcess/GenericCallback.h:
   27002         * UIProcess/WebContextInjectedBundleClient.cpp:
   27003         * UIProcess/WebFormClient.cpp:
   27004         * UIProcess/WebHistoryClient.cpp:
   27005         * UIProcess/WebLoaderClient.cpp:
   27006         * UIProcess/WebPolicyClient.cpp:
   27007         * UIProcess/WebUIClient.cpp:
   27008         * UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm:
   27009         * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm:
   27010         * UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp:
   27011         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   27012         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   27013         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   27014         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:
   27015         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
   27016         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   27017         * WebProcess/InjectedBundle/API/c/WKBundleRangeHandle.cpp:
   27018         * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.cpp:
   27019         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   27020         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
   27021         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
   27022         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   27023         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
   27024         * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp:
   27025         * WebProcess/InjectedBundle/qt/InjectedBundleQt.cpp:
   27026         * WebProcess/InjectedBundle/win/InjectedBundleWin.cpp:
   27027 
   27028 2010-10-06  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   27029 
   27030         Reviewed by Kenneth Rohde Christiansen.
   27031 
   27032         Renaming WebCore::ViewportConfiguration to WebCore::ViewportAttributes
   27033         https://bugs.webkit.org/show_bug.cgi?id=47268
   27034 
   27035         Renaming WebCore::ViewportConfiguration to WebCore::ViewportAttributes
   27036 
   27037         * UIProcess/API/qt/qwkpage.cpp:
   27038         (QWKPage::viewportConfigurationForSize):
   27039 
   27040 2010-10-06  Sam Weinig  <sam (a] webkit.org>
   27041 
   27042         Reviewed by Adam Roben.
   27043 
   27044         Generate the messages sent to the WebPageProxy
   27045         https://bugs.webkit.org/show_bug.cgi?id=47239
   27046 
   27047         * Platform/CoreIPC/Arguments.h:
   27048         Add additional typedefs.
   27049 
   27050         * Platform/CoreIPC/HandleMessage.h:
   27051         (CoreIPC::handleMessage):
   27052         Add more handleMessage implementations.
   27053 
   27054         * Scripts/webkit2/messages.py:
   27055         * Scripts/webkit2/messages_unittest.py:
   27056         Add headers for reply argument types.
   27057 
   27058         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h: Removed.
   27059 
   27060         * Shared/StringPairVector.h: Added.
   27061         This file is a hack to work around a deficiency in the generator
   27062         which can't deal with class templates with more than one argument.
   27063 
   27064         * UIProcess/API/mac/PageClientImpl.h:
   27065         * UIProcess/API/mac/PageClientImpl.mm:
   27066         * UIProcess/API/qt/qwkpage.cpp:
   27067         * UIProcess/API/qt/qwkpage_p.h:
   27068         * UIProcess/PageClient.h:
   27069         * UIProcess/WebEditCommandProxy.cpp:
   27070         * UIProcess/WebFormClient.cpp:
   27071         * UIProcess/WebFormClient.h:
   27072         * UIProcess/WebPageProxy.cpp:
   27073         * UIProcess/WebPageProxy.h:
   27074         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   27075         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   27076         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   27077         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   27078         * WebProcess/WebPage/WebPage.cpp:
   27079         Migrate to generated calls.
   27080 
   27081         * UIProcess/WebPageProxy.messages.in: Added.
   27082         New messages definitions file.
   27083 
   27084         * DerivedSources.make:
   27085         * DerivedSources.pro:
   27086         * win/WebKit2.vcproj:
   27087         * WebKit2.pro:
   27088         * WebKit2.xcodeproj/project.pbxproj:
   27089         Add new files.
   27090 
   27091 2010-10-05  Anders Carlsson  <andersca (a] apple.com>
   27092 
   27093         Reviewed by Sam Weinig.
   27094 
   27095         Send null events and mouse events
   27096         https://bugs.webkit.org/show_bug.cgi?id=47223
   27097 
   27098         * WebKit2.xcodeproj/project.pbxproj:
   27099         Add "-Wno-deprecated-declarations" to the COMPILER_FLAGS for NetscapePluginMac.mm since
   27100         we call Button() which is deprecated.
   27101 
   27102         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   27103         (WebKit::NetscapePlugin::NetscapePlugin):
   27104         Initialize the null event timer.
   27105 
   27106         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   27107         (WebKit::NetscapePlugin::platformPostInitialize):
   27108         Start the null event timer.
   27109 
   27110         (WebKit::NetscapePlugin::platformDestroy):
   27111         Stop the null event timer.
   27112 
   27113         (WebKit::NetscapePlugin::platformHandleMouseEvent):
   27114         Initialize the event record and call NPP_HandleEvent.
   27115 
   27116         (WebKit::NetscapePlugin::nullEventTimerFired):
   27117         Send a null event with the current mouse position.
   27118 
   27119 2010-10-05  Anders Carlsson  <andersca (a] apple.com>
   27120 
   27121         Reviewed by Sam Weinig.
   27122 
   27123         Start sending Carbon plug-in events in th Carbon event model
   27124         https://bugs.webkit.org/show_bug.cgi?id=47209
   27125         <rdar://problem/8515677>
   27126 
   27127         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   27128         (WebKit::NetscapePlugin::NetscapePlugin):
   27129         Initialize the NP_CGContext struct.
   27130 
   27131         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   27132         (WebKit::NetscapePlugin::platformPostInitialize):
   27133         Create a fake Carbon window.
   27134 
   27135         (WebKit::NetscapePlugin::platformDestroy):
   27136         Destroy the Carbon window.
   27137 
   27138         (WebKit::modifiersForEvent):
   27139         Given a WebEvent, return the EventRecord modifiers.
   27140 
   27141         (WebKit::NetscapePlugin::platformPaint):
   27142         (WebKit::NetscapePlugin::platformHandleMouseEvent):
   27143         (WebKit::NetscapePlugin::platformHandleWheelEvent):
   27144         (WebKit::NetscapePlugin::platformHandleMouseEnterEvent):
   27145         (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent):
   27146         (WebKit::NetscapePlugin::platformSetFocus):
   27147         (WebKit::NetscapePlugin::windowFocusChanged):
   27148         Create Carbon EventRecords and call NPP_HandleEvent.
   27149 
   27150 2010-10-05  Sam Weinig  <sam (a] webkit.org>
   27151 
   27152         Reviewed by Mark Rowe.
   27153 
   27154         Add MIMEType accessor to WKFrame
   27155         <rdar://problem/8347683>
   27156         https://bugs.webkit.org/show_bug.cgi?id=47138
   27157 
   27158         Tests: WebKit2/FrameMIMETypePNG
   27159                WebKit2/FrameMIMETypeHTML
   27160 
   27161         * UIProcess/API/C/WKFrame.cpp:
   27162         (WKFrameCopyMIMEType):
   27163         * UIProcess/API/C/WKFrame.h:
   27164         * UIProcess/WebFrameProxy.h:
   27165         (WebKit::WebFrameProxy::setMIMEType):
   27166         (WebKit::WebFrameProxy::mimeType):
   27167         * UIProcess/WebPageProxy.cpp:
   27168         (WebKit::WebPageProxy::didReceiveMessage):
   27169         (WebKit::WebPageProxy::didCommitLoadForFrame):
   27170         * UIProcess/WebPageProxy.h:
   27171         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   27172         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
   27173 
   27174 2010-10-05  Kimmo Kinnunen  <kimmo.t.kinnunen (a] nokia.com>
   27175 
   27176         Reviewed by Kenneth Rohde Christiansen.
   27177 
   27178         Implement API call for setting custom user agent
   27179         (QWKPage::setCustomUserAgent)
   27180 
   27181         [Qt] Ability to set custom userAgent for WebKit2/WebKit
   27182         https://bugs.webkit.org/show_bug.cgi?id=44265
   27183 
   27184         * UIProcess/API/qt/qwkpage.cpp:
   27185         (QWKPage::setCustomUserAgent): Added.
   27186         * UIProcess/API/qt/qwkpage.h: Add setCustomUserAgent.
   27187 
   27188 2010-10-05  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   27189 
   27190         Unreviewed, rolling out r69103.
   27191         http://trac.webkit.org/changeset/69103
   27192         https://bugs.webkit.org/show_bug.cgi?id=47177
   27193 
   27194         Breaking Windows and Mac build. (Requested by lca on #webkit).
   27195 
   27196         * UIProcess/API/C/WKNativeEvent.h:
   27197         * UIProcess/API/qt/qwkpage.cpp:
   27198         * UIProcess/API/qt/qwkpage.h:
   27199         * WebKit2.pri:
   27200 
   27201 2010-10-05  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   27202 
   27203         Reviewed by Antti Koivisto.
   27204 
   27205         [Qt] Webkit2 MacOS build fix
   27206         https://bugs.webkit.org/show_bug.cgi?id=47167
   27207 
   27208         Qt WebKit2 MacOS build fix.
   27209 
   27210         * UIProcess/API/C/WKNativeEvent.h:
   27211         * UIProcess/API/qt/qwkpage.cpp:
   27212         * UIProcess/API/qt/qwkpage.h:
   27213         * WebKit2.pri:
   27214 
   27215 2010-10-04  Mark Rowe  <mrowe (a] apple.com>
   27216 
   27217         Reviewed by Sam Weinig.
   27218 
   27219         Fix the build when sandboxing is enabled.
   27220 
   27221         * UIProcess/WebContext.cpp:
   27222         (WebKit::WebContext::ensureWebProcess):
   27223         * UIProcess/WebProcessProxy.cpp:
   27224 
   27225 2010-10-04  Andras Becsi  <abecsi (a] webkit.org>
   27226 
   27227         Reviewed Csaba Osztrogonc.
   27228 
   27229         [Qt] Build fix after r69037.
   27230         Also remove dummy setUpAcceleratedCompositing() from the source file,
   27231         since it has been removed from the header.
   27232 
   27233         * UIProcess/WebProcessProxy.cpp:
   27234 
   27235 2010-10-04  Andras Becsi  <abecsi (a] webkit.org>
   27236 
   27237         Rubber-stamped by Csaba Osztrogonc.
   27238 
   27239         [Qt] Fix the WebKit2 build after r69029.
   27240 
   27241         * DerivedSources.pro:
   27242 
   27243 2010-10-04  Sam Weinig  <sam (a] webkit.org>
   27244 
   27245         Reviewed by Anders Carlsson.
   27246 
   27247         Change WebProcess initialization to be done with an
   27248         auxiliary struct.
   27249 
   27250         * Platform/CoreIPC/mac/MachPort.h:
   27251         * Shared/WebProcessCreationParameters.cpp: Added.
   27252         (WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
   27253         (WebKit::WebProcessCreationParameters::encode):
   27254         (WebKit::WebProcessCreationParameters::decode):
   27255         * Shared/WebProcessCreationParameters.h: Added.
   27256         * UIProcess/WebContext.cpp:
   27257         (WebKit::WebContext::ensureWebProcess):
   27258         * UIProcess/WebContext.h:
   27259         * UIProcess/WebProcessProxy.cpp:
   27260         (WebKit::WebProcessProxy::WebProcessProxy):
   27261         * UIProcess/WebProcessProxy.h:
   27262         * UIProcess/mac/WebContextMac.mm:
   27263         (WebKit::WebContext::platformInitializeWebProcess):
   27264         * UIProcess/mac/WebProcessProxyMac.mm: Removed.
   27265         * UIProcess/qt/WebContextQt.cpp:
   27266         (WebKit::WebContext::applicationCacheDirectory):
   27267         (WebKit::WebContext::platformInitializeWebProcess):
   27268         * UIProcess/win/WebContextWin.cpp:
   27269         (WebKit::WebContext::platformInitializeWebProcess):
   27270         * WebKit2.pro:
   27271         * WebKit2.xcodeproj/project.pbxproj:
   27272         * WebProcess/WebProcess.cpp:
   27273         (WebKit::WebProcess::initializeWebProcess):
   27274         * WebProcess/WebProcess.h:
   27275         * WebProcess/WebProcess.messages.in:
   27276         * win/WebKit2.vcproj:
   27277 
   27278 2010-10-04  Brent Fulgham  <bfulgham (a] webkit.org>
   27279 
   27280         Unreviewed build fixes after r68260 and r68686.
   27281 
   27282         * Platform/CoreIPC/DataReference.h: Add include directive for
   27283         <inttypes.h>, needed for WinCairo build.
   27284         * Shared/win/PlatformCertificateInfo.cpp:
   27285         (WebKit::PlatformCertificateInfo::PlatformCertificateInfo):
   27286         Conditionalize logic specific to WebKitSystemInterface and
   27287         add a stub implementation for WinCairo.
   27288 
   27289 2010-10-04  Sam Weinig  <sam (a] webkit.org>
   27290 
   27291         Reviewed by Adam Roben.
   27292 
   27293         Generate messages sent to the WebProcess class.
   27294         https://bugs.webkit.org/show_bug.cgi?id=47097
   27295 
   27296         * DerivedSources.make:
   27297         Add new file to generate and new directory to search.
   27298 
   27299         * Scripts/webkit2/messages.py:
   27300         (forward_declarations_and_headers): Special case class templates.
   27301         (headers_for_type): Special case Vector.
   27302         * Scripts/webkit2/messages_unittest.py:
   27303         Make this script work for passing a templated type.
   27304 
   27305         * Shared/CoreIPCSupport/WebProcessMessageKinds.h: Removed.
   27306 
   27307         * UIProcess/VisitedLinkProvider.cpp:
   27308         (WebKit::VisitedLinkProvider::pendingVisitedLinksTimerFired):
   27309         * UIProcess/WebContext.cpp:
   27310         (WebKit::WebContext::initializeHistoryClient):
   27311         (WebKit::WebContext::ensureWebProcess):
   27312         (WebKit::WebContext::registerURLSchemeAsEmptyDocument):
   27313         (WebKit::WebContext::setCacheModel):
   27314         * UIProcess/WebPageProxy.cpp:
   27315         (WebKit::WebPageProxy::initializeWebPage):
   27316         (WebKit::WebPageProxy::reinitializeWebPage):
   27317         * UIProcess/WebProcessProxy.cpp:
   27318         (WebKit::WebProcessProxy::WebProcessProxy): Always pass both
   27319         the bundle path and a key, even if the key is null, which it will be for
   27320         all non-mac builds for now.
   27321         * UIProcess/mac/WebProcessProxyMac.mm:
   27322         (WebKit::WebProcessProxy::setUpAcceleratedCompositing):
   27323         * UIProcess/win/WebContextWin.cpp:
   27324         (WebKit::WebContext::setShouldPaintNativeControls):
   27325         (WebKit::WebContext::platformSetUpWebProcess):
   27326         Use the new syntax for sending the messages.
   27327 
   27328         * WebProcess/WebProcess.cpp:
   27329         (WebKit::WebProcess::setShouldTrackVisitedLinks):
   27330         (WebKit::WebProcess::setCacheModel):
   27331         (WebKit::WebProcess::setupAcceleratedCompositingPort):
   27332         (WebKit::WebProcess::setShouldPaintNativeControls):
   27333         (WebKit::WebProcess::didReceiveMessage):
   27334         * WebProcess/WebProcess.h:
   27335         Convert to using generated didReceiveWebProcessMessage.
   27336 
   27337         * WebProcess/WebProcess.messages.in: Added.
   27338 
   27339         * WebKit2.pro:
   27340         * WebKit2.xcodeproj/project.pbxproj:
   27341         * win/WebKit2.vcproj:
   27342         Update projects.
   27343 
   27344 2010-10-04  Sam Weinig  <sam (a] webkit.org>
   27345 
   27346         Fix the Mac build.
   27347 
   27348         * WebProcess/mac/WebProcessMac.mm:
   27349 
   27350 2010-10-04  Sam Weinig  <sam (a] webkit.org>
   27351 
   27352         Reviewed by Anders Carlsson.
   27353 
   27354         Add ability to set the CacheModel in Webkit2
   27355         https://bugs.webkit.org/show_bug.cgi?id=47066
   27356 
   27357         Add WKContext function to set the cache model for the context.
   27358 
   27359         * Shared/CacheModel.h: Added.
   27360         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
   27361         * UIProcess/API/C/WKAPICast.h:
   27362         (WebKit::toCacheModel):
   27363         (WebKit::toRef):
   27364         * UIProcess/API/C/WKContext.cpp:
   27365         (WKContextSetCacheModel):
   27366         (WKContextGetCacheModel):
   27367         * UIProcess/API/C/WKContext.h:
   27368         * UIProcess/WebContext.cpp:
   27369         (WebKit::WebContext::WebContext):
   27370         (WebKit::WebContext::ensureWebProcess):
   27371         (WebKit::WebContext::setCacheModel):
   27372         * UIProcess/WebContext.h:
   27373         (WebKit::WebContext::cacheModel):
   27374         * WebKit2.pro:
   27375         * WebKit2.xcodeproj/project.pbxproj:
   27376         * WebProcess/WebProcess.cpp:
   27377         (WebKit::WebProcess::WebProcess):
   27378         (WebKit::WebProcess::setCacheModel):
   27379         (WebKit::WebProcess::didReceiveMessage):
   27380         * WebProcess/WebProcess.h:
   27381         * WebProcess/mac/WebProcessMac.mm: Added.
   27382         (WebKit::memorySize):
   27383         (WebKit::volumeFreeSize):
   27384         (WebKit::WebProcess::platformSetCacheModel):
   27385         * WebProcess/qt/WebProcessQt.cpp: Added.
   27386         (WebKit::WebProcess::platformSetCacheModel):
   27387         * WebProcess/win/WebProcessWin.cpp: Added.
   27388         (WebKit::WebProcess::platformSetCacheModel):
   27389         * win/WebKit2.vcproj:
   27390 
   27391 2010-10-03  Anders Carlsson  <andersca (a] apple.com>
   27392 
   27393         Reviewed by Sam Weinig.
   27394 
   27395         Implement newly added Plugin/PluginController member functions for out of process plug-ins
   27396         https://bugs.webkit.org/show_bug.cgi?id=47065
   27397         <rdar://problem/8507194>
   27398 
   27399         * Platform/CoreIPC/Arguments.h:
   27400         Add typedefs.
   27401 
   27402         * Platform/CoreIPC/HandleMessage.h:
   27403         (CoreIPC::handleMessage):
   27404         Add new handleMessage overload.
   27405 
   27406         * PluginProcess/PluginControllerProxy.cpp:
   27407         (WebKit::PluginControllerProxy::create):
   27408         Add an isPrivateBrowsingEnabled boolean.
   27409         
   27410         (WebKit::PluginControllerProxy::PluginControllerProxy):
   27411         Add an isPrivateBrowsingEnabled boolean.
   27412 
   27413         (WebKit::PluginControllerProxy::proxiesForURL):
   27414         (WebKit::PluginControllerProxy::cookiesForURL):
   27415         (WebKit::PluginControllerProxy::setCookiesForURL):
   27416         Send messages to the web process.
   27417 
   27418         (WebKit::PluginControllerProxy::isPrivateBrowsingEnabled):
   27419         Return whether private browsing is enabled or not.
   27420 
   27421         (WebKit::PluginControllerProxy::handleKeyboardEvent):
   27422         Call Plugin::handleKeyboardEvent.
   27423 
   27424         (WebKit::PluginControllerProxy::privateBrowsingStateChanged):
   27425         Call Plugin::privateBrowsingStateChanged.
   27426 
   27427         * PluginProcess/PluginControllerProxy.messages.in:
   27428         Add new messages.
   27429 
   27430         * PluginProcess/WebProcessConnection.cpp:
   27431         (WebKit::WebProcessConnection::createPlugin):
   27432         Pass the isPrivateBrowsingEnabled flag.
   27433 
   27434         * PluginProcess/WebProcessConnection.h:
   27435         * PluginProcess/WebProcessConnection.messages.in:
   27436         Update CreatePlugin message parameters.
   27437 
   27438         * WebProcess/Plugins/PluginProcessConnection.cpp:
   27439         (WebKit::PluginProcessConnection::didReceiveMessage):
   27440         (WebKit::PluginProcessConnection::didReceiveSyncMessage):
   27441         It's OK for a plug-in to not get a sync message.
   27442 
   27443         * WebProcess/Plugins/PluginProcessConnection.h:
   27444         * WebProcess/Plugins/PluginProxy.cpp:
   27445         (WebKit::PluginProxy::handleKeyboardEvent):
   27446         (WebKit::PluginProxy::privateBrowsingStateChanged):
   27447         Send messages.
   27448 
   27449         (WebKit::PluginProxy::proxiesForURL):
   27450         (WebKit::PluginProxy::cookiesForURL):
   27451         (WebKit::PluginProxy::setCookiesForURL):
   27452         Call the plug-in controller.
   27453 
   27454         * WebProcess/Plugins/PluginProxy.messages.in:
   27455         Add new messages.
   27456 
   27457 2010-10-03  Anders Carlsson  <andersca (a] apple.com>
   27458 
   27459         Reviewed by Sam Weinig.
   27460 
   27461         Send keyboard events to plug-ins
   27462         https://bugs.webkit.org/show_bug.cgi?id=47064
   27463         <rdar://problem/8507148>
   27464 
   27465         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   27466         (WebKit::NetscapePlugin::handleKeyboardEvent):
   27467         Call platformHandleKeyboardEvent.
   27468 
   27469         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   27470         (WebKit::modifierFlags):
   27471         Return the modifier flags given a WebKeyboardEvent.
   27472 
   27473         (WebKit::initializeKeyboardEvent):
   27474         Initialize an NPCocoaEvent from a WebKeyboardEvent.
   27475 
   27476         (WebKit::NetscapePlugin::platformHandleKeyboardEvent):
   27477         Initialize the event and dispatch it using NPP_HandleEvent.
   27478 
   27479         * WebProcess/Plugins/Netscape/qt/NetscapePluginQt.cpp:
   27480         (WebKit::NetscapePlugin::platformHandleKeyboardEvent):
   27481         Add stub.
   27482 
   27483         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
   27484         (WebKit::NetscapePlugin::platformHandleKeyboardEvent):
   27485         Add stub.
   27486         
   27487         * WebProcess/Plugins/Plugin.h:
   27488         Add handleKeyboardEvent.
   27489 
   27490         * WebProcess/Plugins/PluginView.cpp:
   27491         (WebKit::PluginView::handleEvent):
   27492         Call Plugin::handleKeyboardEvent if we see a keydown or keyup event.
   27493 
   27494 2010-10-01  Mark Rowe  <mrowe (a] apple.com>
   27495 
   27496         Build fix.
   27497 
   27498         Clear the executable bit from a number of source files.
   27499 
   27500         * WebProcess/WebCoreSupport/win/WebFrameNetworkingContext.h:
   27501 
   27502 2010-10-01  Anders Carlsson  <andersca (a] apple.com>
   27503 
   27504         Reviewed by Sam Weinig.
   27505 
   27506         Plug-ins should have access to the private browsing state.
   27507         https://bugs.webkit.org/show_bug.cgi?id=47031
   27508         <rdar://problem/8505405>
   27509     
   27510         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   27511         (WebKit::NPN_GetValue):
   27512         Handle NPNVprivateModeBool.
   27513 
   27514         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   27515         (WebKit::NetscapePlugin::isPrivateBrowsingEnabled):
   27516         Call PluginController::isPrivateBrowsingEnabled.
   27517 
   27518         (WebKit::NetscapePlugin::NPP_SetValue):
   27519         Add NPP_SetValue wrapper.
   27520 
   27521         (WebKit::NetscapePlugin::privateBrowsingStateChanged):
   27522         Call NPP_SetValue with the updated state.
   27523 
   27524         * WebProcess/Plugins/Plugin.h:
   27525         Add privateBrowsingStateChanged pure virtual member function.
   27526 
   27527         * WebProcess/Plugins/PluginController.h:
   27528         Add isPrivateBrowsingEnabled pure virtual member function.
   27529 
   27530         * WebProcess/Plugins/PluginView.cpp:
   27531         (WebKit::PluginView::privateBrowsingStateChanged):
   27532         Call Plugin::privateBrowsingStateChanged.
   27533 
   27534 2010-10-01  Sam Weinig  <sam (a] webkit.org>
   27535 
   27536         Reviewed by Anders Carlsson.
   27537 
   27538         Add SPI to convert a WKStringRef to a JSStringRef and vice-versa.
   27539 
   27540         API Test: WebKit2/WKStringJSString
   27541 
   27542         * Shared/API/c/WKString.cpp:
   27543         (WKStringCreateWithJSString):
   27544         (WKStringCopyJSString):
   27545         * Shared/API/c/WKStringPrivate.h: Added.
   27546         * Shared/WebString.h:
   27547         (WebKit::WebString::create):
   27548         (WebKit::WebString::createJSString):
   27549         * WebKit2.pro:
   27550         * WebKit2.xcodeproj/project.pbxproj:
   27551         * win/WebKit2.vcproj:
   27552         * win/WebKit2Generated.make:
   27553 
   27554 2010-10-01  Anders Carlsson  <andersca (a] apple.com>
   27555 
   27556         Reviewed by Sam Weinig.
   27557 
   27558         Implement proxiesForURL, cookiesForURL and setCookiesForURL
   27559         https://bugs.webkit.org/show_bug.cgi?id=47029
   27560 
   27561         * WebProcess/Plugins/PluginView.cpp:
   27562         (WebKit::PluginView::proxiesForURL):
   27563         (WebKit::PluginView::cookiesForURL):
   27564         (WebKit::PluginView::setCookiesForURL):
   27565 
   27566 2010-10-01  Sam Weinig  <sam (a] webkit.org>
   27567 
   27568         Reviewed by Kenneth Rohde Christiansen.
   27569 
   27570         Add additional WKString API
   27571         https://bugs.webkit.org/show_bug.cgi?id=46958
   27572 
   27573         API Test: WebKit2/WKString
   27574 
   27575         * Shared/API/c/WKString.cpp:
   27576         (WKStringCreateWithUTF8CString):
   27577         (WKStringGetMaximumUTF8CStringSize):
   27578         (WKStringGetUTF8CString):
   27579         (WKStringIsEqual):
   27580         (WKStringIsEqualToUTF8CString):
   27581         * Shared/API/c/WKString.h:
   27582         * Shared/WebString.h:
   27583         (WebKit::WebString::createFromUTF8String):
   27584         (WebKit::WebString::maximumUTF8CStringSize):
   27585         (WebKit::WebString::getUTF8CString):
   27586         (WebKit::WebString::equal):
   27587         (WebKit::WebString::equalToUTF8String):
   27588 
   27589 2010-10-01  Anders Carlsson  <andersca (a] apple.com>
   27590 
   27591         Reviewed by Dan Bernstein.
   27592 
   27593         Implement NPN_GetValueForURL/NPN_SetValueForURL and stub out PluginController functions
   27594         https://bugs.webkit.org/show_bug.cgi?id=46992
   27595 
   27596         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   27597         (WebKit::copyCString):
   27598         Helper function for allocating a string using NPN_MemAlloc.
   27599 
   27600         (WebKit::NPN_GetValueForURL):
   27601         Ask the plug-in for either the proxy or the cookies given an URL.
   27602 
   27603         (WebKit::NPN_SetValueForURL):
   27604         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   27605         Tell the plug-in to set the cookies for the given URL.
   27606 
   27607         (WebKit::NetscapePlugin::proxiesForURL):
   27608         (WebKit::NetscapePlugin::cookiesForURL):
   27609         (WebKit::NetscapePlugin::setCookiesForURL):
   27610         Call the corresponding PluginController functions.
   27611 
   27612         * WebProcess/Plugins/PluginController.h:
   27613         Add new pure virtual member functions.
   27614 
   27615         * WebProcess/Plugins/PluginView.cpp:
   27616         (WebKit::PluginView::proxiesForURL):
   27617         (WebKit::PluginView::cookiesForURL):
   27618         (WebKit::PluginView::setCookiesForURL):
   27619         Add stubbed out implementations of the new PluginController functions.
   27620 
   27621         * WebProcess/Plugins/PluginView.h:
   27622 
   27623 2010-10-01  Adam Roben  <aroben (a] apple.com>
   27624 
   27625         Implement NPN_GetValue(NPNVnetscapeWindow)
   27626 
   27627         Fixes <http://webkit.org/b/46726> <rdar://problem/8486319>
   27628         Right-clicking on windowless Flash plugin in WebKit2 makes a context
   27629         menu appear in the bottom-right corner of the screen
   27630 
   27631         Test: platform/win/plugins/get-value-netscape-window.html
   27632 
   27633         Reviewed by Anders Carlsson.
   27634 
   27635         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   27636         (WebKit::NPN_GetValue): Added case for NPNVnetscapeWindow that calls
   27637         through to NetscapePlugin::containingWindow.
   27638 
   27639         * WebProcess/Plugins/Netscape/NetscapePlugin.h: Added containingWindow
   27640         on Windows.
   27641 
   27642         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
   27643         (WebKit::NetscapePlugin::containingWindow): Added. Calls through to
   27644         the PluginController.
   27645         (WebKit::NetscapePlugin::platformPostInitialize): Changed to use
   27646         containingWindow.
   27647 
   27648 2010-09-30  Simon Fraser  <simon.fraser (a] apple.com>
   27649 
   27650         Reviewed by Darin Adler.
   27651 
   27652         Background doesn't draw when entering accelerated compositing
   27653         https://bugs.webkit.org/show_bug.cgi?id=45848
   27654         
   27655         LayerBackedDrawingArea::setSize() is normally called in response
   27656         to a message from the UI process, so this can come some time after
   27657         LayerBackedDrawingArea creation. Depending on the timing, we could
   27658         end up being at size 0x0 for the first invalidate and paint, resulting
   27659         in missing content.
   27660         
   27661         The fix is to size the backing layer on creation, using the WebView's size.
   27662         
   27663         Also changed various calls to syncCompositingStateForThisLayerOnly()
   27664         to do lazy updates via scheduleCompositingLayerSync().
   27665         
   27666         Also add the fix for https://bugs.webkit.org/show_bug.cgi?id=46226 (r68028)
   27667         to the WebKit2 code, in scheduleUpdateLayoutRunLoopObserver().
   27668 
   27669         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   27670         (WebKit::LayerBackedDrawingArea::LayerBackedDrawingArea):
   27671         (WebKit::LayerBackedDrawingArea::setNeedsDisplay):
   27672         (WebKit::LayerBackedDrawingArea::setSize):
   27673         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   27674         (WebKit::LayerBackedDrawingArea::platformInit):
   27675         (WebKit::LayerBackedDrawingArea::attachCompositingContext):
   27676         (WebKit::LayerBackedDrawingArea::detachCompositingContext):
   27677         (WebKit::LayerBackedDrawingArea::setRootCompositingLayer):
   27678         (WebKit::LayerBackedDrawingArea::syncCompositingLayers):
   27679         (WebKit::LayerBackedDrawingArea::scheduleUpdateLayoutRunLoopObserver):
   27680 
   27681 2010-09-29  Jon Honeycutt  <jhoneycutt (a] apple.com>
   27682 
   27683         WebKit2 on Windows should use Windows fonts for the various standard
   27684         font families
   27685         https://bugs.webkit.org/show_bug.cgi?id=43499
   27686         <rdar://problem/8272758>
   27687 
   27688         Reviewed by Adam Roben.
   27689 
   27690         * Shared/WebPreferencesStore.cpp:
   27691         (WebKit::WebPreferencesStore::WebPreferencesStore):
   27692         Use Windows fonts on Windows.
   27693 
   27694 2010-09-30  Brady Eidson  <beidson (a] apple.com>
   27695 
   27696         Reviewed by Sam Weinig.
   27697 
   27698         https://bugs.webkit.org/show_bug.cgi?id=46774 - Add WKStringIsEqual API
   27699 
   27700         * Shared/API/c/WKString.cpp:
   27701         (WKStringIsEqual):
   27702         * Shared/API/c/WKString.h:
   27703 
   27704 2010-09-30  Anders Carlsson  <andersca (a] apple.com>
   27705 
   27706         Reviewed by Adam Roben.
   27707 
   27708         Forward declare structs with 'struct' in the message headers
   27709         https://bugs.webkit.org/show_bug.cgi?id=46925
   27710         <rdar://problem/8497940>
   27711 
   27712         * Scripts/webkit2/messages.py:
   27713         (struct_or_class): New function which given a type and a namespace returns the correct
   27714         forward declaration syntax (struct or class).
   27715 
   27716         * Scripts/webkit2/messages_unittest.py:
   27717         Update expected results.
   27718 
   27719 2010-09-30  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>
   27720 
   27721         Reviewed by Antti Koivisto.
   27722 
   27723         Original patch by Zalan Bujtas.
   27724 
   27725         The m_readBuffer might be smaller than the incoming message size and
   27726         thus result in memory corruption. Do a similar fix as the win port,
   27727         resizing the m_readBuffer to have room for the message.
   27728 
   27729         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   27730         (CoreIPC::Connection::readyReadHandler):
   27731 
   27732 2010-09-29  Anders Carlsson  <andersca (a] apple.com>
   27733 
   27734         Reviewed by Simon Fraser.
   27735 
   27736         Calling Connection::send/sendSync from Connection::Client::didClose should always fail
   27737         https://bugs.webkit.org/show_bug.cgi?id=46859
   27738         <rdar://problem/8212583>
   27739 
   27740         * Platform/CoreIPC/Connection.cpp:
   27741         (CoreIPC::Connection::dispatchConnectionDidClose):
   27742 
   27743 2010-09-29  Simon Fraser  <simon.fraser (a] apple.com>
   27744 
   27745         Reviewed by Anders Carlsson.
   27746 
   27747         Assertion then crash closing WebKit2 window with accelerated compositing in
   27748         https://bugs.webkit.org/show_bug.cgi?id=46857
   27749         
   27750         Fix two issues when closing a WebKit2 window using accelerated
   27751         compositing.
   27752         
   27753         The first is that the response to the sync DidChangeAcceleratedCompositing message
   27754         sent by changeAcceleratedCompositingMode() may be empty, because the corresponding
   27755         page may have been destroyed already in the UI process. In that case newDrawingAreaInfo
   27756         is not filled in, so we get a DrawingArea::Type of None. Don't attempt to make a new
   27757         drawing area in that case.
   27758         
   27759         We then have to null-check the drawing area in WebPage::didReceiveMessage(),
   27760         in the case where the UI process is calling back with a SuspendPainting message,
   27761         before our page has gone away.
   27762         
   27763         * WebProcess/WebPage/WebPage.cpp:
   27764         (WebKit::WebPage::changeAcceleratedCompositingMode):
   27765         (WebKit::WebPage::didReceiveMessage):
   27766 
   27767 2010-09-29  Anders Carlsson  <andersca (a] apple.com>
   27768 
   27769         Reviewed by Sam Weinig.
   27770 
   27771         Implement more of PluginProxy and PLuginControllerProxy.
   27772 
   27773         * Platform/CoreIPC/ArgumentDecoder.cpp:
   27774         (CoreIPC::ArgumentDecoder::decodeBytes):
   27775         * Platform/CoreIPC/ArgumentDecoder.h:
   27776         Add new overload that takes a DataReference. Wrap the debug function in #ifndef NDEBUG.
   27777 
   27778         * Platform/CoreIPC/ArgumentEncoder.cpp:
   27779         * Platform/CoreIPC/ArgumentEncoder.h:
   27780         Wrap the debug function in #ifndef NDEBUG.
   27781 
   27782         * Platform/CoreIPC/Arguments.h:
   27783         Add new typedefs.
   27784         
   27785         * Platform/CoreIPC/DataReference.cpp:
   27786         * Platform/CoreIPC/DataReference.h:
   27787         Add a DataReference class.
   27788     
   27789         * Platform/CoreIPC/HandleMessage.h:
   27790         (CoreIPC::handleMessage):
   27791         Add new overload.
   27792 
   27793         * PluginProcess/PluginControllerProxy.cpp:
   27794         (WebKit::PluginControllerProxy::didEvaluateJavaScript):
   27795         (WebKit::PluginControllerProxy::streamDidReceiveResponse):
   27796         (WebKit::PluginControllerProxy::streamDidReceiveData):
   27797         (WebKit::PluginControllerProxy::streamDidFinishLoading):
   27798         (WebKit::PluginControllerProxy::streamDidFail):
   27799         call Plugin member functions.
   27800 
   27801         * PluginProcess/PluginControllerProxy.messages.in:
   27802         Add new messages.
   27803         
   27804         * WebKit2.pro:
   27805         * WebKit2.xcodeproj/project.pbxproj:
   27806         * win/WebKit2.vcproj:
   27807         Add DataReference.cpp and DataReference.h
   27808 
   27809         * WebProcess/Plugins/PluginProxy.cpp:
   27810         (WebKit::PluginProxy::didEvaluateJavaScript):
   27811         (WebKit::PluginProxy::streamDidReceiveResponse):
   27812         (WebKit::PluginProxy::streamDidReceiveData):
   27813         (WebKit::PluginProxy::streamDidFinishLoading):
   27814         (WebKit::PluginProxy::streamDidFail):
   27815         Send messages.
   27816 
   27817 2010-09-29  Anders Carlsson  <andersca (a] apple.com>
   27818 
   27819         Update expected results.
   27820 
   27821         * Scripts/webkit2/messages_unittest.py:
   27822 
   27823 2010-09-29  Anders Carlsson  <andersca (a] apple.com>
   27824 
   27825         Reviewed by Sam Weinig.
   27826 
   27827         Implement LoadURL
   27828         https://bugs.webkit.org/show_bug.cgi?id=46826
   27829 
   27830         * Platform/CoreIPC/ArgumentCoders.h:
   27831         Move String argument coder here from WebCoreArgumentCoders.h. Add
   27832         argument coder for AtomicString.
   27833 
   27834         * Platform/CoreIPC/Arguments.h:
   27835         Add typedefs for Arguments7.
   27836 
   27837         * Platform/CoreIPC/HandleMessage.h:
   27838         (CoreIPC::handleMessage):
   27839         Add handleMessage overload that takes 7 parameters.
   27840 
   27841         * PluginProcess/PluginControllerProxy.cpp:
   27842         (WebKit::PluginControllerProxy::loadURL):
   27843         Send the LoadURL message.
   27844 
   27845         * Scripts/webkit2/messages.py:
   27846         (parse_parameter_string): Use rsplit in case the type name contains spaces.
   27847         (argument_coder_headers_for_type): Special case Vector.
   27848         
   27849         * Scripts/webkit2/messages_unittest.py:
   27850         Update results.
   27851 
   27852         * Shared/WebCoreArgumentCoders.h:
   27853         Add argument coder for HTTPHeaderMap.
   27854 
   27855         * WebProcess/Plugins/PluginProxy.cpp:
   27856         (WebKit::PluginProxy::loadURL):
   27857         Ask the plug-in controller to load the URL.
   27858 
   27859         * WebProcess/Plugins/PluginProxy.messages.in:
   27860         Add LoadURL message.
   27861 
   27862 2010-09-29  Anders Carlsson  <andersca (a] apple.com>
   27863 
   27864         Reviewed by Sam Weinig.
   27865 
   27866         Handle getting the user agent in the plug-in process
   27867         https://bugs.webkit.org/show_bug.cgi?id=46819
   27868 
   27869         * Platform/CoreIPC/HandleMessage.h:
   27870         (CoreIPC::handleMessage):
   27871         Add new handleMessage overload.
   27872 
   27873         * PluginProcess/PluginControllerProxy.cpp:
   27874         (WebKit::PluginControllerProxy::create):
   27875         (WebKit::PluginControllerProxy::PluginControllerProxy):
   27876         Pass the user agent to the plug-in controller proxy.
   27877 
   27878         (WebKit::PluginControllerProxy::userAgent):
   27879         Return the user agent.
   27880 
   27881         * PluginProcess/WebProcessConnection.cpp:
   27882         (WebKit::WebProcessConnection::createPlugin):
   27883         Pass the user agent when creating the plug-in controller proxy.
   27884 
   27885         * PluginProcess/WebProcessConnection.messages.in:
   27886         Add userAgent.
   27887 
   27888         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   27889         (WebKit::NetscapePlugin::userAgent):
   27890         * WebProcess/Plugins/PluginController.h:
   27891         Remove the URL parameter to userAgent.
   27892 
   27893         * WebProcess/Plugins/PluginProxy.cpp:
   27894         (WebKit::PluginProxy::initialize):
   27895         Pass the user agent to WebProcessConnection::CreatePlugin.
   27896 
   27897         * WebProcess/Plugins/PluginView.cpp:
   27898         (WebKit::PluginView::userAgent):
   27899         Remove url parameter.
   27900 
   27901 2010-09-29  Anders Carlsson  <andersca (a] apple.com>
   27902 
   27903         Reviewed by Sam Weinig.
   27904 
   27905         Implement more PluginProxy member functions
   27906         https://bugs.webkit.org/show_bug.cgi?id=46815
   27907 
   27908         * Platform/CoreIPC/HandleMessage.h:
   27909         (CoreIPC::handleMessage):
   27910         * PluginProcess/PluginControllerProxy.cpp:
   27911         (WebKit::PluginControllerProxy::handleMouseEvent):
   27912         (WebKit::PluginControllerProxy::handleWheelEvent):
   27913         (WebKit::PluginControllerProxy::handleMouseEnterEvent):
   27914         (WebKit::PluginControllerProxy::handleMouseLeaveEvent):
   27915         (WebKit::PluginControllerProxy::setFocus):
   27916         (WebKit::PluginControllerProxy::windowFocusChanged):
   27917         (WebKit::PluginControllerProxy::windowFrameChanged):
   27918         (WebKit::PluginControllerProxy::windowVisibilityChanged):
   27919         Call the appropriate Plugin member functions.
   27920 
   27921         * PluginProcess/PluginControllerProxy.messages.in:
   27922         Add new messages.
   27923 
   27924         * PluginProcess/WebProcessConnection.cpp:
   27925         (WebKit::WebProcessConnection::didReceiveMessage):
   27926         It's OK to get a message for a plug-in controller proxy that has gone away.
   27927 
   27928         (WebKit::WebProcessConnection::didReceiveSyncMessage):
   27929         Forward the message to the PluginControllerProxy handler.
   27930 
   27931         * WebProcess/Plugins/PluginProxy.cpp:
   27932         (WebKit::PluginProxy::handleMouseEvent):
   27933         (WebKit::PluginProxy::handleWheelEvent):
   27934         (WebKit::PluginProxy::handleMouseEnterEvent):
   27935         (WebKit::PluginProxy::handleMouseLeaveEvent):
   27936         (WebKit::PluginProxy::setFocus):
   27937         (WebKit::PluginProxy::windowFocusChanged):
   27938         (WebKit::PluginProxy::windowFrameChanged):
   27939         (WebKit::PluginProxy::windowVisibilityChanged):
   27940         Send messages to the plug-in process.
   27941         
   27942         (WebKit::PluginProxy::controller):
   27943         Return the plug-in controller.
   27944 
   27945 2010-09-29  Adam Roben  <aroben (a] apple.com>
   27946 
   27947         Look for WebKit.dll (not WebKit_debug.dll) when launching the web
   27948         process in Debug builds
   27949 
   27950         Fixes <http://webkit.org/b/46809> <rdar://problem/8491809> REGRESSION
   27951         (r67979): All tests crashing on Windows WebKit2 test bot
   27952 
   27953         Reviewed by Sam Weinig.
   27954 
   27955         * UIProcess/Launcher/win/ProcessLauncherWin.cpp: WebKit_debug.dll is
   27956         only used in Debug_All builds (but WebKit2WebProcess_debug.exe is used
   27957         in all non-Debug_Internal debug-style builds).
   27958 
   27959 2010-09-28  Anders Carlsson  <andersca (a] apple.com>
   27960 
   27961         Reviewed by Sam Weinig.
   27962 
   27963         Paint the plug-in backing store into the WebProcess backing store
   27964         https://bugs.webkit.org/show_bug.cgi?id=46768
   27965 
   27966         * DerivedSources.make:
   27967         Add PluginProxy.
   27968         
   27969         * Platform/CoreIPC/MessageID.h:
   27970         Add PluginProxy message class.
   27971 
   27972         * PluginProcess/PluginControllerProxy.cpp:
   27973         (WebKit::PluginControllerProxy::paint):
   27974         Let the web process know that we've painted.
   27975 
   27976         * WebKit2.xcodeproj/project.pbxproj:
   27977         Add new files.
   27978 
   27979         * WebProcess/Plugins/PluginProcessConnection.cpp:
   27980         (WebKit::PluginProcessConnection::didReceiveMessage):
   27981         Pass the message on to a plug-in proxy.
   27982 
   27983         * WebProcess/Plugins/PluginProxy.cpp:
   27984         (WebKit::PluginProxy::paint):
   27985         Paint our backing store into the graphics context.
   27986 
   27987         (WebKit::PluginProxy::controller):
   27988         Add notImplemented().
   27989 
   27990         (WebKit::PluginProxy::update):
   27991         Blit the plug-in backing store into the local backing store and tell the plug-in
   27992         controller that we want to repaint.
   27993 
   27994         * WebProcess/Plugins/PluginProxy.messages.in: Added.
   27995 
   27996 2010-09-28  Jenn Braithwaite  <jennb (a] chromium.org>
   27997 
   27998         Reviewed by Dmitry Titov.
   27999 
   28000         Added oldPage param to FrameLoaderClient::didTransferChildFrameToNewDocument.
   28001         https://bugs.webkit.org/show_bug.cgi?id=46663
   28002 
   28003         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   28004         (WebKit::WebFrameLoaderClient::didTransferChildFrameToNewDocument):
   28005         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   28006 
   28007 2010-09-28  Anders Carlsson  <andersca (a] apple.com>
   28008 
   28009         Reviewed by Sam Weinig.
   28010 
   28011         Begin hooking up painting in the plug-in process
   28012         https://bugs.webkit.org/show_bug.cgi?id=46766
   28013 
   28014         * DerivedSources.make:
   28015         Add PluginControllerProxy.
   28016     
   28017         * Platform/CoreIPC/MessageID.h:
   28018         Add a MessageClassPluginControllerProxy message class.
   28019 
   28020         * PluginProcess/PluginControllerProxy.cpp:
   28021         (WebKit::PluginControllerProxy::PluginControllerProxy):
   28022         Initialize the paint timer.
   28023 
   28024         (WebKit::PluginControllerProxy::paint):
   28025         Create a graphics context referencing our backing store and paint into it.
   28026 
   28027         (WebKit::PluginControllerProxy::invalidate):
   28028         Update the dirty rect and start the paint timer if necessary.
   28029 
   28030         (WebKit::PluginControllerProxy::geometryDidChange):
   28031         If we're passed a new backing store handle, reinitialize the backing store.
   28032 
   28033         * PluginProcess/PluginControllerProxy.messages.in: Added.
   28034         * PluginProcess/WebProcessConnection.cpp:
   28035         (WebKit::WebProcessConnection::didReceiveMessage):
   28036         If the message has a destination ID, forward it to the plug-in controller proxy.
   28037 
   28038         * Scripts/webkit2/messages.py:
   28039         Always include WebCoreArgumentCoders.h if the type is in the WebCore namespace.
   28040 
   28041         * WebKit2.xcodeproj/project.pbxproj:
   28042         Add new files.
   28043 
   28044         * WebProcess/Plugins/PluginProxy.cpp:
   28045         (WebKit::PluginProxy::geometryDidChange):
   28046         Update the size of the backing store. Create a new plug-in backing store if needed and send
   28047         it over to the plug-in process.
   28048         
   28049 2010-09-28  Anders Carlsson  <andersca (a] apple.com>
   28050 
   28051         Reviewed by Sam Weinig.
   28052 
   28053         ASSERT when launching the plugin process
   28054         https://bugs.webkit.org/show_bug.cgi?id=46754
   28055         <rdar://problem/8484570>
   28056 
   28057         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   28058         (WebKit::ProcessLauncher::launchProcess):
   28059         Don't assert if we fail to launch the process. Instead, set the connection identifier
   28060         and process ID to null and deallocate the port we created.
   28061 
   28062         * UIProcess/Plugins/PluginProcessProxy.cpp:
   28063         (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch):
   28064         Move all code from didClose here.
   28065 
   28066         (WebKit::PluginProcessProxy::didClose):
   28067         Call pluginProcessCrashedOrFailedToLaunch.
   28068 
   28069         (WebKit::PluginProcessProxy::didFinishLaunching):
   28070         If we failed to launch, call pluginProcessCrashedOrFailedToLaunch.
   28071 
   28072 2010-09-28  Anders Carlsson  <andersca (a] apple.com>
   28073 
   28074         Reviewed by Sam Weinig.
   28075 
   28076         Differentiate waitForSyncReply from waitForReply
   28077         https://bugs.webkit.org/show_bug.cgi?id=46752
   28078 
   28079         Since waitForSyncReply is going to need to dispatch incoming sync messages while
   28080         waiting for the correct reply, we need to add a new waitForSyncReply function that
   28081         can do this.
   28082 
   28083         * Platform/CoreIPC/Connection.cpp:
   28084         (CoreIPC::Connection::sendSyncMessage):
   28085         Push the pending sync reply information on the m_pendingSyncReplies stack,
   28086         send the message, wait for a reply and pop the information off the stack.
   28087 
   28088         (CoreIPC::Connection::waitForSyncReply):
   28089         Block while waiting for a reply to the sync message with the given ID.
   28090         
   28091         (CoreIPC::Connection::processIncomingMessage):
   28092         If the incoming message is a sync reply, set the didReceiveReply flag and the replyDecoder
   28093         members in the pending sync reply and signal the client thread to wakeup.
   28094 
   28095         * Platform/CoreIPC/Connection.h:
   28096         Add a stack of PendingSyncReply structs.
   28097 
   28098 2010-09-28  Sam Weinig  <sam (a] webkit.org>
   28099 
   28100         Reviewed by Darin Adler and Dave Hyatt.
   28101 
   28102         Vertical scroll bar on apple.com is too short with WebKit2
   28103         <rdar://problem/8379230>
   28104         https://bugs.webkit.org/show_bug.cgi?id=46739
   28105 
   28106         This gets us most of the way to having correct scroll corner behavior. We should
   28107         follow this up by moving to painting the window re-sizer in WebCore.
   28108 
   28109         * UIProcess/API/mac/WKView.mm:
   28110         (-[WKView _ownsWindowGrowBox]):
   28111         (-[WKView _updateGrowBoxForWindowFrameChange]): Calculate whether we should
   28112         be taking the scroll corner into account when laying out scrollbars.
   28113         * UIProcess/WebPageProxy.cpp:
   28114         (WebKit::WebPageProxy::setWindowResizerSize):
   28115         * UIProcess/WebPageProxy.h:
   28116         * WebProcess/WebPage/WebPage.cpp:
   28117         (WebKit::WebPage::setWindowResizerSize):
   28118         (WebKit::WebPage::windowResizerRect): This now returns IntRect() for
   28119         non-mac platforms (or any platform that never sends a setWindowResizerSize
   28120         message).
   28121         * WebProcess/WebPage/WebPage.h:
   28122         * WebProcess/WebPage/WebPage.messages.in:
   28123 
   28124 2010-09-28  Adam Roben  <aroben (a] apple.com>
   28125 
   28126         Tell the UI client when a key event is not handled
   28127 
   28128         When the web process receives an event, it sends a
   28129         WebPageProxyMessage::DidReceiveEvent message back to the UI process.
   28130         That message is now sent after handling the event, and includes a
   28131         boolean signifying whether or not the event was actually handled.
   28132 
   28133         Every time WebPageProxy receives a key event, it adds it to a queue.
   28134         When it receives a WebPageProxyMessage::DidReceiveEvent for a key
   28135         event, the event is removed from the queue. If the event was not
   28136         handled, we tell the UI client.
   28137 
   28138         Fixes <http://webkit.org/b/46660> <rdar://problem/8483465> Need API to
   28139         tell a WebKit2 client application that a key event was not handled
   28140 
   28141         Reviewed by Kenneth Rohde Christiansen and Sam Weinig.
   28142 
   28143         * Shared/NativeWebKeyboardEvent.h: Added. This class wraps a
   28144         WebKeyboardEvent and the native event that was used to construct it.
   28145         (WebKit::NativeWebKeyboardEvent::nativeEvent): Simple getter.
   28146 
   28147         * Shared/WebEvent.h: Made isKeyboardEventType public for
   28148         WebPageProxy's benefit.
   28149 
   28150         * Shared/mac/NativeWebKeyboardEventMac.mm: Added.
   28151         (WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent):
   28152         * Shared/qt/NativeWebKeyboardEventQt.cpp: Added.
   28153         (WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent):
   28154         * Shared/win/NativeWebKeyboardEventWin.cpp: Added.
   28155         (WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent):
   28156         The constructor creates a WebKeyboardEvent and stores the native
   28157         event.
   28158 
   28159         * UIProcess/API/C/WKNativeEvent.h: Added.
   28160 
   28161         * UIProcess/API/C/WKPage.h: Added WKPageDidNotHandleKeyEventCallback
   28162         and WKPageUIClient::didNotHandleKeyEvent.
   28163 
   28164         * UIProcess/API/mac/WKView.mm:
   28165         (-[WKView keyUp:]):
   28166         (-[WKView keyDown:]):
   28167         * UIProcess/win/WebView.cpp:
   28168         (WebKit::WebView::onKeyEvent):
   28169         * UIProcess/API/qt/qwkpage.cpp:
   28170         (QWKPagePrivate::keyPressEvent):
   28171         (QWKPagePrivate::keyReleaseEvent):
   28172         Changed to use NativeWebKeyboardEvent.
   28173 
   28174         (QWKPage::QWKPage): Updated for addition of didNotHandleKeyEvent.
   28175 
   28176         * UIProcess/WebPageProxy.cpp:
   28177         (WebKit::WebPageProxy::handleKeyboardEvent): Changed to take a
   28178         NativeWebKeyboardEvent and to add it to m_keyEventQueue.
   28179         (WebKit::WebPageProxy::didReceiveMessage): Changed to expect a boolean
   28180         parameter in WebPageProxyMessage::DidReceiveEvent.
   28181         (WebKit::WebPageProxy::didReceiveEvent): Added a boolean "handled"
   28182         parameter. If the event was a keyboard event, we remove it from
   28183         m_keyEventQueue, and if it wasn't handled by WebCore, we tell the UI
   28184         client.
   28185 
   28186         * UIProcess/WebPageProxy.h: Added m_keyEventQueue.
   28187 
   28188         * UIProcess/WebUIClient.cpp:
   28189         (WebKit::WebUIClient::didNotHandleKeyEvent):
   28190         * UIProcess/WebUIClient.h:
   28191         Added. Just calls through to the WKPageUIClient.
   28192 
   28193         * WebProcess/WebPage/WebPage.cpp:
   28194         (WebKit::handleMouseEvent):
   28195         (WebKit::WebPage::mouseEvent):
   28196         (WebKit::handleWheelEvent):
   28197         (WebKit::WebPage::wheelEvent):
   28198         (WebKit::handleKeyEvent):
   28199         (WebKit::WebPage::keyEvent):
   28200         (WebKit::handleTouchEvent):
   28201         (WebKit::WebPage::touchEvent):
   28202         Moved code from the *Event functions into new helper handle*Event
   28203         functions, and changed to pass a boolean to
   28204         WebPageProxyMessage::DidReceiveEvent signaling whether the event was
   28205         handled or not.
   28206 
   28207         * WebKit2.pro:
   28208         * WebKit2.xcodeproj/project.pbxproj:
   28209         * win/WebKit2.vcproj:
   28210         * win/WebKit2Generated.make:
   28211         Added WKNativeEvent.h and NativeWebKeyboardEvent.
   28212 
   28213 2010-09-28  Anders Carlsson  <andersca (a] apple.com>
   28214 
   28215         Reviewed by Adam Roben.
   28216 
   28217         Implement PluginProxy::destroy
   28218         https://bugs.webkit.org/show_bug.cgi?id=46737
   28219 
   28220         * Platform/CoreIPC/HandleMessage.h:
   28221         (CoreIPC::handleMessage):
   28222         Add overload for a sync message with one in parameter and no out parameters.
   28223 
   28224         * PluginProcess/WebProcessConnection.cpp:
   28225         (WebKit::WebProcessConnection::destroyPluginControllerProxy):
   28226         Rename this to avoid conflicts with the destroyPlugin message handler.
   28227 
   28228         (WebKit::WebProcessConnection::destroyPlugin):
   28229         Call destroyPluginControllerProxy.
   28230 
   28231         * PluginProcess/WebProcessConnection.messages.in:
   28232         Add DestroyPlugin message.
   28233 
   28234         * WebProcess/Plugins/PluginProcessConnection.cpp:
   28235         (WebKit::PluginProcessConnection::didClose):
   28236         
   28237         * WebProcess/Plugins/PluginProxy.cpp:
   28238         (WebKit::PluginProxy::PluginProxy):
   28239         (WebKit::PluginProxy::~PluginProxy):
   28240         Don't add and/the plug-in proxy from the map in the constructor/destructor. Instead,
   28241         do it in initialize/destroy, since otherwise we could be calling pluginProcessCrashed on a
   28242         PluginController that had already been freed.
   28243 
   28244         (WebKit::PluginProxy::initialize):
   28245         (WebKit::PluginProxy::destroy):
   28246         send the DestroyPlugin message.
   28247 
   28248 2010-09-28  Anders Carlsson  <andersca (a] apple.com>
   28249 
   28250         Reviewed by Adam Roben.
   28251 
   28252         Improve plug-in process lifecycle handling
   28253         https://bugs.webkit.org/show_bug.cgi?id=46734
   28254 
   28255         * PluginProcess/WebProcessConnection.cpp:
   28256         (WebKit::WebProcessConnection::destroyPlugin):
   28257         Destroy and delete the plug-in.
   28258 
   28259         (WebKit::WebProcessConnection::didClose):
   28260         Our web process crashed, go through and delete all plug-in instances.
   28261 
   28262         * UIProcess/Plugins/PluginProcessProxy.cpp:
   28263         (WebKit::PluginProcessProxy::didClose):
   28264         The plug-in process crashed. Go through all pending replies and send them so the
   28265         web processes won't be blocked waiting for a reply.
   28266 
   28267         (WebKit::PluginProcessProxy::didCreateWebProcessConnection):
   28268         We need to remove the pending reply connection once we've sent the reply.
   28269 
   28270         * WebProcess/Plugins/PluginProcessConnection.cpp:
   28271         (WebKit::PluginProcessConnection::didClose):
   28272         The plug-in process crashed. Iterate over all proxies and let them know that the plug-in
   28273         process has crashed.
   28274 
   28275         * WebProcess/Plugins/PluginProxy.cpp:
   28276         (WebKit::PluginProxy::pluginProcessCrashed):
   28277         Tell our controller that the plug-in process crashed.
   28278 
   28279         (WebKit::PluginProxy::destroy):
   28280         Null out the controller.
   28281 
   28282 2010-09-28  Anders Carlsson  <andersca (a] apple.com>
   28283 
   28284         Reviewed by Adam Roben.
   28285 
   28286         Implement PluginControllerProxy::initialize and have it create a plug-in
   28287         https://bugs.webkit.org/show_bug.cgi?id=46731
   28288 
   28289         * PluginProcess/PluginControllerProxy.cpp:
   28290         (WebKit::PluginControllerProxy::initialize):
   28291         Create the plug-in and try to initialize it.
   28292 
   28293         (WebKit::PluginControllerProxy::destroy):
   28294         Destroy the plug-in.
   28295 
   28296         * PluginProcess/WebProcessConnection.cpp:
   28297         (WebKit::WebProcessConnection::addPluginControllerProxy):
   28298         Add the given plug-in controller proxy to the map and assume ownership of it.
   28299 
   28300         (WebKit::WebProcessConnection::removePluginControllerProxy):
   28301         Remove the given plug-in controller proxy from the map and delete it.
   28302 
   28303         (WebKit::WebProcessConnection::createPlugin):
   28304         Create a plug-in controller proxy and try to initialize it.
   28305 
   28306 2010-09-28  Anders Carlsson  <andersca (a] apple.com>
   28307 
   28308         Reviewed by Adam Roben.
   28309 
   28310         Add PluginControllerProxy class
   28311         https://bugs.webkit.org/show_bug.cgi?id=46728
   28312 
   28313         * PluginProcess/PluginControllerProxy.cpp: Added.
   28314         * PluginProcess/PluginControllerProxy.h: Added.
   28315         Add stubbed out PluginControllerProxy class.
   28316         
   28317         * PluginProcess/WebProcessConnection.cpp:
   28318         (WebKit::WebProcessConnection::~WebProcessConnection):
   28319         Assert that we don't have any live plug-in controller proxies.
   28320 
   28321         (WebKit::WebProcessConnection::addPluginControllerProxy):
   28322         Add the plug-in controller proxy to the map.
   28323                 
   28324         (WebKit::WebProcessConnection::removePluginControllerProxy):
   28325         Remove the plug-in controller proxy from the map. If the last plug-in controller
   28326         proxy went away, invalidate the connection.
   28327         
   28328         * WebKit2.xcodeproj/project.pbxproj:
   28329         Add files.
   28330 
   28331 2010-09-28  Adam Roben  <aroben (a] apple.com>
   28332 
   28333         Don't call NPP_SetWindow until the plugin's HWND has been
   28334         sized/positioned
   28335 
   28336         Test: platform/win/plugins/window-geometry-initialized-before-set-window.html
   28337 
   28338         Reviewed by Anders Carlsson.
   28339 
   28340         Fixes <http://webkit.org/b/46716> <rdar://problem/8482014> Full-page
   28341         Adobe Reader does not paint until window is resized
   28342 
   28343         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   28344         (WebKit::NetscapePlugin::geometryDidChange): Call NPP_SetWindow after
   28345         updating the platform (HWND) geometry.
   28346 
   28347 2010-09-28  Anders Carlsson  <andersca (a] apple.com>
   28348 
   28349         Out of process plug-ins shouldn't be turned on just yet...
   28350 
   28351         * WebKit2Prefix.h:
   28352 
   28353 2010-09-28  Andras Becsi  <abecsi (a] webkit.org>
   28354 
   28355         Reviewed by Kenneth Rohde Christiansen.
   28356 
   28357         [Qt] ProcessLauncherHelper should not leave stray socket files in /tmp.
   28358         https://bugs.webkit.org/show_bug.cgi?id=46722
   28359 
   28360         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   28361         (WebKit::ProcessLauncherHelper::~ProcessLauncherHelper): close the socket.
   28362         (WebKit::ProcessLauncherHelper::ProcessLauncherHelper): delete the helper on exit.
   28363 
   28364 2010-09-28  Benjamin Poulain  <benjamin.poulain (a] nokia.com>
   28365 
   28366         Reviewed by Andreas Kling.
   28367 
   28368         [Qt] Remove support for Qt 4.5
   28369         https://bugs.webkit.org/show_bug.cgi?id=46718
   28370 
   28371         Remove the code for versions of Qt prior to 4.6.
   28372 
   28373         * UIProcess/API/qt/qgraphicswkview.cpp:
   28374         (QGraphicsWKView::event):
   28375         * UIProcess/API/qt/qwkpage.cpp:
   28376         * UIProcess/API/qt/qwkpage_p.h:
   28377 
   28378 2010-09-28  Andras Becsi  <abecsi (a] webkit.org>
   28379 
   28380         Reviewed by Csaba Osztrogonc.
   28381 
   28382         [Qt] Fix generation of WebPageMessages.h and WebPageMessageReceiver.cpp
   28383         to avoid rebuilding them every time.
   28384 
   28385         * DerivedSources.pro: add target to extra compilers.
   28386 
   28387 2010-09-27  Brady Eidson  <beidson (a] apple.com>
   28388 
   28389         Reviewed by Sam Weinig.
   28390 
   28391         https://bugs.webkit.org/show_bug.cgi?id=46688 - Add an API to get the WKBackForwardItem at an arbitrary index.
   28392 
   28393         * UIProcess/API/C/WKBackForwardList.cpp:
   28394         (WKBackForwardListGetItemAtIndex):
   28395         * UIProcess/API/C/WKBackForwardList.h:
   28396 
   28397 2010-09-27  Anders Carlsson  <andersca (a] apple.com>
   28398 
   28399         Turns out people other than me might want to build this thing.
   28400 
   28401         * WebKit2.xcodeproj/project.pbxproj:
   28402 
   28403 2010-09-27  Darin Adler  <darin (a] apple.com>
   28404 
   28405         * Scripts/webkit2: Added property svn:ignore.
   28406 
   28407 2010-09-27  Anders Carlsson  <andersca (a] apple.com>
   28408 
   28409         Reviewed by Sam Weinig.
   28410 
   28411         * Platform/CoreIPC/Connection.h:
   28412         (CoreIPC::Connection::sendSync):
   28413         Add new sendSync overload that takes a message struct.
   28414 
   28415         * PluginProcess/WebProcessConnection.cpp:
   28416         (WebKit::WebProcessConnection::didReceiveSyncMessage):
   28417         Call didReceiveSyncWebProcessConnectionMessage.
   28418         
   28419         * WebProcess/Plugins/PluginProcessConnection.cpp:
   28420         (WebKit::PluginProcessConnection::addPluginProxy):
   28421         Add the plug-in proxy to the map.
   28422 
   28423         (WebKit::PluginProcessConnection::removePluginProxy):
   28424         Remove the plug-in proxy from the map. If the map is empty, disconnect from the
   28425         plug-in process.
   28426 
   28427         * WebProcess/Plugins/PluginProxy.cpp:
   28428         (WebKit::generatePluginInstanceID):
   28429         Generate a unique plug-in instance ID.
   28430 
   28431         (WebKit::PluginProxy::PluginProxy):
   28432         Add the plug-in proxy to the map.
   28433         
   28434         (WebKit::PluginProxy::~PluginProxy):
   28435         Remove the plug-in proxy from the map.
   28436 
   28437         (WebKit::PluginProxy::initialize):
   28438         Ask the plug-in process to create a plug-in.
   28439 
   28440 2010-09-27  Sam Weinig  <sam (a] webkit.org>
   28441 
   28442         Reviewed by Anders Carlsson.
   28443 
   28444         Add remaining event handlers to WKView.
   28445 
   28446         Also fixes <rdar://problem/8467058>
   28447         Does not get decidePolicyForNavigationAction callback when middle clicking a link
   28448 
   28449         - Adds otherButton and rightButton NSResponder event handlers to WKView.
   28450         - Renames WebPageProxy event handlers to use the handle prefix.
   28451         - Uses a macro to reduce duplicate code for WKView event handlers.
   28452         - Add view parameter to WebEventFactory::createWebKeyboardEvent on the mac
   28453           for uniformity.
   28454 
   28455         * Shared/mac/WebEventFactory.h:
   28456         * Shared/mac/WebEventFactory.mm:
   28457         (WebKit::WebEventFactory::createWebKeyboardEvent):
   28458         * UIProcess/API/mac/WKView.mm:
   28459         * UIProcess/API/qt/qwkpage.cpp:
   28460         (QWKPagePrivate::keyPressEvent):
   28461         (QWKPagePrivate::keyReleaseEvent):
   28462         (QWKPagePrivate::mouseMoveEvent):
   28463         (QWKPagePrivate::mousePressEvent):
   28464         (QWKPagePrivate::mouseReleaseEvent):
   28465         (QWKPagePrivate::mouseDoubleClickEvent):
   28466         (QWKPagePrivate::wheelEvent):
   28467         (QWKPagePrivate::touchEvent):
   28468         * UIProcess/WebPageProxy.cpp:
   28469         (WebKit::WebPageProxy::handleMouseEvent):
   28470         (WebKit::WebPageProxy::handleWheelEvent):
   28471         (WebKit::WebPageProxy::handleKeyboardEvent):
   28472         (WebKit::WebPageProxy::handleTouchEvent):
   28473         * UIProcess/WebPageProxy.h:
   28474         * UIProcess/win/WebView.cpp:
   28475         (WebKit::WebView::onMouseEvent):
   28476         (WebKit::WebView::onWheelEvent):
   28477         (WebKit::WebView::onKeyEvent):
   28478 
   28479 2010-09-27  Ivan Krsti  <ike (a] apple.com>
   28480 
   28481         Reviewed by Mark Rowe.
   28482 
   28483         <rdar://problem/8348990> / <http://webkit.org/b/46633> Make it possible to disable sandboxing of
   28484         web process via runtime flag.
   28485 
   28486         Enable sandboxing of the web process only if the DisableSandbox user default is not set for the
   28487         web process.
   28488 
   28489         * WebProcess/mac/WebProcessMainMac.mm:
   28490         (WebKit::WebProcessMain):
   28491 
   28492 2010-09-27  Anders Carlsson  <andersca (a] apple.com>
   28493 
   28494         Reviewed by Adam Roben.
   28495 
   28496         Add WebProcessConnection CreatePlugin message
   28497         https://bugs.webkit.org/show_bug.cgi?id=46668
   28498 
   28499         * DerivedSources.make:
   28500         Add WebProcessConnection.
   28501 
   28502         * Platform/CoreIPC/HandleMessage.h:
   28503         Add handleMessage overload for a sync message with two input parameters
   28504         and one output parameter.
   28505 
   28506         (CoreIPC::handleMessage):
   28507         * Platform/CoreIPC/MessageID.h:
   28508         Add MessageClassWebProcessConnection.
   28509 
   28510         * PluginProcess/WebProcessConnection.cpp:
   28511         (WebKit::WebProcessConnection::createPlugin):
   28512         Add stub.
   28513 
   28514         * PluginProcess/WebProcessConnection.messages.in: Added.
   28515         * Scripts/webkit2/messages.py:
   28516         Include headers directly for types that we believe are nested structs.
   28517 
   28518         * Scripts/webkit2/messages_unittest.py:
   28519         Update expected results.
   28520 
   28521         * WebKit2.xcodeproj/project.pbxproj:
   28522         Add new files.
   28523 
   28524 2010-09-27  Anders Carlsson  <andersca (a] apple.com>
   28525 
   28526         Reviewed by Adam Roben.
   28527 
   28528         Add support for autogenerating synchronous message handlers
   28529         https://bugs.webkit.org/show_bug.cgi?id=46654
   28530 
   28531         * Scripts/webkit2/messages.py:
   28532         (reply_type): Renamed from reply_base_class.
   28533         (delayed_reply_type): Renamed from delayed_reply_base_class.
   28534         (message_to_struct_declaration): Add a Reply type typedef.
   28535         (async_case_statement): Rename from case_statement.
   28536         (generate_message_handler): Generate a sync message handler as well.
   28537 
   28538         * Scripts/webkit2/messages_unittest.py:
   28539         Update expected results.
   28540 
   28541 2010-09-27  Andras Becsi  <abecsi (a] webkit.org>
   28542 
   28543         Reviewed by Csaba Osztrogonc.
   28544 
   28545         [Qt] Make generate-forwarding-headers.pl aware of moved headers
   28546         https://bugs.webkit.org/show_bug.cgi?id=46621
   28547 
   28548         * generate-forwarding-headers.pl:
   28549 
   28550 2010-09-27  Sam Weinig  <sam (a] webkit.org>
   28551 
   28552         Reviewed by Anders Carlsson.
   28553 
   28554         The mouseDidMoveOverElement callback in the injected bundle should include modifier info
   28555         https://bugs.webkit.org/show_bug.cgi?id=46629
   28556 
   28557         - Moves event related API enums to WKEvent.h which can be shared between
   28558           both the bundle and the main API.
   28559 
   28560         * Shared/API/c/WKEvent.h: Added.
   28561         * Shared/API/c/WKSharedAPICast.h:
   28562         (WebKit::toRef):
   28563         * UIProcess/API/C/WKAPICast.h:
   28564         * UIProcess/API/C/WKPage.h:
   28565         * WebKit2.xcodeproj/project.pbxproj:
   28566         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   28567         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
   28568         (WebKit::InjectedBundlePageUIClient::mouseDidMoveOverElement):
   28569         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
   28570         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   28571         (WebKit::WebChromeClient::mouseDidMoveOverElement):
   28572         * win/WebKit2.vcproj:
   28573         * win/WebKit2Generated.make:
   28574 
   28575 2010-09-27  Adam Roben  <aroben (a] apple.com>
   28576 
   28577         Give mouse wheel events the right coordinates on Windows
   28578 
   28579         Fixes <http://webkit.org/b/46625> <rdar://problem/8481161> Placing
   28580         mouse cursor inside a scrollable area and scrolling the mouse wheel
   28581         generally doesn't scroll the area
   28582 
   28583         Reviewed by Sam Weinig.
   28584 
   28585         * Shared/win/WebEventFactory.cpp:
   28586         (WebKit::point): Renamed from positionForEvent. The old name implied
   28587         that all events used the same relative origin, which is untrue.
   28588         (WebKit::WebEventFactory::createWebMouseEvent): Changed to use point
   28589         and ::ClientToScreen explicitly rather than relying on
   28590         positionForEvent/globalPositionForEvent.
   28591         (WebKit::WebEventFactory::createWebWheelEvent): Changed to use point
   28592         and ::ScreenToClient. The old code was assuming that wheel event
   28593         points are relative to the client area, but they are in fact relative
   28594         to the screen.
   28595 
   28596 2010-09-27  Sam Weinig  <sam (a] webkit.org>
   28597 
   28598         Reviewed by Adam Roben.
   28599 
   28600         Opening links in a new window asserts while decoding decidePolicyForNewWindowAction.
   28601         <rdar://problem/8479445>
   28602         https://bugs.webkit.org/show_bug.cgi?id=46623
   28603 
   28604         * UIProcess/WebPageProxy.cpp:
   28605         (WebKit::WebPageProxy::didReceiveMessage): Fix the order of decoding to
   28606         match the order of encoding. (Swapping url and mouseButton).
   28607 
   28608 2010-09-27  Adam Roben  <aroben (a] apple.com>
   28609 
   28610         Stop leaking the web process's process handle on Windows
   28611 
   28612         Fixes <http://webkit.org/b/46133> <rdar://problem/8455343>
   28613 
   28614         Reviewed by Anders Carlsson.
   28615 
   28616         * UIProcess/Launcher/ProcessLauncher.cpp:
   28617         (WebKit::ProcessLauncher::invalidate): Call platformInvalidate.
   28618 
   28619         * UIProcess/Launcher/ProcessLauncher.h: Added platformInvalidate.
   28620 
   28621         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   28622         (WebKit::ProcessLauncher::platformInvalidate):
   28623         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   28624         (WebKit::ProcessLauncher::platformInvalidate):
   28625         Stubbed out.
   28626 
   28627         * UIProcess/Launcher/win/ProcessLauncherWin.cpp:
   28628         (WebKit::ProcessLauncher::platformInvalidate): Close the process
   28629         handle like MSDN says we should.
   28630 
   28631 2010-09-27  Adam Roben  <aroben (a] apple.com>
   28632 
   28633         Don't double-free CERT_CONTEXTs when copying PlatformCertificateInfos
   28634         on Windows
   28635 
   28636         Fixes <http://webkit.org/b/46536> <rdar://problem/8477292> REGRESSION
   28637         (r68260): Crash in PlatformCertificateInfo::~PlatformCertificateInfo
   28638         when navigating away from Gmail
   28639 
   28640         Reviewed by Sam Weinig.
   28641 
   28642         * Shared/win/PlatformCertificateInfo.cpp:
   28643         (WebKit::PlatformCertificateInfo::PlatformCertificateInfo):
   28644         (WebKit::PlatformCertificateInfo::operator=):
   28645         * Shared/win/PlatformCertificateInfo.h:
   28646         Added a copy constructor and assigment operator to handle correctly
   28647         reffing/dereffing the CERT_CONTEXTs when copying a
   28648         PlatformCertificateInfo.
   28649 
   28650 2010-09-26  Sam Weinig  <sam (a] webkit.org>
   28651 
   28652         Reviewed by Simon Fraser.
   28653 
   28654         MiniBrowser crashes when opening main menu item
   28655         https://bugs.webkit.org/show_bug.cgi?id=46588
   28656 
   28657         * UIProcess/API/mac/PageClientImpl.mm:
   28658         (WebKit::PageClientImpl::setEditCommandState): Don't allow default
   28659         String -> NSString conversion to take place, and use the increasingly
   28660         misnamed nsStringFromWebCoreString instead.
   28661 
   28662 2010-09-26  Sam Weinig  <sam (a] webkit.org>
   28663 
   28664         Another windows build fix windows attempt.
   28665 
   28666         * win/WebKit2Common.vsprops:
   28667 
   28668 2010-09-26  Sam Weinig  <sam (a] webkit.org>
   28669 
   28670         Another windows build fix windows attempt.
   28671 
   28672         * win/WebKit2Generated.make:
   28673 
   28674 2010-09-26  Sam Weinig  <sam (a] webkit.org>
   28675 
   28676         Attempt to fix windows build.
   28677 
   28678         * win/WebKit2Common.vsprops:
   28679 
   28680 2010-09-26  Sam Weinig  <sam (a] webkit.org>
   28681 
   28682         Attempt to fix Qt build.
   28683 
   28684         * WebKit2.pro:
   28685 
   28686 2010-09-26  Sam Weinig  <sam (a] webkit.org>
   28687 
   28688         Reviewed by Anders Carlsson.
   28689 
   28690         Move shared WebKit2 API (used by both bundle and main API) to WebKit2/Shared/API
   28691         https://bugs.webkit.org/show_bug.cgi?id=46587
   28692 
   28693         - Moves shared types (WKArrayRef, WKDictionaryRef, etc) to Shared/API/c.
   28694         - Removes WKBundleBase.h and moves all opaque type declarations to WKBase.h (which
   28695           moves to Shared/API/c).
   28696         - Adds WKSharedAPICast.h which includes shared API casting logic and is included
   28697           by both WKAPICast.h and WKBundleAPICast.h now. Moved to using macros for API 
   28698           mappings to reduce verbosity.
   28699         - Move windows c API files from UIProcess/API/win to UIProcess/API/C/win.
   28700 
   28701         * Shared/API: Added.
   28702         * Shared/API/c: Added.
   28703         * Shared/API/c/WKArray.cpp: Copied from UIProcess/API/C/WKArray.cpp.
   28704         * Shared/API/c/WKArray.h: Copied from UIProcess/API/C/WKArray.h.
   28705         * Shared/API/c/WKBase.h: Copied from UIProcess/API/C/WKBase.h.
   28706         * Shared/API/c/WKCertificateInfo.cpp: Copied from UIProcess/API/C/WKCertificateInfo.cpp.
   28707         * Shared/API/c/WKCertificateInfo.h: Copied from UIProcess/API/C/WKCertificateInfo.h.
   28708         * Shared/API/c/WKData.cpp: Copied from UIProcess/API/C/WKData.cpp.
   28709         * Shared/API/c/WKData.h: Copied from UIProcess/API/C/WKData.h.
   28710         * Shared/API/c/WKDictionary.cpp: Copied from UIProcess/API/C/WKDictionary.cpp.
   28711         * Shared/API/c/WKDictionary.h: Copied from UIProcess/API/C/WKDictionary.h.
   28712         * Shared/API/c/WKError.cpp: Copied from UIProcess/API/C/WKError.cpp.
   28713         * Shared/API/c/WKError.h: Copied from UIProcess/API/C/WKError.h.
   28714         * Shared/API/c/WKMutableArray.cpp: Copied from UIProcess/API/C/WKMutableArray.cpp.
   28715         * Shared/API/c/WKMutableArray.h: Copied from UIProcess/API/C/WKMutableArray.h.
   28716         * Shared/API/c/WKMutableDictionary.cpp: Copied from UIProcess/API/C/WKMutableDictionary.cpp.
   28717         * Shared/API/c/WKMutableDictionary.h: Copied from UIProcess/API/C/WKMutableDictionary.h.
   28718         * Shared/API/c/WKNumber.cpp: Copied from UIProcess/API/C/WKNumber.cpp.
   28719         * Shared/API/c/WKNumber.h: Copied from UIProcess/API/C/WKNumber.h.
   28720         * Shared/API/c/WKSerializedScriptValue.cpp: Copied from UIProcess/API/C/WKSerializedScriptValue.cpp.
   28721         * Shared/API/c/WKSerializedScriptValue.h: Copied from UIProcess/API/C/WKSerializedScriptValue.h.
   28722         * Shared/API/c/WKSharedAPICast.h: Copied from UIProcess/API/C/WKAPICast.h.
   28723         * Shared/API/c/WKString.cpp: Copied from UIProcess/API/C/WKString.cpp.
   28724         * Shared/API/c/WKString.h: Copied from UIProcess/API/C/WKString.h.
   28725         * Shared/API/c/WKType.cpp: Copied from UIProcess/API/C/WKType.cpp.
   28726         * Shared/API/c/WKType.h: Copied from UIProcess/API/C/WKType.h.
   28727         * Shared/API/c/WKURL.cpp: Copied from UIProcess/API/C/WKURL.cpp.
   28728         * Shared/API/c/WKURL.h: Copied from UIProcess/API/C/WKURL.h.
   28729         * Shared/API/c/WKURLRequest.cpp: Copied from UIProcess/API/C/WKURLRequest.cpp.
   28730         * Shared/API/c/WKURLRequest.h: Copied from UIProcess/API/C/WKURLRequest.h.
   28731         * Shared/API/c/WKURLResponse.cpp: Copied from UIProcess/API/C/WKURLResponse.cpp.
   28732         * Shared/API/c/WKURLResponse.h: Copied from UIProcess/API/C/WKURLResponse.h.
   28733         * Shared/API/c/cf: Copied from UIProcess/API/C/cf.
   28734         * Shared/API/c/mac: Copied from UIProcess/API/C/mac.
   28735         * Shared/API/c/win: Added.
   28736         * Shared/API/c/win/WKBaseWin.h: Copied from UIProcess/API/win/WKBaseWin.h.
   28737         * Shared/API/c/win/WKCertificateInfoWin.cpp: Copied from UIProcess/API/C/win/WKCertificateInfoWin.cpp.
   28738         * Shared/API/c/win/WKCertificateInfoWin.h: Copied from UIProcess/API/C/win/WKCertificateInfoWin.h.
   28739         * UIProcess/API/C/WKAPICast.h: Replaced.
   28740         * UIProcess/API/C/WKArray.cpp: Removed.
   28741         * UIProcess/API/C/WKArray.h: Removed.
   28742         * UIProcess/API/C/WKBase.h: Removed.
   28743         * UIProcess/API/C/WKCertificateInfo.cpp: Removed.
   28744         * UIProcess/API/C/WKCertificateInfo.h: Removed.
   28745         * UIProcess/API/C/WKData.cpp: Removed.
   28746         * UIProcess/API/C/WKData.h: Removed.
   28747         * UIProcess/API/C/WKDictionary.cpp: Removed.
   28748         * UIProcess/API/C/WKDictionary.h: Removed.
   28749         * UIProcess/API/C/WKError.cpp: Removed.
   28750         * UIProcess/API/C/WKError.h: Removed.
   28751         * UIProcess/API/C/WKMutableArray.cpp: Removed.
   28752         * UIProcess/API/C/WKMutableArray.h: Removed.
   28753         * UIProcess/API/C/WKMutableDictionary.cpp: Removed.
   28754         * UIProcess/API/C/WKMutableDictionary.h: Removed.
   28755         * UIProcess/API/C/WKNumber.cpp: Removed.
   28756         * UIProcess/API/C/WKNumber.h: Removed.
   28757         * UIProcess/API/C/WKSerializedScriptValue.cpp: Removed.
   28758         * UIProcess/API/C/WKSerializedScriptValue.h: Removed.
   28759         * UIProcess/API/C/WKString.cpp: Removed.
   28760         * UIProcess/API/C/WKString.h: Removed.
   28761         * UIProcess/API/C/WKType.cpp: Removed.
   28762         * UIProcess/API/C/WKType.h: Removed.
   28763         * UIProcess/API/C/WKURL.cpp: Removed.
   28764         * UIProcess/API/C/WKURL.h: Removed.
   28765         * UIProcess/API/C/WKURLRequest.cpp: Removed.
   28766         * UIProcess/API/C/WKURLRequest.h: Removed.
   28767         * UIProcess/API/C/WKURLResponse.cpp: Removed.
   28768         * UIProcess/API/C/WKURLResponse.h: Removed.
   28769         * UIProcess/API/C/cf: Removed.
   28770         * UIProcess/API/C/cf/WKStringCF.cpp: Removed.
   28771         * UIProcess/API/C/cf/WKStringCF.h: Removed.
   28772         * UIProcess/API/C/cf/WKURLCF.cpp: Removed.
   28773         * UIProcess/API/C/cf/WKURLCF.h: Removed.
   28774         * UIProcess/API/C/cf/WKURLRequestCF.cpp: Removed.
   28775         * UIProcess/API/C/cf/WKURLRequestCF.h: Removed.
   28776         * UIProcess/API/C/cf/WKURLResponseCF.cpp: Removed.
   28777         * UIProcess/API/C/cf/WKURLResponseCF.h: Removed.
   28778         * UIProcess/API/C/mac: Removed.
   28779         * UIProcess/API/C/mac/WKCertificateInfoMac.h: Removed.
   28780         * UIProcess/API/C/mac/WKCertificateInfoMac.mm: Removed.
   28781         * UIProcess/API/C/mac/WKURLRequestNS.h: Removed.
   28782         * UIProcess/API/C/mac/WKURLRequestNS.mm: Removed.
   28783         * UIProcess/API/C/mac/WKURLResponseNS.h: Removed.
   28784         * UIProcess/API/C/mac/WKURLResponseNS.mm: Removed.
   28785         * UIProcess/API/C/win/WKAPICastWin.h: Copied from UIProcess/API/win/WKAPICastWin.h.
   28786         * UIProcess/API/C/win/WKBaseWin.h: Copied from UIProcess/API/win/WKBaseWin.h.
   28787         * UIProcess/API/C/win/WKCertificateInfoWin.cpp: Removed.
   28788         * UIProcess/API/C/win/WKCertificateInfoWin.h: Removed.
   28789         * UIProcess/API/C/win/WKView.cpp: Copied from UIProcess/API/win/WKView.cpp.
   28790         * UIProcess/API/C/win/WKView.h: Copied from UIProcess/API/win/WKView.h.
   28791         * UIProcess/API/win: Removed.
   28792         * UIProcess/API/win/WKAPICastWin.h: Removed.
   28793         * UIProcess/API/win/WKBaseWin.h: Removed.
   28794         * UIProcess/API/win/WKView.cpp: Removed.
   28795         * UIProcess/API/win/WKView.h: Removed.
   28796         * WebKit2.pro:
   28797         * WebKit2.xcodeproj/project.pbxproj:
   28798         * WebProcess/InjectedBundle/API/c/WKBundle.h:
   28799         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   28800         * WebProcess/InjectedBundle/API/c/WKBundleBase.h: Removed.
   28801         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   28802         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
   28803         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h:
   28804         * WebProcess/InjectedBundle/API/c/WKBundleInitialize.h:
   28805         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.h:
   28806         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   28807         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
   28808         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
   28809         * WebProcess/InjectedBundle/API/c/WKBundleRangeHandle.h:
   28810         * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.h:
   28811         * win/WebKit2.vcproj:
   28812         * win/WebKit2Generated.make:
   28813 
   28814 2010-09-26  Anders Carlsson  <andersca (a] apple.com>
   28815 
   28816         Fix non-Mac builds.
   28817 
   28818         * Platform/SharedMemory.h:
   28819         * Platform/mac/SharedMemoryMac.cpp:
   28820         (WebKit::SharedMemory::Handle::isNull):
   28821 
   28822 2010-09-26  Anders Carlsson  <andersca (a] apple.com>
   28823 
   28824         Reviewed by Sam Weinig.
   28825 
   28826         Add PluginProxy class
   28827         https://bugs.webkit.org/show_bug.cgi?id=46586
   28828 
   28829         * WebKit2.xcodeproj/project.pbxproj:
   28830         Add files.
   28831 
   28832         * WebProcess/Plugins/PluginProxy.cpp: Added.
   28833         * WebProcess/Plugins/PluginProxy.h: Added.
   28834 
   28835         * WebProcess/WebPage/WebPage.cpp:
   28836         (WebKit::WebPage::createPlugin):
   28837         Create a PluginProxy wrapper.
   28838 
   28839 2010-09-26  Anders Carlsson  <andersca (a] apple.com>
   28840 
   28841         Reviewed by Sam Weinig.
   28842 
   28843         Make it possible to encode null SharedMemory::Handle objects
   28844         https://bugs.webkit.org/show_bug.cgi?id=46585
   28845 
   28846         * Platform/SharedMemory.h:
   28847         (WebKit::SharedMemory::Handle::isNull):
   28848         Add isNull.
   28849 
   28850         * Platform/mac/SharedMemoryMac.cpp:
   28851         (WebKit::SharedMemory::Handle::encode):
   28852         Remove asserts.
   28853 
   28854         (WebKit::SharedMemory::create):
   28855         Bail if we see a null handle. Also work around a kernel bug where
   28856         mach_vm_map fails if the given address to map is already mapped, even if
   28857         VM_FLAG_ANYWHERE is set.
   28858 
   28859 2010-09-26  Anders Carlsson  <andersca (a] apple.com>
   28860 
   28861         Reviewed by Sam Weinig.
   28862 
   28863         Add BackingStore class
   28864         https://bugs.webkit.org/show_bug.cgi?id=46584
   28865 
   28866         * Shared/BackingStore.cpp: Added.
   28867         (WebKit::BackingStore::create):
   28868         Create a backing store backed by fastMalloc memory.
   28869 
   28870         (WebKit::BackingStore::createSharable):
   28871         Create a backing store backed by shared memory.
   28872 
   28873         (WebKit::BackingStore::createHandle):
   28874         Create a handle that can be sent over the wire.
   28875 
   28876         (WebKit::BackingStore::resize):
   28877         Resize the backing store memory.
   28878 
   28879         (WebKit::BackingStore::data):
   28880         Return the backing store data.
   28881 
   28882         * Shared/mac/BackingStoreMac.mm: Added.
   28883         (WebKit::BackingStore::createGraphicsContext):
   28884         Create a graphics context that will paint into the backing store.
   28885 
   28886         (WebKit::BackingStore::paint):
   28887         Paint the backing store in a graphics context.
   28888 
   28889         * WebKit2.xcodeproj/project.pbxproj:
   28890         Add files.
   28891 
   28892 2010-09-26  Anders Carlsson  <andersca (a] apple.com>
   28893 
   28894         Reviewed by Sam Weinig.
   28895 
   28896         Establish a connection between the plug-in process and the web process
   28897         https://bugs.webkit.org/show_bug.cgi?id=46583
   28898 
   28899         * PluginProcess/PluginProcess.cpp:
   28900         (WebKit::PluginProcess::didReceiveMessage):
   28901         Call the auto-generated didReceivePluginProcessMessage.
   28902 
   28903         * PluginProcess/PluginProcess.h:
   28904         Add didReceivePluginProcessMessage declaration.
   28905 
   28906         * PluginProcess/PluginProcess.messages.in:
   28907         Add new "CreateWebProcessConnection" message.
   28908 
   28909         * PluginProcess/WebProcessConnection.cpp:
   28910         (WebKit::WebProcessConnection::didReceiveMessage):
   28911         (WebKit::WebProcessConnection::didReceiveSyncMessage):
   28912         (WebKit::WebProcessConnection::didClose):
   28913         (WebKit::WebProcessConnection::didReceiveInvalidMessage):
   28914         Add stubbed out member functions.
   28915 
   28916         * UIProcess/Plugins/PluginProcessManager.cpp:
   28917         (WebKit::PluginProcessManager::getPluginProcessConnection):
   28918         Ask the plug-in process proxy to create a connection.
   28919 
   28920         * UIProcess/Plugins/PluginProcessProxy.cpp:
   28921         (WebKit::PluginProcessProxy::createWebProcessConnection):
   28922         Add the WebProcessProxy and the reply encoder to the queue of pending replies.
   28923         If the process is still launching, keep track of how many pending requests we have, otherwise
   28924         just send the request.
   28925 
   28926         (WebKit::PluginProcessProxy::didReceiveMessage):
   28927         Call the auto-generated didReceivePluginProcessMessage.
   28928 
   28929         (WebKit::PluginProcessProxy::didFinishLaunching):
   28930         Send all pending connection requests.
   28931 
   28932         (WebKit::PluginProcessProxy::didCreateWebProcessConnection):
   28933         Get the first pending reply and send it with the mach port.
   28934 
   28935         * WebKit2.xcodeproj/project.pbxproj:
   28936         Actually compile PluginProcessMessageReceiver.
   28937 
   28938         * WebProcess/Plugins/PluginProcessConnection.cpp:
   28939         (WebKit::PluginProcessConnection::PluginProcessConnection):
   28940         Create a CoreIPC connection.
   28941 
   28942         (WebKit::PluginProcessConnection::didReceiveMessage):
   28943         (WebKit::PluginProcessConnection::didClose):
   28944         (WebKit::PluginProcessConnection::didReceiveInvalidMessage):
   28945         Add stubbed out member functions.
   28946 
   28947         * WebProcess/WebPage/WebPage.cpp:
   28948         (WebKit::WebPage::createPlugin):
   28949         Ask the plug-in process connection manager for a connection.
   28950 
   28951 2010-09-26  Anders Carlsson  <andersca (a] apple.com>
   28952 
   28953         Reviewed by Sam Weinig.
   28954 
   28955         Generated message handlers should include argument coder headers for some types
   28956         https://bugs.webkit.org/show_bug.cgi?id=46582
   28957 
   28958         * Scripts/webkit2/messages.py:
   28959         When determining which headers to use when generating a message handler, consider the
   28960         argument coder headers.
   28961 
   28962         * Scripts/webkit2/messages_unittest.py:
   28963         Update test result.
   28964 
   28965 2010-09-24  Sam Weinig  <sam (a] webkit.org>
   28966 
   28967         Fix release build.
   28968 
   28969         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   28970 
   28971 2010-09-24  Enrica Casucci  <enrica (a] apple.com>
   28972 
   28973         One more build fix.
   28974 
   28975         * UIProcess/API/qt/qwkpage.cpp:
   28976         (QWKPagePrivate::setEditCommandState):
   28977 
   28978 2010-09-24  Sam Weinig  <sam (a] webkit.org>
   28979 
   28980         Reviewed by Darin Adler.
   28981 
   28982         Implement WebKit2 callback equivalent to -[WebUIDelegate mouseDidMoveOverElement:modifierFlags:]
   28983         <rdar://problem/8359279>
   28984         https://bugs.webkit.org/show_bug.cgi?id=46546
   28985 
   28986         - Adds new WKBundleHitTestResultRef object to represent a content under a cursor.
   28987         - Adds new Bundle and UI level mouseDidMoveOverElement UIClient callbacks, with
   28988           pass through userData to communicate context up to the UIProcess
   28989 
   28990         * Shared/APIObject.h:
   28991         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   28992         * UIProcess/API/C/WKPage.h:
   28993         * UIProcess/API/qt/qwkpage.cpp:
   28994         (QWKPage::QWKPage):
   28995         * UIProcess/WebPageProxy.cpp:
   28996         (WebKit::WebPageProxy::didReceiveMessage):
   28997         (WebKit::WebPageProxy::mouseDidMoveOverElement):
   28998         * UIProcess/WebPageProxy.h:
   28999         * UIProcess/WebUIClient.cpp:
   29000         (WebKit::WebUIClient::mouseDidMoveOverElement):
   29001         * UIProcess/WebUIClient.h:
   29002         * WebKit2.pro:
   29003         * WebKit2.xcodeproj/project.pbxproj:
   29004         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   29005         * WebProcess/InjectedBundle/API/c/WKBundleBase.h:
   29006         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp: Added.
   29007         (WKBundleHitTestResultGetTypeID):
   29008         (WKBundleHitTestResultGetNodeHandle):
   29009         (WKBundleHitTestResultGetFrame):
   29010         (WKBundleHitTestResultCopyAbsoluteLinkURL):
   29011         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h: Added.
   29012         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   29013         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp: Added.
   29014         (WebKit::InjectedBundleHitTestResult::create):
   29015         (WebKit::InjectedBundleHitTestResult::nodeHandle):
   29016         (WebKit::InjectedBundleHitTestResult::webFrame):
   29017         (WebKit::InjectedBundleHitTestResult::absoluteLinkURL):
   29018         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h: Added.
   29019         (WebKit::InjectedBundleHitTestResult::coreHitTestResult):
   29020         (WebKit::InjectedBundleHitTestResult::InjectedBundleHitTestResult):
   29021         (WebKit::InjectedBundleHitTestResult::type):
   29022         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
   29023         (WebKit::InjectedBundlePageUIClient::mouseDidMoveOverElement):
   29024         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
   29025         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   29026         (WebKit::WebChromeClient::mouseDidMoveOverElement):
   29027         * win/WebKit2.vcproj:
   29028 
   29029 2010-09-24  Enrica Casucci  <enrica (a] apple.com>
   29030 
   29031         Build fix.
   29032 
   29033         * UIProcess/API/qt/qwkpage_p.h:
   29034         * UIProcess/win/WebView.cpp:
   29035         (WebKit::WebView::setEditCommandState):
   29036         * UIProcess/win/WebView.h:
   29037 
   29038 2010-09-24  Enrica Casucci  <enrica (a] apple.com>
   29039 
   29040         Reviewed by Darin Adler.
   29041 
   29042         Maui: Pasteboard support (42317)
   29043         <rdar://problem/7660537>
   29044         https://bugs.webkit.org/show_bug.cgi?id=42317
   29045         
   29046         This is the final piece of the pasteboard support for WebKit2.
   29047         The menu validation has been hooked up for Mac. The validation is
   29048         performed asynchronously and the menu entries updated while the menu
   29049         is visible. I've created a generic mechanism to call editing commands
   29050         that will make it easy to add new commands we will support in the future.
   29051         The commands supported now are copy, cut, paste, pasteAsPlainText, delete
   29052         and selectAll.
   29053 
   29054         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h: Added DidValidateMenuItem.
   29055         * UIProcess/API/mac/PageClientImpl.h: Added setEditCommandState.
   29056         * UIProcess/API/mac/PageClientImpl.mm: Added setEditCommandState implementation.
   29057         (WebKit::PageClientImpl::setEditCommandState): Added.
   29058         * UIProcess/API/mac/WKView.mm:
   29059         (WebCore::MenuItemInfo::MenuItemInfo):
   29060         (-[WKView initWithFrame:pageNamespaceRef:]):
   29061         (createSelectorExceptionMap): Added.
   29062         (commandNameForSelector): Added.
   29063         (-[WKView validateUserInterfaceItem:]): Added implementation.
   29064         (-[WKView _setUserInterfaceItemState:enabled:state:]): Added.
   29065         * UIProcess/API/mac/WKViewInternal.h:
   29066         * UIProcess/PageClient.h:
   29067         * UIProcess/WebPageProxy.cpp:
   29068         (WebKit::WebPageProxy::validateMenuItem):
   29069         (WebKit::WebPageProxy::executeEditCommand):
   29070         (WebKit::WebPageProxy::didReceiveMessage): Now processing also
   29071         DidValidateMenuItem.
   29072         * UIProcess/WebPageProxy.h:
   29073         * WebProcess/WebPage/WebPage.cpp:
   29074         (WebKit::WebPage::executeEditingCommand): Fixed.
   29075         (WebKit::WebPage::isEditingCommandEnabled): Fixed.
   29076         (WebKit::WebPage::validateMenuItem): Added.
   29077         (WebKit::WebPage::executeEditCommand): Added.
   29078         * WebProcess/WebPage/WebPage.h: Removed cut, copy, paste, selectAll.
   29079         Added validateMenuItem and executeEditCommand.
   29080         * WebProcess/WebPage/WebPage.messages.in: Added new messages.
   29081         * UIProcess/API/qt/qwkpage.cpp:
   29082         (WebKit::QWKPage::setEditCommandState): Added.
   29083         * UIProcess/API/qt/qwkpage_p.h: Added 
   29084         
   29085 
   29086 2010-09-24  Anders Carlsson  <andersca (a] apple.com>
   29087 
   29088         Build fix.
   29089 
   29090         * WebKit2.xcodeproj/project.pbxproj:
   29091 
   29092 2010-09-24  Adam Roben  <aroben (a] apple.com>
   29093 
   29094         Give windowed Netscape plugins their own window
   29095 
   29096         The plugin window is a child of the WebView's window. The WebView's
   29097         window is in the UI process, and the plugin's window is in the web
   29098         process (though someday it will be in the plugin process), but Windows
   29099         mostly handles this just fine. Right now we move the plugin's window
   29100         in the web process, but we need to do it at paint time in the UI
   29101         process instead so that the plugin windows will stay in sync with the
   29102         web page's contents. There are also a whole bunch of plugin quirks
   29103         that WebKit1 supports that we don't support yet, but that's a task for
   29104         another day.
   29105 
   29106         Fixes <http://webkit.org/b/44428> Get basic in-process windowed
   29107         plugins working in WebKit2 on Windows
   29108 
   29109         Reviewed by Anders Carlsson.
   29110 
   29111         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   29112         (WebKit::NetscapePlugin::destroy):
   29113         (WebKit::NetscapePlugin::geometryDidChange):
   29114         Call the new platform-specific functions.
   29115 
   29116         * WebProcess/Plugins/Netscape/NetscapePlugin.h: Added
   29117         platformDestroy/platformGeometryDidChange, and an m_window member on
   29118         Windows to hold our window.
   29119 
   29120         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   29121         (WebKit::NetscapePlugin::platformDestroy):
   29122         (WebKit::NetscapePlugin::platformGeometryDidChange):
   29123         * WebProcess/Plugins/Netscape/qt/NetscapePluginQt.cpp:
   29124         (WebKit::NetscapePlugin::platformDestroy):
   29125         (WebKit::NetscapePlugin::platformGeometryDidChange):
   29126         Stubbed these out.
   29127 
   29128         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
   29129         (WebKit::registerPluginView): Added. The code came from
   29130         WebCore's PluginViewWin.cpp, though I changed it to add one to
   29131         COLOR_WINDOW, since that's what MSDN says we should do.
   29132         (WebKit::NetscapePlugin::platformPostInitialize): If we're windowed,
   29133         create a window for the plugin and make it a child of the WebView's
   29134         window. If we're not windowed, just set m_window to 0.
   29135         (WebKit::NetscapePlugin::platformDestroy): Destroy our window if we
   29136         have one and it hasn't been destroyed already.
   29137         (WebKit::NetscapePlugin::platformGeometryDidChange): Update our
   29138         window's size and position.
   29139 
   29140         * WebProcess/Plugins/PluginController.h:
   29141         * WebProcess/Plugins/PluginView.cpp:
   29142         (WebKit::PluginView::nativeParentWindow):
   29143         * WebProcess/Plugins/PluginView.h:
   29144         Added nativeParentWindow on Windows to return the WebView's window.
   29145 
   29146 2010-09-24  Adam Roben  <aroben (a] apple.com>
   29147 
   29148         Pass the WebView's HWND over to the web process
   29149 
   29150         The HWND is packaged up in the WebPageCreationParameters and stored in
   29151         the WebPage. It will eventually be used by windowed plugins.
   29152 
   29153         Fixes <http://webkit.org/b/46512> WebPage needs access to its
   29154         corresponding HWND from the UI process
   29155 
   29156         Reviewed by Anders Carlsson.
   29157 
   29158         * Shared/WebPageCreationParameters.cpp:
   29159         (WebKit::WebPageCreationParameters::encode):
   29160         (WebKit::WebPageCreationParameters::decode):
   29161         Encode and decode the HWND as a uint64_t.
   29162 
   29163         * Shared/WebPageCreationParameters.h: Added a nativeWindow member to
   29164         store the HWND.
   29165 
   29166         * UIProcess/PageClient.h: Added a nativeWindow function on Windows.
   29167 
   29168         * UIProcess/WebPageProxy.cpp:
   29169         (WebKit::WebPageProxy::creationParameters): Store the HWND from the
   29170         page client in the struct to be sent to the web process.
   29171 
   29172         * UIProcess/win/WebView.cpp:
   29173         (WebKit::WebView::WebView): Moved the call to initializeWebPage after
   29174         we've created our window so that our window will be ready when
   29175         WebPageProxy asks for it to send it to the web process.
   29176         (WebKit::WebView::nativeWindow): Added. Just returns our window.
   29177 
   29178         * UIProcess/win/WebView.h: Added nativeWindow.
   29179 
   29180         * WebProcess/WebPage/WebPage.cpp:
   29181         (WebKit::WebPage::WebPage): Store the HWND in the new m_nativeWindow
   29182         member.
   29183 
   29184         * WebProcess/WebPage/WebPage.h:
   29185         (WebKit::WebPage::nativeWindow): Added this simple getter.
   29186 
   29187 2010-09-24  Adam Roben  <aroben (a] apple.com>
   29188 
   29189         Add WebPageProxy::creationParameters
   29190 
   29191         Fixes <http://webkit.org/b/46510> WebPageProxy has a bunch of
   29192         duplicated WebPageCreationParameters code
   29193 
   29194         Reviewed by Anders Carlsson.
   29195 
   29196         * UIProcess/WebPageProxy.cpp:
   29197         (WebKit::WebPageProxy::initializeWebPage):
   29198         (WebKit::WebPageProxy::reinitializeWebPage):
   29199         (WebKit::WebPageProxy::didReceiveSyncMessage):
   29200         Use creationParameters.
   29201 
   29202         (WebKit::WebPageProxy::creationParameters):
   29203         * UIProcess/WebPageProxy.h:
   29204         Added creationParameters.
   29205 
   29206 2010-09-24  Adam Roben  <aroben (a] apple.com>
   29207 
   29208         Make WebPage::create take a WebPageCreationParameter struct
   29209 
   29210         It only makes sense, after all.
   29211 
   29212         Fixes <http://webkit.org/b/46502>.
   29213 
   29214         Reviewed by Anders Carlsson.
   29215 
   29216         * WebProcess/WebPage/WebPage.cpp:
   29217         (WebKit::WebPage::create):
   29218         (WebKit::WebPage::WebPage):
   29219         * WebProcess/WebPage/WebPage.h:
   29220         Changed to take a WebPageCreationParameters struct.
   29221 
   29222         * WebProcess/WebProcess.cpp:
   29223         (WebKit::WebProcess::createWebPage): Changed to pass a
   29224         WebPageCreationParameters struct.
   29225 
   29226 2010-09-24  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   29227 
   29228         Reviewed by Andreas Kling.
   29229 
   29230         Expose all WebKit2 C API preferences via the Qt API.
   29231 
   29232         Also rename a wrongly named C method (was using Web instead of WK).
   29233 
   29234         * UIProcess/API/C/WKPreferences.cpp:
   29235         (WKPreferencesCopyStandardFontFamily):
   29236         * UIProcess/API/C/WKPreferences.h:
   29237         * UIProcess/API/qt/qwkpreferences.cpp:
   29238         (QWKPreferences::setFontFamily):
   29239         (QWKPreferences::fontFamily):
   29240         (QWKPreferences::testAttribute):
   29241         (QWKPreferences::setAttribute):
   29242         * UIProcess/API/qt/qwkpreferences.h:
   29243 
   29244 2010-09-24  Anders Carlsson  <andersca (a] apple.com>
   29245 
   29246         Reviewed by Adam Roben.
   29247 
   29248         Fill in more of PluginProcess
   29249         https://bugs.webkit.org/show_bug.cgi?id=46534
   29250 
   29251         * DerivedSources.make:
   29252         Add PluginProcessProxy.
   29253 
   29254         * Platform/CoreIPC/MessageID.h:
   29255         Add a MessageClassPluginProcessProxy message class.
   29256 
   29257         * PluginProcess/PluginProcess.cpp:
   29258         (WebKit::PluginProcess::PluginProcess):
   29259         Initialize the shutdown timer.
   29260 
   29261         (WebKit::PluginProcess::initializeConnection):
   29262         Rename this to initializeConnection to avoid conflicts in the CoreIPC message handler.
   29263 
   29264         (WebKit::PluginProcess::removeWebProcessConnection):
   29265         Remove the given web process connection from our vector.
   29266 
   29267         (WebKit::PluginProcess::initialize):
   29268         Create the plug-in module.
   29269 
   29270         (WebKit::PluginProcess::createWebProcessConnection):
   29271         Create a connection handle and send it to the UI process.
   29272 
   29273         (WebKit::PluginProcess::shutdownTimerFired):
   29274         Quit.
   29275 
   29276         * PluginProcess/mac/PluginProcessMainMac.mm:
   29277         (WebKit::PluginProcessMain):
   29278         Call initializeConnection.
   29279 
   29280         * Scripts/webkit2/messages.py:
   29281         Add CoreIPC::MachPort as a special case.
   29282 
   29283         * Scripts/webkit2/messages_unittest.py:
   29284         Add test case.
   29285 
   29286         * UIProcess/Plugins/PluginProcessProxy.cpp:
   29287         (WebKit::PluginProcessProxy::didCreateWebProcessConnection):
   29288         Add empty function.
   29289 
   29290         * UIProcess/Plugins/PluginProcessProxy.messages.in: Added.
   29291         * WebKit2.xcodeproj/project.pbxproj:
   29292         Add PluginProcessProxy.messages.in.
   29293 
   29294         * WebKit2Prefix.h:
   29295         Add an ENABLE_PLUGIN_PROCESS #define which is 0 for now.
   29296 
   29297 2010-09-24  Anders Carlsson  <andersca (a] apple.com>
   29298 
   29299         Reviewed by Adam Roben.
   29300 
   29301         messages_unittest.py should compare the generated results against expected results
   29302         https://bugs.webkit.org/show_bug.cgi?id=46490
   29303 
   29304         * Scripts/webkit2/messages_unittest.py:
   29305 
   29306 2010-09-24  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   29307 
   29308         Reviewed by Antonio Gomes.
   29309 
   29310         Make it possible to get the page preferences for Qt WebKit2 port.
   29311 
   29312         * UIProcess/API/qt/qwkpage.cpp:
   29313         (QWKPagePrivate::QWKPagePrivate):
   29314         (QWKPage::preferences):
   29315         * UIProcess/API/qt/qwkpage.h:
   29316         * UIProcess/API/qt/qwkpage_p.h:
   29317         * UIProcess/API/qt/qwkpreferences.cpp:
   29318         (QWKPreferencesPrivate::createPreferences):
   29319         (QWKPreferencesPrivate::createSharedPreferences):
   29320         (QWKPreferences::sharedPreferences):
   29321         (QWKPreferences::QWKPreferences):
   29322         * UIProcess/API/qt/qwkpreferences.h:
   29323 
   29324 2010-09-24  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   29325 
   29326         Reviewed by Sam Weinig.
   29327 
   29328         Add WebKit2 C API for setting/getting frame flattening and plugin settings.
   29329         http://webkit.org/b/46477
   29330 
   29331         NOTE: The plugin setting was partly done but there was no C API.
   29332 
   29333         * Shared/WebPreferencesStore.cpp:
   29334         (WebKit::WebPreferencesStore::WebPreferencesStore):
   29335         (WebKit::WebPreferencesStore::encode):
   29336         (WebKit::WebPreferencesStore::decode):
   29337         * Shared/WebPreferencesStore.h:
   29338         * UIProcess/API/C/WKPreferences.cpp:
   29339         (WKPreferencesSetFrameFlatteningEnabled):
   29340         (WKPreferencesGetFrameFlatteningEnabled):
   29341         (WKPreferencesSetPluginsEnabled):
   29342         (WKPreferencesGetPluginsEnabled):
   29343         * UIProcess/API/C/WKPreferences.h:
   29344         * UIProcess/WebPreferences.cpp:
   29345         (WebKit::WebPreferences::setFrameFlatteningEnabled):
   29346         (WebKit::WebPreferences::frameFlatteningEnabled):
   29347         (WebKit::WebPreferences::setPluginsEnabled):
   29348         (WebKit::WebPreferences::pluginsEnabled):
   29349         * UIProcess/WebPreferences.h:
   29350         * WebProcess/WebPage/WebPage.cpp:
   29351         (WebKit::WebPage::WebPage):
   29352         (WebKit::WebPage::preferencesDidChange):
   29353 
   29354 2010-09-24  Adam Roben  <aroben (a] apple.com>
   29355 
   29356         Add WebPageCreationParameters
   29357 
   29358         This struct is used in any messages that end up creating a WebPage.
   29359         Using a struct instead of individual parameters will make it easier to
   29360         add platform-specific data, such as an HWND on Windows.
   29361 
   29362         Fixes <http://webkit.org/b/46470> Pass parameters for creating a
   29363         WebPage in a single struct
   29364 
   29365         Reviewed by Anders Carlsson.
   29366 
   29367         * Shared/WebPageCreationParameters.cpp: Added.
   29368         (WebKit::WebPageCreationParameters::encode):
   29369         (WebKit::WebPageCreationParameters::decode):
   29370         Simple encode/decode functions.
   29371 
   29372         * Shared/WebPageCreationParameters.h: Added.
   29373 
   29374         * UIProcess/WebPageProxy.cpp:
   29375         (WebKit::WebPageProxy::initializeWebPage):
   29376         (WebKit::WebPageProxy::reinitializeWebPage):
   29377         (WebKit::WebPageProxy::didReceiveSyncMessage):
   29378         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   29379         (WebKit::WebChromeClient::createWindow):
   29380         * WebProcess/WebProcess.cpp:
   29381         (WebKit::WebProcess::createWebPage):
   29382         (WebKit::WebProcess::didReceiveMessage):
   29383         * WebProcess/WebProcess.h:
   29384         Changed to use WebPageCreationParameters instead of passing the
   29385         values individually.
   29386 
   29387         * WebKit2.pro:
   29388         * WebKit2.xcodeproj/project.pbxproj:
   29389         * win/WebKit2.vcproj:
   29390         Added WebPageCreationParameters.
   29391 
   29392 2010-09-24  Adam Roben  <aroben (a] apple.com>
   29393 
   29394         Stop pretending that we know how to encode a DrawingArea and just
   29395         encode the DrawingAreaInfo directly
   29396 
   29397         DrawingAreaBase and friends were trying to hide the fact that they
   29398         were just encoding/decoding a DrawingAreaInfo behind the scenes, but
   29399         everyone knew what was going on and it was getting embarassing.
   29400 
   29401         Fixes <http://webkit.org/b/46469> Code to encode/decode a
   29402         DrawingAreaInfo is confusing
   29403 
   29404         Reviewed by Anders Carlsson.
   29405 
   29406         * Shared/DrawingAreaBase.cpp: Removed.
   29407         * Shared/DrawingAreaBase.h: Removed encode/decode.
   29408         * UIProcess/ChunkedUpdateDrawingAreaProxy.h: Removed encode override.
   29409 
   29410         * UIProcess/WebPageProxy.cpp:
   29411         (WebKit::WebPageProxy::initializeWebPage):
   29412         (WebKit::WebPageProxy::reinitializeWebPage):
   29413         (WebKit::WebPageProxy::didReceiveSyncMessage):
   29414         Changed to encode the DrawingAreaInfo directly.
   29415 
   29416         * WebKit2.pro:
   29417         * WebKit2.xcodeproj/project.pbxproj:
   29418         * win/WebKit2.vcproj:
   29419         Removed DrawingAreaBase.cpp.
   29420 
   29421 2010-09-24  Adam Roben  <aroben (a] apple.com>
   29422 
   29423         Expose a whole DrawingAreaInfo instead of its constituent parts from
   29424         DrawingAreaBase
   29425 
   29426         This is just a step toward cleaning up how drawing areas are
   29427         encoded/ecoded.
   29428 
   29429         Fixes <http://webkit.org/b/46468> DrawingAreaInfo should be used in
   29430         more places
   29431 
   29432         Reviewed by Anders Carlsson.
   29433 
   29434         * Shared/DrawingAreaBase.cpp:
   29435         (WebKit::DrawingAreaBase::encode): Changed to use info().
   29436 
   29437         * Shared/DrawingAreaBase.h:
   29438         (WebKit::DrawingAreaBase::info): Added. Replaces type() and id().
   29439         (WebKit::DrawingAreaBase::DrawingAreaBase): Changed to store a
   29440         DrawingAreaInfo instead of storing its constituent parts.
   29441 
   29442         * UIProcess/API/mac/WKView.mm:
   29443         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   29444         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   29445         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   29446         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   29447         * WebProcess/WebPage/WebPage.cpp:
   29448         Updated to use info().
   29449 
   29450 2010-09-24  Anders Carlsson  <andersca (a] apple.com>
   29451 
   29452         Reviewed by Sam Weinig.
   29453 
   29454         Add WebProcessConnection class
   29455         https://bugs.webkit.org/show_bug.cgi?id=46478
   29456 
   29457         * PluginProcess/WebProcessConnection.cpp: Added.
   29458         * PluginProcess/WebProcessConnection.h: Added.
   29459         Add stubbed out WebProcessConnection class.
   29460 
   29461         * WebKit2.xcodeproj/project.pbxproj:
   29462         Add files.
   29463 
   29464 2010-09-24  Anders Carlsson  <andersca (a] apple.com>
   29465 
   29466         Reviewed by Sam Weinig.
   29467 
   29468         Add PluginProcess class
   29469         https://bugs.webkit.org/show_bug.cgi?id=46476
   29470 
   29471         * PluginProcess/PluginProcess.cpp: Added.
   29472         * PluginProcess/PluginProcess.h: Added.
   29473         Add stubbed out PluginProcess class.
   29474 
   29475         * PluginProcess/mac/PluginProcessMainMac.mm:
   29476         (WebKit::PluginProcessMain):
   29477         Initialize the plug-in process.
   29478 
   29479         * WebKit2.xcodeproj/project.pbxproj:
   29480         Add files.
   29481 
   29482         * WebProcess/Plugins/PluginProcessConnection.h:
   29483         Add a comment about which connection this is.
   29484 
   29485 2010-09-24  Sam Weinig  <sam (a] webkit.org>
   29486 
   29487         Fix windows build.
   29488 
   29489         * Shared/win/PlatformCertificateInfo.cpp:
   29490         (WebKit::PlatformCertificateInfo::PlatformCertificateInfo):
   29491 
   29492 2010-09-23  Sam Weinig  <sam (a] webkit.org>
   29493 
   29494         Reviewed by Adam Roben.
   29495 
   29496         Add Windows implementation of PlatformCertificateInfo
   29497         Part of <rdar://problem/8350189>
   29498         https://bugs.webkit.org/show_bug.cgi?id=46450
   29499 
   29500         * Shared/win/PlatformCertificateInfo.cpp: Added.
   29501         (WebKit::PlatformCertificateInfo::PlatformCertificateInfo):
   29502         (WebKit::PlatformCertificateInfo::~PlatformCertificateInfo):
   29503         (WebKit::PlatformCertificateInfo::encode):
   29504         (WebKit::PlatformCertificateInfo::decode):
   29505         (WebKit::organizationNameForCertificate):
   29506         * Shared/win/PlatformCertificateInfo.h:
   29507         (WebKit::PlatformCertificateInfo::certificateContext):
   29508         * UIProcess/API/C/win/WKCertificateInfoWin.cpp: Added.
   29509         (WKCertificateInfoGetCertificateContext):
   29510         * UIProcess/API/C/win/WKCertificateInfoWin.h: Added.
   29511         * win/WebKit2.vcproj:
   29512         * win/WebKit2Generated.make:
   29513 
   29514 2010-09-23  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   29515 
   29516         Reviewed by Sam Weinig.
   29517 
   29518         Add WebKit2 C API for setting the font families.
   29519         https://bugs.webkit.org/show_bug.cgi?id=46408
   29520 
   29521         * UIProcess/API/C/WKPreferences.cpp:
   29522         (WKPreferencesSetStandardFontFamily):
   29523         (WebPreferencesCopyStandardFontFamily):
   29524         (WKPreferencesSetFixedFontFamily):
   29525         (WKPreferencesCopyFixedFontFamily):
   29526         (WKPreferencesSetSerifFontFamily):
   29527         (WKPreferencesCopySerifFontFamily):
   29528         (WKPreferencesSetSansSerifFontFamily):
   29529         (WKPreferencesCopySansSerifFontFamily):
   29530         (WKPreferencesSetCursiveFontFamily):
   29531         (WKPreferencesCopyCursiveFontFamily):
   29532         (WKPreferencesSetFantasyFontFamily):
   29533         (WKPreferencesCopyFantasyFontFamily):
   29534         * UIProcess/API/C/WKPreferences.h:
   29535         * UIProcess/WebPreferences.cpp:
   29536         (WebKit::WebPreferences::setStandardFontFamily):
   29537         (WebKit::WebPreferences::standardFontFamily):
   29538         (WebKit::WebPreferences::setFixedFontFamily):
   29539         (WebKit::WebPreferences::fixedFontFamily):
   29540         (WebKit::WebPreferences::setSerifFontFamily):
   29541         (WebKit::WebPreferences::serifFontFamily):
   29542         (WebKit::WebPreferences::setSansSerifFontFamily):
   29543         (WebKit::WebPreferences::sansSerifFontFamily):
   29544         (WebKit::WebPreferences::setCursiveFontFamily):
   29545         (WebKit::WebPreferences::cursiveFontFamily):
   29546         (WebKit::WebPreferences::setFantasyFontFamily):
   29547         (WebKit::WebPreferences::fantasyFontFamily):
   29548         * UIProcess/WebPreferences.h:
   29549         * WebProcess/WebPage/WebPage.cpp:
   29550         (WebKit::WebPage::preferencesDidChange):
   29551 
   29552 2010-09-23  Csaba Osztrogonc  <ossy (a] webkit.org>
   29553 
   29554         Unreviewed buildfix after r68220 on WebKit2.
   29555 
   29556         WebKit2 API: Need way to know when a frame is removed from the hierarchy
   29557         https://bugs.webkit.org/show_bug.cgi?id=46432
   29558 
   29559         [Qt] qt_wk_didRemoveFrameFromHierarchy needs to be implemented
   29560 
   29561         * UIProcess/API/qt/ClientImpl.cpp:
   29562         (qt_wk_didRemoveFrameFromHierarchy):
   29563         * UIProcess/API/qt/ClientImpl.h:
   29564         * UIProcess/API/qt/qwkpage.cpp:
   29565         (QWKPage::QWKPage):
   29566 
   29567 2010-09-23  Sam Weinig  <sam (a] webkit.org>
   29568 
   29569         Reviewed by Anders Carlsson.
   29570 
   29571         WebKit2 API: Need way to know when a frame is removed from the hierarchy
   29572         <rdar://problem/8414062>
   29573         https://bugs.webkit.org/show_bug.cgi?id=46432
   29574 
   29575         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   29576         * UIProcess/API/C/WKPage.h:
   29577         * UIProcess/WebLoaderClient.cpp:
   29578         (WebKit::WebLoaderClient::didRemoveFrameFromHierarchy):
   29579         * UIProcess/WebLoaderClient.h:
   29580         * UIProcess/WebPageProxy.cpp:
   29581         (WebKit::WebPageProxy::didReceiveMessage):
   29582         (WebKit::WebPageProxy::didRemoveFrameFromHierarchy):
   29583         * UIProcess/WebPageProxy.h:
   29584         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   29585         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   29586         (WebKit::InjectedBundlePageLoaderClient::didRemoveFrameFromHierarchy):
   29587         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   29588         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   29589         (WebKit::WebFrameLoaderClient::detachedFromParent2):
   29590         (WebKit::WebFrameLoaderClient::didTransferChildFrameToNewDocument):
   29591 
   29592 2010-09-23  Anders Carlsson  <andersca (a] apple.com>
   29593 
   29594         Reviewed by Sam Weinig.
   29595 
   29596         Add PluginProcessConnection and PluginProcessConnectionManager
   29597         https://bugs.webkit.org/show_bug.cgi?id=46425
   29598 
   29599         * WebKit2.xcodeproj/project.pbxproj:
   29600         Add files.
   29601 
   29602         * WebProcess/Plugins/PluginProcessConnection.cpp:
   29603         Add empty file for now.
   29604         
   29605         * WebProcess/Plugins/PluginProcessConnection.h:
   29606         Add header.
   29607 
   29608         * WebProcess/Plugins/PluginProcessConnectionManager.cpp: Added.
   29609         (WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
   29610         Check for an existing plug-in process connection. If we don't have one, ask the 
   29611         UI process to create one.
   29612         
   29613         (WebKit::PluginProcessConnectionManager::removePluginProcessConnection):
   29614         Remove the connection from our global vector.
   29615 
   29616 2010-09-23  Adam Roben  <aroben (a] apple.com>
   29617 
   29618         Remove the DrawingAreaProxy parameter to
   29619         WebPagProxy::initializeWebPage
   29620 
   29621         Callers are now required to set the drawing area via
   29622         WebPageProxy::setDrawingArea before calling initializeWebPage. This
   29623         will allow us to delay calling initializeWebPage on Windows until
   29624         after we've created the WebView's HWND, which in turn will allow us to
   29625         send the HWND over to the web process when the page is created. (The
   29626         drawing area must be set before creating the HWND so that its size can
   29627         be updated, etc., as the window is created.)
   29628 
   29629         Fixes <http://webkit.org/b/46409> DrawingAreaProxy parameter to
   29630         initializeWebPage is unnecessary, and causes problems on Windows
   29631 
   29632         Reviewed by Anders Carlsson.
   29633 
   29634         * UIProcess/API/mac/WKView.mm:
   29635         (-[WKView initWithFrame:pageNamespaceRef:]):
   29636         * UIProcess/API/qt/qwkpage.cpp:
   29637         (QWKPagePrivate::init):
   29638         * UIProcess/win/WebView.cpp:
   29639         (WebKit::WebView::WebView):
   29640         Added explicit calls to setDrawingArea.
   29641 
   29642         * UIProcess/WebPageProxy.cpp:
   29643         (WebKit::WebPageProxy::initializeWebPage):
   29644         * UIProcess/WebPageProxy.h:
   29645         Removed the DrawingAreaProxy parameter and a stray puts(), and added
   29646         an assertion.
   29647 
   29648 2010-09-23  Anders Carlsson  <andersca (a] apple.com>
   29649 
   29650         Reviewed by Darin Adler.
   29651 
   29652         Implement handlers for the GetPluginProcessConnection message
   29653         https://bugs.webkit.org/show_bug.cgi?id=46415
   29654 
   29655         * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:
   29656         Add GetPluginProcessConnection message kind
   29657 
   29658         * UIProcess/Plugins/PluginProcessManager.cpp:
   29659         (WebKit::PluginProcessManager::PluginProcessManager):
   29660         Add missing constructor.
   29661 
   29662         * UIProcess/WebProcessProxy.cpp:
   29663         (WebKit::WebProcessProxy::getPluginProcessConnection):
   29664         Ask the plug-in process manager for a connection.
   29665         
   29666         (WebKit::WebProcessProxy::didReceiveSyncMessage):
   29667         Call getPluginProcessConnection.
   29668 
   29669         * UIProcess/WebProcessProxy.h:
   29670         * WebProcess/WebPage/WebPage.cpp:
   29671         (WebKit::WebPage::createPlugin):
   29672         Send the GetPluginProcessConnection message.
   29673 
   29674 2010-09-23  Matthew Delaney  <mdelaney (a] apple.com>
   29675 
   29676         Reviewed by Simon Fraser.
   29677 
   29678         Reduce minimum DOMTimer interval
   29679         https://bugs.webkit.org/show_bug.cgi?id=45362
   29680 
   29681         * WebProcess/WebPage/WebPage.cpp:
   29682         Updating set interval call to use Settings' static version.
   29683 
   29684 2010-09-23  Adam Roben  <aroben (a] apple.com>
   29685 
   29686         Try to fix the Windows build
   29687 
   29688         * win/WebKit2Common.vsprops: Add WebKit2/PluginProcess to the include
   29689         path.
   29690 
   29691 2010-09-23  Anders Carlsson  <andersca (a] apple.com>
   29692 
   29693         Reviewed by Sam Weinig.
   29694 
   29695         Add PluginProcessMain files
   29696         https://bugs.webkit.org/show_bug.cgi?id=46379
   29697 
   29698         * PluginProcess/PluginProcessMain.h: Added.
   29699         * PluginProcess/mac/PluginProcessMainMac.mm: Added.
   29700         
   29701         * WebKit2.xcodeproj/project.pbxproj:
   29702         Add PluginProcessMain files. Remove PluginProcess.messages.in from the target so it
   29703         won't be installed in the WebKit2.framework bundle.
   29704 
   29705         * WebProcess/WebKitMain.cpp:
   29706         (WebKitMain):
   29707         Call PluginProcessMain if the process type is ProcessLauncher::PluginProcess.
   29708 
   29709 2010-09-23  Anders Carlsson  <andersca (a] apple.com>
   29710 
   29711         Reviewed by Sam Weinig.
   29712 
   29713         Add PluginProcessProxy class
   29714         https://bugs.webkit.org/show_bug.cgi?id=46377
   29715 
   29716         * DerivedSources.make:
   29717         Add PluginProcess.
   29718 
   29719         * Platform/CoreIPC/Connection.h:
   29720         (CoreIPC::Connection::send):
   29721         Add send overload that takes a message.
   29722 
   29723         * Platform/CoreIPC/MessageID.h:
   29724         Add MessageClassPluginProcess message kind.
   29725 
   29726         * PluginProcess/PluginProcess.messages.in: Added.
   29727         Add PluginProcess messages.
   29728 
   29729         * UIProcess/Plugins/PluginInfoStore.cpp:
   29730         (WebKit::PluginInfoStore::infoForPluginWithPath):
   29731         * UIProcess/Plugins/PluginInfoStore.h:
   29732         New function that returns the plug-in info for a plug-in with the given path.
   29733 
   29734         * UIProcess/Plugins/PluginProcessManager.cpp:
   29735         (WebKit::PluginProcessManager::getPluginProcessConnection):
   29736         Look for an existing plug-in process proxy.
   29737 
   29738         * UIProcess/Plugins/PluginProcessProxy.cpp: Added.
   29739         (WebKit::PluginProcessProxy::create):
   29740         Launch the process.
   29741 
   29742         (WebKit::PluginProcessProxy::didReceiveMessage):
   29743         (WebKit::PluginProcessProxy::didReceiveInvalidMessage):
   29744         Add stubbed out functions.
   29745 
   29746         (WebKit::PluginProcessProxy::didClose):
   29747         Delete the plug-in process proxy.
   29748         
   29749         (WebKit::PluginProcessProxy::didFinishLaunching):
   29750         Open a connection to the plug-in process proxy.
   29751 
   29752         * UIProcess/Plugins/PluginProcessProxy.h: Added.
   29753         (WebKit::PluginProcessProxy::pluginInfo):
   29754         Return the plug-in info.
   29755 
   29756         * UIProcess/WebProcessProxy.h:
   29757         (WebKit::WebProcessProxy::context):
   29758         Add a context getter.
   29759 
   29760         * WebKit2.xcodeproj/project.pbxproj:
   29761         Add new files.
   29762 
   29763 2010-09-23  Jessie Berlin  <jberlin (a] apple.com>
   29764 
   29765         Reviewed by Sam Weinig.
   29766 
   29767         Expose the BundlePage on the BundleFrame in the API.
   29768         https://bugs.webkit.org/show_bug.cgi?id=46366
   29769 
   29770         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   29771         (WKBundleFrameGetPage):
   29772         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   29773 
   29774 2010-09-23  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   29775 
   29776         Reviewed by Andreas Kling.
   29777 
   29778         Add a preference class for Qt for WebKit2.
   29779 
   29780         * UIProcess/API/qt/qwkpreferences.cpp: Added.
   29781         (QWKPreferences::globalPreferences):
   29782         (QWKPreferences::QWKPreferences):
   29783         (QWKPreferences::~QWKPreferences):
   29784         (QWKPreferences::testAttribute):
   29785         (QWKPreferences::setAttribute):
   29786         * UIProcess/API/qt/qwkpreferences.h: Added.
   29787         * WebKit2.pro:
   29788 
   29789 2010-09-23  Anders Carlsson  <andersca (a] apple.com>
   29790 
   29791         Reviewed by Adam Roben.
   29792 
   29793         It should be possible to conditionally define an entire group of messages
   29794         https://bugs.webkit.org/show_bug.cgi?id=46368
   29795 
   29796         * Scripts/webkit2/messages.py:
   29797         Check for a condition when parsing the "messages -> " string and set it as the
   29798         message receiver condition.
   29799 
   29800         * Scripts/webkit2/messages_unittest.py:
   29801         Add test.
   29802 
   29803 2010-09-23  Anders Carlsson  <andersca (a] apple.com>
   29804 
   29805         Reviewed by Adam Roben.
   29806 
   29807         Message autogeneration script should parse sync message syntax
   29808         https://bugs.webkit.org/show_bug.cgi?id=46359
   29809 
   29810         * Scripts/webkit2/messages.py:
   29811         (MessageReceiver.parse): Expand the regular expression to handle sync messages.
   29812         (function_parameter_type): Use a const reference for all parameters except the known builtins.
   29813         (base_class): Returns the base class for a sync message reply struct.
   29814         (delayed_base_class): Returns the base class for a delayed sync message reply struct.
   29815         
   29816         * Scripts/webkit2/messages_unittest.py:
   29817         Add unit tests for various sync messages.
   29818 
   29819 2010-09-22  Andras Becsi  <abecsi (a] webkit.org>
   29820 
   29821         Unreviewed build fix after r68079.
   29822 
   29823         [Qt] Also generate WebPage's message-receiving code and message types
   29824         for the Qt port of WebKit2.
   29825 
   29826         * DerivedSources.pro:
   29827         * WebKit2.pro:
   29828 
   29829 2010-09-22  Anders Carlsson  <andersca (a] apple.com>
   29830 
   29831         Reviewed by Adam Roben.
   29832 
   29833         Stub out a PluginProcessManager class
   29834         https://bugs.webkit.org/show_bug.cgi?id=46305
   29835 
   29836         * UIProcess/Plugins/PluginProcessManager.cpp: Added.
   29837         (WebKit::PluginProcessManager::shared):
   29838         (WebKit::PluginProcessManager::getPluginProcessConnection):
   29839         (WebKit::PluginProcessManager::removePluginProcessProxy):
   29840         * UIProcess/Plugins/PluginProcessManager.h: Added.
   29841         * WebKit2.xcodeproj/project.pbxproj:
   29842 
   29843 2010-09-22  Kenneth Rohde Christiansen  <kenneth (a] webkit.org>
   29844 
   29845         Reviewed by Antonio Gomes.
   29846 
   29847         Add a ViewportConfiguration class for the Qt WebKit2 API, which
   29848         currently calculated a fallback viewport configuration.
   29849 
   29850         * UIProcess/API/qt/qwkpage.cpp:
   29851         (QWKPage::ViewportConfiguration::ViewportConfiguration):
   29852         (QWKPage::ViewportConfiguration::~ViewportConfiguration):
   29853         (QWKPage::ViewportConfiguration::operator=):
   29854         (QWKPage::viewportConfigurationForSize):
   29855         * UIProcess/API/qt/qwkpage.h:
   29856         * UIProcess/API/qt/qwkpage_p.h:
   29857         (QtViewportConfigurationPrivate::QtViewportConfigurationPrivate):
   29858 
   29859 2010-09-22  Adam Roben  <aroben (a] apple.com>
   29860 
   29861         Windows build fix
   29862 
   29863         * WebProcess/WebKitMain.cpp:
   29864         (WebKitMain): Fix typo
   29865 
   29866 2010-09-22  Adam Roben  <aroben (a] apple.com>
   29867 
   29868         Autogenerate WebPage's message-receiving code and message types
   29869 
   29870         This patch encompasses several changes that allow message types and
   29871         receiving code to be generated by a script, and add some type-safety
   29872         as a bonus. Messages are now represented by structs instead of an ID +
   29873         ArgumentCoder. The struct contains the arguments and the ID together,
   29874         and has a constructor that enforces the use of correct types.
   29875         Correspondingly, a new overload of WebProcessProxy::send that takes a
   29876         message struct (instead of a message ID and separate arguments) has
   29877         been added. Eventually all callers should use this overload and the
   29878         old one can be removed.
   29879 
   29880         This patch only touches WebPage's messages. We should transition other
   29881         message receivers over to this new system eventually.
   29882 
   29883         Fixes <http://webkit.org/b/43636> <rdar://problem/8282462> Add a
   29884         type-safe IPC mechanism to WebKit2
   29885 
   29886         Reviewed by Anders Carlsson.
   29887 
   29888         * DerivedSources.make: Added. Calls generate-message-receiver.py and
   29889         generate-messages-header.py for each message receiver it knows about
   29890         (just WebPage for now).
   29891 
   29892         * Platform/CoreIPC/Arguments.h: Added First/Second/ThirdArgumentType
   29893         typedefs for use in handleMessage.
   29894 
   29895         * Platform/CoreIPC/HandleMessage.h: Added.
   29896         (CoreIPC::handleMessage): This overloaded function template decodes
   29897         arguments and passes them along to the specified function.
   29898 
   29899         * Scripts/generate-message-receiver.py: Added.
   29900         * Scripts/generate-messages-header.py: Added.
   29901         These scripts just wrap functionality in messages.py.
   29902 
   29903         * Scripts/webkit2/__init__.py: Added. This just exists so that Python
   29904         will treat this directory as a package.
   29905 
   29906         * Scripts/webkit2/messages.py: Added. Contains the code to parse
   29907         messages files and generate .cpp/.h files from them.
   29908         (MessageReceiver.__init__): This class represents a single receiver of
   29909         messages.
   29910         (MessageReceiver.iterparameters): Returns a generator that can be used
   29911         to iterate over all the parameters of all the messages of this
   29912         receiver.
   29913         (MessageReceiver.parse): Reads a messages file from a file-like object
   29914         and parses it into a MessageReceiver object.
   29915         (Message.__init__): This class represents a single message.
   29916         (Message.id): Returns the ID name for this message.
   29917         (Parameter.__init__): This class represents a single parameter for a
   29918         message.
   29919         (messages_header_filename): Returns the name of the header that
   29920         defines the messages for a given receiver.
   29921         (surround_in_condition): Surrounds the given string in #if/#endif if
   29922         there is an associated condition.
   29923         (messages_to_kind_enum): Returns a string that defines the Kind enum
   29924         for these messages.
   29925         (function_parameter_type): Returns the type that should be used when
   29926         passing a value of the given type as a parameter to a function.
   29927         (base_class): Returns the base class for a message struct.
   29928         (message_to_struct_declaration): Returns a string that declares the
   29929         struct for this message.
   29930         (forward_declarations_for_namespace): Returns a string that contains
   29931         forward-declarations for a set of types in a given namespace.
   29932         (forward_declarations): Returns a string that contains all the
   29933         forward-declarations needed in order to declare all the message
   29934         structs for this receiver.
   29935         (generate_header_file): Returns a string containing the messages
   29936         header file for this receiver.
   29937         (handler_function): Returns the name of the function that handles a
   29938         given message for a given receiver.
   29939         (case_statement): Returns a string containing a case statement for
   29940         handling the given message.
   29941         (header_for_type): Returns the header needed to define a given type,
   29942         enclosed in quotes or angle brackets as needed.
   29943         (generate_message_handler): Returns a string containing the contents
   29944         of a .cpp file that defines a didReceive*Message function.
   29945 
   29946         * Scripts/webkit2/messages_unittest.py: Added. Contains tests for
   29947         messages.py.
   29948 
   29949         * Shared/CoreIPCSupport/WebPageMessageKinds.h: Removed. This has been
   29950         replaced by a generated WebPageMessages.h header.
   29951 
   29952         * UIProcess/WebEditCommandProxy.cpp:
   29953         * UIProcess/WebPageProxy.cpp:
   29954         Updated to use the new message structs and WebProcessProxy::send
   29955         overload.
   29956 
   29957         * UIProcess/WebProcessProxy.h:
   29958         (WebKit::WebProcessProxy::send): Added this new overload that takes a
   29959         message struct.
   29960 
   29961         * WebKit2.xcodeproj/project.pbxproj: Added a Derived Sources shell
   29962         script target that invokes DerivedSources.make. Added "Derived
   29963         Sources" and "Scripts" groups that contain the various new files.
   29964 
   29965         * WebProcess/WebPage/WebPage.cpp:
   29966         (WebKit::WebPage::didReceivePolicyDecision):
   29967         (WebKit::WebPage::getSourceForFrame):
   29968         Changed these functions to take the raw IPC types and do the necessary
   29969         translation themselves. This keeps the generated code from need to
   29970         know how to perform the translation.
   29971 
   29972         (WebKit::WebPage::didReceiveMessage): Replaced handling of WebPage
   29973         messages with a call to didReceiveWebPageMessage, whose implementation
   29974         is generated by the scripts.
   29975 
   29976         * WebProcess/WebPage/WebPage.h: Added didReceiveWebPageMessage.
   29977 
   29978         * WebProcess/WebPage/WebPage.messages.in: Added. This file declares
   29979         all of the messages that WebPage receives, roughly grouped by
   29980         functionality.
   29981 
   29982         * win/WebKit2.vcproj: Added "Derived Sources" and "Scripts" filters
   29983         that contain the various new files. Let VS resort some other files.
   29984 
   29985         * win/WebKit2Common.vsprops: Added
   29986         $(WebKitOutputDir)\obj\$(ProjectName)\DerivedSources to the include
   29987         path so that the generated messages header can be found.
   29988 
   29989         * win/WebKit2.make: Copy the generated source files to $(DSTROOT).
   29990 
   29991         * win/WebKit2Generated.make: Added a call to build-generated-files.sh.
   29992 
   29993         * win/WebKit2Generated.vcproj: Added build-generated-files.sh.
   29994 
   29995         * win/build-generated-files.sh: Added. Invokes DerivedSources.make.
   29996 
   29997 2010-09-22  Anders Carlsson  <andersca (a] apple.com>
   29998 
   29999         Reviewed by Darin Adler.
   30000 
   30001         Enhance ProcessLauncher to be able to launch plug-in processes
   30002         https://bugs.webkit.org/show_bug.cgi?id=46295
   30003 
   30004         * UIProcess/Launcher/ProcessLauncher.cpp:
   30005         (WebKit::ProcessLauncher::ProcessLauncher):
   30006         Make the ProcessLauncher constructor take a LaunchOptions struct.
   30007 
   30008         (WebKit::ProcessLauncher::processTypeAsString):
   30009         Given a process type, return its string representation.
   30010 
   30011         (WebKit::ProcessLauncher::getProcessTypeFromString):
   30012         And vice versa.
   30013 
   30014         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   30015         (WebKit::ProcessLauncher::launchProcess):
   30016         Rename "mode" to "type" and pass the type as a string based on the LaunchOptions struct.
   30017         Also, set the launch architecture from the LaunchOptions struct.
   30018 
   30019         * UIProcess/Launcher/win/ProcessLauncherWin.cpp:
   30020         (WebKit::ProcessLauncher::launchProcess):
   30021         Rename "mode" to "type."
   30022 
   30023         * UIProcess/WebProcessProxy.cpp:
   30024         (WebKit::WebProcessProxy::connect):
   30025         Initialize a LaunchOptions struct.
   30026 
   30027         * WebProcess/WebKitMain.cpp:
   30028         (WebKitMain):
   30029         Factor code that can be shared between the mac and windows WebKitMain code out into a
   30030         WebKitMain overload that takes a CommandLine.
   30031 
   30032         * WebProcess/WebProcessMain.h:
   30033         * WebProcess/mac/WebProcessMainMac.mm:
   30034         (WebKit::WebProcessMain):
   30035         * WebProcess/win/WebProcessMainWin.cpp:
   30036         (WebKit::WebProcessMain):
   30037         Change WebProcessMain to take a const CommandLine reference instead of a pointer.
   30038 
   30039 2010-09-22  Anders Carlsson  <andersca (a] apple.com>
   30040 
   30041         Reviewed by Adam Roben.
   30042 
   30043         Rename GetPluginHostConnection to GetPluginPath
   30044         https://bugs.webkit.org/show_bug.cgi?id=46292
   30045 
   30046         Rename GetPluginHostConnection to GetPluginPath since this message will always get the
   30047         plug-in path. We'll add another message to actually get the connection.
   30048 
   30049         * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:
   30050         * UIProcess/WebProcessProxy.cpp:
   30051         (WebKit::WebProcessProxy::getPluginPath):
   30052         (WebKit::WebProcessProxy::didReceiveMessage):
   30053         (WebKit::WebProcessProxy::didReceiveSyncMessage):
   30054         * UIProcess/WebProcessProxy.h:
   30055         * WebProcess/WebPage/WebPage.cpp:
   30056         (WebKit::WebPage::createPlugin):
   30057 
   30058 2010-09-22  Anders Carlsson  <andersca (a] apple.com>
   30059 
   30060         Reviewed by Adam Roben.
   30061 
   30062         Move plug-in creation to WebPage::createPlugin
   30063         https://bugs.webkit.org/show_bug.cgi?id=46289
   30064 
   30065         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   30066         (WebKit::WebFrameLoaderClient::createPlugin):
   30067         Call WebPage::createPlugin.
   30068 
   30069         * WebProcess/WebPage/WebPage.cpp:
   30070         (WebKit::WebPage::createPlugin):
   30071         Create the plug-in.
   30072 
   30073 2010-09-22  Anders Carlsson  <andersca (a] apple.com>
   30074 
   30075         Reviewed by Darin Adler.
   30076 
   30077         Random plug-in cleanups
   30078         https://bugs.webkit.org/show_bug.cgi?id=46279
   30079 
   30080         * WebProcess/Plugins/Plugin.cpp:
   30081         (WebKit::Plugin::Parameters::encode):
   30082         (WebKit::Plugin::Parameters::decode):
   30083         Add CoreIPC coding support for the Plugin::Parameters struct.
   30084 
   30085         * WebProcess/Plugins/PluginController.h:
   30086         Add pluginProcessCrashed pure virtual member function.
   30087 
   30088         * WebProcess/Plugins/PluginView.cpp:
   30089         (WebKit::PluginView::handleEvent):
   30090         handleEvent can be called when m_plugin is null.
   30091 
   30092         (WebKit::PluginView::pluginProcessCrashed):
   30093         Ask the renderer to show the crashed plug-in indicator.
   30094         
   30095 2010-09-22  Anders Carlsson  <andersca (a] apple.com>
   30096 
   30097         Reviewed by John Sullivan.
   30098 
   30099         Don't listen for some window notifications on all windows
   30100         https://bugs.webkit.org/show_bug.cgi?id=46277
   30101 
   30102         Only listen for NSWindowDidBecomeKeyNotification and NSWindowDidResignKeyNotification notifications
   30103         on all windows; this matches old WebKit and fixes a crash where we would send notifications to views whose
   30104         underlying pages were invalid.
   30105 
   30106         * UIProcess/API/mac/WKView.mm:
   30107         (-[WKView addWindowObserversForWindow:]):
   30108         (-[WKView removeWindowObservers]):
   30109 
   30110 2010-09-22  Anders Carlsson  <andersca (a] apple.com>
   30111 
   30112         Reviewed by Adam Roben.
   30113 
   30114         Crash when running plug-in layout tests
   30115         https://bugs.webkit.org/show_bug.cgi?id=46269
   30116 
   30117         Store the web page directly in the PluginView class, instead of getting it from the frame
   30118         of the plug-in element; this fixes two crashes, one where the plug-in element had been deallocated
   30119         before the plug-in view, and another where the plug-in element's document did not have a frame.
   30120 
   30121         This also makes things more robust since we're asserting in the WebPage destructor that no plug-ins have
   30122         an outstanding reference to it.
   30123         
   30124         * WebProcess/Plugins/PluginView.cpp:
   30125         (WebKit::webPage):
   30126         (WebKit::PluginView::PluginView):
   30127         (WebKit::PluginView::~PluginView):
   30128         (WebKit::PluginView::initializePlugin):
   30129         * WebProcess/Plugins/PluginView.h:
   30130 
   30131 2010-09-22  Anders Carlsson  <andersca (a] apple.com>
   30132 
   30133         Reviewed by Adam Roben.
   30134 
   30135         Change a bunch of Vector<char> to Vector<uint8_t> to better indicate that we're
   30136         dealing with raw bytes.
   30137 
   30138         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   30139         (WebKit::parsePostBuffer):
   30140         (WebKit::NPN_GetURL):
   30141         (WebKit::NPN_PostURL):
   30142         (WebKit::NPN_GetURLNotify):
   30143         (WebKit::NPN_PostURLNotify):
   30144         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   30145         (WebKit::NetscapePlugin::loadURL):
   30146         (WebKit::NetscapePlugin::initialize):
   30147         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   30148         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   30149         (WebKit::NetscapePluginStream::deliverData):
   30150         (WebKit::NetscapePluginStream::deliverDataToPlugin):
   30151         * WebProcess/Plugins/Netscape/NetscapePluginStream.h:
   30152         * WebProcess/Plugins/PluginController.h:
   30153         * WebProcess/Plugins/PluginView.cpp:
   30154         (WebKit::PluginView::loadURL):
   30155         * WebProcess/Plugins/PluginView.h:
   30156 
   30157 2010-09-22  Anders Carlsson  <andersca (a] apple.com>
   30158 
   30159         Reviewed by Adam Roben.
   30160 
   30161         Assertion fails in [WKView _updateWindowFrame] when closing a WebKit2 window
   30162         https://bugs.webkit.org/show_bug.cgi?id=46264
   30163         <rdar://problem/8463534>
   30164 
   30165         * UIProcess/API/mac/WKView.mm:
   30166         (-[WKView viewDidMoveToWindow]):
   30167         Only update window visibility and frame when we're moving to a window.
   30168 
   30169 2010-09-22  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   30170 
   30171         Reviewed by Kenneth Rohde Christiansen.
   30172 
   30173         [Qt] PluginStrategy implementation is broken
   30174         https://bugs.webkit.org/show_bug.cgi?id=46078
   30175 
   30176         * UIProcess/API/qt/qwkpage.cpp:
   30177         (QWKPagePrivate::QWKPagePrivate):
   30178         Initialize the WebPlatformStrategies at the UI side as well because
   30179         we are using the LocalizationStrategy in the UI process.
   30180         Added a FIXME since this should be fixed in the future.
   30181 
   30182 2010-09-22  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   30183 
   30184         Reviewed by Kenneth Rohde Christiansen.
   30185 
   30186         PluginStrategy should satisfy the needs of Qt
   30187         https://bugs.webkit.org/show_bug.cgi?id=45857
   30188         No new functionality so no new tests.
   30189 
   30190         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   30191         (WebKit::WebPlatformStrategies::getPluginInfo):
   30192         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
   30193 
   30194 2010-09-21  Steve Falkenburg  <sfalken (a] apple.com>
   30195 
   30196         Rubber stamped by Simon Fraser.
   30197 
   30198         Add DirectX SDK include path.
   30199 
   30200         * win/WebKit2DirectX.vsprops:
   30201 
   30202 2010-09-21  Anders Carlsson  <andersca (a] apple.com>
   30203 
   30204         Reviewed by Dan Bernstein.
   30205 
   30206         Forward window focus changes to the plug-in
   30207         https://bugs.webkit.org/show_bug.cgi?id=46227
   30208 
   30209         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   30210         (WebKit::NetscapePlugin::windowFocusChanged):
   30211         Send the NPCocoaEventWindowFocusChanged event.
   30212 
   30213         (WebKit::NetscapePlugin::windowFrameChanged):
   30214         (WebKit::NetscapePlugin::windowVisibilityChanged):
   30215         Add stubs.
   30216 
   30217         * WebProcess/Plugins/Plugin.h:
   30218         Add windowFocusChanged, windowFrameChanged and windowVisibilityChanged.
   30219 
   30220         * WebProcess/Plugins/PluginView.cpp:
   30221         (WebKit::PluginView::webPage):
   30222         Make webPage a member function instead.
   30223 
   30224         (WebKit::PluginView::setWindowIsFocused):
   30225         Call the plug-in member function.
   30226 
   30227         (WebKit::PluginView::initializePlugin):
   30228         When the plug-in has been initialized, update its window frame, window visibility 
   30229         and window focus states.
   30230 
   30231         (WebKit::PluginView::setParent):
   30232         Move viewGeometryDidChange to initializePlugin.
   30233         
   30234         * WebProcess/Plugins/PluginView.h:
   30235         * WebProcess/WebPage/WebPage.cpp:
   30236         (WebKit::WebPage::setActive):
   30237         Tell all plug-in views about the new window focus state.
   30238 
   30239         (WebKit::WebPage::windowIsFocused):
   30240         Return whether the window is focused or not.
   30241 
   30242         * WebProcess/WebPage/WebPage.h:
   30243         (WebKit::WebPage::windowIsVisible):
   30244         (WebKit::WebPage::windowFrame):
   30245         Add getters.
   30246 
   30247 2010-09-21  Anders Carlsson  <andersca (a] apple.com>
   30248 
   30249         Reviewed by John Sullivan.
   30250 
   30251         Handle booleans in injected bundle messages
   30252         https://bugs.webkit.org/show_bug.cgi?id=46213
   30253 
   30254         * Shared/UserMessageCoders.h:
   30255         (WebKit::UserMessageEncoder::baseEncode):
   30256         (WebKit::UserMessageDecoder::baseDecode):
   30257 
   30258 2010-09-21  Brian Weinstein  <bweinstein (a] apple.com>
   30259 
   30260         Reviewed by Adam Roben.
   30261 
   30262         WebKit2 should look for WebKit2WebProcess.exe next to WebKit.dll
   30263         https://bugs.webkit.org/show_bug.cgi?id=46209
   30264         <rdar://problem/8445639>
   30265         
   30266         Find WebKit2WebProcess.exe by getting the full path to WebKit.dll, and then
   30267         removing the last path component and replacing it with WebKit2WebProcess.exe.
   30268 
   30269         * UIProcess/Launcher/win/ProcessLauncherWin.cpp:
   30270         (WebKit::ProcessLauncher::launchProcess):
   30271 
   30272 2010-09-21  Anders Carlsson  <andersca (a] apple.com>
   30273 
   30274         Reviewed by Adam Roben.
   30275 
   30276         Send window visibility and window frame change sizes to the plug-in
   30277         https://bugs.webkit.org/show_bug.cgi?id=46202
   30278 
   30279         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
   30280         * UIProcess/API/mac/WKView.mm:
   30281         (-[WKView _updateWindowVisibility]):
   30282         Call WebPageProxy::setWindowIsVisible.
   30283 
   30284         (-[WKView addWindowObserversForWindow:]):
   30285         Add additional observers.
   30286 
   30287         (-[WKView removeWindowObservers]):
   30288         Remove observers.
   30289 
   30290         (-[WKView _updateWindowFrame]):
   30291         Call WebPageProxy::setWindowFrame.
   30292 
   30293         (-[WKView viewDidMoveToWindow]):
   30294         Update the window visibility and the web frame.
   30295 
   30296         (-[WKView _windowDidMiniaturize:]):
   30297         (-[WKView _windowDidDeminiaturize:]):
   30298         Update the window visibility.
   30299 
   30300         (-[WKView _windowFrameDidChange:]):
   30301         Update the window frame.
   30302 
   30303         * UIProcess/WebPageProxy.cpp:
   30304         (WebKit::WebPageProxy::setWindowIsVisible):
   30305         (WebKit::WebPageProxy::setWindowFrame):
   30306         Send messages along to the web process.
   30307 
   30308         * WebProcess/Plugins/PluginView.cpp:
   30309         (WebKit::PluginView::PluginView):
   30310         Register the plug-in view.
   30311 
   30312         (WebKit::PluginView::~PluginView):
   30313         Unregister the plug-in view.
   30314 
   30315         (WebKit::PluginView::setWindowIsVisible):
   30316         (WebKit::PluginView::setWindowFrame):
   30317         Add empty stubs.
   30318 
   30319         * WebProcess/WebPage/WebPage.cpp:
   30320         (WebKit::WebPage::WebPage):
   30321         Initialize m_windowIsVisible.
   30322 
   30323         (WebKit::WebPage::~WebPage):
   30324         Assert that all plug-in views have been removed.
   30325 
   30326         (WebKit::WebPage::setWindowIsVisible):
   30327         Notify all plug-ins about the window visibility change.
   30328         
   30329         (WebKit::WebPage::setWindowFrame):
   30330         Notify all plug-ins about the window frame change.
   30331         
   30332         (WebKit::WebPage::didReceiveMessage):
   30333         Handle setWindowIsVisible and setWindowFrame.
   30334 
   30335 2010-09-21  Anders Carlsson  <andersca (a] apple.com>
   30336 
   30337         Reviewed by Mark Rowe.
   30338 
   30339         * Configurations/WebKit2.xcconfig:
   30340         Add a note about keeping the path in MainMac.cpp in sync with the install path.
   30341 
   30342         * mac/MainMac.cpp:
   30343         (main):
   30344         Use the correct framework path.
   30345 
   30346 2010-09-21  Anders Carlsson  <andersca (a] apple.com>
   30347 
   30348         Fix build.
   30349 
   30350         * mac/MainMac.cpp:
   30351         (closeUnusedFileDescriptors):
   30352         Move this out into a separate function.
   30353 
   30354         (main):
   30355         Don't use the soft linking macros, they were bringing in WTFReportAssertionFailure.
   30356 
   30357 2010-09-20  Anders Carlsson  <andersca (a] apple.com>
   30358 
   30359         Reviewed by Dan Bernstein.
   30360 
   30361         Zombie WebProcesses are left around
   30362         https://bugs.webkit.org/show_bug.cgi?id=46148
   30363         <rdar://problem/8455898>
   30364 
   30365         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   30366         (WebKit::setupTerminationNotificationHandler):
   30367         Register a dispatch handler that calls waitpid when the child process exits. This prevents zombies from
   30368         staying around after the child process has quit.
   30369 
   30370         (WebKit::ProcessLauncher::launchProcess):
   30371         Pass POSIX_SPAWN_START_SUSPENDED to posix_spawn to avoid race conditions when setting up the termination
   30372         notification handler. When the handler is set up we send the SIGCONT signal to the child process.
   30373         
   30374         * mac/MainMac.cpp:
   30375         (main):
   30376         Loop through all file descriptors except for stdin, stdout and stderr and close them.
   30377 
   30378         * WebKit2.xcodeproj/project.pbxproj:
   30379         Soft-link the Web process with WebKit2. We do this so we can ensure that we won't accidentally close any
   30380         file descriptors opened by initialization code that would have been called before main().
   30381 
   30382 2010-09-21  Andras Becsi  <abecsi (a] inf.u-szeged.hu>
   30383 
   30384         Reviewed by Csaba Osztrogonc.
   30385 
   30386         [Qt] QtWebProcess should clean up shared memory map files on close
   30387         https://bugs.webkit.org/show_bug.cgi?id=45984
   30388 
   30389         Relocate MappedMemory struct code to it's own header and implement
   30390         a singleton pool class (MappedMemoryPool) which tracks shared memory
   30391         to be able to clean up map files from disk if RunLoop stops.
   30392 
   30393         * Shared/qt/MappedMemory.h: Added.
   30394         (WebKit::MappedMemory::markUsed):
   30395         (WebKit::MappedMemory::markFree):
   30396         (WebKit::MappedMemory::isFree):
   30397         * Shared/qt/MappedMemoryPool.cpp: Added.
   30398         (WebKit::MappedMemoryPool::MappedMemoryPool):
   30399         (WebKit::MappedMemoryPool::instance):
   30400         (WebKit::MappedMemoryPool::size):
   30401         (WebKit::MappedMemoryPool::at):
   30402         (WebKit::MappedMemoryPool::append):
   30403         (WebKit::MappedMemoryPool::cleanUp):
   30404         * Shared/qt/UpdateChunk.cpp:
   30405         (WebKit::mapMemory):
   30406         (WebKit::mapFile):
   30407         * Shared/qt/UpdateChunk.h:
   30408         * WebKit2.pro:
   30409 
   30410 2010-09-20  Philippe Normand  <pnormand (a] igalia.com>
   30411 
   30412         Reviewed by Eric Carlson.
   30413 
   30414         [GTK] enhanced context menu for media elements
   30415         https://bugs.webkit.org/show_bug.cgi?id=45021
   30416 
   30417         New localized strings for the media element context-menu.
   30418 
   30419         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   30420         (WebKit::WebPlatformStrategies::contextMenuItemTagOpenVideoInNewWindow):
   30421         (WebKit::WebPlatformStrategies::contextMenuItemTagOpenAudioInNewWindow):
   30422         (WebKit::WebPlatformStrategies::contextMenuItemTagCopyVideoLinkToClipboard):
   30423         (WebKit::WebPlatformStrategies::contextMenuItemTagCopyAudioLinkToClipboard):
   30424         (WebKit::WebPlatformStrategies::contextMenuItemTagToggleMediaControls):
   30425         (WebKit::WebPlatformStrategies::contextMenuItemTagToggleMediaLoop):
   30426         (WebKit::WebPlatformStrategies::contextMenuItemTagEnterVideoFullscreen):
   30427         (WebKit::WebPlatformStrategies::contextMenuItemTagMediaPlay):
   30428         (WebKit::WebPlatformStrategies::contextMenuItemTagMediaPause):
   30429         (WebKit::WebPlatformStrategies::contextMenuItemTagMediaMute):
   30430         (WebKit::WebPlatformStrategies::contextMenuItemTagMediaUnMute):
   30431         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
   30432 
   30433 2010-09-20  Anders Carlsson  <andersca (a] apple.com>
   30434 
   30435         Reviewed by Adam Roben.
   30436 
   30437         Add a way to delay sending replies to sync requests
   30438         https://bugs.webkit.org/show_bug.cgi?id=46117
   30439 
   30440         Change the didReceiveSyncMessage client message to return a SyncReplyMode. If the SyncReplyMode is 
   30441         AutomaticReply, the reply will be sent when the didReceiveSyncMessage function returns. However, if it is
   30442         ManualReply, then the client is handed ownership of the reply ArgumentEncoder and can choose to send it 
   30443         at a later time using Connection::sendSyncReply.
   30444 
   30445         * Platform/CoreIPC/Connection.cpp:
   30446         (CoreIPC::Connection::sendSyncReply):
   30447         Send the message as a sync reply.
   30448 
   30449         (CoreIPC::Connection::dispatchMessages):
   30450         Check the return value of didReceiveSyncMessage. If it is AutomaticReply, immediately send the reply.
   30451 
   30452         * Platform/CoreIPC/Connection.h:
   30453         (CoreIPC::Connection::MessageReceiver::didReceiveSyncMessage):
   30454         Change return type.
   30455 
   30456         * UIProcess/WebProcessProxy.cpp:
   30457         (WebKit::WebProcessProxy::didReceiveSyncMessage):
   30458         * UIProcess/WebProcessProxy.h:
   30459         Update for changed return type.
   30460 
   30461 2010-09-20  Anders Carlsson  <andersca (a] apple.com>
   30462 
   30463         Reviewed by Adam Roben.
   30464 
   30465         Don't use bufferIsLargeEnoughToContain for Vectors with variable sized elements
   30466         https://bugs.webkit.org/show_bug.cgi?id=46109
   30467 
   30468         Add a new VectorArgumentCoder class template, with specializations based on whether the
   30469         element is fixed size or not. Then update the ArgumentEncoder<Vector<T>> specialization to choose the
   30470         right VectorArgumentCoder specialization. To determine this, we use the "IsArithmetic" type trait, 
   30471         which holds true for all integer types and all floating point types. 
   30472         
   30473         * Platform/CoreIPC/ArgumentCoders.h:
   30474 
   30475 2010-09-20  Enrica Casucci  <enrica (a] apple.com>
   30476 
   30477         Reviewed by Sam Weinig.
   30478 
   30479         Pasteboard doesn't work in WebKit2.
   30480         https://bugs.webkit.org/show_bug.cgi?id=42317
   30481         <rdar://problem/7660537>
   30482 
   30483         Adding support for RTF, RTFD and NSUrl formats on the Mac.
   30484         Still missing the selective enabling of the menu entries.
   30485 
   30486         * WebKit2.xcodeproj/project.pbxproj: Added WebEditorClientMac.mm.
   30487         * WebProcess/WebCoreSupport/WebEditorClient.cpp: Removed Mac only methods
   30488         that are now in WebEditorClientMac.mm
   30489         * WebProcess/WebCoreSupport/WebEditorClient.h: Fixed style and changed parameter
   30490         type in documentFragmentFromAttributedString to be a Vector of RefPtr.
   30491         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm: Added.
   30492         All the following methods have been moved from WebEditorClient.cpp.
   30493         (WebKit::WebEditorClient::userVisibleString): Added implementation.
   30494         (WebKit::createExcludedElementsForAttributedStringConversion): Added.
   30495         (WebKit::WebEditorClient::documentFragmentFromAttributedString): Added implementation.
   30496         (WebKit::WebEditorClient::setInsertionPasteboard):
   30497         (WebKit::WebEditorClient::pasteboardTypesForSelection):
   30498         (WebKit::WebEditorClient::uppercaseWord):
   30499         (WebKit::WebEditorClient::lowercaseWord):
   30500         (WebKit::WebEditorClient::capitalizeWord):
   30501         (WebKit::WebEditorClient::showSubstitutionsPanel):
   30502         (WebKit::WebEditorClient::substitutionsPanelIsShowing):
   30503         (WebKit::WebEditorClient::toggleSmartInsertDelete):
   30504         (WebKit::WebEditorClient::isAutomaticQuoteSubstitutionEnabled):
   30505         (WebKit::WebEditorClient::toggleAutomaticQuoteSubstitution):
   30506         (WebKit::WebEditorClient::isAutomaticLinkDetectionEnabled):
   30507         (WebKit::WebEditorClient::toggleAutomaticLinkDetection):
   30508         (WebKit::WebEditorClient::isAutomaticDashSubstitutionEnabled):
   30509         (WebKit::WebEditorClient::toggleAutomaticDashSubstitution):
   30510         (WebKit::WebEditorClient::isAutomaticTextReplacementEnabled):
   30511         (WebKit::WebEditorClient::toggleAutomaticTextReplacement):
   30512         (WebKit::WebEditorClient::isAutomaticSpellingCorrectionEnabled):
   30513         (WebKit::WebEditorClient::toggleAutomaticSpellingCorrection):
   30514         (WebKit::WebEditorClient::checkTextOfParagraph):
   30515         (WebKit::WebEditorClient::showCorrectionPanel):
   30516         (WebKit::WebEditorClient::dismissCorrectionPanel):
   30517         (WebKit::WebEditorClient::isShowingCorrectionPanel):
   30518 
   30519 2010-09-20  Andy Estes  <aestes (a] apple.com>
   30520 
   30521         Reviewed by Darin Adler.
   30522 
   30523         Fix a style issue and add a FIXME to make the AppleConnect plug-in
   30524         workaround dependent on site-specific quirks being enabled, which
   30525         WebKit2 does not yet support in its WebPreferences implementation.
   30526         https://bugs.webkit.org/show_bug.cgi?id=45960
   30527 
   30528         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   30529         (WebKit::WebFrameLoaderClient::createPlugin):
   30530 
   30531 2010-09-20  Sam Weinig  <sam (a] webkit.org>
   30532 
   30533         Reviewed by Adam Roben.
   30534 
   30535         Add WebKit2 API to load a string as plain text
   30536         https://bugs.webkit.org/show_bug.cgi?id=46091
   30537 
   30538         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
   30539         * UIProcess/API/C/WKPage.cpp:
   30540         (WKPageLoadPlainTextString):
   30541         * UIProcess/API/C/WKPage.h:
   30542         * UIProcess/WebPageProxy.cpp:
   30543         (WebKit::WebPageProxy::loadPlainTextString):
   30544         * UIProcess/WebPageProxy.h:
   30545         * WebProcess/WebPage/WebPage.cpp:
   30546         (WebKit::WebPage::loadData):
   30547         (WebKit::WebPage::loadHTMLString):
   30548         (WebKit::WebPage::loadPlainTextString):
   30549         (WebKit::WebPage::didReceiveMessage):
   30550         * WebProcess/WebPage/WebPage.h:
   30551 
   30552 2010-09-19  Sam Weinig  <sam (a] webkit.org>
   30553 
   30554         Fix windows build.
   30555 
   30556         * UIProcess/API/C/WKPage.h:
   30557 
   30558 2010-09-19  Sam Weinig  <sam (a] webkit.org>
   30559 
   30560         Attempt to fix Qt build.
   30561 
   30562         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   30563         (WebKit::WebEditorClient::doTextFieldCommandFromEvent):
   30564 
   30565 2010-09-19  Sam Weinig  <sam (a] webkit.org>
   30566 
   30567         Reviewed by Anders Carlsson.
   30568 
   30569         Add WebKit2 equivalent of the WebFormDelegate's doCommandBySelector
   30570         <rdar://problem/8377088>
   30571         https://bugs.webkit.org/show_bug.cgi?id=46073
   30572 
   30573         Add bundle client to match the behavior of:
   30574           - (BOOL)textField:(DOMHTMLInputElement *)element doCommandBySelector:(SEL)commandSelector inFrame:(WebFrame *)frame;
   30575 
   30576         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   30577         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
   30578         (WebKit::InjectedBundlePageFormClient::shouldPerformActionInTextField):
   30579         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.h:
   30580         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   30581         (WebKit::getActionTypeForKeyEvent):
   30582         (WebKit::WebEditorClient::doTextFieldCommandFromEvent):
   30583         (WebKit::WebEditorClient::textWillBeDeletedInTextField):
   30584 
   30585 2010-09-19  Sam Weinig  <sam (a] webkit.org>
   30586 
   30587         Reviewed by Anders Carlsson.
   30588 
   30589         WebKit2 decidePolicyForNavigationAction should include mouse button information
   30590         <rdar://problem/8413165>
   30591         https://bugs.webkit.org/show_bug.cgi?id=46060
   30592 
   30593         * UIProcess/API/C/WKAPICast.h:
   30594         (WebKit::toRef):
   30595         * UIProcess/API/C/WKPage.h:
   30596         * UIProcess/WebPageProxy.cpp:
   30597         (WebKit::WebPageProxy::didReceiveMessage):
   30598         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
   30599         (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
   30600         * UIProcess/WebPageProxy.h:
   30601         * UIProcess/WebPolicyClient.cpp:
   30602         (WebKit::WebPolicyClient::decidePolicyForNavigationAction):
   30603         (WebKit::WebPolicyClient::decidePolicyForNewWindowAction):
   30604         * UIProcess/WebPolicyClient.h:
   30605         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   30606         (WebKit::findMouseEvent):
   30607         (WebKit::mouseButtonForNavigationAction):
   30608         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
   30609         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
   30610 
   30611 2010-09-19  Csaba Osztrogonc  <ossy (a] webkit.org>
   30612 
   30613         [Qt] Unreviewed buildfix after r67813.
   30614 
   30615         Replace WKBundleRangeRef with WKBundleRangeHandleRef.
   30616         https://bugs.webkit.org/show_bug.cgi?id=46054
   30617 
   30618         * DerivedSources.pro: Add WebCore/generated/JSRange.h to WEBCORE_GENERATED_HEADERS_FOR_WEBKIT2
   30619 
   30620 2010-09-19  Csaba Osztrogonc  <ossy (a] webkit.org>
   30621 
   30622         [Qt] Unreviewed buildfix after r67802.
   30623 
   30624         WebKit2: Improve/unify the PageLoadClient interfaces.
   30625         https://bugs.webkit.org/show_bug.cgi?id=46043
   30626 
   30627         * UIProcess/API/qt/ClientImpl.h:
   30628 
   30629 2010-09-19  Sam Weinig  <sam (a] webkit.org>
   30630 
   30631         Reviewed by Anders Carlsson.
   30632 
   30633         Replace WKBundleRangeRef with WKBundleRangeHandleRef.
   30634         https://bugs.webkit.org/show_bug.cgi?id=46054
   30635 
   30636         The new one acts like WKBundleNodeHandleRef and allows for getting a
   30637         wrapper in a specific world for the handle.
   30638 
   30639         * Shared/APIObject.h:
   30640         * WebKit2.pro:
   30641         * WebKit2.xcodeproj/project.pbxproj:
   30642         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   30643         * WebProcess/InjectedBundle/API/c/WKBundleBase.h:
   30644         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   30645         (WKBundleFrameGetJavaScriptWrapperForRangeForWorld):
   30646         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   30647         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   30648         * WebProcess/InjectedBundle/API/c/WKBundleRange.cpp: Removed.
   30649         * WebProcess/InjectedBundle/API/c/WKBundleRange.h: Removed.
   30650         * WebProcess/InjectedBundle/API/c/WKBundleRangeHandle.cpp: Added.
   30651         (WKBundleRangeHandleGetTypeID):
   30652         * WebProcess/InjectedBundle/API/c/WKBundleRangeHandle.h: Added.
   30653         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
   30654         (WebKit::InjectedBundleNodeHandle::getOrCreate):
   30655         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
   30656         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp: Added.
   30657         (WebKit::domHandleCache):
   30658         (WebKit::InjectedBundleRangeHandle::getOrCreate):
   30659         (WebKit::InjectedBundleRangeHandle::create):
   30660         (WebKit::InjectedBundleRangeHandle::InjectedBundleRangeHandle):
   30661         (WebKit::InjectedBundleRangeHandle::~InjectedBundleRangeHandle):
   30662         (WebKit::InjectedBundleRangeHandle::coreRange):
   30663         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.h: Added.
   30664         (WebKit::InjectedBundleRangeHandle::type):
   30665         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
   30666         (WebKit::InjectedBundlePageEditorClient::shouldBeginEditing):
   30667         (WebKit::InjectedBundlePageEditorClient::shouldEndEditing):
   30668         (WebKit::InjectedBundlePageEditorClient::shouldInsertNode):
   30669         (WebKit::InjectedBundlePageEditorClient::shouldInsertText):
   30670         (WebKit::InjectedBundlePageEditorClient::shouldDeleteRange):
   30671         (WebKit::InjectedBundlePageEditorClient::shouldChangeSelectedRange):
   30672         (WebKit::InjectedBundlePageEditorClient::shouldApplyStyle):
   30673         * WebProcess/WebPage/WebFrame.cpp:
   30674         (WebKit::WebFrame::jsWrapperForWorld):
   30675         * WebProcess/WebPage/WebFrame.h:
   30676         * win/WebKit2.vcproj:
   30677         * win/WebKit2Generated.make:
   30678 
   30679 2010-09-18  Sam Weinig  <sam (a] webkit.org>
   30680 
   30681         Reviewed by Dan Bernstein.
   30682 
   30683         Improve/unify the PageLoadClient interfaces.
   30684         https://bugs.webkit.org/show_bug.cgi?id=46043
   30685 
   30686         - Ensure that all the PageLoadClient functions (that are load related)
   30687           have bundle API equivalents (this meant adding didFirstLayoutForFrame
   30688           and didFirstVisuallyNonEmptyLayoutForFrame to the BundlePageLoadClient).
   30689         - Add a userData out parameters to all the now paired BundlePageLoadClient
   30690           functions, and a matching userData parameter to the PageLoadClient ones.
   30691 
   30692         * UIProcess/API/C/WKPage.h:
   30693         * UIProcess/API/qt/ClientImpl.cpp:
   30694         (qt_wk_didStartProvisionalLoadForFrame):
   30695         (qt_wk_didReceiveServerRedirectForProvisionalLoadForFrame):
   30696         (qt_wk_didFailProvisionalLoadWithErrorForFrame):
   30697         (qt_wk_didCommitLoadForFrame):
   30698         (qt_wk_didFinishDocumentLoadForFrame):
   30699         (qt_wk_didFinishLoadForFrame):
   30700         (qt_wk_didFailLoadWithErrorForFrame):
   30701         (qt_wk_didReceiveTitleForFrame):
   30702         (qt_wk_didFirstLayoutForFrame):
   30703         (qt_wk_didFirstVisuallyNonEmptyLayoutForFrame):
   30704         * UIProcess/WebLoaderClient.cpp:
   30705         (WebKit::WebLoaderClient::didStartProvisionalLoadForFrame):
   30706         (WebKit::WebLoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
   30707         (WebKit::WebLoaderClient::didFailProvisionalLoadWithErrorForFrame):
   30708         (WebKit::WebLoaderClient::didCommitLoadForFrame):
   30709         (WebKit::WebLoaderClient::didFinishDocumentLoadForFrame):
   30710         (WebKit::WebLoaderClient::didFinishLoadForFrame):
   30711         (WebKit::WebLoaderClient::didFailLoadWithErrorForFrame):
   30712         (WebKit::WebLoaderClient::didReceiveTitleForFrame):
   30713         (WebKit::WebLoaderClient::didFirstLayoutForFrame):
   30714         (WebKit::WebLoaderClient::didFirstVisuallyNonEmptyLayoutForFrame):
   30715         (WebKit::WebLoaderClient::didStartProgress):
   30716         (WebKit::WebLoaderClient::didChangeProgress):
   30717         (WebKit::WebLoaderClient::didFinishProgress):
   30718         (WebKit::WebLoaderClient::didBecomeUnresponsive):
   30719         (WebKit::WebLoaderClient::didBecomeResponsive):
   30720         (WebKit::WebLoaderClient::processDidExit):
   30721         (WebKit::WebLoaderClient::didChangeBackForwardList):
   30722         * UIProcess/WebLoaderClient.h:
   30723         * UIProcess/WebPageProxy.cpp:
   30724         (WebKit::WebPageProxy::didReceiveMessage):
   30725         (WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
   30726         (WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame):
   30727         (WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
   30728         (WebKit::WebPageProxy::didCommitLoadForFrame):
   30729         (WebKit::WebPageProxy::didFinishDocumentLoadForFrame):
   30730         (WebKit::WebPageProxy::didFinishLoadForFrame):
   30731         (WebKit::WebPageProxy::didFailLoadForFrame):
   30732         (WebKit::WebPageProxy::didReceiveTitleForFrame):
   30733         (WebKit::WebPageProxy::didFirstLayoutForFrame):
   30734         (WebKit::WebPageProxy::didFirstVisuallyNonEmptyLayoutForFrame):
   30735         * UIProcess/WebPageProxy.h:
   30736         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   30737         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   30738         (WebKit::InjectedBundlePageLoaderClient::didStartProvisionalLoadForFrame):
   30739         (WebKit::InjectedBundlePageLoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
   30740         (WebKit::InjectedBundlePageLoaderClient::didFailProvisionalLoadWithErrorForFrame):
   30741         (WebKit::InjectedBundlePageLoaderClient::didCommitLoadForFrame):
   30742         (WebKit::InjectedBundlePageLoaderClient::didFinishDocumentLoadForFrame):
   30743         (WebKit::InjectedBundlePageLoaderClient::didFinishLoadForFrame):
   30744         (WebKit::InjectedBundlePageLoaderClient::didFailLoadWithErrorForFrame):
   30745         (WebKit::InjectedBundlePageLoaderClient::didReceiveTitleForFrame):
   30746         (WebKit::InjectedBundlePageLoaderClient::didFirstLayoutForFrame):
   30747         (WebKit::InjectedBundlePageLoaderClient::didFirstVisuallyNonEmptyLayoutForFrame):
   30748         (WebKit::InjectedBundlePageLoaderClient::didClearWindowObjectForFrame):
   30749         (WebKit::InjectedBundlePageLoaderClient::didCancelClientRedirectForFrame):
   30750         (WebKit::InjectedBundlePageLoaderClient::willPerformClientRedirectForFrame):
   30751         (WebKit::InjectedBundlePageLoaderClient::didChangeLocationWithinPageForFrame):
   30752         (WebKit::InjectedBundlePageLoaderClient::didHandleOnloadEventsForFrame):
   30753         (WebKit::InjectedBundlePageLoaderClient::didDisplayInsecureContentForFrame):
   30754         (WebKit::InjectedBundlePageLoaderClient::didRunInsecureContentForFrame):
   30755         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   30756         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   30757         (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
   30758         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
   30759         (WebKit::WebFrameLoaderClient::dispatchDidReceiveTitle):
   30760         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
   30761         (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
   30762         (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
   30763         (WebKit::WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
   30764         (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
   30765         (WebKit::WebFrameLoaderClient::dispatchDidFirstLayout):
   30766         (WebKit::WebFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
   30767 
   30768 2010-09-18  Ademar de Souza Reis Jr  <ademar.reis (a] openbossa.org>
   30769 
   30770         Reviewed by Kenneth Rohde Christiansen.
   30771 
   30772         Enable Platform Strategies on Qt
   30773 
   30774         [Qt] Turn on PLATFORM_STRATEGIES
   30775         https://bugs.webkit.org/show_bug.cgi?id=45831
   30776 
   30777         * WebKit2.pro: Added Added WebPlatformStrategies.{cpp,h}
   30778 
   30779 2010-09-17  Sam Weinig  <sam (a] webkit.org>
   30780 
   30781         Reviewed by Jon Honeycutt.
   30782 
   30783         Need a way to load data (as plain text) in a WKPage
   30784         <rdar://problem/8424239>
   30785 
   30786         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
   30787         * UIProcess/API/C/WKPage.cpp:
   30788         (WKPageLoadHTMLString):
   30789         * UIProcess/API/C/WKPage.h:
   30790         * UIProcess/WebPageProxy.cpp:
   30791         (WebKit::WebPageProxy::loadHTMLString):
   30792         * UIProcess/WebPageProxy.h:
   30793         * WebProcess/WebPage/WebPage.cpp:
   30794         (WebKit::WebPage::loadHTMLString):
   30795         (WebKit::WebPage::didReceiveMessage):
   30796         * WebProcess/WebPage/WebPage.h:
   30797 
   30798 2010-09-17  Sam Weinig  <sam (a] webkit.org>
   30799 
   30800         Rubber-stamped by Anders Carlsson.
   30801 
   30802         Replace all uses of WTF::String and WTF::AtomicString with
   30803         String and AtomicString.
   30804 
   30805         * Platform/Module.h:
   30806         * Shared/CommandLine.h:
   30807         (WebKit::CommandLine::operator[]):
   30808         * Shared/WebCoreArgumentCoders.h:
   30809         * Shared/WebEvent.h:
   30810         (WebKit::WebKeyboardEvent::WebKeyboardEvent):
   30811         (WebKit::WebKeyboardEvent::text):
   30812         (WebKit::WebKeyboardEvent::unmodifiedText):
   30813         (WebKit::WebKeyboardEvent::keyIdentifier):
   30814         (WebKit::WebKeyboardEvent::decode):
   30815         * Shared/WebNavigationDataStore.h:
   30816         * Shared/WebPreferencesStore.h:
   30817         * Shared/WebString.h:
   30818         (WebKit::WebString::create):
   30819         (WebKit::WebString::string):
   30820         (WebKit::WebString::WebString):
   30821         * Shared/WebURL.h:
   30822         (WebKit::WebURL::create):
   30823         (WebKit::WebURL::string):
   30824         (WebKit::WebURL::WebURL):
   30825         * UIProcess/API/C/WKAPICast.h:
   30826         (WebKit::toRef):
   30827         (WebKit::toURLRef):
   30828         (WebKit::toCopiedRef):
   30829         (WebKit::toCopiedURLRef):
   30830         (WebKit::toWTFString):
   30831         * UIProcess/API/C/WKContext.cpp:
   30832         (WKContextCreate):
   30833         * UIProcess/API/mac/PageClientImpl.h:
   30834         * UIProcess/API/mac/PageClientImpl.mm:
   30835         (WebKit::nsStringFromWebCoreString):
   30836         * UIProcess/PageClient.h:
   30837         * UIProcess/Plugins/PluginInfoStore.cpp:
   30838         (WebKit::PluginInfoStore::setAdditionalPluginsDirectories):
   30839         * UIProcess/Plugins/PluginInfoStore.h:
   30840         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
   30841         (WebKit::PluginInfoStore::getPluginInfo):
   30842         (WebKit::PluginInfoStore::getMIMETypeForExtension):
   30843         * UIProcess/WebBackForwardListItem.h:
   30844         (WebKit::WebBackForwardListItem::create):
   30845         (WebKit::WebBackForwardListItem::setOriginalURL):
   30846         (WebKit::WebBackForwardListItem::originalURL):
   30847         (WebKit::WebBackForwardListItem::setURL):
   30848         (WebKit::WebBackForwardListItem::url):
   30849         (WebKit::WebBackForwardListItem::setTitle):
   30850         (WebKit::WebBackForwardListItem::title):
   30851         * UIProcess/WebContext.cpp:
   30852         (WebKit::WebContext::WebContext):
   30853         (WebKit::WebContext::setAdditionalPluginsDirectory):
   30854         * UIProcess/WebContext.h:
   30855         (WebKit::WebContext::injectedBundlePath):
   30856         * UIProcess/WebContextInjectedBundleClient.h:
   30857         * UIProcess/WebFrameProxy.cpp:
   30858         (WebKit::WebFrameProxy::didReceiveTitle):
   30859         * UIProcess/WebFrameProxy.h:
   30860         (WebKit::WebFrameProxy::url):
   30861         (WebKit::WebFrameProxy::provisionalURL):
   30862         * UIProcess/WebHistoryClient.h:
   30863         * UIProcess/WebLoaderClient.cpp:
   30864         (WebKit::WebLoaderClient::didReceiveTitleForFrame):
   30865         * UIProcess/WebLoaderClient.h:
   30866         * UIProcess/WebNavigationData.h:
   30867         (WebKit::WebNavigationData::title):
   30868         (WebKit::WebNavigationData::url):
   30869         * UIProcess/WebPageProxy.h:
   30870         (WebKit::WebPageProxy::pageTitle):
   30871         (WebKit::WebPageProxy::toolTip):
   30872         (WebKit::WebPageProxy::urlAtProcessExit):
   30873         * UIProcess/WebPolicyClient.h:
   30874         * UIProcess/WebProcessProxy.cpp:
   30875         (WebKit::WebProcessProxy::getPluginHostConnection):
   30876         * UIProcess/WebProcessProxy.h:
   30877         * UIProcess/WebUIClient.h:
   30878         * WebProcess/InjectedBundle/InjectedBundle.h:
   30879         (WebKit::InjectedBundle::create):
   30880         (WebKit::InjectedBundle::setSandboxToken):
   30881         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h:
   30882         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   30883         (WebKit::InjectedBundlePageLoaderClient::willPerformClientRedirectForFrame):
   30884         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   30885         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
   30886         * WebProcess/Plugins/NPRuntimeObjectMap.h:
   30887         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   30888         * WebProcess/Plugins/Netscape/NetscapePluginModule.h:
   30889         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   30890         (WebKit::NetscapePluginStream::start):
   30891         * WebProcess/Plugins/Netscape/NetscapePluginStream.h:
   30892         * WebProcess/Plugins/Plugin.h:
   30893         * WebProcess/Plugins/PluginController.h:
   30894         * WebProcess/Plugins/PluginView.h:
   30895         * WebProcess/WebCoreSupport/WebChromeClient.h:
   30896         * WebProcess/WebCoreSupport/WebContextMenuClient.h:
   30897         * WebProcess/WebCoreSupport/WebDragClient.h:
   30898         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   30899         (WebKit::WebEditorClient::showCorrectionPanel):
   30900         * WebProcess/WebCoreSupport/WebEditorClient.h:
   30901         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   30902         * WebProcess/WebCoreSupport/WebInspectorClient.h:
   30903         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
   30904         * WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp:
   30905         (WebKit::WebSearchPopupMenu::saveRecentSearches):
   30906         (WebKit::WebSearchPopupMenu::loadRecentSearches):
   30907         * WebProcess/WebCoreSupport/WebSearchPopupMenu.h:
   30908         * WebProcess/WebPage/WebFrame.h:
   30909         * WebProcess/WebPage/WebPage.cpp:
   30910         (WebKit::WebPage::runJavaScriptInMainFrame):
   30911         * WebProcess/WebPage/WebPage.h:
   30912         * WebProcess/WebProcess.cpp:
   30913         (WebKit::WebProcess::registerURLSchemeAsEmptyDocument):
   30914         * WebProcess/WebProcess.h:
   30915 
   30916 2010-09-17  Sam Weinig  <sam (a] webkit.org>
   30917 
   30918         Fix Windows and Qt builds.
   30919 
   30920         * Shared/qt/PlatformCertificateInfo.h:
   30921         (WebKit::PlatformCertificateInfo::decode):
   30922         * Shared/win/PlatformCertificateInfo.h:
   30923         (WebKit::PlatformCertificateInfo::decode):
   30924 
   30925 2010-09-17  Darin Adler  <darin (a] apple.com>
   30926 
   30927         Reviewed by Sam Weinig.
   30928 
   30929         REGRESSION (r60104): Zoom level is unexpectedly reset on page reload
   30930         https://bugs.webkit.org/show_bug.cgi?id=42863
   30931 
   30932         * WebProcess/WebPage/WebPage.cpp:
   30933         (WebKit::WebPage::textZoomFactor):
   30934         (WebKit::WebPage::setTextZoomFactor):
   30935         (WebKit::WebPage::pageZoomFactor):
   30936         (WebKit::WebPage::setPageZoomFactor):
   30937         (WebKit::WebPage::setPageAndTextZoomFactors):
   30938         Call functions on Frame instead of FrameView.
   30939 
   30940 2010-09-17  Sam Weinig  <sam (a] webkit.org>
   30941 
   30942         Reviewed by Anders Carlsson.
   30943 
   30944         Resize corner jiggles when resizing slowly in WebKit2
   30945         <rdar://problem/7897425>
   30946         https://bugs.webkit.org/show_bug.cgi?id=45601
   30947 
   30948         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   30949         (WebKit::WebChromeClient::windowResizerRect):
   30950         * WebProcess/WebPage/WebPage.cpp:
   30951         (WebKit::WebPage::windowResizerRect):
   30952         * WebProcess/WebPage/WebPage.h:
   30953         Move resize corner logic to WebPage and use the FrameView's size instead of the WebPages
   30954         stored size, which doesn't get updated at the right time. This is in line with all other
   30955         scrollbar metrics which are in terms of the FrameView's size.
   30956 
   30957 2010-09-17  Sam Weinig  <sam (a] webkit.org>
   30958 
   30959         Reviewed by Anders Carlsson.
   30960 
   30961         Make certificate data available to the WKFrameRef after it is committed
   30962         Part of <rdar://problem/8350189>
   30963         https://bugs.webkit.org/show_bug.cgi?id=45998
   30964 
   30965         * Shared/APIObject.h:
   30966         Add new type.
   30967 
   30968         * Shared/WebCertificateInfo.h: Added.
   30969         (WebKit::WebCertificateInfo::create):
   30970         (WebKit::WebCertificateInfo::platformCertificateInfo):
   30971         (WebKit::WebCertificateInfo::WebCertificateInfo):
   30972         (WebKit::WebCertificateInfo::type):
   30973         Add API type for vending.
   30974 
   30975         * Shared/mac/PlatformCertificateInfo.h: Added.
   30976         (WebKit::PlatformCertificateInfo::peerCertificates):
   30977         * Shared/mac/PlatformCertificateInfo.mm: Added.
   30978         (WebKit::PlatformCertificateInfo::PlatformCertificateInfo):
   30979         (WebKit::PlatformCertificateInfo::encode):
   30980         (WebKit::PlatformCertificateInfo::decode):
   30981         (WebKit::PlatformCertificateInfo::dump):
   30982         * Shared/qt/PlatformCertificateInfo.h: Added.
   30983         (WebKit::PlatformCertificateInfo::PlatformCertificateInfo):
   30984         (WebKit::PlatformCertificateInfo::encode):
   30985         (WebKit::PlatformCertificateInfo::decode):
   30986         * Shared/win/PlatformCertificateInfo.h: Added.
   30987         (WebKit::PlatformCertificateInfo::PlatformCertificateInfo):
   30988         (WebKit::PlatformCertificateInfo::encode):
   30989         (WebKit::PlatformCertificateInfo::decode):
   30990         Add platform specific holder for certificate data and encode/decode functions
   30991         to send it over the wire. Right now, this only implemented for the mac.
   30992 
   30993         * UIProcess/API/C/WKAPICast.h:
   30994         * UIProcess/API/C/WKBase.h:
   30995         * UIProcess/API/C/WKCertificateInfo.cpp: Added.
   30996         (WKCertificateInfoGetTypeID):
   30997         * UIProcess/API/C/WKCertificateInfo.h: Added.
   30998         Add wrapper for WebCertificateInfo.
   30999 
   31000         * UIProcess/API/C/WKFrame.cpp:
   31001         (WKFrameGetCertificateInfo):
   31002         * UIProcess/API/C/WKFrame.h:
   31003         Add getter for a WKCertificateInfo.
   31004 
   31005         * UIProcess/API/C/mac/WKCertificateInfoMac.h: Added.
   31006         * UIProcess/API/C/mac/WKCertificateInfoMac.mm: Added.
   31007         (WKCertificateInfoGetPeerCertificates):
   31008         Add mac specific getters for the platform specific certificate
   31009         data.
   31010 
   31011         * UIProcess/WebFrameProxy.cpp:
   31012         (WebKit::WebFrameProxy::setCertificateInfo):
   31013         * UIProcess/WebFrameProxy.h:
   31014         (WebKit::WebFrameProxy::certificateInfo):
   31015         * UIProcess/WebPageProxy.cpp:
   31016         (WebKit::WebPageProxy::didReceiveMessage):
   31017         (WebKit::WebPageProxy::didCommitLoadForFrame):
   31018         * UIProcess/WebPageProxy.h:
   31019         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   31020         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
   31021         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   31022         Pipe the certificate info through to the WebFrameProxy on
   31023         commit.
   31024 
   31025         * WebKit2.pro:
   31026         * WebKit2.xcodeproj/project.pbxproj:
   31027         * win/WebKit2.vcproj:
   31028         * win/WebKit2Generated.make:
   31029         Add new files.
   31030 
   31031 2010-09-17  Matthew Delaney  <mdelaney (a] apple.com>
   31032 
   31033         Reviewed by Simon Fraser.
   31034 
   31035         Reduce minimum DOMTimer interval
   31036         https://bugs.webkit.org/show_bug.cgi?id=45362
   31037 
   31038         * WebProcess/WebPage/WebPage.cpp: Added in a call to set the mimimum allowed DOMTimer to 4ms.
   31039 
   31040 2010-09-17  Anders Carlsson  <andersca (a] apple.com>
   31041 
   31042         Reviewed by Sam Weinig.
   31043 
   31044         CoreIPC argument coder improvements
   31045         https://bugs.webkit.org/show_bug.cgi?id=45999
   31046 
   31047         * Platform/CoreIPC/ArgumentCoders.h:
   31048         Add explicit specialization for a vector of bytes.
   31049 
   31050         * Platform/CoreIPC/Arguments.h:
   31051         (CoreIPC::Arguments1::decode):
   31052         (CoreIPC::Arguments2::decode):
   31053         (CoreIPC::Arguments3::decode):
   31054         (CoreIPC::Arguments4::decode):
   31055         (CoreIPC::Arguments5::decode):
   31056         (CoreIPC::Arguments6::decode):
   31057         Use the injected class name for less typing.
   31058 
   31059         (CoreIPC::Arguments7::Arguments7):
   31060         (CoreIPC::Arguments7::encode):
   31061         (CoreIPC::Arguments7::decode):
   31062         (CoreIPC::In):
   31063         (CoreIPC::Out):
   31064         Add Arguments7 class.
   31065 
   31066 2010-09-17  Andy Estes  <aestes (a] apple.com>
   31067 
   31068         Reviewed by Darin Adler.
   31069 
   31070         <rdar://problem/8440903> WK2: REGRESSION (r66156): Web sites using
   31071         AppleConnect fail to log in: "HTTP Status 404 - /ssowebapp/scriptFrame"
   31072         https://bugs.webkit.org/show_bug.cgi?id=45960
   31073 
   31074         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   31075         (WebKit::WebFrameLoaderClient::createPlugin):
   31076 
   31077 2010-09-17  Sam Weinig  <sam (a] webkit.org>
   31078 
   31079         Reviewed by Anders Carlsson.
   31080 
   31081         Make WebNumbers immutable matching CF.
   31082 
   31083         * Shared/WebNumber.h:
   31084         (WebKit::WebNumber::value):
   31085         (WebKit::WebNumber::WebNumber):
   31086         * UIProcess/API/C/WKNumber.cpp:
   31087         (WKUInt64GetValue):
   31088         * UIProcess/API/C/WKNumber.h:
   31089 
   31090 2010-09-17  Sam Weinig  <sam (a] webkit.org>
   31091 
   31092         Reviewed by John Sullivan.
   31093 
   31094         Add bool wrapper for WebKit2 API
   31095         https://bugs.webkit.org/show_bug.cgi?id=45985
   31096 
   31097         * Shared/APIObject.h:
   31098         * Shared/WebNumber.h:
   31099         * UIProcess/API/C/WKAPICast.h:
   31100         * UIProcess/API/C/WKBase.h:
   31101         * UIProcess/API/C/WKNumber.cpp:
   31102         (WKBooleanGetTypeID):
   31103         (WKBooleanCreate):
   31104         (WKBooleanGetValue):
   31105         (WKBooleanSetValue):
   31106         * UIProcess/API/C/WKNumber.h:
   31107 
   31108 2010-09-16  Sam Weinig  <sam (a] webkit.org>
   31109 
   31110         Reviewed by Anders Carlsson.
   31111 
   31112         Add support for sending synchronous messages from the InjectedBundle to the WKContext
   31113         <rdar://problem/8365320>
   31114         https://bugs.webkit.org/show_bug.cgi?id=44785
   31115 
   31116         * Shared/CoreIPCSupport/WebContextMessageKinds.h:
   31117         * UIProcess/API/C/WKContext.h:
   31118         * UIProcess/WebContext.cpp:
   31119         (WebKit::WebContext::didReceiveSynchronousMessageFromInjectedBundle):
   31120         (WebKit::WebContext::didReceiveMessage):
   31121         (WebKit::WebContext::didReceiveSyncMessage):
   31122         * UIProcess/WebContext.h:
   31123         * UIProcess/WebContextInjectedBundleClient.cpp:
   31124         (WebKit::WebContextInjectedBundleClient::didReceiveSynchronousMessageFromInjectedBundle):
   31125         * UIProcess/WebContextInjectedBundleClient.h:
   31126         * UIProcess/WebProcessProxy.cpp:
   31127         (WebKit::WebProcessProxy::didReceiveSyncMessage):
   31128         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   31129         (WKBundlePostSynchronousMessage):
   31130         * WebProcess/InjectedBundle/API/c/WKBundle.h:
   31131         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   31132         (WebKit::InjectedBundle::postSynchronousMessage):
   31133         * WebProcess/InjectedBundle/InjectedBundle.h:
   31134 
   31135 2010-09-16  Balazs Kelemen  <kbalazs (a] webkit.org>
   31136 
   31137         Unreviewed trivial typo fix.
   31138 
   31139         Remove old debug helper code inside |#if 0| from ConnectionQt.cpp
   31140 
   31141         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   31142         (CoreIPC::Connection::readyReadHandler):
   31143 
   31144 2010-09-15  Enrica Casucci  <enrica (a] apple.com>
   31145 
   31146         Reviewed by Sam Weinig.
   31147 
   31148         Pasteboard doesn't work in WebKit2.
   31149         https://bugs.webkit.org/show_bug.cgi?id=42317
   31150         <rdar://problem/7660537>
   31151         
   31152         Initial work to support cut, copy, paste and selectAll in WebKit2.
   31153         It still does not support RTF and RTFD format for Mac and the selective
   31154         enabling of the editing menu entries.
   31155         
   31156         * Shared/CoreIPCSupport/WebPageMessageKinds.h: Added messages to support the
   31157         new editing commands.
   31158         * UIProcess/API/mac/WKView.mm:
   31159         (-[WKView validateUserInterfaceItem:]): Added.
   31160         (-[WKView copy:]): Added.
   31161         (-[WKView cut:]): Added.
   31162         (-[WKView paste:]): Addded.
   31163         (-[WKView selectAll:]): Added.
   31164         * UIProcess/WebPageProxy.cpp: Added all the proxy methods.
   31165         (WebKit::WebPageProxy::selectAll):
   31166         (WebKit::WebPageProxy::copy):
   31167         (WebKit::WebPageProxy::cut):
   31168         (WebKit::WebPageProxy::paste):
   31169         * UIProcess/WebPageProxy.h:
   31170         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   31171         (WebKit::WebEditorClient::documentFragmentFromAttributedString): Added but not
   31172         implemented. This is needed to support RTF and RTFD.
   31173         (WebKit::WebEditorClient::setInsertionPasteboard): Added but not implemented.
   31174         This is needed only to support Mail on the Mac.
   31175         * WebProcess/WebPage/WebPage.cpp: Added all the stub methods.
   31176         (WebKit::WebPage::selectAll):
   31177         (WebKit::WebPage::copy):
   31178         (WebKit::WebPage::cut):
   31179         (WebKit::WebPage::paste):
   31180         (WebKit::WebPage::didReceiveMessage): Modified to handle the new messages from
   31181         the UI process.
   31182         * WebProcess/WebPage/WebPage.h:
   31183 
   31184 2010-09-16  Eric Uhrhane  <ericu (a] chromium.org>
   31185 
   31186         Reviewed by Jian Li.
   31187 
   31188         Unify FILE_SYSTEM and FILE_WRITER enables under the name FILE_SYSTEM.
   31189         https://bugs.webkit.org/show_bug.cgi?id=45798
   31190 
   31191         * Configurations/FeatureDefines.xcconfig:
   31192 
   31193 2010-09-15  Jessie Berlin  <jberlin (a] apple.com>
   31194 
   31195         Reviewed by Sam Weinig.
   31196 
   31197         WebKit2 should be able to encode and decode objects of type APIObject::TypeURL.
   31198         https://bugs.webkit.org/show_bug.cgi?id=45819
   31199 
   31200         * Shared/UserMessageCoders.h:
   31201         Add the ability to encode and decode the URL type.
   31202         (WebKit::UserMessageEncoder::baseEncode):
   31203         (WebKit::UserMessageDecoder::baseDecode):
   31204 
   31205 2010-09-15  Sam Weinig  <sam (a] webkit.org>
   31206 
   31207         Reviewed by Jon Honeycutt.
   31208 
   31209         Add user message coding for WebUInt64 type.
   31210 
   31211         * Shared/UserMessageCoders.h:
   31212         (WebKit::UserMessageEncoder::baseEncode):
   31213         (WebKit::UserMessageDecoder::baseDecode):
   31214 
   31215 2010-09-15  Jessie Berlin  <jberlin (a] apple.com>
   31216 
   31217         Reviewed by Jon Honeycutt.
   31218 
   31219         We should save messages that can't be sent when postMessageToInjectedBundle is called and
   31220         send them in ensureWebProcess.
   31221         https://bugs.webkit.org/show_bug.cgi?id=45822
   31222 
   31223         * UIProcess/WebContext.cpp:
   31224         (WebKit::WebContext::ensureWebProcess):
   31225         Post any messages to the Injected Bundle that couldn't be sent earlier because the
   31226         WebProcess hadn't been initialized yet.
   31227         (WebKit::WebContext::postMessageToInjectedBundle):
   31228         * UIProcess/WebContext.h:
   31229 
   31230 2010-09-15  Simon Fraser  <simon.fraser (a] apple.com>
   31231 
   31232         Reviewed by Sam Weinig.
   31233 
   31234         <rdar://problem/8214099> Mousewheel scrolling in WebKit2 is wonky
   31235         
   31236         Use floats so that fractional scrollwheel deltas don't get lost.
   31237 
   31238         * Shared/mac/WebEventFactory.mm:
   31239         (WebKit::WebEventFactory::createWebWheelEvent):
   31240 
   31241 2010-09-15  Sam Weinig  <sam (a] webkit.org>
   31242 
   31243         Reviewed by Jon Honeycutt.
   31244 
   31245         Add WKUInt64Ref wrapper for sending uint64_ts.
   31246 
   31247         * Shared/APIObject.h:
   31248         * Shared/WebNumber.h:
   31249         * UIProcess/API/C/WKAPICast.h:
   31250         * UIProcess/API/C/WKBase.h:
   31251         * UIProcess/API/C/WKNumber.cpp:
   31252         (WKUInt64GetTypeID):
   31253         (WKUInt64Create):
   31254         (WKUInt64GetValue):
   31255         (WKUInt64SetValue):
   31256         * UIProcess/API/C/WKNumber.h:
   31257 
   31258 2010-09-15  Simon Fraser  <simon.fraser (a] apple.com>
   31259 
   31260         Reviewed by Adam Roben.
   31261 
   31262         https://bugs.webkit.org/show_bug.cgi?id=44715
   31263         maps.google.com flips upside down when zooming map using trackpad in WebKit2 on Mac
   31264         
   31265         Move geometry flipping to platform-specific code.
   31266 
   31267         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   31268         (WebKit::LayerBackedDrawingArea::LayerBackedDrawingArea):
   31269         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   31270         (WebKit::LayerBackedDrawingArea::platformInit):
   31271 
   31272 2010-09-14  Jia Pu  <jpu (a] apple.com>
   31273 
   31274         Reviewed by Dan Bernstein.
   31275 
   31276         Only intercept ESC key press when autocorrection UI is visible.
   31277         https://bugs.webkit.org/show_bug.cgi?id=45071
   31278 
   31279         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   31280         (WebKit::WebEditorClient::isShowingCorrectionPanel): Dummy implementation.
   31281 
   31282         * WebProcess/WebCoreSupport/WebEditorClient.h: Adopt new method delcared in base class.
   31283 
   31284 2010-09-14  Sam Weinig  <sam (a] webkit.org>
   31285 
   31286         Fix windows build.
   31287 
   31288         * win/WebKit2Generated.make:
   31289 
   31290 2010-09-14  Sam Weinig  <sam (a] webkit.org>
   31291 
   31292         Reviewed by Anders Carlsson.
   31293 
   31294         Remove WKBundleNodeRef, replacing uses with WKBundleNodeHandleRef.
   31295         https://bugs.webkit.org/show_bug.cgi?id=45785
   31296 
   31297         * WebKit2.xcodeproj/project.pbxproj:
   31298         * win/WebKit2.vcproj:
   31299         Remove files.
   31300 
   31301         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   31302         * WebProcess/InjectedBundle/API/c/WKBundleBase.h:
   31303         * WebProcess/InjectedBundle/API/c/WKBundleNode.cpp: Removed.
   31304         * WebProcess/InjectedBundle/API/c/WKBundleNode.h: Removed.
   31305         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   31306         * WebProcess/InjectedBundle/API/c/WKBundleRange.cpp:
   31307         (WKBundleRangeCopyStartContainer):
   31308         (WKBundleRangeCopyEndContainer):
   31309         * WebProcess/InjectedBundle/API/c/WKBundleRange.h:
   31310         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
   31311         (WebKit::InjectedBundlePageEditorClient::shouldInsertNode):
   31312         Change to be in terms of WKBundleNodeHandleRef.
   31313 
   31314 2010-09-14  Jessie Berlin  <jberlin (a] apple.com>
   31315 
   31316         Reviewed by Adam Roben.
   31317 
   31318         Exceptions are getting ignored on 64-bit Windows in the Web Process
   31319         https://bugs.webkit.org/show_bug.cgi?id=45779
   31320 
   31321         * WebProcess/WebKitMain.cpp:
   31322         (disableProcessCallbackFilterForExceptions):
   31323         Clear the PROCESS_CALLBACK_FILTER_ENABLED flag so that exceptions thrown in callback routines
   31324         are not ignored, as described in http://support.microsoft.com/kb/976038 and
   31325         http://blog.paulbetts.org/index.php/2010/07/20/the-case-of-the-disappearing-onload-exception-user-mode-callback-exceptions-in-x64/.
   31326         (WebKitMain):
   31327 
   31328 2010-09-14  Brent Fulgham  <bfulgham (a] webkit.org>
   31329 
   31330         Build correction, no review.
   31331 
   31332         * win/WebKit2.vcproj: Disable build for Cairo targets of
   31333         the WebURLRequestWin.cpp and WebURLResponseWin.cpp files.
   31334 
   31335 2010-09-14  Eric Seidel  <eric (a] webkit.org>
   31336 
   31337         Unreviewed, reverting changes r67451 and r67451.
   31338         Broke lots of builders.
   31339 
   31340         Only intercept ESC key press when autocorrection UI is visible.
   31341         https://bugs.webkit.org/show_bug.cgi?id=45071
   31342 
   31343         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   31344         (WebKit::WebEditorClient::dismissCorrectionPanel):
   31345         * WebProcess/WebCoreSupport/WebEditorClient.h:
   31346 
   31347 2010-09-14  Jia Pu  <jpu (a] apple.com>
   31348 
   31349         Reviewed by Dan Bernstein.
   31350 
   31351         Only intercept ESC key press when autocorrection UI is visible.
   31352         https://bugs.webkit.org/show_bug.cgi?id=45071
   31353 
   31354         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   31355         (WebKit::WebEditorClient::isShowingCorrectionPanel): Dummy implementation.
   31356 
   31357         * WebProcess/WebCoreSupport/WebEditorClient.h: Adopt new method delcared in base class.
   31358 
   31359 2010-09-13  Sam Weinig  <sam (a] webkit.org>
   31360 
   31361         Reviewed by Jon Honeycutt.
   31362 
   31363         URL in address bar doesn't update when navigating to http://webkit.org/new-bug when using WebKit2
   31364         <rdar://problem/8272775>
   31365         https://bugs.webkit.org/show_bug.cgi?id=45729
   31366 
   31367         Pass an updated provisional url while notifying the UIProcess of
   31368         didReceiveServerRedirectForProvisionalLoadForFrame.
   31369 
   31370         * UIProcess/WebFrameProxy.cpp:
   31371         (WebKit::WebFrameProxy::didReceiveServerRedirectForProvisionalLoad):
   31372         * UIProcess/WebFrameProxy.h:
   31373         * UIProcess/WebPageProxy.cpp:
   31374         (WebKit::WebPageProxy::didReceiveMessage):
   31375         (WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame):
   31376         * UIProcess/WebPageProxy.h:
   31377         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   31378         (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
   31379 
   31380 2010-09-13  Sam Weinig  <sam (a] webkit.org>
   31381 
   31382         Fix windows build.
   31383 
   31384         * UIProcess/Launcher/win/ProcessLauncherWin.cpp:
   31385 
   31386 2010-09-13  Sam Weinig  <sam (a] webkit.org>
   31387 
   31388         Reviewed by Jon Honeycutt.
   31389 
   31390         Threaded mode should work in WebKit2 MiniBrowser
   31391         https://bugs.webkit.org/show_bug.cgi?id=45727
   31392 
   31393         - Make starting the web thread more like starting a new
   31394           process (encapsulate it in a thread launcher class).
   31395         - Make the call to didFinishLaunching asynchronous so that
   31396           WebProcess is fully constructed before it is called.
   31397 
   31398         * Platform/WorkItem.h:
   31399         (MemberFunctionWorkItem1::MemberFunctionWorkItem1):
   31400         (MemberFunctionWorkItem1::~MemberFunctionWorkItem1):
   31401         (MemberFunctionWorkItem1::execute):
   31402         (WorkItem::create):
   31403         * UIProcess/Launcher/ProcessLauncher.h:
   31404         * UIProcess/Launcher/ThreadLauncher.cpp: Added.
   31405         (WebKit::ThreadLauncher::ThreadLauncher):
   31406         (WebKit::ThreadLauncher::launchThread):
   31407         (WebKit::ThreadLauncher::didFinishLaunchingThread):
   31408         (WebKit::ThreadLauncher::invalidate):
   31409         * UIProcess/Launcher/ThreadLauncher.h: Added.
   31410         (WebKit::ThreadLauncher::Client::~Client):
   31411         (WebKit::ThreadLauncher::create):
   31412         (WebKit::ThreadLauncher::isLaunching):
   31413         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   31414         (WebKit::ProcessLauncher::terminateProcess):
   31415         * UIProcess/Launcher/mac/ThreadLauncherMac.mm: Added.
   31416         (WebKit::webThreadBody):
   31417         (WebKit::ThreadLauncher::createWebThread):
   31418         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   31419         * UIProcess/Launcher/qt/ThreadLauncherQt.cpp: Added.
   31420         (WebKit::webThreadBody):
   31421         (WebKit::ProcessLauncher::createWebThread):
   31422         * UIProcess/Launcher/win/ProcessLauncherWin.cpp:
   31423         * UIProcess/Launcher/win/ThreadLauncherWin.cpp: Added.
   31424         (WebKit::webThreadBody):
   31425         (WebKit::ProcessLauncher::createWebThread):
   31426         * UIProcess/WebProcessProxy.cpp:
   31427         (WebKit::WebProcessProxy::~WebProcessProxy):
   31428         (WebKit::WebProcessProxy::connect):
   31429         (WebKit::WebProcessProxy::isLaunching):
   31430         (WebKit::WebProcessProxy::didFinishLaunching):
   31431         * UIProcess/WebProcessProxy.h:
   31432         * WebKit2.pro:
   31433         * WebKit2.xcodeproj/project.pbxproj:
   31434         * win/WebKit2.vcproj:
   31435 
   31436 2010-09-13  Sam Weinig  <sam (a] webkit.org>
   31437 
   31438         Reviewed by Anders Carlsson.
   31439 
   31440         didFinishDocumentLoadForFrame() is not being sent by WebKit2
   31441         <rdar://problem/8424171>
   31442 
   31443         Finish wiring up didFinishDocumentLoad to the UIProcess.
   31444 
   31445         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   31446         (WebKit::WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
   31447 
   31448 2010-09-13  Enrica Casucci  <enrica (a] apple.com>
   31449 
   31450         Reviewed by Sam Weinig.
   31451 
   31452         Paste should be implemented in WebCore like Copy and Cut for Mac also.
   31453         https://bugs.webkit.org/show_bug.cgi?id=45494
   31454         <rdar://problem/7660537>
   31455 
   31456         On the Mac platform, the implementation of the paste operation is all done
   31457         at the WebKit level. In order to support it on WebKit2 it is necessary to
   31458         refactor the code and move this functionality at the level of WebCore like
   31459         we already have on Windows.
   31460         The original code relies on some in AppKit functions that call back into
   31461         WebKit causing problems in WebKit2. All this functionality has been moved
   31462         at the level of the editor client where it can be dealt with appropriately.
   31463 
   31464         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   31465         (WebKit::WebEditorClient::documentFragmentFromAttributedString): Added.
   31466         (WebKit::WebEditorClient::setInsertionPasteboard): Added.
   31467         * WebProcess/WebCoreSupport/WebEditorClient.h:
   31468         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   31469         (WebKit::WebFrameLoaderClient::canShowMIMETypeAsHTML): Added.
   31470         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   31471 
   31472 2010-09-11  Daniel Bates  <dbates (a] rim.com>
   31473 
   31474         Attempt to fix the Qt Linux Release build after changeset 67312 <http://trac.webkit.org/changeset/67312>.
   31475 
   31476         * UIProcess/API/qt/qwkpage.cpp:
   31477         (QWKPage::QWKPage): Add missing ',' in WKPageUIClient initialization list.
   31478 
   31479 2010-09-11  Adam Barth  <abarth (a] webkit.org>
   31480 
   31481         Reviewed by Sam Weinig.
   31482 
   31483         Make SecurityOrigin::canDisplay an instance function
   31484         https://bugs.webkit.org/show_bug.cgi?id=45219
   31485 
   31486         * WebProcess/Plugins/PluginView.cpp:
   31487         (WebKit::PluginView::performFrameLoadURLRequest):
   31488 
   31489 2010-09-11  Sam Weinig  <sam (a] webkit.org>
   31490 
   31491         Reviewed by Dan Bernstein.
   31492 
   31493         Implement WebKit2 callback equivalent to - [WebUIDelegate webView:setStatusText:]
   31494         <rdar://problem/8359252>
   31495         https://bugs.webkit.org/show_bug.cgi?id=45605
   31496 
   31497         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   31498         * UIProcess/API/C/WKPage.h:
   31499         * UIProcess/API/qt/qwkpage.cpp:
   31500         (QWKPage::QWKPage):
   31501         * UIProcess/WebPageProxy.cpp:
   31502         (WebKit::WebPageProxy::didReceiveMessage):
   31503         (WebKit::WebPageProxy::setStatusText):
   31504         * UIProcess/WebPageProxy.h:
   31505         * UIProcess/WebUIClient.cpp:
   31506         (WebKit::WebUIClient::setStatusText):
   31507         * UIProcess/WebUIClient.h:
   31508         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   31509         (WebKit::WebChromeClient::setStatusbarText):
   31510 
   31511 2010-09-11  Sam Weinig  <sam (a] webkit.org>
   31512 
   31513         Reviewed by Dan Bernstein.
   31514 
   31515         Add callback mechanism for the getting the source of a frame
   31516         <rdar://problem/8364681>
   31517         https://bugs.webkit.org/show_bug.cgi?id=45604
   31518 
   31519         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
   31520         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   31521         * UIProcess/API/C/WKPage.cpp:
   31522         (WKPageGetSourceForFrame):
   31523         (callGetSourceForFrameBlockBlockAndDispose):
   31524         (WKPageGetSourceForFrame_b):
   31525         * UIProcess/API/C/WKPage.h:
   31526         * UIProcess/WebPageProxy.cpp:
   31527         (WebKit::WebPageProxy::close):
   31528         (WebKit::WebPageProxy::getSourceForFrame):
   31529         (WebKit::WebPageProxy::didReceiveMessage):
   31530         (WebKit::WebPageProxy::didGetSourceForFrame):
   31531         (WebKit::WebPageProxy::processDidExit):
   31532         * UIProcess/WebPageProxy.h:
   31533         * WebProcess/WebPage/WebFrame.cpp:
   31534         (WebKit::WebFrame::source):
   31535         * WebProcess/WebPage/WebFrame.h:
   31536         * WebProcess/WebPage/WebPage.cpp:
   31537         (WebKit::WebPage::getSourceForFrame):
   31538         (WebKit::WebPage::didReceiveMessage):
   31539         * WebProcess/WebPage/WebPage.h:
   31540 
   31541 2010-09-10  Jesus Sanchez-Palencia <jesus.palencia (a] openbossa.org>
   31542 
   31543         Reviewed by Darin Adler.
   31544 
   31545         Add NetworkingContext to avoid layer violations
   31546         https://bugs.webkit.org/show_bug.cgi?id=42292
   31547 
   31548         * WebProcess/WebCoreSupport/win/WebFrameNetworkingContext.cpp:
   31549         * WebProcess/WebCoreSupport/win/WebFrameNetworkingContext.h:
   31550         (WebFrameNetworkingContext::create):
   31551 
   31552 2010-09-10  Sam Weinig  <sam (a] webkit.org>
   31553 
   31554         Reviewed by Dan Bernstein.
   31555 
   31556         Add zoom support to WebKit2 API
   31557         <rdar://problem/7660657>
   31558         https://bugs.webkit.org/show_bug.cgi?id=45585
   31559 
   31560         - Add UIProcess API for setting zoom factors.
   31561         - Change bundle zoom API to be in terms of doubles
   31562           for consistency.
   31563 
   31564         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
   31565         * UIProcess/API/C/WKPage.cpp:
   31566         (WKPageGetTextZoomFactor):
   31567         (WKPageSetTextZoomFactor):
   31568         (WKPageGetPageZoomFactor):
   31569         (WKPageSetPageZoomFactor):
   31570         (WKPageSetPageAndTextZoomFactors):
   31571         * UIProcess/API/C/WKPage.h:
   31572         * UIProcess/WebPageProxy.cpp:
   31573         (WebKit::WebPageProxy::WebPageProxy):
   31574         (WebKit::WebPageProxy::setTextZoomFactor):
   31575         (WebKit::WebPageProxy::setPageZoomFactor):
   31576         (WebKit::WebPageProxy::setPageAndTextZoomFactors):
   31577         * UIProcess/WebPageProxy.h:
   31578         (WebKit::WebPageProxy::textZoomFactor):
   31579         (WebKit::WebPageProxy::pageZoomFactor):
   31580         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   31581         (WKBundlePageGetTextZoomFactor):
   31582         (WKBundlePageSetTextZoomFactor):
   31583         (WKBundlePageGetPageZoomFactor):
   31584         (WKBundlePageSetPageZoomFactor):
   31585         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
   31586         * WebProcess/WebPage/WebPage.cpp:
   31587         (WebKit::WebPage::textZoomFactor):
   31588         (WebKit::WebPage::setTextZoomFactor):
   31589         (WebKit::WebPage::pageZoomFactor):
   31590         (WebKit::WebPage::setPageZoomFactor):
   31591         (WebKit::WebPage::setPageAndTextZoomFactors):
   31592         (WebKit::WebPage::didReceiveMessage):
   31593         * WebProcess/WebPage/WebPage.h:
   31594 
   31595 2010-09-10  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   31596 
   31597         Reviewed by Andreas Kling.
   31598 
   31599         Application cache directory should be checked before sending to the web process
   31600         https://bugs.webkit.org/show_bug.cgi?id=45462
   31601 
   31602         * UIProcess/WebProcessProxy.cpp:
   31603         (WebKit::WebProcessProxy::WebProcessProxy): Check the return value of
   31604         m_context->applicationCacheDirectoy() to avoid sending a null string
   31605         to the web process what makes it asserting.
   31606 
   31607 2010-09-10  Sam Weinig  <sam (a] webkit.org>
   31608 
   31609         Reviewed by Darin Adler.
   31610 
   31611         Remove unnecessary constraint in WebCore of choosing either text zoom or full page zoom.
   31612         Precursor to <rdar://problem/7660657>
   31613         https://bugs.webkit.org/show_bug.cgi?id=45522
   31614 
   31615         Now that WebCore doesn't require a mode, change the bundle API for zoom to not
   31616         require one either.
   31617 
   31618         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   31619         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   31620         (WKBundlePageStopLoading):
   31621         (WKBundlePageGetTextZoomFactor):
   31622         (WKBundlePageSetTextZoomFactor):
   31623         (WKBundlePageGetPageZoomFactor):
   31624         (WKBundlePageSetPageZoomFactor):
   31625         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
   31626         * WebProcess/WebPage/WebPage.cpp:
   31627         (WebKit::WebPage::WebPage):
   31628         (WebKit::WebPage::textZoomFactor):
   31629         (WebKit::WebPage::setTextZoomFactor):
   31630         (WebKit::WebPage::pageZoomFactor):
   31631         (WebKit::WebPage::setPageZoomFactor):
   31632         * WebProcess/WebPage/WebPage.h:
   31633 
   31634 2010-09-10  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   31635 
   31636         Reviewed by Andreas Kling.
   31637 
   31638         [Qt] Implement port specific part of WebKit::InjectedBundle
   31639         https://bugs.webkit.org/show_bug.cgi?id=45541
   31640 
   31641         * WebProcess/InjectedBundle/InjectedBundle.h: Typedef PlatformBundle as QLibrary for qt.
   31642         * WebProcess/InjectedBundle/qt/InjectedBundleQt.cpp:
   31643         (WebKit::InjectedBundle::load): Implemented.
   31644 
   31645 2010-09-10  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   31646 
   31647         Reviewed by Andreas Kling.
   31648 
   31649         [Qt] MiniBrowser crashes with multiply windows when closing one of them
   31650         https://bugs.webkit.org/show_bug.cgi?id=45536
   31651 
   31652         * UIProcess/API/qt/qwkpage.cpp:
   31653         (QWKPage::~QWKPage): Do not call WKPageTerminate since this is designed
   31654         to terminate the web process. We are correctly detaching the page without
   31655         this call anyway.
   31656 
   31657 2010-09-10  Adam Barth  <abarth (a] webkit.org>
   31658 
   31659         Reviewed by Darin Fisher.
   31660 
   31661         Move code from WebKit-layer to DocumentLoader
   31662         https://bugs.webkit.org/show_bug.cgi?id=45569
   31663 
   31664         This code looks copy/pasted from Mac.  It's unclear whether whether all
   31665         the complexity is needed here, but I don't have a good way to find out.
   31666 
   31667         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   31668         (WebKit::WebFrameLoaderClient::committedLoad):
   31669         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   31670 
   31671 2010-09-10  Anders Carlsson  <andersca (a] apple.com>
   31672 
   31673         Reviewed by Mark Rowe and Darin Adler.
   31674 
   31675         Set the visible name for the web process
   31676         https://bugs.webkit.org/show_bug.cgi?id=45564
   31677         <rdar://problem/8416970>
   31678 
   31679         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   31680         (WebKit::processName):
   31681         Add a thread safe implementation of -[NSProcessInfo processName].
   31682 
   31683         (WebKit::ProcessLauncher::launchProcess):
   31684         Pass the process name to the child process.
   31685 
   31686         * WebProcess/mac/WebProcessMainMac.mm:
   31687         (WebKit::WebProcessMain):
   31688         Set the visible name.
   31689 
   31690 2010-09-10  Adam Barth  <abarth (a] webkit.org>
   31691 
   31692         Reviewed by Eric Seidel.
   31693 
   31694         Main resource bytes shouldn't bounce through FrameLoader
   31695         https://bugs.webkit.org/show_bug.cgi?id=45496
   31696 
   31697         Now return the bytes to the DocumentLoader.
   31698 
   31699         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   31700         (WebKit::WebFrameLoaderClient::receivedData):
   31701 
   31702 2010-09-10  Adam Roben  <aroben (a] apple.com>
   31703 
   31704         Don't crash when a frame is destroyed after the UI process has
   31705         disconnected
   31706 
   31707         Fixes <http://webkit.org/b/45535> <rdar://problem/8412928> Crash in
   31708         WebProcess::removeWebFrame on exit with WebKit2 (Release builds only)
   31709 
   31710         Reviewed by Darin Adler.
   31711 
   31712         * WebProcess/WebProcess.cpp:
   31713         (WebKit::WebProcess::removeWebFrame): Null-check m_connection before
   31714         dereferencing it.
   31715 
   31716 2010-09-09  Simon Fraser  <simon.fraser (a] apple.com>
   31717 
   31718         Reviewed by Adam Roben.
   31719 
   31720         Scrollbars fail to render in composited iframes.
   31721         https://bugs.webkit.org/show_bug.cgi?id=45335
   31722 
   31723         Use LocalWindowsContext when painting the plugin.
   31724 
   31725         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
   31726         (WebKit::NetscapePlugin::platformPaint):
   31727 
   31728 2010-09-09  Sam Weinig  <sam (a] webkit.org>
   31729 
   31730         Reviewed by Anders Carlsson.
   31731 
   31732         Allow passing WebDoubles via postMessage.
   31733 
   31734         * Shared/UserMessageCoders.h:
   31735         (WebKit::UserMessageEncoder::baseEncode):
   31736         (WebKit::UserMessageDecoder::baseDecode):
   31737 
   31738 2010-09-08  Sam Weinig  <sam (a] webkit.org>
   31739 
   31740         Reviewed by Dan Bernstein.
   31741 
   31742         WebKit2 needs a way to box numbers (for Array, Dictionary, etc.)
   31743         <rdar://problem/8408844>
   31744         https://bugs.webkit.org/show_bug.cgi?id=45429
   31745 
   31746         This adds a generic WebNumber class that can be used for any scalar
   31747         numeric type. Right now, we are only exposing a double version, but it
   31748         is designed to allow more.
   31749 
   31750         * Shared/APIObject.h:
   31751         * Shared/WebNumber.h: Added.
   31752         (WebKit::WebNumber::create):
   31753         (WebKit::WebNumber::value):
   31754         (WebKit::WebNumber::setValue):
   31755         (WebKit::WebNumber::WebNumber):
   31756         (WebKit::WebNumber::type):
   31757         * UIProcess/API/C/WKAPICast.h:
   31758         * UIProcess/API/C/WKBase.h:
   31759         * UIProcess/API/C/WKNumber.cpp: Added.
   31760         (WKDoubleGetTypeID):
   31761         (WKDoubleCreate):
   31762         (WKDoubleGetValue):
   31763         (WKDoubleSetValue):
   31764         * UIProcess/API/C/WKNumber.h: Added.
   31765         * UIProcess/API/C/WebKit2.h:
   31766         * WebKit2.pro:
   31767         * WebKit2.xcodeproj/project.pbxproj:
   31768         * win/WebKit2.vcproj:
   31769         * win/WebKit2Generated.make:
   31770 
   31771 2010-09-08  Anders Carlsson  <andersca (a] apple.com>
   31772 
   31773         Don't include the std namespace in a header. This hopefully fixes the Windows build.
   31774 
   31775         * Shared/WebCoreArgumentCoders.h:
   31776 
   31777 2010-09-08  Anders Carlsson  <andersca (a] apple.com>
   31778 
   31779         Suggested and reviewed by Darin Adler.
   31780 
   31781         Fix an overflow bug in bufferIsLargeEnoughToContain.
   31782 
   31783         * Platform/CoreIPC/ArgumentDecoder.h:
   31784         (CoreIPC::ArgumentDecoder::bufferIsLargeEnoughToContain):
   31785 
   31786 2010-09-08  Anders Carlsson  <andersca (a] apple.com>
   31787 
   31788         Reviewed by Darin Adler.
   31789 
   31790         Improve CoreIPC encoding of strings
   31791         https://bugs.webkit.org/show_bug.cgi?id=45418
   31792 
   31793         Encode and decode null Strings. Check that the string length isn't bogus.
   31794 
   31795         * Platform/CoreIPC/ArgumentCoders.h:
   31796         * Platform/CoreIPC/ArgumentDecoder.cpp:
   31797         (CoreIPC::ArgumentDecoder::bufferIsLargeEnoughToContain):
   31798         * Platform/CoreIPC/ArgumentDecoder.h:
   31799         (CoreIPC::ArgumentDecoder::bufferIsLargeEnoughToContain):
   31800         * Shared/WebCoreArgumentCoders.h:
   31801 
   31802 2010-09-08  Adam Roben  <aroben (a] apple.com>
   31803 
   31804         Add a way to cause the web process to crash at a random time
   31805 
   31806         Setting the WEBKIT2_CRASH_WEB_PROCESS_RANDOMLY environment variable
   31807         will cause the web process to crash at a random point up to 3 minutes
   31808         after launching.
   31809 
   31810         Fixes <http://webkit.org/b/43058> <rdar://problem/8240150>
   31811 
   31812         Reviewed by Darin Adler.
   31813 
   31814         * WebProcess/WebProcess.cpp:
   31815         (WebKit::sleep): Added an implementation of this function for Windows.
   31816         It just calls through to ::Sleep.
   31817         (WebKit::randomCrashThread): Added. Sleeps for a random amount of time
   31818         up to 3 minutes, then crashes.
   31819         (WebKit::startRandomCrashThreadIfRequested): Added. Starts the crash
   31820         thread if the WEBKIT2_CRASH_WEB_PROCESS_RANDOMLY environment variable
   31821         is set.
   31822         (WebKit::WebProcess::initialize): Added a call to
   31823         startRandomCrashThreadIfRequested.
   31824 
   31825 2010-09-08  Adam Roben  <aroben (a] apple.com>
   31826 
   31827         Fix potential ref-counting issues with WorkItemWin
   31828 
   31829         Reviewed by Anders Carlsson.
   31830 
   31831         * Platform/WorkQueue.h: Changed WorkItemWin to inherit from
   31832         ThreadSafeShared instead of RefCounted so that its ref-count will stay
   31833         consistent when used on multiple threads.
   31834 
   31835 2010-09-08  Adam Roben  <aroben (a] apple.com>
   31836 
   31837         Teach WorkQueue how to stop waiting on objects on Windows
   31838 
   31839         WorkQueue now uses a subclass of WorkItemWin, HandleWorkItem, to hold
   31840         the waited-upon HANDLE and its corresponding wait handle. When a
   31841         HANDLE is unregistered, we use the HandleWorkItem to cancel the wait
   31842         and destroy the HANDLE.
   31843 
   31844         Fixes <http://webkit.org/b/42826> <rdar://problem/8222253> Crash in
   31845         thread pool because WorkQueue keeps waiting on closed HANDLEs
   31846 
   31847         Reviewed by Anders Carlsson.
   31848 
   31849         * Platform/CoreIPC/win/ConnectionWin.cpp:
   31850         (CoreIPC::Connection::platformInvalidate): Changed to call
   31851         WorkQueue::unregisterAndCloseHandle instead of closing our handles
   31852         manually.
   31853 
   31854         (CoreIPC::Connection::readEventHandler):
   31855         (CoreIPC::Connection::writeEventHandler):
   31856         Handle cases where the pipe has already closed by just bailing out.
   31857         This can happen if a WorkItem to call one of these functions has
   31858         already been scheduled before platformInvalidate is called.
   31859 
   31860         * Platform/WorkQueue.h: Gave WorkItemWin a virtual destructor, added
   31861         HandleWorkItem, changed m_handles to hold HandleWorkItems, and added
   31862         functions for unregistering waits.
   31863 
   31864         * Platform/win/WorkQueueWin.cpp:
   31865         (WorkQueue::WorkItemWin::~WorkItemWin): Added. This virtual destructor
   31866         ensures that HandleWorkItem's destructor gets called.
   31867 
   31868         (WorkQueue::HandleWorkItem::HandleWorkItem):
   31869         (WorkQueue::HandleWorkItem::createByAdoptingHandle):
   31870         Added simple constructor/creator.
   31871 
   31872         (WorkQueue::HandleWorkItem::~HandleWorkItem): Closes the handle we
   31873         adopted.
   31874         (WorkQueue::registerHandle): Changed to create a HandleWorkItemWin and
   31875         to store the wait handle in it.
   31876         (WorkQueue::unregisterAndCloseHandle): Added. Removes the
   31877         HandleWorkItem for this HANDLE from m_handles and then schedules its
   31878         wait to be unregistered and the item to be destroyed.
   31879         (WorkQueue::platformInvalidate): Added an assertion and removed an
   31880         obsolete FIXME.
   31881         (WorkQueue::unregisterWaitAndDestroyItemSoon): Added. Calls
   31882         unregisterWaitAndDestroyItemCallback on a worker thread, passing it
   31883         ownership of the HandleWorkItem.
   31884         (WorkQueue::unregisterWaitAndDestroyItemCallback): Added. Adopts the
   31885         passed-in HandleWorkItem, then unregisters the handle's wait, then
   31886         destroys the HandleWorkItem when the RefPtr holding it goes out of
   31887         scope. Destroying the HandleWorkItem closes the handle.
   31888 
   31889 2010-09-08  Adam Roben  <aroben (a] apple.com>
   31890 
   31891         Remove WKSerializedScriptValue.cpp/h from the Copy Files build phase
   31892 
   31893         * WebKit2.xcodeproj/project.pbxproj:
   31894 
   31895 2010-09-08  Adam Roben  <aroben (a] apple.com>
   31896 
   31897         Get rid of WorkQueue::m_performWorkEvent
   31898 
   31899         We were signaling m_performWorkEvent to spawn a worker thread. We can
   31900         use ::QueueUserWorkItem to spawn the thread instead.
   31901 
   31902         Fixes <http://webkit.org/b/45407> WorkQueue::m_performWorkEvent is
   31903         unnecessary
   31904 
   31905         Reviewed by Anders Carlsson.
   31906 
   31907         * Platform/WorkQueue.h: Removed m_performWorkEvent.
   31908 
   31909         * Platform/win/WorkQueueWin.cpp:
   31910         (WorkQueue::workThreadCallback): Replaced eventCallback with this
   31911         function. Its functionality is unchanged.
   31912 
   31913         (WorkQueue::platformInitialize):
   31914         (WorkQueue::platformInvalidate):
   31915         Removed code to set up and clean up m_performWorkEvent.
   31916 
   31917         (WorkQueue::scheduleWork): Use ::QueueUserWorkItem instead of
   31918         signaling m_performWorkEvent to spawn a worker thread.
   31919 
   31920 2010-09-08  Adam Roben  <aroben (a] apple.com>
   31921 
   31922         Fix WebKit2Common.vsprops line-endings
   31923 
   31924         * win/WebKit2Common.vsprops: Made all line-endings be CRLF, as this is
   31925         the format Visual Studio wants.
   31926 
   31927 2010-09-07  Oliver Hunt  <oliver (a] apple.com>
   31928 
   31929         Reviewed by Anders Carlsson.
   31930 
   31931         Support SerializedScriptValue in WebKit2
   31932         https://bugs.webkit.org/show_bug.cgi?id=45340
   31933 
   31934         Add wrappers and IPC serialization for SerializedScriptValue
   31935 
   31936         * Shared/APIObject.h:
   31937         * Shared/UserMessageCoders.h:
   31938         (WebKit::UserMessageEncoder::baseEncode):
   31939         (WebKit::UserMessageDecoder::baseDecode):
   31940         * Shared/WebSerializedScriptValue.h: Added.
   31941         (WebKit::WebSerializedScriptValue::create):
   31942         (WebKit::WebSerializedScriptValue::adopt):
   31943         (WebKit::WebSerializedScriptValue::deserialize):
   31944         (WebKit::WebSerializedScriptValue::data):
   31945         (WebKit::WebSerializedScriptValue::WebSerializedScriptValue):
   31946         (WebKit::WebSerializedScriptValue::type):
   31947         * UIProcess/API/C/WKAPICast.h:
   31948         * UIProcess/API/C/WKBase.h:
   31949         * UIProcess/API/C/WKSerializedScriptValue.cpp: Added.
   31950         (WKSerializedScriptValueGetTypeID):
   31951         (WKSerializedScriptValueCreate):
   31952         (WKSerializedScriptValueDeserialize):
   31953         * UIProcess/API/C/WKSerializedScriptValue.h: Added.
   31954         * WebKit2.xcodeproj/project.pbxproj:
   31955 
   31956 2010-09-08  Sam Weinig  <sam (a] webkit.org>
   31957 
   31958         Reviewed by Jon Honeycutt.
   31959 
   31960         Would like WKBundleFrameRef to turn into WKFrameRef across postMessage boundary, a la PageRef
   31961         <rdar://problem/8402804>
   31962         https://bugs.webkit.org/show_bug.cgi?id=45370
   31963 
   31964         * UIProcess/WebContextUserMessageCoders.h:
   31965         (WebKit::WebContextUserMessageEncoder::encode):
   31966         (WebKit::WebContextUserMessageDecoder::decode):
   31967         * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
   31968         (WebKit::InjectedBundleUserMessageEncoder::encode):
   31969         (WebKit::InjectedBundleUserMessageDecoder::decode):
   31970 
   31971 2010-09-07  Kinuko Yasuda  <kinuko (a] chromium.org>
   31972 
   31973         Unreviewed, another Qt release build fix attempt.
   31974 
   31975         * UIProcess/API/cpp/qt/WKURLQt.cpp:
   31976 
   31977 2010-09-07  Kinuko Yasuda  <kinuko (a] chromium.org>
   31978 
   31979         Unreviewed, attempt to fix Qt release build.
   31980 
   31981         * UIProcess/API/cpp/qt/WKStringQt.cpp:
   31982 
   31983 2010-09-07  Brent Fulgham  <bfulgham (a] webkit.org>
   31984 
   31985         Build correction, no review.
   31986 
   31987         * win/WebKit2.vcproj: Disable two unused files for
   31988         the WinCairo target.
   31989 
   31990 2010-09-07  Anders Carlsson  <andersca (a] apple.com>
   31991 
   31992         Reviewed by Sam Weinig.
   31993 
   31994         Fix clang++ build.
   31995 
   31996         * UIProcess/API/C/WKAPICast.h:
   31997         Move all functions into the WebKit namespace.
   31998         
   31999         * UIProcess/API/C/cf/WKStringCF.cpp:
   32000         Add using namespace WebKit.
   32001 
   32002         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   32003         Move all functions into the WebKit namespace.
   32004 
   32005 2010-09-07  Anders Carlsson  <andersca (a] apple.com>
   32006 
   32007         Reviewed by Darin Adler.
   32008 
   32009         <rdar://problem/8381749> -Wcast-align warning emitted when building with clang
   32010 
   32011         Remove the -Wcast-align-warning since it isn't really useful, and clang is more aggressive about warning than gcc.
   32012 
   32013         * Configurations/Base.xcconfig:
   32014 
   32015 2010-09-07  Sam Weinig  <sam (a] webkit.org>
   32016 
   32017         Another windows fix.
   32018 
   32019         * UIProcess/win/WebView.cpp:
   32020 
   32021 2010-09-07  Sam Weinig  <sam (a] webkit.org>
   32022 
   32023         Try and fix windows.
   32024 
   32025         * UIProcess/WebEditCommandProxy.h:
   32026 
   32027 2010-09-07  Sam Weinig  <sam (a] webkit.org>
   32028 
   32029         Reviewed by Darin Adler.
   32030 
   32031         Fix incorrect parameter name.
   32032 
   32033         * UIProcess/API/mac/PageClientImpl.mm:
   32034 
   32035 2010-09-07  Sam Weinig  <sam (a] webkit.org>
   32036 
   32037         Reviewed by Darin Adler.
   32038 
   32039         Add support for Undo/Redo
   32040         <rdar://problem/7660519>
   32041         https://bugs.webkit.org/show_bug.cgi?id=42781
   32042 
   32043         Adds platform independent parts of Undo/Redo support and the mac
   32044         platform support.
   32045 
   32046         To work around the common assumption made by platforms, that a redo
   32047         item will be added synchronously while an undo is in progress, we
   32048         ignore the calls from WebCore to add redo items, and instead add add
   32049         them after telling WebCore to unapply the EditCommand. We similarly
   32050         need to ignore undos, that take place during a redo, and force the
   32051         addition ourselves.
   32052 
   32053         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
   32054         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   32055         Add new messages.
   32056 
   32057         * UIProcess/API/mac/PageClientImpl.h:
   32058         * UIProcess/API/mac/PageClientImpl.mm:
   32059         (-[WebEditCommandObjC initWithWebEditCommandProxy:WebKit::]):
   32060         (-[WebEditCommandObjC WebKit::]):
   32061         (-[WebEditorUndoTargetObjC undoEditing:]):
   32062         (-[WebEditorUndoTargetObjC redoEditing:]):
   32063         (WebKit::PageClientImpl::PageClientImpl):
   32064         (WebKit::nameForEditAction):
   32065         (WebKit::PageClientImpl::registerEditCommand):
   32066         (WebKit::PageClientImpl::clearAllEditCommands):
   32067         * UIProcess/API/qt/qwkpage.cpp:
   32068         (QWKPagePrivate::registerEditCommand):
   32069         (QWKPagePrivate::clearAllEditCommands):
   32070         * UIProcess/API/qt/qwkpage_p.h:
   32071         * UIProcess/PageClient.h:
   32072         * UIProcess/win/WebView.cpp:
   32073         (WebKit::WebView::registerEditCommand):
   32074         (WebKit::WebView::clearAllEditCommands):
   32075         * UIProcess/win/WebView.h:
   32076         Add platform specific hooks for undo/redo.
   32077 
   32078         * UIProcess/WebEditCommandProxy.cpp: Added.
   32079         (WebKit::WebEditCommandProxy::WebEditCommandProxy):
   32080         (WebKit::WebEditCommandProxy::~WebEditCommandProxy):
   32081         (WebKit::WebEditCommandProxy::unapply):
   32082         (WebKit::WebEditCommandProxy::reapply):
   32083         * UIProcess/WebEditCommandProxy.h: Added.
   32084         (WebKit::WebEditCommandProxy::create):
   32085         (WebKit::WebEditCommandProxy::commandID):
   32086         (WebKit::WebEditCommandProxy::editAction):
   32087         (WebKit::WebEditCommandProxy::invalidate):
   32088         A proxy for the WebEditCommands in the WebProcess. These are owned
   32089         by the platform back/forward list, with a weak reference back to the
   32090         WebPageProxy (which holds a weakset of live WebEditCommandProxys).
   32091 
   32092         * UIProcess/WebPageProxy.cpp:
   32093         (WebKit::WebPageProxy::close):
   32094         (WebKit::WebPageProxy::didReceiveMessage):
   32095         (WebKit::WebPageProxy::registerEditCommandForUndo):
   32096         (WebKit::WebPageProxy::clearAllEditCommands):
   32097         (WebKit::WebPageProxy::registerEditCommandForRedo):
   32098         (WebKit::WebPageProxy::addEditCommand):
   32099         (WebKit::WebPageProxy::removeEditCommand):
   32100         (WebKit::WebPageProxy::processDidExit):
   32101         * UIProcess/WebPageProxy.h:
   32102         Forward messages.
   32103 
   32104         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   32105         (WebKit::WebEditorClient::registerCommandForUndo):
   32106         (WebKit::WebEditorClient::registerCommandForRedo):
   32107         (WebKit::WebEditorClient::clearUndoRedoOperations):
   32108         Send undo/redo registration and clearing to the UIProcess.
   32109 
   32110         * WebProcess/WebPage/WebEditCommand.cpp: Added.
   32111         (WebKit::generateCommandID):
   32112         (WebKit::WebEditCommand::WebEditCommand):
   32113         * WebProcess/WebPage/WebEditCommand.h: Added.
   32114         (WebKit::WebEditCommand::create):
   32115         (WebKit::WebEditCommand::command):
   32116         (WebKit::WebEditCommand::commandID):
   32117         Wrapper for WebCore::EditCommand, with an added unique ID.
   32118 
   32119         * WebProcess/WebPage/WebPage.cpp:
   32120         (WebKit::WebPage::WebPage):
   32121         (WebKit::WebPage::webEditCommand):
   32122         (WebKit::WebPage::addWebEditCommand):
   32123         (WebKit::WebPage::removeWebEditCommand):
   32124         (WebKit::WebPage::unapplyEditCommand):
   32125         (WebKit::WebPage::reapplyEditCommand):
   32126         (WebKit::WebPage::didRemoveEditCommand):
   32127         (WebKit::WebPage::didReceiveMessage):
   32128         * WebProcess/WebPage/WebPage.h:
   32129         (WebKit::WebPage::isInRedo):
   32130         Forward messages.
   32131 
   32132         * WebKit2.pro:
   32133         * WebKit2.xcodeproj/project.pbxproj:
   32134         * win/WebKit2.vcproj:
   32135         Add new files.
   32136 
   32137 2010-09-07  Jessie Berlin  <jberlin (a] apple.com>
   32138 
   32139         Reviewed by Darin Adler.
   32140 
   32141         Indicate which one of the ScriptWorlds for a Frame the Window Object has been cleared for
   32142         https://bugs.webkit.org/show_bug.cgi?id=45217
   32143 
   32144         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   32145 
   32146         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   32147         (WebKit::InjectedBundlePageLoaderClient::didClearWindowObjectForFrame):
   32148         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   32149 
   32150         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   32151         (WebKit::WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
   32152 
   32153 2010-09-06  Adam Barth  <abarth (a] webkit.org>
   32154 
   32155         Reviewed by Darin Adler.
   32156 
   32157         Rename SecurityOrigin::canLoad to canDisplay
   32158         https://bugs.webkit.org/show_bug.cgi?id=45214
   32159 
   32160         Propagate name change.
   32161 
   32162         * WebProcess/Plugins/PluginView.cpp:
   32163         (WebKit::PluginView::performFrameLoadURLRequest):
   32164 
   32165 2010-09-04  Sam Weinig  <sam (a] webkit.org>
   32166 
   32167         Reviewed by Anders Carlsson.
   32168 
   32169         Allow passing null to postMessage API functions
   32170         https://bugs.webkit.org/show_bug.cgi?id=45234
   32171 
   32172         * Shared/APIObject.h: Add TypeNull to enum. This is only used
   32173         for serialization purposes, and does not represent a concrete subclass
   32174         of APIObject.
   32175 
   32176         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h: Remove WillSubmitFormWithUserData
   32177         now that it is not needed.
   32178 
   32179         * Shared/UserMessageCoders.h:
   32180         (WebKit::UserMessageEncoder::baseEncode):
   32181         (WebKit::UserMessageDecoder::baseDecode):
   32182         Add explicit encoding/decoding of null for user messages.
   32183 
   32184         * UIProcess/WebContextUserMessageCoders.h:
   32185         (WebKit::WebContextUserMessageEncoder::encode):
   32186         (WebKit::WebContextUserMessageDecoder::decode):
   32187         * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
   32188         (WebKit::InjectedBundleUserMessageEncoder::encode):
   32189         (WebKit::InjectedBundleUserMessageDecoder::decode):
   32190         Update UserMessageCoders subclasses to call the base class in the correct
   32191         way to work with null messages. This means moving the encoding/decoding
   32192         of the type down to the base class, which is a nice cleanup.
   32193 
   32194         * UIProcess/WebPageProxy.cpp:
   32195         (WebKit::WebPageProxy::didReceiveMessage):
   32196         Remove now redundant WillSubmitFormWithUserData implementation.
   32197 
   32198         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   32199         (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
   32200         Ditto.
   32201 
   32202 2010-09-03  Jesus Sanchez-Palencia  <jesus.palencia (a] openbossa.org>
   32203 
   32204         Reviewed by Darin Adler.
   32205 
   32206         Add NetworkingContext to avoid layer violations
   32207         https://bugs.webkit.org/show_bug.cgi?id=42292
   32208 
   32209         Add FrameNetworkingContext implementation.
   32210 
   32211         * WebKit2.pro:
   32212         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   32213         (WebKit::WebFrameLoaderClient::createNetworkingContext):
   32214         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   32215         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
   32216         (WebKit::WebFrameNetworkingContext::needsSiteSpecificQuirks):
   32217         (WebKit::WebFrameNetworkingContext::localFileContentSniffingEnabled):
   32218         (WebKit::WebFrameNetworkingContext::scheduledRunLoopPairs):
   32219         (WebKit::WebFrameNetworkingContext::blockedError):
   32220         * WebProcess/WebCoreSupport/qt/WebFrameNetworkingContext.cpp: Added.
   32221         (WebCore::WebFrameNetworkingContext::WebFrameNetworkingContext):
   32222         (WebCore::WebFrameNetworkingContext::create):
   32223         (WebCore::WebFrameNetworkingContext::originatingObject):
   32224         (WebCore::WebFrameNetworkingContext::networkAccessManager):
   32225         * WebProcess/WebCoreSupport/qt/WebFrameNetworkingContext.h: Added.
   32226         * WebProcess/WebCoreSupport/win/WebFrameNetworkingContext.cpp: Added.
   32227         * WebProcess/WebCoreSupport/win/WebFrameNetworkingContext.h: Added.
   32228         (WebFrameNetworkingContext::create):
   32229         (WebFrameNetworkingContext::WebFrameNetworkingContext):
   32230         * win/WebKit2.vcproj:
   32231         * win/WebKit2Common.vsprops:
   32232 
   32233 2010-09-03  Sam Weinig  <sam (a] webkit.org>
   32234 
   32235         Reviewed by Dan Bernstein.
   32236 
   32237         Add ability to send UserData to willSubmitForm
   32238         https://bugs.webkit.org/show_bug.cgi?id=45222
   32239 
   32240         - Adds a willSubmitForm callback to the BundlePageFormClient with an out
   32241           parameter WKTypeRef* parameter.
   32242         - That out parameter gets serialized and then passed to the PageFormClient's
   32243           willSubmitForm, which now has WKTypeRef parameter.
   32244 
   32245         - Temporarily adds a new WillSubmitFormWithUserData message kind. This will
   32246           be replaced by the ability to explicitly serialize null as a UserMessage.
   32247 
   32248         * Platform/CoreIPC/Arguments.h:
   32249         (CoreIPC::Arguments6::Arguments6):
   32250         (CoreIPC::Arguments6::encode):
   32251         (CoreIPC::Arguments6::decode):
   32252         (CoreIPC::In):
   32253         (CoreIPC::Out):
   32254         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   32255         * UIProcess/API/C/WKPage.h:
   32256         * UIProcess/WebFormClient.cpp:
   32257         (WebKit::WebFormClient::willSubmitForm):
   32258         * UIProcess/WebFormClient.h:
   32259         * UIProcess/WebPageProxy.cpp:
   32260         (WebKit::WebPageProxy::didReceiveMessage):
   32261         (WebKit::WebPageProxy::willSubmitForm):
   32262         * UIProcess/WebPageProxy.h:
   32263         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   32264         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
   32265         (WebKit::InjectedBundlePageFormClient::textFieldDidBeginEditing):
   32266         (WebKit::InjectedBundlePageFormClient::textFieldDidEndEditing):
   32267         (WebKit::InjectedBundlePageFormClient::textDidChangeInTextField):
   32268         (WebKit::InjectedBundlePageFormClient::textDidChangeInTextArea):
   32269         (WebKit::InjectedBundlePageFormClient::willSubmitForm):
   32270         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.h:
   32271         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   32272         (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
   32273 
   32274 2010-09-03  Sam Weinig  <sam (a] webkit.org>
   32275 
   32276         Reviewed by Gavin Barraclough.
   32277 
   32278         Change WKDictionaryIsMutable to take a WKDictionaryRef instead of a WKMutableDictionaryRef.
   32279         If the type is already states it is mutable, there would be no reason for the check.
   32280 
   32281         * UIProcess/API/C/WKMutableDictionary.cpp:
   32282         (WKDictionaryIsMutable):
   32283         * UIProcess/API/C/WKMutableDictionary.h:
   32284 
   32285 2010-09-02  Sam Weinig  <sam (a] webkit.org>
   32286 
   32287         Reviewed by Anders Carlsson.
   32288 
   32289         Add ability to send WKDictionaryRefs via post message.
   32290         https://bugs.webkit.org/show_bug.cgi?id=45151
   32291 
   32292         * Shared/ImmutableDictionary.cpp:
   32293         (WebKit::ImmutableDictionary::ImmutableDictionary):
   32294         * Shared/ImmutableDictionary.h:
   32295         (WebKit::ImmutableDictionary::adopt): Remove tag, it wasn't doing anything.
   32296         (WebKit::ImmutableDictionary::isMutable):
   32297         (WebKit::ImmutableDictionary::map): Add accessor of internal
   32298         map for encoder.
   32299 
   32300         * Shared/UserMessageCoders.h:
   32301         (WebKit::UserMessageEncoder::baseEncode):
   32302         (WebKit::UserMessageDecoder::baseDecode):
   32303         Add encoder/decoder.
   32304 
   32305 2010-09-02  Sam Weinig  <sam (a] webkit.org>
   32306 
   32307         Reviewed by Anders Carlsson.
   32308 
   32309         Share the common parts of UserMessage coding between both processes.
   32310         https://bugs.webkit.org/show_bug.cgi?id=45139
   32311 
   32312         Add base classes UserMessageEncoder and UserMessageDecoder which implement
   32313         encoding/decoding of ImmutableArray and String (soon to be others as well, such
   32314         as ImmutableDictionary, Data, etc.) and add derived classes which implement the
   32315         process specific bits such as Page -> BundlePage conversion.
   32316 
   32317         * Shared/UserMessageCoders.h: Copied from WebProcess/InjectedBundle/InjectedBundle.cpp.
   32318         (WebKit::UserMessageEncoder::baseEncode):
   32319         (WebKit::UserMessageEncoder::UserMessageEncoder):
   32320         (WebKit::UserMessageDecoder::baseDecode):
   32321         (WebKit::UserMessageDecoder::UserMessageDecoder):
   32322         * UIProcess/WebContext.cpp:
   32323         (WebKit::WebContext::postMessageToInjectedBundle):
   32324         (WebKit::WebContext::didReceiveMessage):
   32325         * UIProcess/WebContextUserMessageCoders.h: Copied from UIProcess/WebContext.cpp.
   32326         (WebKit::WebContextUserMessageEncoder::WebContextUserMessageEncoder):
   32327         (WebKit::WebContextUserMessageEncoder::encode):
   32328         (WebKit::WebContextUserMessageDecoder::WebContextUserMessageDecoder):
   32329         (WebKit::WebContextUserMessageDecoder::decode):
   32330         * WebKit2.pro:
   32331         * WebKit2.xcodeproj/project.pbxproj:
   32332         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   32333         (WebKit::InjectedBundle::postMessage):
   32334         (WebKit::InjectedBundle::didReceiveMessage):
   32335         * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h: Copied from WebProcess/InjectedBundle/InjectedBundle.cpp.
   32336         (WebKit::InjectedBundleUserMessageEncoder::InjectedBundleUserMessageEncoder):
   32337         (WebKit::InjectedBundleUserMessageEncoder::encode):
   32338         (WebKit::InjectedBundleUserMessageDecoder::InjectedBundleUserMessageDecoder):
   32339         (WebKit::InjectedBundleUserMessageDecoder::decode):
   32340         * win/WebKit2.vcproj:
   32341 
   32342 2010-09-02  Sam Weinig  <sam (a] webkit.org>
   32343 
   32344         Reviewed by Anders Carlsson.
   32345 
   32346         Simplify ownership semantics of some WebKit2 types
   32347         https://bugs.webkit.org/show_bug.cgi?id=45120
   32348 
   32349         - Make ImmutableArray and MutableArray use a Vector<RefPtr<APIObject> > and
   32350           therefore ref any items it takes in.
   32351         - Make the PostMessageDecoder operate on a RefPtr<APIObject>& to avoid the odd
   32352           leaking semantics.
   32353 
   32354         * Shared/ImmutableArray.cpp:
   32355         (WebKit::ImmutableArray::ImmutableArray): This constructor now uses a for-loop
   32356         instead of memcpy to ref each item.
   32357         (WebKit::ImmutableArray::~ImmutableArray): No longer necessary to manually deref.
   32358         * Shared/ImmutableArray.h:
   32359         (WebKit::ImmutableArray::adopt):
   32360         (WebKit::ImmutableArray::at):
   32361         Changes to accommodate entries being changed to a Vector<RefPtr<APIObject> >.
   32362 
   32363         * Shared/ImmutableDictionary.cpp:
   32364         (WebKit::ImmutableDictionary::keys):
   32365         Build a Vector<RefPtr<APIObject> >.
   32366 
   32367         * UIProcess/WebBackForwardList.cpp:
   32368         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
   32369         (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
   32370         Ditto.
   32371 
   32372         * UIProcess/WebContext.cpp:
   32373         (WebKit::PostMessageEncoder::PostMessageDecoder::PostMessageDecoder):
   32374         (WebKit::PostMessageEncoder::PostMessageDecoder::decode):
   32375         (WebKit::WebContext::didReceiveMessage):
   32376         APIObject>& to avoid the odd leaking semantics.
   32377 
   32378         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   32379         (WebKit::PostMessageEncoder::PostMessageDecoder::PostMessageDecoder):
   32380         (WebKit::PostMessageEncoder::PostMessageDecoder::decode):
   32381         (WebKit::InjectedBundle::didReceiveMessage):
   32382         Ditto.
   32383 
   32384         * WebProcess/WebPage/WebFrame.cpp:
   32385         (WebKit::WebFrame::childFrames):
   32386         Build a Vector<RefPtr<APIObject> >.
   32387 
   32388 2010-09-02  Sam Weinig  <sam (a] webkit.org>
   32389 
   32390         Reviewed by Anders Carlsson.
   32391 
   32392         Add WKMutableDictionary API for WebKit2
   32393         https://bugs.webkit.org/show_bug.cgi?id=45117
   32394 
   32395         Add WKMutableDictionary API that inherits from WKDictionaryRef
   32396         the same way WKMutableArrayRef inherits from WKArrayRef.
   32397 
   32398         * Shared/ImmutableDictionary.h:
   32399         (WebKit::ImmutableDictionary::get):
   32400         (WebKit::ImmutableDictionary::isMutable):
   32401         * Shared/MutableDictionary.cpp: Added.
   32402         (WebKit::MutableDictionary::MutableDictionary):
   32403         (WebKit::MutableDictionary::~MutableDictionary):
   32404         (WebKit::MutableDictionary::add):
   32405         (WebKit::MutableDictionary::set):
   32406         * Shared/MutableDictionary.h: Added.
   32407         (WebKit::MutableDictionary::create):
   32408         (WebKit::MutableDictionary::isMutable):
   32409         * UIProcess/API/C/WKAPICast.h:
   32410         (toWK):
   32411         * UIProcess/API/C/WKBase.h:
   32412         * UIProcess/API/C/WKMutableDictionary.cpp: Added.
   32413         (WKMutableDictionaryCreate):
   32414         (WKDictionaryIsMutable):
   32415         (WKDictionaryAddItem):
   32416         (WKDictionarySetItem):
   32417         * UIProcess/API/C/WKMutableDictionary.h: Added.
   32418         * UIProcess/API/C/WebKit2.h:
   32419         * WebKit2.pro:
   32420         * WebKit2.xcodeproj/project.pbxproj:
   32421         * win/WebKit2.vcproj:
   32422         * win/WebKit2Generated.make:
   32423 
   32424 2010-09-02  Jessie Berlin  <jberlin (a] apple.com>
   32425 
   32426         Windows build fix. Unreviewed.
   32427 
   32428         * UIProcess/API/win/WKAPICastWin.h:
   32429         (toWK):
   32430         * UIProcess/API/win/WKBaseWin.h:
   32431 
   32432 2010-09-01  Jia Pu  <jpu (a] apple.com>
   32433 
   32434         Reviewed by Dan Bernstein.
   32435 
   32436         Add support for autocorrection UI on Mac OS X.
   32437         https://bugs.webkit.org/show_bug.cgi?id=44958
   32438         <rdar://problem/7326847>
   32439 
   32440         See detailed high level description in WebCore/ChangeLog.
   32441 
   32442         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   32443         (WebKit::WebEditorClient::showCorrectionPanel): Dummy implementation.
   32444         (WebKit::WebEditorClient::dismissCorrectionPanel): Ditto
   32445 
   32446         * WebProcess/WebCoreSupport/WebEditorClient.h: Added new methods declared in base class.
   32447 
   32448 2010-09-01  Sam Weinig  <sam (a] webkit.org>
   32449 
   32450         Fix the build.
   32451 
   32452         As with CF, const struct OpaqueType* should be the default type
   32453         so that const_casts are not necessary in user code.
   32454 
   32455         * UIProcess/API/C/WKArray.cpp:
   32456         (WKArrayCreate):
   32457         * UIProcess/API/C/WKBase.h:
   32458         * UIProcess/API/C/WKType.cpp:
   32459         (WKGetTypeID):
   32460         (WKRetain):
   32461         (WKRelease):
   32462         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   32463         (toWK):
   32464         * WebProcess/InjectedBundle/API/c/WKBundleBase.h:
   32465 
   32466 2010-09-01  Sam Weinig  <sam (a] webkit.org>
   32467 
   32468         Reviewed by Adam Roben.
   32469 
   32470         Add mutable array API to WebKit2
   32471         https://bugs.webkit.org/show_bug.cgi?id=45082
   32472 
   32473         Add a mutable API to WebKit2 called WKMutableArrayRef. Make it "inherit" from 
   32474         WKArrayRef in the same way JSObjectRef can inherit from JSValueRef in the JSC
   32475         API, by abusing the c type system (WKArrayRef is defined as a const version of
   32476         WKMutableArrayRef). Add very basic mutable API to go along with it.
   32477 
   32478         * Shared/ImmutableArray.h:
   32479         (WebKit::ImmutableArray::isMutable):
   32480         Add ability to ask it an array is mutable.
   32481 
   32482         * Shared/MutableArray.cpp: Added.
   32483         (WebKit::MutableArray::MutableArray):
   32484         (WebKit::MutableArray::~MutableArray):
   32485         (WebKit::MutableArray::append):
   32486         * Shared/MutableArray.h: Added.
   32487         (WebKit::MutableArray::create):
   32488         (WebKit::MutableArray::isMutable):
   32489         Sketch out the mutable array interface.
   32490 
   32491         * UIProcess/API/C/WKAPICast.h:
   32492         (toWK):
   32493         Now that the opaque types can be const, use template magic to const_cast
   32494         it away.
   32495 
   32496         * UIProcess/API/C/WKBase.h:
   32497         Add new type and re-type WKArrayRef as const.
   32498 
   32499         * UIProcess/API/C/WKMutableArray.cpp: Added.
   32500         (WKMutableArrayCreate):
   32501         (WKArrayIsMutable):
   32502         (WKArrayAppendItem):
   32503         * UIProcess/API/C/WKMutableArray.h: Added.
   32504         Fill in basic API.
   32505 
   32506         * WebKit2.pro:
   32507         * WebKit2.xcodeproj/project.pbxproj:
   32508         * win/WebKit2.vcproj:
   32509         * win/WebKit2Generated.make:
   32510         Add files.
   32511 
   32512 2010-09-01  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   32513 
   32514         Reviewed by Kenneth Rohde Christiansen.
   32515 
   32516         [Qt] Implement PluginInfoStore for UNIX
   32517         https://bugs.webkit.org/show_bug.cgi?id=45038
   32518 
   32519         This implementation is generally just reusing the logic in WebCore since
   32520         there is no way to get informations from a UNIX plugin without loading it
   32521         - in contrast to mac bundles and windows dll-s.
   32522         * UIProcess/Plugins/qt/PluginInfoStoreQt.cpp:
   32523         (WebKit::PluginInfoStore::pluginsDirectories):
   32524         (WebKit::PluginInfoStore::pluginPathsInDirectory):
   32525         (WebKit::PluginInfoStore::getPluginInfo):
   32526         (WebKit::PluginInfoStore::shouldUsePlugin):
   32527 
   32528 2010-09-01  Mark Rowe  <mrowe (a] apple.com>
   32529 
   32530         Reviewed by Sam Weinig.
   32531 
   32532         Allow the web process to load frameworks other than WebKit2.framework from the build directory
   32533         when running engineering builds.
   32534 
   32535         * WebProcess/mac/WebProcessMainMac.mm:
   32536         (WebKit::WebProcessMain): Pass the path containing WebKit2.framework to the sandbox rather than
   32537         the path of the WebKit2.framework itself.
   32538 
   32539 2010-09-01  Sam Weinig  <sam (a] webkit.org>
   32540 
   32541         Reviewed by John Sullivan.
   32542 
   32543         Change ImmutableArray to be backed by a Vector
   32544         https://bugs.webkit.org/show_bug.cgi?id=45064
   32545 
   32546         Change ImmutableArray to be backed by a Vector to work toward having 
   32547         a mutable subclass and to improve the API when working with it in WebKit2
   32548         itself.
   32549 
   32550         - Also remove WKArrayCreateAdoptingValues which was confusing and unused.
   32551 
   32552         * Shared/ImmutableArray.cpp:
   32553         (WebKit::ImmutableArray::ImmutableArray):
   32554         (WebKit::ImmutableArray::~ImmutableArray):
   32555         * Shared/ImmutableArray.h:
   32556         (WebKit::ImmutableArray::adopt):
   32557         (WebKit::ImmutableArray::at):
   32558         (WebKit::ImmutableArray::size):
   32559         * Shared/ImmutableDictionary.cpp:
   32560         (WebKit::ImmutableDictionary::keys):
   32561         * UIProcess/API/C/WKArray.cpp:
   32562         * UIProcess/API/C/WKArray.h:
   32563         * UIProcess/WebBackForwardList.cpp:
   32564         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
   32565         (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
   32566         * UIProcess/WebContext.cpp:
   32567         (WebKit::PostMessageEncoder::PostMessageDecoder::decode):
   32568         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   32569         (WebKit::PostMessageEncoder::PostMessageDecoder::decode):
   32570         * WebProcess/WebPage/WebFrame.cpp:
   32571         (WebKit::WebFrame::childFrames):
   32572 
   32573 2010-09-01  Sam Weinig  <sam (a] webkit.org>
   32574 
   32575         Reviewed by Anders Carlsson.
   32576 
   32577         Add URLResponse API for WebKit2
   32578         https://bugs.webkit.org/show_bug.cgi?id=45062
   32579 
   32580         Add WebURLResponse class and WKURLResponseRef C API to go with it. Right now,
   32581         instance of WKURLResponseRef are manipulated via platform types just like
   32582         WKURLRequestRef.
   32583 
   32584         This just adds the type and conversion functions, no uses yet.
   32585 
   32586         * Shared/APIObject.h:
   32587         * Shared/WebCoreArgumentCoders.h:
   32588         * Shared/WebURLResponse.cpp: Added.
   32589         (WebKit::WebURLResponse::WebURLResponse):
   32590         * Shared/WebURLResponse.h: Added.
   32591         (WebKit::WebURLResponse::create):
   32592         (WebKit::WebURLResponse::resourceResponse):
   32593         (WebKit::WebURLResponse::type):
   32594         * Shared/mac/WebCoreArgumentCodersMac.mm:
   32595         (CoreIPC::encodeWithNSKeyedArchiver):
   32596         (CoreIPC::decodeWithNSKeyedArchiver):
   32597         (CoreIPC::encodeResourceRequest):
   32598         (CoreIPC::decodeResourceRequest):
   32599         * Shared/mac/WebURLResponseMac.mm: Added.
   32600         (WebKit::WebURLResponse::WebURLResponse):
   32601         (WebKit::WebURLResponse::platformResponse):
   32602         * Shared/qt/WebURLResponseQt.cpp: Added.
   32603         (WebKit::WebURLResponse::WebURLResponse):
   32604         (WebKit::WebURLResponse::platformResponse):
   32605         * Shared/win/WebURLResponseWin.cpp: Added.
   32606         (WebKit::WebURLResponse::WebURLResponse):
   32607         (WebKit::WebURLResponse::platformResponse):
   32608         * UIProcess/API/C/WKURLResponse.cpp: Added.
   32609         (WKURLResponseGetTypeID):
   32610         * UIProcess/API/C/WKURLResponse.h: Added.
   32611         * UIProcess/API/C/cf/WKURLResponseCF.cpp: Added.
   32612         (WKURLResponseCreateWithCFURLResponse):
   32613         (WKURLResponseCopyCFURLResponse):
   32614         * UIProcess/API/C/cf/WKURLResponseCF.h: Added.
   32615         * UIProcess/API/C/mac/WKURLResponseNS.h: Added.
   32616         * UIProcess/API/C/mac/WKURLResponseNS.mm: Added.
   32617         (WKURLResponseCreateWithNSURLResponse):
   32618         (WKURLResponseCopyNSURLResponse):
   32619         * WebKit2.pro:
   32620         * WebKit2.xcodeproj/project.pbxproj:
   32621         * win/WebKit2.vcproj:
   32622         * win/WebKit2Generated.make:
   32623 
   32624 2010-09-01  Andras Becsi  <abecsi (a] webkit.org>
   32625 
   32626         Reviewed by Antti Koivisto.
   32627 
   32628         [Qt] Auto-generate WebKit2 forwarding headers
   32629         https://bugs.webkit.org/show_bug.cgi?id=44692
   32630 
   32631         * DerivedSources.pro: let the generate-forwarding-headers.pl
   32632         script generate forwarding headers.
   32633         * generate-forwarding-headers.pl: Added.
   32634 
   32635 2010-08-31  Dave Hyatt  <hyatt (a] apple.com>
   32636 
   32637         Reviewed by Sam Weinig.
   32638 
   32639         https://bugs.webkit.org/show_bug.cgi?id=44863
   32640 
   32641         * WebProcess/WebPage/WebPage.cpp:
   32642         (WebKit::WebPage::layoutIfNeeded):
   32643 
   32644 2010-08-31  Jon Honeycutt  <jhoneycutt (a] apple.com>
   32645 
   32646         Fix some copy/paste errors.
   32647 
   32648         Reviewed by Steve Falkenburg.
   32649 
   32650         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
   32651         (WebKit::InjectedBundlePageFormClient::textFieldDidEndEditing):
   32652         Null check the correct callback.
   32653         (WebKit::InjectedBundlePageFormClient::textDidChangeInTextField):
   32654         Ditto.
   32655         (WebKit::InjectedBundlePageFormClient::textDidChangeInTextArea):
   32656         Ditto.
   32657 
   32658 2010-08-31  Jon Honeycutt  <jhoneycutt (a] apple.com>
   32659 
   32660         Crash when closing a page with a form field when using WebKit2.
   32661 
   32662         Reviewed by Anders Carlsson.
   32663 
   32664         The crash came from accessing a BundlePageFormClient that had been
   32665         destroyed. The client was intended to be cleared by a call to
   32666         WKBundlePageSetFormClient, but a null check there caused it not to be
   32667         cleared.
   32668 
   32669         I fixed this and all of the other WK "set client" functions.
   32670 
   32671         * UIProcess/API/C/WKContext.cpp:
   32672         (WKContextSetInjectedBundleClient):
   32673         Return early if the caller passed a client with a version not equal to
   32674         0.
   32675         (WKContextSetHistoryClient):
   32676         Ditto.
   32677 
   32678         * UIProcess/API/C/WKPage.cpp:
   32679         (WKPageSetPageLoaderClient):
   32680         Ditto.
   32681         (WKPageSetPagePolicyClient):
   32682         Ditto.
   32683         (WKPageSetPageFormClient):
   32684         Ditto.
   32685         (WKPageSetPageUIClient):
   32686         Ditto.
   32687 
   32688         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   32689         (WKBundleSetClient):
   32690         Ditto.
   32691 
   32692         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   32693         (WKBundlePageSetEditorClient):
   32694         Ditto.
   32695         (WKBundlePageSetFormClient):
   32696         Ditto.
   32697         (WKBundlePageSetLoaderClient):
   32698         Ditto.
   32699         (WKBundlePageSetUIClient):
   32700         Ditto.
   32701 
   32702 2010-08-31  Alexey Proskuryakov  <ap (a] apple.com>
   32703 
   32704         Build fix.
   32705 
   32706         * Shared/WebPreferencesStore.h: Actually remove encode(), which has been moved to WebPreferencesStore.cpp.
   32707 
   32708 2010-08-31  Alexey Proskuryakov  <ap (a] apple.com>
   32709 
   32710         Reviewed by Sam Weinig.
   32711 
   32712         https://bugs.webkit.org/show_bug.cgi?id=42195
   32713         <rdar://problem/8186761> WebKitTestRunner needs to support layoutTestController.setXSSAuditorEnabled
   32714 
   32715         * Shared/WebPreferencesStore.cpp:
   32716         (WebKit::WebPreferencesStore::WebPreferencesStore): Initialize xssAuditorEnabled.
   32717         (WebKit::WebPreferencesStore::decode): Moved from header, added xssAuditorEnabled.
   32718         (WebKit::WebPreferencesStore::encode): Ditto.
   32719         (WebKit::WebPreferencesStore::overrideXSSAuditorEnabledForTestRunner): Set an override, so
   32720         that decoding a WebPreferencesStore in the process will give the override result. WebProcess
   32721         doesn't hold to WebPreferencesStore, so there are no existing ones to patch.
   32722         (WebKit::WebPreferencesStore::removeTestRunnerOverrides): Remove the override.
   32723 
   32724         * Shared/WebPreferencesStore.h: Added xssAuditorEnabled.
   32725 
   32726         * UIProcess/API/C/WKPreferences.cpp:
   32727         (WKPreferencesSetXSSAuditorEnabled):
   32728         (WKPreferencesGetXSSAuditorEnabled):
   32729         * UIProcess/API/C/WKPreferences.h:
   32730         Added an API method to change xssAuditorEnabled preference.
   32731 
   32732         * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::preferencesDidChange): Added a comment
   32733         explaining how making this method smarter could affect WebKitTestRunner.
   32734 
   32735         * UIProcess/WebPreferences.cpp:
   32736         (WebKit::WebPreferences::setXSSAuditorEnabled):
   32737         (WebKit::WebPreferences::xssAuditorEnabled):
   32738         * UIProcess/WebPreferences.h:
   32739         Implemented xssAuditorEnabled preference accessors.
   32740 
   32741         * WebProcess/InjectedBundle/API/c/WKBundle.cpp: (WKBundleOverrideXSSAuditorEnabledForTestRunner):
   32742         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
   32743         Added a private methods to temporarily change xssAuditor setting from an injected bundle,
   32744         not notifying UIProcess about the change.
   32745 
   32746         * WebProcess/InjectedBundle/InjectedBundle.cpp: (WebKit::InjectedBundle::overrideXSSAuditorEnabledForTestRunner):
   32747         * WebProcess/InjectedBundle/InjectedBundle.h:
   32748         Change the setting in existing pages, and override it for future ones.
   32749 
   32750         * WebProcess/WebPage/WebPage.cpp:
   32751         (WebKit::WebPage::WebPage): Take xssAuditorEnabled from preferences store.
   32752         (WebKit::WebPage::preferencesDidChange): If preferences change, forget our override. This only
   32753         happens in WKRT when the next test begins.
   32754 
   32755 2010-08-31  Sam Weinig  <sam (a] webkit.org>
   32756 
   32757         Reviewed by Gavin Barraclough.
   32758 
   32759         WebKitTestRunner needs layoutTestController.addUserStyleSheet
   32760         https://bugs.webkit.org/show_bug.cgi?id=42680
   32761 
   32762         WebKitTestRunner needs layoutTestController.addUserScript
   32763         https://bugs.webkit.org/show_bug.cgi?id=42681
   32764 
   32765         Improve UserContent APIs to allow passing null in the same places
   32766         the WebKit1 API allowed. Add convenience function toWTFString to do
   32767         WKStringRef conversion with correct null string behavior.
   32768 
   32769         * UIProcess/API/C/WKAPICast.h:
   32770         (toWTFString):
   32771         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   32772         (WKBundleAddUserScript):
   32773         (WKBundleAddUserStyleSheet):
   32774         (WKBundleRemoveUserScript):
   32775         (WKBundleRemoveUserStyleSheet):
   32776         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   32777         (WebKit::toStringVector):
   32778 
   32779 2010-08-31  Steve Falkenburg  <sfalken (a] apple.com>
   32780 
   32781         Rubber stamped by Sam Weinig.
   32782 
   32783         Remove library directive from def file to fix Debug_All build.
   32784 
   32785         * win/WebKit2.def:
   32786 
   32787 2010-08-31  Adam Roben  <aroben (a] apple.com>
   32788 
   32789         Handle WM_PRINTCLIENT in WebKit2 on Windows
   32790 
   32791         Reviewed by Sam Weinig.
   32792 
   32793         * UIProcess/win/WebView.cpp:
   32794         (WebKit::WebView::wndProc): Call through to onPrintClientEvent when we
   32795         get a WM_PRINTCLIENT message.
   32796         (WebKit::WebView::onPrintClientEvent): Added. Paints the entire view
   32797         into the HDC provided by Windows.
   32798 
   32799         * UIProcess/win/WebView.h: Added onPrintClientEvent.
   32800 
   32801 2010-08-27  Adam Roben  <aroben (a] apple.com>
   32802 
   32803         Don't send messages to the injected bundle if the web process has
   32804         exited
   32805 
   32806         Fixes <http://webkit.org/b/43046> <rdar://problem/8239455> Crash in
   32807         WKContextPostMessageToInjectedBundle if the web process has exited
   32808 
   32809         Reviewed by Sam Weinig.
   32810 
   32811         * UIProcess/WebContext.cpp:
   32812         (WebKit::WebContext::postMessageToInjectedBundle): Only send messages
   32813         when we have a valid web process.
   32814 
   32815 2010-08-27  Adam Roben  <aroben (a] apple.com>
   32816 
   32817         Use the Windows thread pool instead of a dedicated thread for
   32818         WorkQueue on Windows
   32819 
   32820         WorkQueue now uses ::RegisterWaitForSingleObject to find out when work
   32821         items need to be executed. This causes Windows to wait on the objects
   32822         on a thread pool wait thread, and then to spawn a thread pool worker
   32823         thread when an object is signaled. This is more efficient than using
   32824         our own dedicated thread to perform the wait and the work because
   32825         multiple WorkQueues (and even other parts of WebKit or other modules)
   32826         can all share the same wait thread and worker thread pool.
   32827 
   32828         Each time WorkQueue::m_performWorkEvent or any handle in
   32829         WorkQueue::m_handles is signaled, a worker thread will be spawned.
   32830         To maintain WorkQueue's serial nature, only one worker thread is
   32831         allowed to perform work items at a time. (The worker thread that is
   32832         actually performing work items is called the queue's "work thread".)
   32833         To accomplish this, worker threads must register as the queue's work
   32834         thread before performing work items.
   32835         WorkQueue::m_isWorkThreadRegistered is used as an atomic guard to make
   32836         sure that only one worker thread is registered at a time.
   32837         
   32838         Fixes <http://webkit.org/b/43150> <rdar://problem/8247280>.
   32839 
   32840         Reviewed by Anders Carlsson.
   32841 
   32842         * Platform/WorkQueue.h:
   32843           - Added the WorkItemWin class, which is used to wrap WorkItems for
   32844             WorkQueue's Windows implementation
   32845           - Changed m_workItemQueue and m_handles to hold
   32846             RefPtr<WorkItemWin>s
   32847           - Replaced "work queue thread"-related members with new members that
   32848             handle our thread pool code
   32849 
   32850         * Platform/win/WorkQueueWin.cpp:
   32851         (WorkQueue::WorkItemWin::WorkItemWin):
   32852         (WorkQueue::WorkItemWin::create):
   32853         Added simple constructor/creator.
   32854 
   32855         (WorkQueue::handleCallback): Added. This function is called whenever a
   32856         handle in WorkQueue::m_handles is signaled. We add the WorkItemWin
   32857         that corresponds to the handle (passed via the context parameter) to
   32858         the work item queue, then try to register as the work thread and
   32859         perform any queued work. If another thread is already registered as
   32860         the work thread, we just exit and let that thread handle the work we
   32861         queued.
   32862         (WorkQueue::registerHandle): Changed to wrap the WorkItem in a
   32863         WorkItemWin, and to use ::RegisterWaitForSingleObject to wait on the
   32864         handle.
   32865         (WorkQueue::eventCallback): Added. This function is called whenever
   32866         m_performWorkEvent is signaled. We try to register as the work thread
   32867         and perfom any queued work. If another thread is already registered as
   32868         the work thread, we just exit and let that thread handle the work.
   32869         (WorkQueue::performWorkOnRegisteredWorkThread): Added. Performs any
   32870         queued work in a loop until either the queue becomes invalid or no
   32871         work is left to perform. Unregisters as the work thread before exiting
   32872         so that other threads can perform work in the future.
   32873         (WorkQueue::platformInitialize): Added initialization of
   32874         m_isWorkThreadRegistered. Replaced code to spawn the old work queue
   32875         thread with a call to ::RegisterWaitForSingleObject so that a worker
   32876         thread from the thread pool will be spawned when m_performWorkEvent is
   32877         signaled.
   32878         (WorkQueue::tryRegisterAsWorkThread): Added. Attempts an atomic
   32879         compare-and-swap to change m_isWorkThreadRegistered from 0 to 1. If
   32880         sucessful, we return true to indicate that this thread is now
   32881         registered as the work thread.
   32882         (WorkQueue::unregisterAsWorkThread): Added. Uses an atomic
   32883         compare-and-swap to change m_isWorkThreadRegistered back from 1 to 0.
   32884         (WorkQueue::scheduleWork): Changed to wrap the WorkItem in a
   32885         WorkItemWin. Also added an optimization to avoid signaling
   32886         m_performWorkEvent when a work thread is already performing work, as
   32887         it will pick up the item we just queued without us having to do
   32888         anything.
   32889 
   32890 2010-08-31  Csaba Osztrogonc  <ossy (a] webkit.org>
   32891 
   32892         Reviewed by Antonio Gomes.
   32893 
   32894         [Qt] Fix warnings in WebKit2 directory
   32895         https://bugs.webkit.org/show_bug.cgi?id=44593
   32896 
   32897         * Platform/CoreIPC/qt/ConnectionQt.cpp: Mark unused variables for compiler.
   32898         (CoreIPC::Connection::readyReadHandler):
   32899         (CoreIPC::Connection::sendOutgoingMessage):
   32900         * Shared/qt/WebEventFactoryQt.cpp:
   32901         (WebKit::WebEventFactory::createWebTouchEvent): Initialize state variable. Default case added.
   32902         * WebProcess/Plugins/Netscape/qt/NetscapePluginQt.cpp:
   32903         (WebKit::toNP): Return initialized NPEvent.
   32904 
   32905 2010-08-31  Andras Becsi  <abecsi (a] webkit.org>
   32906 
   32907         Reviewed by Antonio Gomes.
   32908 
   32909         [Qt] Determine application path of MiniBrowser at runtime and use that path
   32910         for QtWebProcess if the executable exists in that path.
   32911 
   32912         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   32913         (WebKit::ProcessLauncherHelper::launch):
   32914 
   32915 2010-08-31  Zoltan Horvath  <zoltan (a] webkit.org>
   32916 
   32917         Build fix after r66448 on WebKit2.
   32918 
   32919         [Qt] qt_wk_didFinishDocumentLoadForFrame needs to be implemented 
   32920         https://bugs.webkit.org/show_bug.cgi?id=44934
   32921 
   32922         * UIProcess/API/qt/ClientImpl.cpp:
   32923         (qt_wk_didFinishDocumentLoadForFrame):
   32924         * UIProcess/API/qt/ClientImpl.h:
   32925 
   32926 2010-08-30  Alice Liu  <alice.liu (a] apple.com>
   32927 
   32928         Reviewed by Darin Adler.
   32929 
   32930         Add missing parts of didFinishDocumentLoadForFrame
   32931         https://bugs.webkit.org/show_bug.cgi?id=44913
   32932 
   32933         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h: Added new kind
   32934         * UIProcess/API/C/WKPage.h:
   32935         * UIProcess/API/qt/qwkpage.cpp:
   32936         (QWKPage::QWKPage): Updated struct
   32937         * UIProcess/WebLoaderClient.cpp:
   32938         (WebKit::WebLoaderClient::didFinishDocumentLoadForFrame): Added
   32939         * UIProcess/WebLoaderClient.h:
   32940         * UIProcess/WebPageProxy.cpp:
   32941         (WebKit::WebPageProxy::didReceiveMessage): Added case for WebPageProxyMessage::DidFinishDocumentLoadForFrame
   32942         (WebKit::WebPageProxy::didFinishDocumentLoadForFrame): Added
   32943         * UIProcess/WebPageProxy.h:
   32944 
   32945         Just rearranging existing code in these:
   32946         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   32947         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   32948         (WebKit::InjectedBundlePageLoaderClient::didFinishDocumentLoadForFrame):
   32949         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   32950 
   32951 2010-08-30  Sam Weinig  <sam (a] webkit.org>
   32952 
   32953         Try and fix the WebKit2 buildbot.
   32954 
   32955         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
   32956         (InitWebCoreSystemInterface): Add missing initialization of QTMovieDisableComponent.
   32957 
   32958 2010-08-30  Sam Weinig  <sam (a] webkit.org>
   32959 
   32960         Reviewed by Anders Carlsson.
   32961 
   32962         Add URLRequest API for WebKit2
   32963         https://bugs.webkit.org/show_bug.cgi?id=44910
   32964 
   32965         Add WebURLRequest class and WKURLRequestRef C API to go with it. Right now,
   32966         instance of WKURLRequestRef are manipulated via platform types, a la the
   32967         WKStringRef and WKURLRef types.
   32968 
   32969         - Pipes WKPageLoadURLRequest through to the WebProcess.
   32970 
   32971         * Shared/APIObject.h:
   32972         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
   32973         * Shared/WebCoreArgumentCoders.h:
   32974         * Shared/WebURLRequest.cpp: Added.
   32975         (WebKit::WebURLRequest::WebURLRequest):
   32976         * Shared/WebURLRequest.h: Added.
   32977         (WebKit::WebURLRequest::create):
   32978         (WebKit::WebURLRequest::resourceRequest):
   32979         (WebKit::WebURLRequest::type):
   32980         * Shared/mac/WebCoreArgumentCodersMac.mm: Added.
   32981         (CoreIPC::encodeResourceRequest):
   32982         (CoreIPC::decodeResourceRequest):
   32983         * Shared/mac/WebURLRequestMac.mm: Added.
   32984         (WebKit::WebURLRequest::WebURLRequest):
   32985         (WebKit::WebURLRequest::platformRequest):
   32986         * Shared/qt/WebCoreArgumentCodersQt.cpp: Added.
   32987         (CoreIPC::encodeResourceRequest):
   32988         (CoreIPC::decodeResourceRequest):
   32989         * Shared/qt/WebURLRequestQt.cpp: Added.
   32990         (WebKit::WebURLRequest::WebURLRequest):
   32991         (WebKit::WebURLRequest::platformRequest):
   32992         * Shared/win/WebCoreArgumentCodersWin.cpp: Added.
   32993         (CoreIPC::encodeResourceRequest):
   32994         (CoreIPC::decodeResourceRequest):
   32995         * Shared/win/WebURLRequestWin.cpp: Added.
   32996         (WebKit::WebURLRequest::WebURLRequest):
   32997         (WebKit::WebURLRequest::platformRequest):
   32998         * UIProcess/API/C/WKAPICast.h:
   32999         * UIProcess/API/C/WKBase.h:
   33000         * UIProcess/API/C/WKPage.cpp:
   33001         (WKPageLoadURLRequest):
   33002         * UIProcess/API/C/WKPage.h:
   33003         * UIProcess/API/C/WKURLRequest.cpp: Added.
   33004         (WKURLRequestGetTypeID):
   33005         * UIProcess/API/C/WKURLRequest.h: Added.
   33006         * UIProcess/API/C/WebKit2.h:
   33007         * UIProcess/API/C/cf/WKURLRequestCF.cpp: Added.
   33008         (WKURLRequestCreateWithCFURLRequest):
   33009         (WKURLRequestCopyCFURLRequest):
   33010         * UIProcess/API/C/cf/WKURLRequestCF.h: Added.
   33011         * UIProcess/API/C/mac: Added.
   33012         * UIProcess/API/C/mac/WKURLRequestNS.h: Added.
   33013         * UIProcess/API/C/mac/WKURLRequestNS.mm: Added.
   33014         (WKURLRequestCreateWithNSURLRequest):
   33015         (WKURLRequestCopyNSURLRequest):
   33016         * UIProcess/WebPageProxy.cpp:
   33017         (WebKit::WebPageProxy::loadURL):
   33018         (WebKit::WebPageProxy::loadURLRequest):
   33019         * UIProcess/WebPageProxy.h:
   33020         * WebKit2.pro:
   33021         * WebKit2.xcodeproj/project.pbxproj:
   33022         * WebProcess/WebPage/WebPage.cpp:
   33023         (WebKit::WebPage::loadURL):
   33024         (WebKit::WebPage::loadURLRequest):
   33025         (WebKit::WebPage::didReceiveMessage):
   33026         * WebProcess/WebPage/WebPage.h:
   33027         * win/WebKit2.vcproj:
   33028         * win/WebKit2Generated.make:
   33029 
   33030 2010-08-30  Anders Carlsson  <andersca (a] apple.com>
   33031 
   33032         Reviewed by Sam Weinig.
   33033 
   33034         WorkQueue leaks its dispatch queue
   33035         <rdar://problem/8358509>
   33036         https://bugs.webkit.org/show_bug.cgi?id=44689
   33037 
   33038         * Platform/mac/WorkQueueMac.cpp:
   33039         (WorkQueue::platformInvalidate):
   33040 
   33041 2010-08-27  Sam Weinig  <sam (a] webkit.org>
   33042 
   33043         Reviewed by Dan Bernstein.
   33044 
   33045         Add UserContent API to WebKit2 InjectedBundle
   33046         <rdar://problem/8367587>
   33047         https://bugs.webkit.org/show_bug.cgi?id=44810
   33048 
   33049         The new API differs from the version in WebKit1 in that the function do not take
   33050         a group name since we currently do not expose a way to make multiple PageGroups in
   33051         the API.
   33052 
   33053         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   33054         (toUserScriptInjectionTime):
   33055         (toUserContentInjectedFrames):
   33056         Add conversion functions for enums.
   33057 
   33058         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   33059         (WKBundleAddUserScript):
   33060         (WKBundleAddUserStyleSheet):
   33061         (WKBundleRemoveUserScript):
   33062         (WKBundleRemoveUserStyleSheet):
   33063         (WKBundleRemoveUserScripts):
   33064         (WKBundleRemoveUserStyleSheets):
   33065         (WKBundleRemoveAllUserContent):
   33066         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
   33067         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   33068         (WebKit::toStringVector):
   33069         (WebKit::InjectedBundle::addUserScript):
   33070         (WebKit::InjectedBundle::addUserStyleSheet):
   33071         (WebKit::InjectedBundle::removeUserScript):
   33072         (WebKit::InjectedBundle::removeUserStyleSheet):
   33073         (WebKit::InjectedBundle::removeUserScripts):
   33074         (WebKit::InjectedBundle::removeUserStyleSheets):
   33075         (WebKit::InjectedBundle::removeAllUserContent):
   33076         * WebProcess/InjectedBundle/InjectedBundle.h:
   33077         Forward API to PageGroup.
   33078 
   33079         * WebProcess/WebProcess.cpp:
   33080         (WebKit::WebProcess::sharedPageGroup):
   33081         (WebKit::WebProcess::visitedLinkStateChanged):
   33082         (WebKit::WebProcess::allVisitedLinkStateChanged):
   33083         * WebProcess/WebProcess.h: Ad accessor for global PageGroup.
   33084 
   33085 2010-08-27  Sam Weinig  <sam (a] webkit.org>
   33086 
   33087         Reviewed by Gavin Barraclough.
   33088 
   33089         Move WKBundle didCreatePage callback to outside the WebPage
   33090         constructor to avoid adoptRef errors.
   33091 
   33092         * WebProcess/WebPage/WebPage.cpp:
   33093         (WebKit::WebPage::create):
   33094         (WebKit::WebPage::WebPage):
   33095 
   33096 2010-08-27  Brady Eidson  <beidson (a] apple.com>
   33097 
   33098         Reviewed by Sam Weinig.
   33099 
   33100         <rdar://problem/8147879> - Null URL passed to WebKit2 HistoryDelegate
   33101 
   33102         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   33103         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForMIMEType): WK2 now loads initial about:blank document's synchronously,
   33104           without consulting the policy delegate.
   33105         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): Ditto.
   33106 
   33107 2010-08-27  Adam Roben  <aroben (a] apple.com>
   33108 
   33109         Handle ERROR_IO_INCOMPLETE more correctly in Connection
   33110 
   33111         We still don't know exactly why we're getting this error, but at least
   33112         we can do something sensible when we do.
   33113 
   33114         Fixes <http://webkit.org/b/44776> Occasional crash in
   33115         Connection::readEventHandler or assertion failure in
   33116         Connection::writeEventHandler due to ERROR_IO_INCOMPLETE
   33117 
   33118         Reviewed by Sam Weinig.
   33119 
   33120         * Platform/CoreIPC/win/ConnectionWin.cpp:
   33121         (CoreIPC::Connection::readEventHandler): Bail out of this function
   33122         entirely when we get ERROR_IO_INCOMPLETE. We'll get called back later
   33123         when the read completes. Continuing in the function at this point
   33124         would cause us to treat an incomplete read as a complete one, leading
   33125         to a crash. Added an assertion to make the crash more understandable
   33126         in the future.
   33127         (CoreIPC::Connection::writeEventHandler): Bail out when we get
   33128         ERROR_IO_INCOMPLETE. We'll get called back later when the write
   33129         completes.
   33130 
   33131 2010-08-27  Adam Roben  <aroben (a] apple.com>
   33132 
   33133         Make the web process pause on launch when the
   33134         WEBKIT2_PAUSE_WEB_PROCESS_ON_LAUNCH environment variable is set
   33135 
   33136         This is a bit easier to use than holding Ctrl-Alt-Shift during launch,
   33137         since the process can sometimes take a long time to launch under the
   33138         debugger. Ctrl-Alt-Shift still works, however.
   33139 
   33140         Fixes <http://webkit.org/b/44774> Would like an easier way to pause
   33141         the web process on launch
   33142 
   33143         Reviewed by Sam Weinig.
   33144 
   33145         * WebProcess/WebKitMain.cpp:
   33146         (WebKitMain):
   33147 
   33148 2010-08-27  Sam Weinig  <sam (a] webkit.org>
   33149 
   33150         Rubber-stamped by Adam Roben.
   33151 
   33152         * WebKit2.xcodeproj/project.pbxproj: Make WKBundleScriptWorld.h public.
   33153 
   33154 2010-08-26  Daniel Bates  <dbates (a] rim.com>
   33155 
   33156         Attempt to fix the Qt WebKit2 build.
   33157 
   33158         * WebProcess/WebPage/qt/WebPageQt.cpp:
   33159         (WebKit::WebPage::performDefaultBehaviorForKeyEvent): Pass m_page.get() to WebKit::scroll()
   33160         instead of m_page since it expects a raw pointer.
   33161 
   33162 2010-08-26  Gavin Barraclough  <barraclough (a] apple.com>
   33163 
   33164         Speculative windows build fix.
   33165 
   33166         * UIProcess/win/WebView.cpp:
   33167         (WebKit::WebView::WebView):
   33168 
   33169 2010-08-26  Sam Weinig  <sam (a] webkit.org>
   33170 
   33171         Reviewed by Darin Adler.
   33172 
   33173         Adopt more uses OwnPtr/OwnArray in WebKit2.
   33174         https://bugs.webkit.org/show_bug.cgi?id=44728
   33175 
   33176         Also clears up weird create vs. adoption semantics. Now both create
   33177         and adopt both don't ref their pointers, adoption is just about the
   33178         buffer.
   33179 
   33180         * Shared/ImmutableArray.cpp:
   33181         (WebKit::ImmutableArray::ImmutableArray):
   33182         (WebKit::ImmutableArray::~ImmutableArray):
   33183         * Shared/ImmutableArray.h:
   33184         (WebKit::ImmutableArray::adopt):
   33185         * Shared/ImmutableDictionary.cpp:
   33186         (WebKit::ImmutableDictionary::keys):
   33187         * Shared/WebData.h:
   33188         * UIProcess/API/mac/PageClientImpl.h:
   33189         * UIProcess/API/mac/PageClientImpl.mm:
   33190         (WebKit::PageClientImpl::create):
   33191         * UIProcess/API/mac/WKView.mm:
   33192         (-[WKView initWithFrame:pageNamespaceRef:]):
   33193         (-[WKView _switchToDrawingAreaTypeIfNecessary:DrawingAreaProxy::]):
   33194         * UIProcess/API/qt/qgraphicswkview.cpp:
   33195         (QGraphicsWKView::QGraphicsWKView):
   33196         * UIProcess/API/qt/qwkpage.cpp:
   33197         (QWKPagePrivate::init):
   33198         * UIProcess/API/qt/qwkpage_p.h:
   33199         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   33200         (WebKit::ChunkedUpdateDrawingAreaProxy::create):
   33201         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   33202         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   33203         (WebKit::LayerBackedDrawingAreaProxy::create):
   33204         * UIProcess/LayerBackedDrawingAreaProxy.h:
   33205         * UIProcess/WebBackForwardList.cpp:
   33206         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
   33207         (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
   33208         * UIProcess/WebContext.cpp:
   33209         (WebKit::PostMessageEncoder::PostMessageDecoder::decode):
   33210         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   33211         (WebKit::PostMessageEncoder::PostMessageDecoder::decode):
   33212         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   33213         (WebKit::WebChromeClient::createPopupMenu):
   33214         (WebKit::WebChromeClient::createSearchPopupMenu):
   33215         * WebProcess/WebCoreSupport/WebPopupMenu.cpp:
   33216         (WebKit::WebPopupMenu::create):
   33217         * WebProcess/WebCoreSupport/WebPopupMenu.h:
   33218         * WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp:
   33219         (WebKit::WebSearchPopupMenu::create):
   33220         (WebKit::WebSearchPopupMenu::WebSearchPopupMenu):
   33221         * WebProcess/WebCoreSupport/WebSearchPopupMenu.h:
   33222         * WebProcess/WebPage/WebFrame.cpp:
   33223         (WebKit::WebFrame::childFrames):
   33224         * WebProcess/WebPage/WebPage.cpp:
   33225         (WebKit::WebPage::WebPage):
   33226         (WebKit::WebPage::close):
   33227         * WebProcess/WebPage/WebPage.h:
   33228         (WebKit::WebPage::corePage):
   33229         * WebProcess/WebPage/mac/WebPageMac.mm:
   33230         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
   33231         * WebProcess/WebPage/win/WebPageWin.cpp:
   33232         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
   33233 
   33234 2010-08-26  Alexey Proskuryakov  <ap (a] apple.com>
   33235 
   33236         Reviewed by Sam Weinig.
   33237 
   33238         https://bugs.webkit.org/show_bug.cgi?id=44726
   33239         <rdar://problem/7935518> WebFrameProxies aren't destroyed until a page is destroyed
   33240 
   33241         Since frames can be moved across documents, they are not really a Page level concept.
   33242         Moved frame tracking to WebProcess/WebProcessProxy.
   33243 
   33244         * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:
   33245         (WebProcessProxyMessage::):
   33246         * UIProcess/WebPageProxy.cpp:
   33247         (WebKit::WebPageProxy::close):
   33248         (WebKit::WebPageProxy::getStatistics):
   33249         (WebKit::WebPageProxy::didReceiveMessage):
   33250         (WebKit::WebPageProxy::didReceiveSyncMessage):
   33251         (WebKit::WebPageProxy::didCreateMainFrame):
   33252         (WebKit::WebPageProxy::didCreateSubFrame):
   33253         (WebKit::WebPageProxy::processDidExit):
   33254         * UIProcess/WebPageProxy.h:
   33255         * UIProcess/WebProcessProxy.cpp:
   33256         (WebKit::WebProcessProxy::didReceiveMessage):
   33257         (WebKit::WebProcessProxy::didReceiveSyncMessage):
   33258         (WebKit::WebProcessProxy::didClose):
   33259         (WebKit::WebProcessProxy::webFrame):
   33260         (WebKit::WebProcessProxy::frameCreated):
   33261         (WebKit::WebProcessProxy::frameDestroyed):
   33262         (WebKit::WebProcessProxy::disconnectFramesFromPage):
   33263         (WebKit::WebProcessProxy::frameCountInPage):
   33264         * UIProcess/WebProcessProxy.h:
   33265         * WebProcess/WebPage/WebFrame.cpp:
   33266         (WebKit::WebFrame::WebFrame):
   33267         (WebKit::WebFrame::invalidate):
   33268         * WebProcess/WebPage/WebPage.cpp:
   33269         (WebKit::WebPage::didReceiveMessage):
   33270         * WebProcess/WebPage/WebPage.h:
   33271         * WebProcess/WebProcess.cpp:
   33272         (WebKit::WebProcess::webFrame):
   33273         (WebKit::WebProcess::addWebFrame):
   33274         (WebKit::WebProcess::removeWebFrame):
   33275         * WebProcess/WebProcess.h:
   33276 
   33277 2010-08-26  Sam Weinig  <sam (a] webkit.org>
   33278 
   33279         Reviewed by Darin Adler.
   33280 
   33281         Add PassOwnArrayPtr
   33282         https://bugs.webkit.org/show_bug.cgi?id=44627
   33283 
   33284         * UIProcess/WebContext.cpp:
   33285         (WebKit::PostMessageEncoder::PostMessageDecoder::decode):
   33286         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   33287         (WebKit::PostMessageEncoder::PostMessageDecoder::decode):
   33288 
   33289 2010-08-26  Peter Kasting  <pkasting (a] google.com>
   33290 
   33291         Reviewed by Dimitri Glazkov.
   33292 
   33293         Misc. cleanup split off from bug 32356.
   33294         https://bugs.webkit.org/show_bug.cgi?id=44696
   33295 
   33296         * WebProcess/WebPage/qt/WebPageQt.cpp:
   33297         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
   33298 
   33299 2010-08-25  Brent Fulgham  <bfulgham (a] webkit.org>
   33300 
   33301         Build fix, no review.
   33302 
   33303         Add conditional guards around Safari-specific
   33304         include files.
   33305 
   33306         * WebProcess/WebPage/win/WebPageWin.cpp:
   33307 
   33308 2010-08-25  Adam Roben  <aroben (a] apple.com>
   33309 
   33310         Clean up Connection::open on Windows
   33311 
   33312         Fixes <http://webkit.org/b/44185>.
   33313 
   33314         Reviewed by Steve Falkenburg.
   33315 
   33316         * Platform/CoreIPC/win/ConnectionWin.cpp:
   33317         (CoreIPC::Connection::platformInitialize): Set m_isConnected to true
   33318         since the pipe got connected before it was even given to us.
   33319         (CoreIPC::Connection::readEventHandler): Removed code that will never
   33320         run now that m_isConnected is always true when this function is
   33321         called. Since no outgoing messages will have been queued before
   33322         m_isConnected is set to true, there's no need to send them explicitly
   33323         here; they'll get sent as they're queued.
   33324         (CoreIPC::Connection::open): Removed the call to ::ConnectNamedPipe,
   33325         since the pipe is already connected by this point. Changed to schedule
   33326         a read in the server and client the same way (rather than using
   33327         ::SetEvent in the server).
   33328 
   33329 2010-08-19  Adam Roben  <aroben (a] apple.com>
   33330 
   33331         Call NP_GetEntryPoints before NP_Initialize on Windows
   33332 
   33333         Doing otherwise will cause Flash and QuickTime to crash inside
   33334         NP_Initialize.
   33335 
   33336         Fixes <http://webkit.org/b/44270> <rdar://problem/8330393> Crash in
   33337         NP_Initialize when loading QuickTime when running
   33338         plugins/embed-attributes-setting.html in WebKit2 on Windows
   33339 
   33340         Reviewed by John Sullivan.
   33341 
   33342         * WebProcess/Plugins/Netscape/NetscapePluginModule.cpp:
   33343         (WebKit::NetscapePluginModule::tryLoad): On Windows, first call
   33344         NP_GetEntryPoints, then NP_Initialize. Do the reverse on Mac to
   33345         prevent Silverlight (e.g.) from crashing (see r38858).
   33346 
   33347 2010-08-25  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   33348 
   33349         Reviewed by Kenneth Rohde Christiansen.
   33350 
   33351         [Qt] Implement WebKit::Module for qt
   33352         https://bugs.webkit.org/show_bug.cgi?id=44527
   33353 
   33354         * Platform/Module.h:
   33355         * Platform/qt/ModuleQt.cpp:
   33356         (WebKit::Module::load):
   33357         (WebKit::Module::unload):
   33358         (WebKit::Module::platformFunctionPointer):
   33359 
   33360 2010-08-24  Sam Weinig  <sam (a] webkit.org>
   33361 
   33362         Reviewed by Mark Rowe.
   33363 
   33364         WebKit2 should launch the WebProcess in 32-bit mode if the UIProcess is in 32-bit mode
   33365         <rdar://problem/8348100>
   33366         https://bugs.webkit.org/show_bug.cgi?id=44537
   33367 
   33368         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   33369         (WebKit::ProcessLauncher::launchProcess): Use posix_spawnattr_setbinpref_np
   33370         to tell posix_spawn to launch the WebProcess in 32-bit mode when the UIProcess
   33371         is running in 32-bit mode.
   33372 
   33373 2010-08-24  Mark Rowe  <mrowe (a] apple.com>
   33374 
   33375         Rubber-stamped by Sam Weinig.
   33376 
   33377         Set the install path of WebKit2.framework to the build directory for debug and release builds
   33378         to match our other frameworks.
   33379 
   33380         * WebKit2.xcodeproj/project.pbxproj:
   33381 
   33382 2010-08-24  Sam Weinig  <sam (a] webkit.org>
   33383 
   33384         Reviewed by John Sullivan.
   33385 
   33386         Update profile.
   33387 
   33388         * WebProcess/com.apple.WebProcess.sb:
   33389 
   33390 2010-08-23  Darin Adler  <darin (a] apple.com>
   33391 
   33392         Reviewed by Geoff Garen.
   33393 
   33394         * WebProcess/InjectedBundle/API/c/WKBundleNode.cpp:
   33395         (WKBundleNodeGetParent): Update since parent now returns a
   33396         ContainerNode*. The toRef function is a bit too picky to convert
   33397         it without a bit of help.
   33398 
   33399 2010-08-23  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   33400 
   33401         Unreviewed, rolling out r65703.
   33402         http://trac.webkit.org/changeset/65703
   33403         https://bugs.webkit.org/show_bug.cgi?id=44460
   33404 
   33405         "Causing lots of crashes on Snow Leopard when running the
   33406         layout tests" (Requested by eseidel2 on #webkit).
   33407 
   33408         * WebProcess/Plugins/Netscape/NetscapePluginModule.cpp:
   33409         (WebKit::NetscapePluginModule::tryLoad):
   33410 
   33411 2010-08-23  Jon Honeycutt  <jhoneycutt (a] apple.com>
   33412 
   33413         Layout tests do not run when using WebKitTestRunner in a Debug build.
   33414         https://bugs.webkit.org/show_bug.cgi?id=44409
   33415 
   33416         Reviewed by Dan Bernstein.
   33417 
   33418         * UIProcess/Launcher/win/ProcessLauncherWin.cpp:
   33419         (WebKit::ProcessLauncher::launchProcess):
   33420         Use WebKit2WebProcess_debug.exe when building Debug.
   33421 
   33422 2010-08-23  Daniel Bates  <dbates (a] rim.com>
   33423 
   33424         Rubber-stamped by Adam Roben.
   33425 
   33426         Substitute "sizeof("javascript:") - 1" for the hardcoded constant 11 when
   33427         extracting the JavaScript code portion of a JavaScript URL so as to make
   33428         it clearer that the 11 represents the length of the scheme portion of
   33429         a JavaScript URL.
   33430 
   33431         * WebProcess/Plugins/PluginView.cpp:
   33432         (WebKit::PluginView::performJavaScriptURLRequest):
   33433 
   33434 2010-08-23  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   33435 
   33436         Reviewed by Ariya Hidayat.
   33437 
   33438         [Qt] Find needed forwarding headers for WebKit2 automatically
   33439         https://bugs.webkit.org/show_bug.cgi?id=44336
   33440 
   33441         * DerivedSources.pro: Use the new enumerate-included-framework-headers script for generating
   33442         the list of forwarding headers we want to create.
   33443 
   33444 2010-08-23  Zoltan Horvath  <zoltan (a] webkit.org>
   33445 
   33446         [Qt] Build fix.
   33447 
   33448         * DerivedSources.pro:
   33449         * WebKit2.pro:
   33450         * WebProcess/Plugins/Netscape/qt: Added.
   33451         * WebProcess/Plugins/Netscape/qt/NetscapePluginQt.cpp: Added.
   33452         (WebKit::NetscapePlugin::platformPostInitialize):
   33453         (WebKit::NetscapePlugin::platformPaint):
   33454         (WebKit::toNP):
   33455         (WebKit::NetscapePlugin::platformHandleMouseEvent):
   33456         (WebKit::NetscapePlugin::platformHandleWheelEvent):
   33457         (WebKit::NetscapePlugin::platformSetFocus):
   33458         (WebKit::NetscapePlugin::platformHandleMouseEnterEvent):
   33459         (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent):
   33460 
   33461 2010-08-22  Juha Savolainen  <juha.savolainen (a] weego.fi>
   33462 
   33463         Reviewed by Kenneth Rohde Christiansen.
   33464 
   33465         [Qt] Add QTouchEvents support for WebKit2
   33466         https://bugs.webkit.org/show_bug.cgi?id=44330
   33467 
   33468         This patch adds support for QTouchEvents in WebKit2. A new WebEvent-class
   33469         is created for touchevents, WebTouchEvent. Also touchpoints needed a new
   33470         class, WebPlatformTouchPoint. This is similar solution like in other
   33471         events(like MouseEvent) on WebKit2. These classes are introduced in WebEvent.h 
   33472         Also there was a need to create an empty constructor to PlatformTouchPoint-class.
   33473 
   33474         * DerivedSources.pro:
   33475         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
   33476         (WebPageMessage::):
   33477         * Shared/WebEvent.h:
   33478         (WebKit::WebEvent::):
   33479         (WebKit::WebTouchPoint::):
   33480         (WebKit::WebTouchPoint::WebTouchPoint):
   33481         (WebKit::WebTouchPoint::id):
   33482         (WebKit::WebTouchPoint::state):
   33483         (WebKit::WebTouchPoint::screenPosX):
   33484         (WebKit::WebTouchPoint::screenPosY):
   33485         (WebKit::WebTouchPoint::posX):
   33486         (WebKit::WebTouchPoint::posY):
   33487         (WebKit::WebTouchPoint::setState):
   33488         (WebKit::WebTouchPoint::encode):
   33489         (WebKit::WebTouchPoint::decode):
   33490         (WebKit::WebTouchEvent::WebTouchEvent):
   33491         (WebKit::WebTouchEvent::type):
   33492         (WebKit::WebTouchEvent::touchPoints):
   33493         (WebKit::WebTouchEvent::encode):
   33494         (WebKit::WebTouchEvent::decode):
   33495         (WebKit::WebTouchEvent::isTouchEventType):
   33496         * Shared/WebEventConversion.cpp:
   33497         (WebKit::WebKit2PlatformTouchPoint::WebKit2PlatformTouchPoint):
   33498         (WebKit::WebKit2PlatformTouchEvent::WebKit2PlatformTouchEvent):
   33499         (WebKit::platform):
   33500         * Shared/WebEventConversion.h:
   33501         * Shared/qt/WebEventFactoryQt.cpp:
   33502         (WebKit::webEventTypeForEvent):
   33503         (WebKit::WebEventFactory::createWebTouchEvent):
   33504         * Shared/qt/WebEventFactoryQt.h:
   33505         * UIProcess/API/qt/qgraphicswkview.cpp:
   33506         (QGraphicsWKView::event):
   33507         (QGraphicsWKView::touchEvent):
   33508         * UIProcess/API/qt/qgraphicswkview.h:
   33509         * UIProcess/API/qt/qwkpage.cpp:
   33510         (QWKPagePrivate::touchEvent):
   33511         * UIProcess/API/qt/qwkpage_p.h:
   33512         * UIProcess/WebPageProxy.cpp:
   33513         (WebKit::WebPageProxy::touchEvent):
   33514         * UIProcess/WebPageProxy.h:
   33515         * WebProcess/WebPage/WebPage.cpp:
   33516         (WebKit::WebPage::touchEvent):
   33517         (WebKit::WebPage::didReceiveMessage):
   33518         * WebProcess/WebPage/WebPage.h:
   33519 
   33520 2010-08-21  Sam Weinig  <sam (a] webkit.org>
   33521 
   33522         Reviewed by Dan Bernstein.
   33523 
   33524         Remove specialized retain/release functions in favor of a single one for WKTypeRefs
   33525         https://bugs.webkit.org/show_bug.cgi?id=44386
   33526 
   33527         * UIProcess/API/C/WKArray.cpp:
   33528         (WKArrayGetSize):
   33529         * UIProcess/API/C/WKArray.h:
   33530         * UIProcess/API/C/WKBackForwardList.cpp:
   33531         (WKBackForwardListCopyForwardListWithLimit):
   33532         * UIProcess/API/C/WKBackForwardList.h:
   33533         * UIProcess/API/C/WKBackForwardListItem.cpp:
   33534         (WKBackForwardListItemCopyTitle):
   33535         * UIProcess/API/C/WKBackForwardListItem.h:
   33536         * UIProcess/API/C/WKBase.h:
   33537         * UIProcess/API/C/WKContext.cpp:
   33538         * UIProcess/API/C/WKContext.h:
   33539         * UIProcess/API/C/WKData.cpp:
   33540         (WKDataGetSize):
   33541         * UIProcess/API/C/WKData.h:
   33542         * UIProcess/API/C/WKDictionary.cpp:
   33543         (WKDictionaryCopyKeys):
   33544         * UIProcess/API/C/WKDictionary.h:
   33545         * UIProcess/API/C/WKError.h:
   33546         * UIProcess/API/C/WKFormSubmissionListener.cpp:
   33547         (WKFormSubmissionListenerContinue):
   33548         * UIProcess/API/C/WKFormSubmissionListener.h:
   33549         * UIProcess/API/C/WKFrame.cpp:
   33550         (WKFrameGetPage):
   33551         * UIProcess/API/C/WKFrame.h:
   33552         * UIProcess/API/C/WKFramePolicyListener.cpp:
   33553         (WKFramePolicyListenerIgnore):
   33554         * UIProcess/API/C/WKFramePolicyListener.h:
   33555         * UIProcess/API/C/WKNavigationData.cpp:
   33556         (WKNavigationDataCopyURL):
   33557         * UIProcess/API/C/WKNavigationData.h:
   33558         * UIProcess/API/C/WKPage.cpp:
   33559         * UIProcess/API/C/WKPage.h:
   33560         * UIProcess/API/C/WKPageNamespace.cpp:
   33561         (WKPageNamespaceGetContext):
   33562         * UIProcess/API/C/WKPageNamespace.h:
   33563         * UIProcess/API/C/WKPreferences.cpp:
   33564         (WKPreferencesCreate):
   33565         (WKPreferencesGetLocalStorageEnabled):
   33566         * UIProcess/API/C/WKPreferences.h:
   33567         * UIProcess/API/C/WKString.cpp:
   33568         * UIProcess/API/C/WKString.h:
   33569         * UIProcess/API/C/WKType.cpp:
   33570         (WKRetain):
   33571         (WKRelease):
   33572         * UIProcess/API/C/WKType.h:
   33573         * UIProcess/API/C/WKURL.cpp:
   33574         (WKURLGetTypeID):
   33575         * UIProcess/API/C/WKURL.h:
   33576         * UIProcess/API/cpp/WKRetainPtr.h:
   33577         * UIProcess/API/win/WKView.cpp:
   33578         * UIProcess/API/win/WKView.h:
   33579         * UIProcess/WebPreferences.cpp:
   33580         (WebKit::WebPreferences::shared):
   33581         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
   33582         (WKBundleNodeHandleGetTypeID):
   33583         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.h:
   33584         * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.cpp:
   33585         (WKBundleScriptWorldNormalWorld):
   33586         * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.h:
   33587 
   33588 2010-08-20  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   33589 
   33590         Reviewed by Antonio Gomes.
   33591 
   33592         [Qt] Implement cursor change in WebKit2
   33593         https://bugs.webkit.org/show_bug.cgi?id=44263
   33594 
   33595         Implemented PageClient::setCursor.
   33596         * UIProcess/API/qt/qgraphicswkview.cpp: Added updateCursor slot to be connected to the QWKPage::setCursor signal.
   33597         (QGraphicsWKView::QGraphicsWKView):
   33598         (QGraphicsWKView::updateCursor): Sets the cursor of the widget.
   33599         * UIProcess/API/qt/qgraphicswkview.h:
   33600         * UIProcess/API/qt/qwkpage.cpp:
   33601         (QWKPagePrivate::setCursor): Added implementation for PageClient::setCursor. Emitting singal through the QWKPage.
   33602         * UIProcess/API/qt/qwkpage.h: Added setCursor signal.
   33603         * UIProcess/API/qt/qwkpage_p.h:
   33604 
   33605 2010-08-19  David Kilzer  <ddkilzer (a] apple.com>
   33606 
   33607         BUILD FIX: Fix Mac build after Windows WebKit2 changes for Netscape Plug-ins
   33608 
   33609         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   33610         (WebKit::NetscapePlugin::platformPaint): Changed frameRect() to
   33611         m_frameRect.
   33612 
   33613 2010-08-19  Adam Roben  <aroben (a] apple.com>
   33614 
   33615         Send mouse events to windowless plugins on Windows
   33616 
   33617         This seems to have been the last issue blocking us from playing videos
   33618         on vimeo.com.
   33619 
   33620         Fixes <http://webkit.org/b/44276> <rdar://problem/8330398> Can't click
   33621         play button in vimeo.com Flash video player in WebKit2 on Windows
   33622 
   33623         Reviewed by Sam Weinig.
   33624 
   33625         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
   33626         (WebKit::toNP): Added. Converts a WebMouseEvent to an NPEvent. Code
   33627         was adapted from WebCore's PluginViewWin.cpp.
   33628 
   33629         (WebKit::NetscapePlugin::platformHandleMouseEvent):
   33630         (WebKit::NetscapePlugin::platformHandleMouseEnterEvent):
   33631         (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent):
   33632         Convert the WebMouseEvent to an NPEvent and send it to the plugin.
   33633 
   33634 2010-08-19  Adam Roben  <aroben (a] apple.com>
   33635 
   33636         Add support for painting windowless plugins on Windows
   33637 
   33638         This gets the video on the front page of vimeo.com painting (though
   33639         you can't make it play because we don't support mouse events yet).
   33640 
   33641         Fixes <http://webkit.org/b/44274> <rdar://problem/8330395> Windowless
   33642         plugins don't paint in WebKit2 on Windows
   33643 
   33644         Reviewed by Sam Weinig.
   33645 
   33646         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   33647         (WebKit::NPN_GetValue): Tell the plugin that we support windowless
   33648         mode on Windows.
   33649         (WebKit::NPN_SetValue): Implemented handling of NPPVpluginWindowBool
   33650         by calling through to NetscapePlugin::setIsWindowed.
   33651 
   33652         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   33653         (WebKit::NetscapePlugin::NetscapePlugin): Added initialization of
   33654         m_isWindowed. It defaults to false on Mac and true on other platforms,
   33655         matching WebCore's PluginView.
   33656 
   33657         * WebProcess/Plugins/Netscape/NetscapePlugin.h: Added m_isWindowed.
   33658         (WebKit::NetscapePlugin::setIsWindowed): Added standard setter.
   33659 
   33660         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   33661         (WebKit::NetscapePlugin::platformPaint): Moved Mac-specific context
   33662         translation code here from PluginView::paint.
   33663 
   33664         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
   33665         (WebKit::NetscapePlugin::platformPaint): Implemented. Code was ported
   33666         from WebCore's PluginViewWin.cpp.
   33667 
   33668         * WebProcess/Plugins/Plugin.h: Updated the comment for Plugin::paint
   33669         to explain the coordinate system of the context.
   33670 
   33671         * WebProcess/Plugins/PluginView.cpp:
   33672         (WebKit::PluginView::paint): Changed to translate the context from
   33673         document to window coordinates. We were previously trying to translate
   33674         to plugin-local coordinates, but this only worked for documents whose
   33675         origin was the same as the window's origin (i.e., the main frame). The
   33676         plugin takes care of any further translations needed. (Mac translates
   33677         the context into plugin-local coordinates, and Windows leaves it in
   33678         window coordinates.)
   33679 
   33680 2010-08-19  Adam Roben  <aroben (a] apple.com>
   33681 
   33682         Implement PluginInfoStore::pluginsDirectories
   33683 
   33684         This makes WebKit2 able to find and load Flash on Windows.
   33685 
   33686         Note that we aren't yet respecting the MozillaPlugins registry key.
   33687         That's covered by <http://webkit.org/b/44271>.
   33688 
   33689         Fixes <http://webkit.org/b/43510> <rdar://problem/8273827> WebKit2
   33690         should load plugins from the same directories as old-WebKit
   33691 
   33692         Reviewed by Jon Honeycutt and Ada Chan.
   33693 
   33694         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
   33695         (WebKit::parseVersionString):
   33696         (WebKit::compareVersions):
   33697         (WebKit::safariPluginsDirectory):
   33698         (WebKit::addMozillaPluginDirectories):
   33699         (WebKit::addWindowsMediaPlayerPluginDirectory):
   33700         (WebKit::addQuickTimePluginDirectory):
   33701         (WebKit::addAdobeAcrobatPluginDirectory):
   33702         (WebKit::addMacromediaPluginDirectories):
   33703         (WebKit::PluginInfoStore::pluginsDirectories):
   33704         Ported (and ever-so-slightly cleaned up) code from WebCore's
   33705         PluginDatabaseWin.cpp.
   33706 
   33707 2010-08-19  Adam Roben  <aroben (a] apple.com>
   33708 
   33709         Call NP_GetEntryPoints before NP_Initialize on Windows
   33710 
   33711         Doing otherwise will cause Flash and QuickTime to crash inside
   33712         NP_Initialize.
   33713 
   33714         Fixes <http://webkit.org/b/44270> <rdar://problem/8330393> Crash in
   33715         NP_Initialize when loading QuickTime when running
   33716         plugins/embed-attributes-setting.html in WebKit2 on Windows
   33717 
   33718         Reviewed by Sam Weinig.
   33719 
   33720         * WebProcess/Plugins/Netscape/NetscapePluginModule.cpp:
   33721         (WebKit::NetscapePluginModule::tryLoad): On Windows, first call
   33722         NP_GetEntryPoints, then NP_Initialize. Do the reverse on Mac to
   33723         prevent Silverlight (e.g.) from crashing (see r38858).
   33724 
   33725 2010-08-19  Adam Roben  <aroben (a] apple.com>
   33726 
   33727         Add NetscapePluginWin.cpp
   33728 
   33729         Fixes <http://webkit.org/b/44269> <rdar://problem/8330391>
   33730         NetscapePlugin.h contains functions that should be in
   33731         NetscapePluginWin.cpp
   33732 
   33733         Reviewed by Sam Weinig.
   33734 
   33735         * WebProcess/Plugins/Netscape/NetscapePlugin.h: Moved functions from
   33736         here...
   33737         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp: ...to here.
   33738 
   33739         * win/WebKit2.vcproj: Added NetscapePluginWin.cpp and let VS reorder
   33740         the file list.
   33741 
   33742 2010-08-19  Sam Weinig  <sam (a] webkit.org>
   33743 
   33744         Reviewed by Adam Roben.
   33745 
   33746         Add modifier key info to policy client functions in WebKit2
   33747         <rdar://problem/8185298>
   33748         https://bugs.webkit.org/show_bug.cgi?id=44280
   33749 
   33750         * UIProcess/API/C/WKAPICast.h:
   33751         Add conversion function for modifiers and rename an incorrectly named
   33752         toWK to toRef.
   33753 
   33754         * UIProcess/API/C/WKPage.h:
   33755         Add WKEventModifiers enum.
   33756 
   33757         * UIProcess/WebPageProxy.cpp:
   33758         (WebKit::WebPageProxy::didReceiveMessage):
   33759         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
   33760         (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
   33761         * UIProcess/WebPageProxy.h:
   33762         * UIProcess/WebPolicyClient.cpp:
   33763         (WebKit::WebPolicyClient::decidePolicyForNavigationAction):
   33764         (WebKit::WebPolicyClient::decidePolicyForNewWindowAction):
   33765         * UIProcess/WebPolicyClient.h:
   33766         Pipe through modifier info.
   33767 
   33768         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   33769         (WebKit::modifiersForNavigationAction):
   33770         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
   33771         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
   33772         Get modifier info out of the NavigationInfo class in the same manner as
   33773         WebKit1.
   33774 
   33775 2010-08-18  Sam Weinig  <sam (a] webkit.org>
   33776 
   33777         Reviewed by Adam Roben.
   33778 
   33779         Add ability to get all the keys from a WKDictionaryRef
   33780         https://bugs.webkit.org/show_bug.cgi?id=44221
   33781 
   33782         * Shared/ImmutableDictionary.cpp:
   33783         (WebKit::ImmutableDictionary::keys):
   33784         * Shared/ImmutableDictionary.h:
   33785         Add keys function.
   33786 
   33787         * UIProcess/API/C/WKDictionary.cpp:
   33788         (WKDictionaryCopyKeys):
   33789         * UIProcess/API/C/WKDictionary.h:
   33790         Wrap keys function.
   33791 
   33792 2010-08-18  Sam Weinig  <sam (a] webkit.org>
   33793 
   33794         Reviewed by Jon Honeycutt.
   33795 
   33796         Add ability to set custom userAgent for WebKit2
   33797         https://bugs.webkit.org/show_bug.cgi?id=44215
   33798 
   33799         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
   33800         (WebPageMessage::):
   33801         * UIProcess/API/C/WKPage.cpp:
   33802         (WKPageSetCustomUserAgent):
   33803         * UIProcess/API/C/WKPage.h:
   33804         * UIProcess/WebPageProxy.cpp:
   33805         (WebKit::WebPageProxy::setCustomUserAgent):
   33806         * UIProcess/WebPageProxy.h:
   33807         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   33808         (WebKit::WebFrameLoaderClient::userAgent):
   33809         * WebProcess/WebPage/WebPage.cpp:
   33810         (WebKit::WebPage::setCustomUserAgent):
   33811         (WebKit::WebPage::userAgent):
   33812         (WebKit::WebPage::didReceiveMessage):
   33813         * WebProcess/WebPage/WebPage.h:
   33814 
   33815 2010-08-18  Sam Weinig  <sam (a] webkit.org>
   33816 
   33817         Rubber-stamped by John Sullivan.
   33818 
   33819         Make WKBundleNodeHandleRef usable from WKRetainPtr.
   33820 
   33821         * WebKit2.xcodeproj/project.pbxproj: Make WKBundleNodeHandle.h public.
   33822         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.h: Add WKRetain/WKRelease overloads.
   33823 
   33824 2010-08-18  Zoltan Horvath  <zoltan (a] webkit.org>
   33825 
   33826         Reviewed by Kenneth Rohde Christiansen.
   33827 
   33828         [Qt] Forwards QtWebProcess' stdout, stderr onto the UI process
   33829         https://bugs.webkit.org/show_bug.cgi?id=44159
   33830 
   33831         For debugging purposes forwards stdout and stderr of QtWebProcess onto the UI process.
   33832 
   33833         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   33834         (WebKit::ProcessLauncherHelper::launch):
   33835 
   33836 2010-08-17  Jesus Sanchez-Palencia  <jesus.palencia (a] openbossa.org>
   33837 
   33838         Reviewed by Darin Adler.
   33839 
   33840         Add NetworkingContext to avoid layer violations
   33841         https://bugs.webkit.org/show_bug.cgi?id=42292
   33842 
   33843         Preparation: Just add the files to the build system.
   33844 
   33845         * WebKit2.xcodeproj/project.pbxproj: Added new files.
   33846         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h: Added.
   33847         Placeholder with tentative code that might be changed when landing
   33848         the rest of it.
   33849         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm: Added.
   33850         Empty placeholder for now.
   33851 
   33852 2010-08-16  Jon Honeycutt  <jhoneycutt (a] apple.com>
   33853 
   33854         Allow some tests to pass in WebKitTestRunner before SharedMemory and
   33855         PluginInfoStore are implemented on Windows.
   33856 
   33857         Reviewed by Sam Weinig.
   33858 
   33859         * Platform/win/SharedMemoryWin.cpp:
   33860         Disable not implemented warnings.
   33861         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
   33862         Ditto.
   33863 
   33864 2010-08-16  Gavin Barraclough  <barraclough (a] apple.com>
   33865 
   33866         Rubber stamped by Sam Weinig
   33867 
   33868         Remove unnecessary includes from UString.h, add new includes as necessary.
   33869 
   33870         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   33871 
   33872 2010-08-16  Sam Weinig  <sam (a] webkit.org>
   33873 
   33874         Fix windows build.
   33875 
   33876         * Shared/win/CommandLineWin.cpp:
   33877 
   33878 2010-08-16  Sam Weinig  <sam (a] webkit.org>
   33879 
   33880         Reviewed by Gavin Barraclough.
   33881 
   33882         Remove #includes of <WebCore/PlatformString.h> in favor of <wtf/text/WTFString.h>
   33883 
   33884         * Platform/Module.cpp:
   33885         * Platform/Module.h:
   33886         * Shared/CommandLine.h:
   33887         * Shared/WebCoreArgumentCoders.h:
   33888         * Shared/WebEvent.h:
   33889         * Shared/WebNavigationDataStore.h:
   33890         * Shared/WebPreferencesStore.h:
   33891         * Shared/WebString.h:
   33892         * Shared/WebURL.h:
   33893         * Shared/mac/CommandLineMac.cpp:
   33894         * Shared/qt/UpdateChunk.cpp:
   33895         * UIProcess/API/C/WKContext.cpp:
   33896         * UIProcess/API/C/cf/WKStringCF.cpp:
   33897         * UIProcess/API/C/cf/WKURLCF.cpp:
   33898         * UIProcess/API/cpp/qt/WKStringQt.cpp:
   33899         * UIProcess/API/cpp/qt/WKURLQt.cpp:
   33900         * UIProcess/API/mac/PageClientImpl.mm:
   33901         * UIProcess/API/qt/qgraphicswkview.cpp:
   33902         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   33903         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   33904         * UIProcess/Launcher/win/ProcessLauncherWin.cpp:
   33905         * UIProcess/WebBackForwardListItem.cpp:
   33906         * UIProcess/WebBackForwardListItem.h:
   33907         * UIProcess/WebContext.h:
   33908         * UIProcess/WebContextInjectedBundleClient.cpp:
   33909         * UIProcess/WebFrameProxy.cpp:
   33910         * UIProcess/WebFrameProxy.h:
   33911         * UIProcess/WebPageProxy.h:
   33912         * UIProcess/WebPolicyClient.cpp:
   33913         * UIProcess/WebProcessProxy.cpp:
   33914         * UIProcess/WebUIClient.cpp:
   33915         * UIProcess/win/WebView.cpp:
   33916         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   33917         * WebProcess/InjectedBundle/InjectedBundle.h:
   33918         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
   33919         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   33920         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
   33921         * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp:
   33922         * WebProcess/Plugins/JSNPObject.cpp:
   33923         * WebProcess/Plugins/NPJSObject.cpp:
   33924         * WebProcess/Plugins/Netscape/NetscapePluginModule.cpp:
   33925         * WebProcess/Plugins/Netscape/NetscapePluginModule.h:
   33926         * WebProcess/WebCoreSupport/WebChromeClient.h:
   33927         * WebProcess/WebKitMain.cpp:
   33928         * WebProcess/win/WebProcessMainWin.cpp:
   33929 
   33930 2010-08-16  Sam Weinig  <sam (a] webkit.org>
   33931 
   33932         Reviewed by Gavin Barraclough.
   33933 
   33934         Null CFURLRef returned from provisionalURL after searching on zillow.com
   33935         <rdar://problem/8261812>
   33936         https://bugs.webkit.org/show_bug.cgi?id=44072
   33937 
   33938         Conversion from WKURLRef to CFRURLRef was breaking on URLs using characters
   33939         such as '{'.
   33940 
   33941         * UIProcess/API/C/cf/WKURLCF.cpp:
   33942         (WKURLCopyCFURL): Use code similar to that found in KURLCFNet.cpp for conversion.
   33943 
   33944 2010-08-16  Sam Weinig  <sam (a] webkit.org>
   33945 
   33946         Reviewed by Gavin Barraclough.
   33947 
   33948         Remove unnecessary copy constructor, assignment operator and swap function.
   33949         The defaults (for all except swap) should do just fine.
   33950 
   33951         * Shared/WebPreferencesStore.cpp:
   33952         * Shared/WebPreferencesStore.h:
   33953 
   33954 2010-08-16  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   33955 
   33956         Reviewed by Kenneth Rohde Christiansen.
   33957 
   33958         Handle content size change in WebKit2
   33959         Re-landing after fix.
   33960 
   33961         https://bugs.webkit.org/show_bug.cgi?id=43198
   33962 
   33963         Based on the work of Antti Koivisto.
   33964         Send message to the UI client when the contents size has changed through the WebChromeClient
   33965         and propagate it to the WKPageUIClient.
   33966 
   33967         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   33968         (WebPageProxyMessage::): Added ContentsSizeChanged message kind.
   33969         * UIProcess/API/C/WKPage.h: Added WKPageContentsSizeChangedCallback callback to the WKPageUIClient.
   33970         * UIProcess/API/qt/qwkpage.cpp:
   33971         (QWKPage::QWKPage): Initialize the new callback to 0.
   33972         * UIProcess/WebPageProxy.cpp:
   33973         (WebKit::WebPageProxy::didReceiveMessage): Handle ContentsSizeChanged message. Calls contetsSizeChanged.
   33974         (WebKit::WebPageProxy::contentsSizeChanged): Added. Propagate the event to the the UI client.
   33975         * UIProcess/WebPageProxy.h:
   33976         * UIProcess/WebUIClient.cpp:
   33977         (WebKit::WebUIClient::contentsSizeChanged): Added. Propagate the event forward to the WKPageUIClient.
   33978         * UIProcess/WebUIClient.h:
   33979         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   33980         (WebKit::WebChromeClient::contentsSizeChanged): Implemented.
   33981 
   33982 2010-08-16  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   33983 
   33984         Unreviewed, rolling out r65419.
   33985         http://trac.webkit.org/changeset/65419
   33986         https://bugs.webkit.org/show_bug.cgi?id=44053
   33987 
   33988         Broke the Windows build (Requested by bbandix on #webkit).
   33989 
   33990         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   33991         (WebPageProxyMessage::):
   33992         * UIProcess/API/C/WKPage.h:
   33993         * UIProcess/API/qt/qwkpage.cpp:
   33994         (QWKPage::QWKPage):
   33995         * UIProcess/WebPageProxy.cpp:
   33996         (WebKit::WebPageProxy::didReceiveMessage):
   33997         * UIProcess/WebPageProxy.h:
   33998         * UIProcess/WebUIClient.cpp:
   33999         * UIProcess/WebUIClient.h:
   34000         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   34001         (WebKit::WebChromeClient::contentsSizeChanged):
   34002 
   34003 2010-08-16  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   34004 
   34005         Reviewed by Kenneth Rohde Christiansen.
   34006 
   34007         Handle content size change in WebKit2
   34008 
   34009         https://bugs.webkit.org/show_bug.cgi?id=43198
   34010 
   34011         Based on the work of Antti Koivisto.
   34012         Send message to the UI client when the contents size has changed through the WebChromeClient
   34013         and propagate it to the WKPageUIClient.
   34014 
   34015         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   34016         (WebPageProxyMessage::): Added ContentsSizeChanged message kind.
   34017         * UIProcess/API/C/WKPage.h: Added WKPageContentsSizeChangedCallback callback to the WKPageUIClient.
   34018         * UIProcess/API/qt/qwkpage.cpp:
   34019         (QWKPage::QWKPage): Initialize the new callback to 0.
   34020         * UIProcess/WebPageProxy.cpp:
   34021         (WebKit::WebPageProxy::didReceiveMessage): Handle ContentsSizeChanged message. Calls contetsSizeChanged.
   34022         (WebKit::WebPageProxy::contentsSizeChanged): Added. Propagate the event to the the UI client.
   34023         * UIProcess/WebPageProxy.h:
   34024         * UIProcess/WebUIClient.cpp:
   34025         (WebKit::WebUIClient::contentsSizeChanged): Added. Propagate the event forward to the WKPageUIClient.
   34026         * UIProcess/WebUIClient.h:
   34027         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   34028         (WebKit::WebChromeClient::contentsSizeChanged): Implemented.
   34029 
   34030 2010-08-16  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   34031 
   34032         Unreviewed Qt WebKit2 build fix.
   34033 
   34034         * UIProcess/qt/WebContextQt.cpp:
   34035         (WebKit::WebContext::platformSetUpWebProcess): Added empty stub implementation.
   34036         * WebKit2.pro: Enumerate new files, include WebKit.pri for correct define macro set.
   34037 
   34038 2010-08-15  Dan Bernstein  <mitz (a] apple.com>
   34039 
   34040         Revised build fix from r65363 based on suggestion from Darin Adler.
   34041 
   34042         * UIProcess/API/C/WKArray.h: Include stddef.h.
   34043         * UIProcess/API/C/WKBase.h: Uninclude ctype.h.
   34044         * UIProcess/API/C/WKData.h: Include stddef.h.
   34045         * UIProcess/API/C/WKDictionary.h: Ditto.
   34046 
   34047 2010-08-14  Dan Bernstein  <mitz (a] apple.com>
   34048 
   34049         Reviewed by Anders Carlsson in Sweden.
   34050 
   34051         Clean build of WebKitTestRunner fails with 'size_t' has not been declared in WKArray.h
   34052         https://bugs.webkit.org/show_bug.cgi?id=44005
   34053 
   34054         * UIProcess/API/C/WKBase.h: Include ctype.h.
   34055 
   34056 2010-08-13  Sam Weinig  <sam (a] webkit.org>
   34057 
   34058         Fix build.
   34059 
   34060         * WebKit2.xcodeproj/project.pbxproj: Make WKDictionary.h public.
   34061 
   34062 2010-08-13  Sam Weinig  <sam (a] webkit.org>
   34063 
   34064         Reviewed by Brady Eidson.
   34065 
   34066         Pass values map to willSubmitForm in WebKit2 API
   34067         Part of <rdar://problem/8255932>
   34068         https://bugs.webkit.org/show_bug.cgi?id=43995
   34069 
   34070         * Platform/CoreIPC/ArgumentCoders.h:
   34071         (CoreIPC::):
   34072         Add overload for std::pair.
   34073 
   34074         * Shared/ImmutableDictionary.h:
   34075         (WebKit::ImmutableDictionary::adopt):
   34076         Fix function signature by removing size parameter.
   34077 
   34078         * UIProcess/API/C/WKPage.h:
   34079         Add dictionary parameter to callback.
   34080 
   34081         * UIProcess/WebFormClient.cpp:
   34082         (WebKit::WebFormClient::willSubmitForm):
   34083         Create an ImmutableDictionary from the vector of string pairs.
   34084 
   34085         * UIProcess/WebFormClient.h:
   34086         * UIProcess/WebPageProxy.cpp:
   34087         (WebKit::WebPageProxy::didReceiveMessage):
   34088         (WebKit::WebPageProxy::willSubmitForm):
   34089         * UIProcess/WebPageProxy.h:
   34090         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   34091         (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
   34092         Plumb through the values vector.
   34093 
   34094 2010-08-13  Sam Weinig  <sam (a] webkit.org>
   34095 
   34096         Reviewed by Brady Eidson.
   34097 
   34098         Add dictionary API type
   34099         https://bugs.webkit.org/show_bug.cgi?id=43990
   34100 
   34101         Add an immutable dictionary type (WKStringRef -> WKTypeRef).
   34102 
   34103         * Shared/APIObject.h:
   34104         (WebKit::APIObject::):
   34105         Add new APIType.
   34106 
   34107         * Shared/ImmutableDictionary.cpp: Added.
   34108         (WebKit::ImmutableDictionary::ImmutableDictionary):
   34109         (WebKit::ImmutableDictionary::~ImmutableDictionary):
   34110         * Shared/ImmutableDictionary.h: Added.
   34111         (WebKit::ImmutableDictionary::create):
   34112         (WebKit::ImmutableDictionary::adopt):
   34113         (WebKit::ImmutableDictionary::get):
   34114         (WebKit::ImmutableDictionary::size):
   34115         (WebKit::ImmutableDictionary::):
   34116         (WebKit::ImmutableDictionary::type):
   34117         Add basic implementation
   34118 
   34119         * UIProcess/API/C/WKAPICast.h:
   34120         (WebKit::):
   34121         Add new mappings.
   34122 
   34123         * UIProcess/API/C/WKBase.h:
   34124         Add new opaque type.
   34125 
   34126         * UIProcess/API/C/WKDictionary.cpp: Added.
   34127         (WKDictionaryGetTypeID):
   34128         (WKDictionaryGetItemForKey):
   34129         (WKDictionaryGetSize):
   34130         (WKDictionaryRetain):
   34131         (WKDictionaryRelease):
   34132         * UIProcess/API/C/WKDictionary.h: Added.
   34133         Add API wrappings.
   34134     
   34135         * UIProcess/API/C/WebKit2.h:
   34136         Add missing public headers.
   34137 
   34138         * WebKit2.xcodeproj/project.pbxproj:
   34139         * win/WebKit2.vcproj:
   34140         * win/WebKit2Generated.make:
   34141         Add new files.
   34142 
   34143 2010-08-13  Sam Weinig  <sam (a] webkit.org>
   34144 
   34145         Reviewed by Jon Honeycutt.
   34146 
   34147         Add form submission listener to WebKit2
   34148         Part of <rdar://problem/8255932>
   34149         https://bugs.webkit.org/show_bug.cgi?id=43947
   34150 
   34151         * Shared/APIObject.h:
   34152         Add TypeFormSubmissionListener APIType.
   34153         
   34154         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   34155         Add WillSubmitForm message kind.
   34156 
   34157         * UIProcess/API/C/WKAPICast.h:
   34158         Add new mappings for WKFormSubmissionListenerRef -> WebFormSubmissionListener
   34159 
   34160         * UIProcess/API/C/WKBase.h:
   34161         Add OpaqueWKFormSubmissionListener and rename the other opaque types to match.
   34162 
   34163         * UIProcess/API/C/WKFormSubmissionListener.cpp: Added.
   34164         (WKFormSubmissionListenerGetTypeID):
   34165         (WKFormSubmissionListenerContinue):
   34166         (WKFormSubmissionListenerRetain):
   34167         (WKFormSubmissionListenerRelease):
   34168         * UIProcess/API/C/WKFormSubmissionListener.h: Added.
   34169         Add C wrapper for WebFormSubmissionListener.
   34170 
   34171         * UIProcess/API/C/WKPage.cpp:
   34172         (WKPageSetPageFormClient):
   34173         * UIProcess/API/C/WKPage.h:
   34174         Add WKPageFormClient with willSubmitForm callback. Additional callbacks will be added as
   34175         needed.
   34176 
   34177         * UIProcess/API/C/WebKit2.h:
   34178         Add include for WKFormSubmissionListener.h
   34179 
   34180         * UIProcess/WebFormClient.cpp: Added.
   34181         (WebKit::WebFormClient::WebFormClient):
   34182         (WebKit::WebFormClient::initialize):
   34183         (WebKit::WebFormClient::willSubmitForm):
   34184         * UIProcess/WebFormClient.h: Added.
   34185         Add client for form related delagations.
   34186 
   34187         * UIProcess/WebFormSubmissionListenerProxy.cpp: Added.
   34188         (WebKit::WebFormSubmissionListenerProxy::WebFormSubmissionListenerProxy):
   34189         (WebKit::WebFormSubmissionListenerProxy::continueSubmission):
   34190         * UIProcess/WebFormSubmissionListenerProxy.h: Added.
   34191         (WebKit::WebFormSubmissionListenerProxy::create):
   34192         (WebKit::WebFormSubmissionListenerProxy::type):
   34193         * UIProcess/WebFrameListenerProxy.cpp: Copied from UIProcess/WebFramePolicyListenerProxy.cpp.
   34194         Add new type of listener for form submissions. It inherits from the new base class
   34195         for listeners, WebFrameListenerProxy.
   34196 
   34197         (WebKit::WebFrameListenerProxy::WebFrameListenerProxy):
   34198         (WebKit::WebFrameListenerProxy::~WebFrameListenerProxy):
   34199         (WebKit::WebFrameListenerProxy::invalidate):
   34200         (WebKit::WebFrameListenerProxy::receivedPolicyDecision):
   34201         * UIProcess/WebFrameListenerProxy.h: Copied from UIProcess/WebFramePolicyListenerProxy.h.
   34202         Move logic that would have to be shared between WebFramePolicyListenerProxy and
   34203         WebFormSubmissionListenerProxy into shared base class.
   34204 
   34205         * UIProcess/WebFramePolicyListenerProxy.cpp:
   34206         (WebKit::WebFramePolicyListenerProxy::WebFramePolicyListenerProxy):
   34207         * UIProcess/WebFramePolicyListenerProxy.h:
   34208         (WebKit::WebFramePolicyListenerProxy::create):
   34209         (WebKit::WebFramePolicyListenerProxy::type):
   34210         Move to inheriting from WebFrameListenerProxy.
   34211 
   34212         * UIProcess/WebFrameProxy.cpp:
   34213         (WebKit::WebFrameProxy::disconnect):
   34214         (WebKit::WebFrameProxy::receivedPolicyDecision):
   34215         (WebKit::WebFrameProxy::setUpPolicyListenerProxy):
   34216         (WebKit::WebFrameProxy::setUpFormSubmissionListenerProxy):
   34217         * UIProcess/WebFrameProxy.h:
   34218         Change listener functions to act on WebFrameListenerProxys and add setUpFormSubmissionListenerProxy.
   34219 
   34220         * UIProcess/WebPageProxy.cpp:
   34221         (WebKit::WebPageProxy::initializeFormClient):
   34222         (WebKit::WebPageProxy::didReceiveMessage):
   34223         (WebKit::WebPageProxy::willSubmitForm):
   34224         * UIProcess/WebPageProxy.h:
   34225         Plumb through willSubmitForm call as we do with the other listeners.
   34226 
   34227         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   34228         (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
   34229         Ditto.
   34230 
   34231         * WebKit2.xcodeproj/project.pbxproj: Add new files.
   34232         * win/WebKit2.vcproj: Add new files.
   34233         * win/WebKit2Generated.make: Ditto.
   34234 
   34235 2010-08-13  Gavin Barraclough  <barraclough (a] apple.com>
   34236 
   34237         Reviewed by Sam Weinig
   34238 
   34239         Unify UString::UTF8String() & String::utf8() methods,
   34240         remove UString::cost() & make atArrayIndex a free function.
   34241 
   34242         * WebProcess/Plugins/JSNPObject.cpp:
   34243         (WebKit::npIdentifierFromIdentifier):
   34244         * WebProcess/Plugins/NPJSObject.cpp:
   34245         (WebKit::NPJSObject::enumerate):
   34246         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   34247         (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
   34248 
   34249 2010-08-12  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   34250 
   34251         Unreviewed, rolling out r65295.
   34252         http://trac.webkit.org/changeset/65295
   34253         https://bugs.webkit.org/show_bug.cgi?id=43950
   34254 
   34255         It broke 4 sputnik tests (Requested by Ossy on #webkit).
   34256 
   34257         * WebProcess/Plugins/JSNPObject.cpp:
   34258         (WebKit::npIdentifierFromIdentifier):
   34259         * WebProcess/Plugins/NPJSObject.cpp:
   34260         (WebKit::NPJSObject::enumerate):
   34261         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   34262         (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
   34263 
   34264 2010-08-12  Gavin Barraclough  <barraclough (a] apple.com>
   34265 
   34266         Reviewed by Sam Weinig
   34267 
   34268         Unify UString::UTF8String() & String::utf8() methods,
   34269         remove UString::cost() & make atArrayIndex a free function.
   34270 
   34271         * WebProcess/Plugins/JSNPObject.cpp:
   34272         (WebKit::npIdentifierFromIdentifier):
   34273         * WebProcess/Plugins/NPJSObject.cpp:
   34274         (WebKit::NPJSObject::enumerate):
   34275         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   34276         (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
   34277 
   34278 2010-08-12  Maciej Stachowiak  <mjs (a] apple.com>
   34279 
   34280         Reviewed by Sam Weinig.
   34281 
   34282         WebKit2 crashes when WebFrame outlives WebPage
   34283         https://bugs.webkit.org/show_bug.cgi?id=43939
   34284 
   34285         * WebProcess/WebCoreSupport/WebChromeClient.h:
   34286         (WebKit::WebChromeClient::page): Add this method, to allow
   34287         WebFrame to retrieve its WebPage following WebCore pointers.
   34288         * WebProcess/WebPage/WebFrame.cpp:
   34289         (WebKit::WebFrame::WebFrame): Do not initialize m_page (it's gone).
   34290         (WebKit::WebFrame::page): Don't use the data member, get it from
   34291         WebCore.
   34292         (WebKit::WebFrame::invalidate): Use method to get page() and null check.
   34293         (WebKit::WebFrame::isMainFrame): ditto
   34294         * WebProcess/WebPage/WebFrame.h:
   34295 
   34296 2010-08-12  Jon Honeycutt  <jhoneycutt (a] apple.com>
   34297 
   34298         WebKit2 needs to initialize SafariTheme
   34299         https://bugs.webkit.org/show_bug.cgi?id=43901
   34300 
   34301         Reviewed by Sam Weinig.
   34302 
   34303         * WebProcess/win/WebProcessMainWin.cpp:
   34304         (WebKit::initializeSafariTheme):
   34305         Copied from old WebKit.
   34306         (WebKit::WebProcessMain):
   34307         If we're using SafariTheme, initialize it.
   34308 
   34309 2010-08-12  Jon Honeycutt  <jhoneycutt (a] apple.com>
   34310 
   34311         WebKitTestRunner needs to run tests without using native controls
   34312         https://bugs.webkit.org/show_bug.cgi?id=43772
   34313 
   34314         Reviewed by Sam Weinig.
   34315 
   34316         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
   34317         (WebProcessMessage::):
   34318         Add a new message.
   34319 
   34320         * UIProcess/API/C/win/WKContextPrivateWin.h: Added.
   34321         Declare WKContextSetShouldPaintNativeControls().
   34322 
   34323         * UIProcess/API/C/win/WKContextWin.cpp: Added.
   34324         (WKContextSetShouldPaintNativeControls):
   34325         Call the WebContext's setShouldPaintNativeControls().
   34326 
   34327         * UIProcess/WebContext.cpp:
   34328         (WebKit::WebContext::WebContext):
   34329         Initialize m_shouldPaintNativeControls.
   34330         (WebKit::WebContext::ensureWebProcess):
   34331         If we created a web process, call platformSetUpWebProcess().
   34332 
   34333         * UIProcess/WebContext.h:
   34334         Declare new functions and a member to store whether we should paint
   34335         native controls.
   34336 
   34337         * UIProcess/mac/WebContextMac.mm:
   34338         (WebKit::WebContext::platformSetUpWebProcess):
   34339         Stubbed.
   34340 
   34341         * UIProcess/win/WebContextWin.cpp:
   34342         (WebKit::WebContext::setShouldPaintNativeControls):
   34343         Set m_shouldPaintNativeControls. If we have a valid web process, send a
   34344         SetShouldPaintNativeControls message.
   34345         (WebKit::WebContext::platformSetUpWebProcess):
   34346         Send a SetShouldPaintNativeControls message.
   34347 
   34348         * WebProcess/WebProcess.cpp:
   34349         (WebKit::WebProcess::didReceiveMessage):
   34350         If this is a SetShouldPaintNativeControls message, decode the argument,
   34351         and call Settings::setShouldPaintNativeControls().
   34352 
   34353         * win/WebKit2.vcproj:
   34354         Add WKContextPrivateWin.h and WKContextWin.cpp to project.
   34355 
   34356         * win/WebKit2Generated.make:
   34357         Copy WKContextPrivateWin.h.
   34358 
   34359 2010-08-11  Sam Weinig  <sam (a] webkit.org>
   34360 
   34361         Reviewed by Gavin Barraclough.
   34362 
   34363         Add SPI to stop loading from the InjectedBundle.
   34364 
   34365         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   34366         (WKBundlePageStopLoading):
   34367         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
   34368         * WebProcess/WebPage/WebPage.h:
   34369 
   34370 2010-08-11  Sam Weinig  <sam (a] webkit.org>
   34371 
   34372         Reviewed by Gavin Barraclough.
   34373 
   34374         WKPageStopLoading always asserts
   34375 
   34376         * WebProcess/WebPage/WebPage.cpp:
   34377         (WebKit::WebPage::didReceiveMessage): Switch break to return, break made us
   34378         hit the ASSERT_NOT_REACHED at the end of the function.
   34379 
   34380 2010-08-11  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   34381 
   34382         Unreviewed build fix.
   34383 
   34384         [Qt] Update WebKit2 build environment, add stub implementation of SharedMemory.
   34385 
   34386         * DerivedSources.pro:
   34387         * Platform/qt/SharedMemoryQt.cpp: Added.
   34388         (WebKit::SharedMemory::Handle::Handle):
   34389         (WebKit::SharedMemory::Handle::~Handle):
   34390         (WebKit::SharedMemory::Handle::encode):
   34391         (WebKit::SharedMemory::Handle::decode):
   34392         (WebKit::SharedMemory::create):
   34393         (WebKit::SharedMemory::~SharedMemory):
   34394         (WebKit::SharedMemory::createHandle):
   34395         (WebKit::SharedMemory::systemPageSize):
   34396         * WebKit2.pro:
   34397         * WebKit2Prefix.h:
   34398 
   34399 2010-08-11  Mark Rowe  <mrowe (a] apple.com>
   34400 
   34401         Build fix.  Update references to StringHash.h.
   34402 
   34403         * Shared/CommandLine.h:
   34404         * UIProcess/WebContext.h:
   34405         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   34406         * WebProcess/win/WebProcessMainWin.cpp:
   34407 
   34408 2010-08-10  Darin Adler  <darin (a] apple.com>
   34409 
   34410         Reviewed by Sam Weinig.
   34411 
   34412         Add leakRef and clear to all RefPtr variants
   34413         https://bugs.webkit.org/show_bug.cgi?id=42389
   34414 
   34415         * UIProcess/API/cpp/WKRetainPtr.h: Changed all uses of "template <...>" to
   34416         "template<...>". Defined many of the inlined functions outside the class
   34417         definition, to avoid style checker warnings about multiple statements on
   34418         a single line and for slightly better clarity of the class definition itself.
   34419         Renamed releaseRef to leakRef. Added a releaseRef that calls leakRef so we
   34420         don't have to rename all callers at once. Added a clear function.
   34421 
   34422 2010-08-10  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   34423 
   34424         Reviewed by Antonio Gomes.
   34425 
   34426         [Qt] Build WebKit2 into a static lib
   34427 
   34428         https://bugs.webkit.org/show_bug.cgi?id=43621
   34429 
   34430         * WebKit2.pri: Added. Defined addWebKit2Lib function that defines how to link against the static lib.
   34431         * WebKit2.pro:  Build specification for the WebKit2 framework.
   34432         * WebProcess.pro: Copied from WebKit2/WebKit2.pro. Build specification for the WebProcess binary.
   34433 
   34434 2010-08-09  Sam Weinig  <sam (a] webkit.org>
   34435 
   34436         Reviewed by Geoffrey Garen.
   34437 
   34438         Add zoom support for injected bundle
   34439         https://bugs.webkit.org/show_bug.cgi?id=43759
   34440 
   34441         Add SPI to change the zoom factor for a page.
   34442 
   34443         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   34444         (toZoomMode):
   34445         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   34446         (WKBundlePageGetZoomFactor):
   34447         (WKBundlePageSetZoomFactor):
   34448         (WKBundlePageSetZoomMode):
   34449         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
   34450         * WebProcess/WebPage/WebPage.cpp:
   34451         (WebKit::WebPage::zoomFactor):
   34452         (WebKit::WebPage::setZoomFactor):
   34453         (WebKit::WebPage::setZoomMode):
   34454         * WebProcess/WebPage/WebPage.h:
   34455 
   34456 2010-08-06  Gavin Barraclough  <barraclough (a] apple.com>
   34457 
   34458         Rubber stamped by Sam Weinig
   34459 
   34460         Bug 43594 - Add string forwards to Forward.h
   34461         This allows us to remove forward declarations for these classes from
   34462         WebCore/WebKit (a step in moving these class from WebCore:: to WTF::).
   34463 
   34464         * UIProcess/PageClient.h:
   34465         * UIProcess/VisitedLinkProvider.h:
   34466         * UIProcess/WebContextInjectedBundleClient.h:
   34467         * UIProcess/WebFrameProxy.h:
   34468         * UIProcess/WebHistoryClient.h:
   34469         * UIProcess/WebLoaderClient.h:
   34470         * UIProcess/WebPolicyClient.h:
   34471         * UIProcess/WebProcessProxy.h:
   34472         * UIProcess/WebUIClient.h:
   34473         * UIProcess/win/WebView.h:
   34474         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h:
   34475         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   34476         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
   34477         * WebProcess/Plugins/NPRuntimeObjectMap.h:
   34478         * WebProcess/Plugins/Netscape/NetscapePluginStream.h:
   34479         * WebProcess/Plugins/PluginController.h:
   34480         * WebProcess/WebPage/WebFrame.h:
   34481         * WebProcess/WebPage/WebPage.h:
   34482         * WebProcess/WebProcess.h:
   34483 
   34484 2010-08-09  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   34485 
   34486         Reviewed by Kenneth Rohde Christiansen.
   34487 
   34488         [Qt] No need for PageClientImpl
   34489 
   34490         https://bugs.webkit.org/show_bug.cgi?id=43728
   34491 
   34492         Remove PageClientImpl, take the implementation of WebKit::PageClient into QWKPagePrivate.
   34493 
   34494         * UIProcess/API/qt/qwkpage.cpp:
   34495         (QWKPagePrivate::QWKPagePrivate):
   34496         (QWKPagePrivate::toolTipChanged):
   34497         * UIProcess/API/qt/qwkpage_p.h:
   34498         (QWKPagePrivate::pageDidEnterAcceleratedCompositing):
   34499         (QWKPagePrivate::pageDidLeaveAcceleratedCompositing):
   34500         (QWKPagePrivate::processDidExit):
   34501         (QWKPagePrivate::processDidRevive):
   34502         (QWKPagePrivate::setCursor):
   34503         (QWKPagePrivate::takeFocus):
   34504 
   34505 2010-08-07  Sam Weinig  <sam (a] webkit.org>
   34506 
   34507         Reviewed by Anders Carlsson.
   34508 
   34509         WebKitTestRunner needs to print onunload handler information
   34510         <rdar://problem/8213831>
   34511         https://bugs.webkit.org/show_bug.cgi?id=42703
   34512 
   34513         Add SPI to get the number of pending unload events.
   34514 
   34515         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   34516         (WKBundleFrameGetPendingUnloadCount):
   34517         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
   34518         * WebProcess/WebPage/WebFrame.cpp:
   34519         (WebKit::WebFrame::pendingUnloadCount):
   34520         * WebProcess/WebPage/WebFrame.h:
   34521 
   34522 2010-08-07  Sam Weinig  <sam (a] webkit.org>
   34523 
   34524         Reviewed by Anders Carlsson.
   34525 
   34526         Add additional loader client functions need to complete WebKitTestRunner
   34527         https://bugs.webkit.org/show_bug.cgi?id=43684
   34528 
   34529         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   34530         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   34531         (WebKit::InjectedBundlePageLoaderClient::didCancelClientRedirectForFrame):
   34532         (WebKit::InjectedBundlePageLoaderClient::willPerformClientRedirectForFrame):
   34533         (WebKit::InjectedBundlePageLoaderClient::didChangeLocationWithinPageForFrame):
   34534         (WebKit::InjectedBundlePageLoaderClient::didFinishDocumentLoadForFrame):
   34535         (WebKit::InjectedBundlePageLoaderClient::didHandleOnloadEventsForFrame):
   34536         (WebKit::InjectedBundlePageLoaderClient::didDisplayInsecureContentForFrame):
   34537         (WebKit::InjectedBundlePageLoaderClient::didRunInsecureContentForFrame):
   34538         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   34539         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   34540         (WebKit::WebFrameLoaderClient::dispatchDidHandleOnloadEvents):
   34541         (WebKit::WebFrameLoaderClient::dispatchDidCancelClientRedirect):
   34542         (WebKit::WebFrameLoaderClient::dispatchWillPerformClientRedirect):
   34543         (WebKit::WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
   34544         (WebKit::WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
   34545         (WebKit::WebFrameLoaderClient::didDisplayInsecureContent):
   34546         (WebKit::WebFrameLoaderClient::didRunInsecureContent):
   34547 
   34548 2010-08-07  Sam Weinig  <sam (a] webkit.org>
   34549 
   34550         Another fix for the windows build.
   34551 
   34552         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   34553         (WebKit::NetscapePlugin::isAcceleratedCompositingEnabled):
   34554 
   34555 2010-08-07  Sam Weinig  <sam (a] webkit.org>
   34556 
   34557         Fix windows build.
   34558 
   34559         * WebProcess/Plugins/PluginView.cpp:
   34560         (WebKit::PluginView::platformLayer):
   34561         * WebProcess/Plugins/PluginView.h:
   34562 
   34563 2010-08-07  Sam Weinig  <sam (a] webkit.org>
   34564 
   34565         Reviewed by Anders Carlsson.
   34566 
   34567         WebKitTestRunner needs GCController
   34568         <rdar://problem/8213834>
   34569         https://bugs.webkit.org/show_bug.cgi?id=42701
   34570 
   34571         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   34572         (WKBundleGarbageCollectJavaScriptObjects):
   34573         (WKBundleGarbageCollectJavaScriptObjectsOnAlternateThreadForDebugging):
   34574         (WKBundleGetJavaScriptObjectsCount):
   34575         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
   34576         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   34577         (WebKit::InjectedBundle::garbageCollectJavaScriptObjects):
   34578         (WebKit::InjectedBundle::garbageCollectJavaScriptObjectsOnAlternateThreadForDebugging):
   34579         (WebKit::InjectedBundle::javaScriptObjectsCount):
   34580         * WebProcess/InjectedBundle/InjectedBundle.h:
   34581 
   34582 2010-08-07  Anders Carlsson  <andersca (a] apple.com>
   34583 
   34584         Reviewed by Sam Weinig.
   34585 
   34586         CA drawing model support for Mac Plugins
   34587         https://bugs.webkit.org/show_bug.cgi?id=43678
   34588         <rdar://problem/7929701>
   34589 
   34590         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   34591         (WebKit::NPN_GetValue):
   34592         Handle WKNVSupportsCompositingCoreAnimationPluginsBool and 
   34593         NPNVsupportsCoreAnimationBool and return true if accelerated compositing is enabled.
   34594 
   34595         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   34596         (WebKit::NetscapePlugin::isAcceleratedCompositingEnabled):
   34597         Call PluginController::isAcceleratedCompositingEnabled.
   34598 
   34599         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   34600         (WebKit::NetscapePlugin::platformPostInitialize):
   34601         If the plug-in uses the Core Animation drawing model, ask it for its layer.
   34602 
   34603         (WebKit::NetscapePlugin::platformPaint):
   34604         Don't send draw events if the Core Animation drawing model is used.
   34605 
   34606         (WebKit::NetscapePlugin::pluginLayer):
   34607         Return the plug-in layer.
   34608 
   34609         * WebProcess/Plugins/Plugin.h:
   34610         Add a pluginLayer pure virtual member function.
   34611 
   34612         * WebProcess/Plugins/PluginController.h:
   34613         Add an isAcceleratedCompositingEnabled pure virtual member function.
   34614 
   34615         * WebProcess/Plugins/PluginView.cpp:
   34616         (WebKit::PluginView::initializePlugin):
   34617         If the plug-in has a layer, enter compositing mode.
   34618 
   34619         (WebKit::PluginView::platformLayer):
   34620         Ask the plug-in for its layer.
   34621 
   34622         (WebKit::PluginView::isAcceleratedCompositingEnabled):
   34623         Call Settings::acceleratedCompositingEnabled.
   34624 
   34625         * WebProcess/Plugins/PluginView.h:
   34626 
   34627 2010-08-06  Sam Weinig  <sam (a] webkit.org>
   34628 
   34629         Reviewed by Anders Carlsson.
   34630 
   34631         Delete key doesn't go Back in WebKit2
   34632         <rdar://problem/8272978>
   34633         https://bugs.webkit.org/show_bug.cgi?id=43665
   34634 
   34635         - Adds support for delete key going back (mac only for now)
   34636         - Adds support for command-left/command right going back/forward
   34637         - Flesh out scrolling due to arrow keys on the mac to match old webkit.
   34638         - Made performDefaultBehaviorForKeyEvent platform specific and added
   34639           a boolean return value which will be used later to inform the UI process
   34640           about what events have been processed.
   34641 
   34642         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   34643         (WebPageProxyMessage::):
   34644         * UIProcess/API/mac/WKView.mm:
   34645         (-[WKView _wantsKeyDownForEvent:]):
   34646         * UIProcess/WebPageProxy.cpp:
   34647         (WebKit::WebPageProxy::didReceiveSyncMessage):
   34648         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   34649         (WebKit::WebBackForwardListProxy::backItem):
   34650         (WebKit::WebBackForwardListProxy::forwardItem):
   34651         * WebProcess/WebPage/WebPage.cpp:
   34652         (WebKit::WebPage::keyEvent):
   34653         * WebProcess/WebPage/WebPage.h:
   34654         * WebProcess/WebPage/mac/WebPageMac.mm:
   34655         (WebKit::scroll):
   34656         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
   34657         * WebProcess/WebPage/qt/WebPageQt.cpp:
   34658         (WebKit::scroll):
   34659         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
   34660         * WebProcess/WebPage/win/WebPageWin.cpp:
   34661         (WebKit::scroll):
   34662         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
   34663 
   34664 2010-08-07  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   34665 
   34666         Unreviewed, rolling out r64904.
   34667         http://trac.webkit.org/changeset/64904
   34668         https://bugs.webkit.org/show_bug.cgi?id=43671
   34669 
   34670         Broke the Qt Windows builders. (Requested by bbandix on
   34671         #webkit).
   34672 
   34673         * WebKit2.pri: Removed.
   34674         * WebKit2.pro:
   34675         * WebProcess.pro: Removed.
   34676 
   34677 2010-08-07  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   34678 
   34679         Reviewed by Eric Seidel.
   34680 
   34681         NPAPI headers should be included through npruntime_internal.h
   34682 
   34683         https://bugs.webkit.org/show_bug.cgi?id=43620
   34684 
   34685         * DerivedSources.pro:
   34686         * WebProcess/Plugins/NPJSObject.h:
   34687         * WebProcess/Plugins/NPRuntimeUtilities.h:
   34688         * WebProcess/Plugins/Netscape/NetscapePluginStream.h:
   34689 
   34690 2010-08-07  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   34691 
   34692         Reviewed by Eric Seidel.
   34693 
   34694         [Qt] Build WebKit2 into a static lib
   34695 
   34696         https://bugs.webkit.org/show_bug.cgi?id=43621
   34697 
   34698         * WebKit2.pri: Added. Defined addWebKit2Lib function that defines how to link against the static lib.
   34699         * WebKit2.pro:  Build specification for the WebKit2 framework.
   34700         * WebProcess.pro: Copied from WebKit2/WebKit2.pro. Build specification for the WebProcess binary.
   34701 
   34702 2010-08-05  Jon Honeycutt  <jhoneycutt (a] apple.com>
   34703 
   34704         WebKitTestRunner needs to be able to set the font smoothing type
   34705         https://bugs.webkit.org/show_bug.cgi?id=43406
   34706 
   34707         Reviewed by Adam Roben.
   34708 
   34709         * Shared/FontSmoothingLevel.h: Added.
   34710         (WebKit::):
   34711 
   34712         * Shared/WebPreferencesStore.cpp:
   34713         (WebKit::WebPreferencesStore::WebPreferencesStore):
   34714         Initialize fontSmoothingLevel.
   34715         (WebKit::WebPreferencesStore::swap):
   34716         Copy fontSmoothingLevel.
   34717 
   34718         * Shared/WebPreferencesStore.h:
   34719         (WebKit::WebPreferencesStore::encode):
   34720         Encode fontSmoothingLevel.
   34721         (WebKit::WebPreferencesStore::decode):
   34722         Decode it.
   34723 
   34724         * UIProcess/API/C/WKPreferencesPrivate.cpp: Added.
   34725         (WKPreferencesSetFontSmoothingLevel):
   34726         Get the font smoothing level from the WKFontSmoothingLevel, and call
   34727         WebPreferences::setFontSmoothingLevel().
   34728         (WKPreferencesGetFontSmoothingLevel):
   34729         Get the font smoothing level from WebPreferences, and translate it to a
   34730         WKFontSmoothingLevel.
   34731 
   34732         * UIProcess/API/C/WKPreferencesPrivate.h: Added.
   34733         Declare the font smoothing levels, and declare functions to get and set
   34734         the level.
   34735 
   34736         * UIProcess/WebPreferences.cpp:
   34737         (WebKit::WebPreferences::setFontSmoothingLevel):
   34738         Set fontSmoothingLevel and call update().
   34739         (WebKit::WebPreferences::fontSmoothingLevel):
   34740         Return the level.
   34741 
   34742         * UIProcess/WebPreferences.h:
   34743         Declare getter and setter for fontSmoothingLevel.
   34744 
   34745         * WebKit2.xcodeproj/project.pbxproj:
   34746         Add new files to project.
   34747 
   34748         * WebProcess/WebPage/WebPage.cpp:
   34749         (WebKit::WebPage::preferencesDidChange):
   34750         Call platformPreferencesDidChange().
   34751 
   34752         * WebProcess/WebPage/WebPage.h:
   34753         Declare platformPreferencesDidChange().
   34754 
   34755         * WebProcess/WebPage/mac/WebPageMac.mm:
   34756         (WebKit::WebPage::platformPreferencesDidChange):
   34757         Stubbed.
   34758 
   34759         * WebProcess/WebPage/qt/WebPageQt.cpp:
   34760         (WebKit::WebPage::platformPreferencesDidChange):
   34761         Stubbed.
   34762 
   34763         * WebProcess/WebPage/win/WebPageWin.cpp:
   34764         (WebKit::WebPage::platformPreferencesDidChange):
   34765         On CG platforms, call wkSetFontSmoothingLevel(). This matches the code
   34766         in old WebKit's WebPreferences. Set the font rendering mode to either
   34767         normal (CG) or alternative (GDI) based on the font smoothing level. This
   34768         matches what was done in old WebKit's WebView.
   34769 
   34770         * win/WebKit2.vcproj:
   34771         Add FontSmoothingLevel.h and WKPreferencesPrivate.{h,cpp} to project.
   34772 
   34773         * win/WebKit2Generated.make:
   34774         Copy WKPreferencesPrivate.h.
   34775 
   34776 2010-08-06  Anders Carlsson  <andersca (a] apple.com>
   34777 
   34778         Build fixes.
   34779 
   34780         * Platform/win/SharedMemoryWin.cpp:
   34781         (WebKit::SharedMemory::Handle::encode):
   34782         (WebKit::SharedMemory::Handle::decode):
   34783         * Shared/qt/UpdateChunk.cpp:
   34784         (WebKit::UpdateChunk::encode):
   34785         (WebKit::UpdateChunk::decode):
   34786         * Shared/qt/UpdateChunk.h:
   34787         * Shared/win/UpdateChunk.cpp:
   34788         (WebKit::UpdateChunk::encode):
   34789         (WebKit::UpdateChunk::decode):
   34790         * Shared/win/UpdateChunk.h:
   34791 
   34792 2010-08-06  Anders Carlsson  <andersca (a] apple.com>
   34793 
   34794         Reviewed by Sam Weinig.
   34795 
   34796         Change all ArgumentEncoder and ArgumentDecoder references to pointers
   34797         https://bugs.webkit.org/show_bug.cgi?id=43651
   34798 
   34799         * Platform/CoreIPC/ArgumentCoder.h:
   34800         * Platform/CoreIPC/ArgumentDecoder.h:
   34801         * Platform/CoreIPC/Arguments.h:
   34802         * Platform/CoreIPC/Attachment.cpp:
   34803         * Platform/CoreIPC/Attachment.h:
   34804         * Platform/CoreIPC/mac/MachPort.h:
   34805         * Platform/SharedMemory.h:
   34806         * Platform/mac/SharedMemoryMac.cpp:
   34807         * Shared/DrawingAreaBase.cpp:
   34808         * Shared/DrawingAreaBase.h:
   34809         * Shared/WebEvent.h:
   34810         * Shared/WebNavigationDataStore.h:
   34811         * Shared/WebPreferencesStore.h:
   34812         * Shared/mac/UpdateChunk.cpp:
   34813         * Shared/mac/UpdateChunk.h:
   34814         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   34815         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   34816         * UIProcess/DrawingAreaProxy.h:
   34817         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   34818         * UIProcess/LayerBackedDrawingAreaProxy.h:
   34819         * UIProcess/WebContext.cpp:
   34820         * UIProcess/WebContext.h:
   34821         * UIProcess/WebPageProxy.cpp:
   34822         * UIProcess/WebPageProxy.h:
   34823         * UIProcess/WebProcessProxy.cpp:
   34824         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   34825         * WebProcess/InjectedBundle/InjectedBundle.h:
   34826         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   34827         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h:
   34828         * WebProcess/WebPage/DrawingArea.h:
   34829         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   34830         * WebProcess/WebPage/LayerBackedDrawingArea.h:
   34831         * WebProcess/WebPage/WebPage.cpp:
   34832         * WebProcess/WebPage/WebPage.h:
   34833         * WebProcess/WebProcess.cpp:
   34834 
   34835 2010-08-06  Anders Carlsson  <andersca (a] apple.com>
   34836 
   34837         Reviewed by Sam Weinig.
   34838 
   34839         Don't try to allocate a vector unless we know the buffer can contain it
   34840         https://bugs.webkit.org/show_bug.cgi?id=43647
   34841 
   34842         * Platform/CoreIPC/ArgumentCoders.h:
   34843         (CoreIPC::):
   34844         Check that the argument decoder buffer actually can hold all the vector elements.
   34845 
   34846         * Platform/CoreIPC/ArgumentDecoder.cpp:
   34847         (CoreIPC::ArgumentDecoder::bufferIsLargeEnoughtToContain):
   34848         Align the current position to the given alignment, add the size and check if the position is
   34849         past the end of the buffer.
   34850 
   34851         * Platform/CoreIPC/ArgumentDecoder.h:
   34852         (CoreIPC::ArgumentDecoder::bufferIsLargeEnoughtToContain):
   34853         Get the size and alignment and call the other bufferIsLargeEnoughtToContain overload.
   34854 
   34855 2010-08-06  Anders Carlsson  <andersca (a] apple.com>
   34856 
   34857         Reviewed by Adam Roben.
   34858 
   34859         Detect invalid CoreIPC messages and call didReceiveInvalidMessage
   34860         https://bugs.webkit.org/show_bug.cgi?id=43643
   34861         <rdar://problem/7891069>
   34862 
   34863         * Platform/CoreIPC/ArgumentDecoder.cpp:
   34864         (CoreIPC::ArgumentDecoder::alignBufferPosition):
   34865         If we can't correctly align the buffer position, mark the decoder as invalid.
   34866 
   34867         * Platform/CoreIPC/ArgumentDecoder.h:
   34868         (CoreIPC::ArgumentDecoder::isInvalid):
   34869         Check if the argument decoder is valid.
   34870 
   34871         (CoreIPC::ArgumentDecoder::markInvalid):
   34872         Mark the argument decoder as invalid, by setting its buffer position past its end position.
   34873 
   34874         * Platform/CoreIPC/Connection.cpp:
   34875         (CoreIPC::Connection::dispatchMessages):
   34876         Check if m_client is null before dispatching messages. If an argument decoder was marked invalid, call
   34877         Connection::Client::didReceiveInvalidMessage.
   34878 
   34879         * Platform/CoreIPC/Connection.h:
   34880         (CoreIPC::Connection::Message::releaseArguments):
   34881         Rename destroy to releaseArguments and make it return a PassOwnPtr.
   34882 
   34883         * UIProcess/WebProcessProxy.cpp:
   34884         (WebKit::WebProcessProxy::~WebProcessProxy):
   34885         Call releaseArguments instead of destroy.
   34886 
   34887         (WebKit::WebProcessProxy::didReceiveInvalidMessage):
   34888         Kill the web process and invalidate its connection.
   34889 
   34890         * WebProcess/WebProcess.cpp:
   34891         (WebKit::WebProcess::didReceiveInvalidMessage):
   34892         Don't do anything, if the UI process is sending invalid messages there's not much we can do.
   34893 
   34894         * WebProcess/WebProcess.h:
   34895 
   34896 2010-08-06  Anders Carlsson  <andersca (a] apple.com>
   34897 
   34898         Reviewed by Adam Roben.
   34899 
   34900         Add CoreIPC::MessageReceiver class
   34901         https://bugs.webkit.org/show_bug.cgi?id=43637
   34902 
   34903         * Platform/CoreIPC/Connection.h:
   34904         (CoreIPC::Connection::MessageReceiver::~MessageReceiver):
   34905         Add MessageReceiver class and make Client inherit from it.
   34906 
   34907         (CoreIPC::Connection::MessageReceiver::didReceiveSyncMessage):
   34908         Change didReceiveSyncMessage from being a pure virtual member function and make it
   34909         assert by default instead.
   34910 
   34911         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   34912         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   34913         Remove ChunkedUpdateDrawingAreaProxy::didReceiveSyncMessage.
   34914 
   34915         * Shared/DrawingAreaBase.h:
   34916         Include "Connection.h" instead.
   34917 
   34918         * UIProcess/DrawingAreaProxy.h:
   34919         (WebKit::DrawingAreaProxy::didReceiveSyncMessage):
   34920         Change didReceiveSyncMessage from being a pure virtual member function and make it
   34921         assert by default instead.
   34922 
   34923         * WebProcess/WebProcess.cpp:
   34924         * WebProcess/WebProcess.h:
   34925         Remove didReceiveSyncMessage.
   34926 
   34927 2010-08-06  Jessie Berlin  <jberlin (a] apple.com>
   34928 
   34929         Roll out http://trac.webkit.org/changeset/64801, which broke the Safari Windows Build.
   34930         Unreviewed.
   34931 
   34932         * UIProcess/PageClient.h:
   34933         * UIProcess/VisitedLinkProvider.h:
   34934         * UIProcess/WebContextInjectedBundleClient.h:
   34935         * UIProcess/WebFrameProxy.h:
   34936         * UIProcess/WebHistoryClient.h:
   34937         * UIProcess/WebLoaderClient.h:
   34938         * UIProcess/WebPolicyClient.h:
   34939         * UIProcess/WebProcessProxy.h:
   34940         * UIProcess/WebUIClient.h:
   34941         * UIProcess/win/WebView.h:
   34942         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h:
   34943         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   34944         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
   34945         * WebProcess/Plugins/NPRuntimeObjectMap.h:
   34946         * WebProcess/Plugins/Netscape/NetscapePluginStream.h:
   34947         * WebProcess/Plugins/PluginController.h:
   34948         * WebProcess/WebPage/WebFrame.h:
   34949         * WebProcess/WebPage/WebPage.h:
   34950         * WebProcess/WebProcess.h:
   34951 
   34952 2010-08-05  Sam Weinig  <sam (a] webkit.org>
   34953 
   34954         Reviewed by Anders Carlsson.
   34955 
   34956         Add form client for injected bundle code
   34957         https://bugs.webkit.org/show_bug.cgi?id=43603
   34958 
   34959         * WebKit2.xcodeproj/project.pbxproj:
   34960         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   34961         (WKBundlePageSetFormClient):
   34962         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   34963         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp: Added.
   34964         (WebKit::InjectedBundlePageFormClient::InjectedBundlePageFormClient):
   34965         (WebKit::InjectedBundlePageFormClient::initialize):
   34966         (WebKit::InjectedBundlePageFormClient::textFieldDidBeginEditing):
   34967         (WebKit::InjectedBundlePageFormClient::textFieldDidEndEditing):
   34968         (WebKit::InjectedBundlePageFormClient::textDidChangeInTextField):
   34969         (WebKit::InjectedBundlePageFormClient::textDidChangeInTextArea):
   34970         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.h: Added.
   34971         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   34972         (WebKit::WebEditorClient::textFieldDidBeginEditing):
   34973         (WebKit::WebEditorClient::textFieldDidEndEditing):
   34974         (WebKit::WebEditorClient::textDidChangeInTextField):
   34975         (WebKit::WebEditorClient::textDidChangeInTextArea):
   34976         * WebProcess/WebPage/WebPage.cpp:
   34977         (WebKit::WebPage::initializeInjectedBundleFormClient):
   34978         * WebProcess/WebPage/WebPage.h:
   34979         (WebKit::WebPage::injectedBundleFormClient):
   34980         * win/WebKit2.vcproj:
   34981 
   34982 2010-08-05  Sam Weinig  <sam (a] webkit.org>
   34983 
   34984         Reviewed by Anders Carlsson.
   34985 
   34986         Add ability to get a JSValueRef for a node handle and a world
   34987         https://bugs.webkit.org/show_bug.cgi?id=43591
   34988 
   34989         - Add API to get a JSValueRef for a world, node and frame (the
   34990           frame is currently necessary to pick the right globalObject for
   34991           the node wrapper).
   34992         - Add API to a JSGlobalContextRef for a world and a frame.
   34993 
   34994         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   34995         (WKBundleFrameGetJavaScriptContextForWorld):
   34996         (WKBundleFrameGetJavaScriptWrapperForNodeForWorld):
   34997         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   34998         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.h:
   34999         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
   35000         (WebKit::InjectedBundleNodeHandle::coreNode):
   35001         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
   35002         * WebProcess/InjectedBundle/InjectedBundleScriptWorld.cpp:
   35003         (WebKit::InjectedBundleScriptWorld::coreWorld):
   35004         * WebProcess/InjectedBundle/InjectedBundleScriptWorld.h:
   35005         * WebProcess/WebPage/WebFrame.cpp:
   35006         (WebKit::WebFrame::jsContext):
   35007         (WebKit::WebFrame::jsContextForWorld):
   35008         (WebKit::WebFrame::jsWrapperForWorld):
   35009         * WebProcess/WebPage/WebFrame.h:
   35010 
   35011 2010-08-05  Gavin Barraclough  <barraclough (a] apple.com>
   35012 
   35013         Rubber stamped by Sam Weinig
   35014 
   35015         Bug 43594 - Add string forwards to Forward.h
   35016         This allows us to remove forward declarations for these classes from
   35017         WebCore/WebKit (a step in moving these class from WebCore:: to WTF::).
   35018 
   35019         * UIProcess/PageClient.h:
   35020         * UIProcess/VisitedLinkProvider.h:
   35021         * UIProcess/WebContextInjectedBundleClient.h:
   35022         * UIProcess/WebFrameProxy.h:
   35023         * UIProcess/WebHistoryClient.h:
   35024         * UIProcess/WebLoaderClient.h:
   35025         * UIProcess/WebPolicyClient.h:
   35026         * UIProcess/WebProcessProxy.h:
   35027         * UIProcess/WebUIClient.h:
   35028         * UIProcess/win/WebView.h:
   35029         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h:
   35030         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   35031         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
   35032         * WebProcess/Plugins/NPRuntimeObjectMap.h:
   35033         * WebProcess/Plugins/Netscape/NetscapePluginStream.h:
   35034         * WebProcess/Plugins/PluginController.h:
   35035         * WebProcess/WebPage/WebFrame.h:
   35036         * WebProcess/WebPage/WebPage.h:
   35037         * WebProcess/WebProcess.h:
   35038 
   35039 2010-08-05  Anders Carlsson  <andersca (a] apple.com>
   35040 
   35041         Reviewed by Sam Weinig.
   35042 
   35043         Use the visited link provider for visited links
   35044         https://bugs.webkit.org/show_bug.cgi?id=43583
   35045 
   35046         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
   35047         (WebProcessMessage::):
   35048         Remove AddVisitedLink.
   35049 
   35050         * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:
   35051         (WebProcessProxyMessage::):
   35052         Remove PopulateVisitedLinks and add AddVisitedLink.
   35053 
   35054         * UIProcess/WebContext.cpp:
   35055         (WebKit::WebContext::sharedProcessContext):
   35056         Initialize the main run loop before creating the context.
   35057         
   35058         (WebKit::WebContext::sharedThreadContext):
   35059         Ditto.
   35060         
   35061         (WebKit::WebContext::create):
   35062         Ditto.
   35063 
   35064         (WebKit::WebContext::WebContext):
   35065         Initialize the visited link provider.
   35066 
   35067         (WebKit::WebContext::processDidFinishLaunching):
   35068         Ask the visited link provider to populate visited links.
   35069 
   35070         (WebKit::WebContext::addVisitedLink):
   35071         Ask the visited link provider to add the visited link.
   35072 
   35073         * UIProcess/WebProcessProxy.cpp:
   35074         (WebKit::WebProcessProxy::addVisitedLink):
   35075         Call WebContext::addVisitedLink.
   35076 
   35077         (WebKit::WebProcessProxy::didReceiveMessage):
   35078         Handle AddVisitedLink.
   35079 
   35080         (WebKit::WebProcessProxy::didFinishLaunching):
   35081         Call WebContext::processdidFinishLaunching.
   35082 
   35083         * UIProcess/WebProcessProxy.h:
   35084         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   35085         (WebKit::WebChromeClient::populateVisitedLinks):
   35086         Don't send the WebProcessProxyMessage::PopulateVisitedLinks message.
   35087 
   35088         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   35089         (WebKit::WebPlatformStrategies::isLinkVisited):
   35090         Call WebProcess::isLinkVisited.
   35091         
   35092         (WebKit::WebPlatformStrategies::addVisitedLink):
   35093         Call WebProcess::addVisitedLink.
   35094 
   35095         * WebProcess/WebProcess.cpp:
   35096         (WebKit::WebProcess::setVisitedLinkTable):
   35097         Create a shared memory object and tell the visited link table about it.
   35098 
   35099         (WebKit::WebProcess::visitedLinkStateChanged):
   35100         Go through the link hashes and call Page::visitedStateChanged.
   35101 
   35102         (WebKit::WebProcess::allVisitedLinkStateChanged):
   35103         Call Page::allVisitedStateChanged.
   35104 
   35105         (WebKit::WebProcess::isLinkVisited):
   35106         Call VisitedLinkTable::isLinkVisited.
   35107 
   35108         (WebKit::WebProcess::addVisitedLink):
   35109         Inform the UI process about the added link.
   35110 
   35111         (WebKit::WebProcess::didReceiveMessage):
   35112         Handle new messages.
   35113 
   35114 2010-08-05  Steve Falkenburg  <sfalken (a] apple.com>
   35115 
   35116         Windows build fix.
   35117         Add missing include path.
   35118 
   35119         * win/WebKit2Common.vsprops:
   35120 
   35121 2010-08-05  Brady Eidson  <beidson (a] apple.com>
   35122 
   35123         Rubberstamped by Sam Weinig.
   35124 
   35125         Export WKError.h
   35126 
   35127         * WebKit2.xcodeproj/project.pbxproj:
   35128 
   35129 2010-08-05  Steve Falkenburg  <sfalken (a] apple.com>
   35130 
   35131         Windows build fix.
   35132         Correct vcproj nesting.
   35133 
   35134         * win/WebKit2.vcproj:
   35135 
   35136 2010-08-05  Sam Weinig  <sam (a] webkit.org>
   35137 
   35138         Reviewed by Gavin Barraclough.
   35139 
   35140         Add script world API for injected bundles
   35141         https://bugs.webkit.org/show_bug.cgi?id=43577
   35142 
   35143         * Shared/APIObject.h:
   35144         (WebKit::APIObject::):
   35145         * WebKit2.xcodeproj/project.pbxproj:
   35146         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   35147         (WebKit::):
   35148         * WebProcess/InjectedBundle/API/c/WKBundleBase.h:
   35149         * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.cpp: Added.
   35150         (WKBundleScriptWorldGetTypeID):
   35151         (WKBundleScriptWorldCreateWorld):
   35152         (WKBundleScriptWorldNormalWorld):
   35153         (WKBundleScriptWorldRetain):
   35154         (WKBundleScriptWorldRelease):
   35155         * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.h: Added.
   35156         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
   35157         * WebProcess/InjectedBundle/InjectedBundleScriptWorld.cpp: Added.
   35158         (WebKit::allWorlds):
   35159         (WebKit::InjectedBundleScriptWorld::create):
   35160         (WebKit::InjectedBundleScriptWorld::getOrCreate):
   35161         (WebKit::InjectedBundleScriptWorld::normalWorld):
   35162         (WebKit::InjectedBundleScriptWorld::InjectedBundleScriptWorld):
   35163         (WebKit::InjectedBundleScriptWorld::~InjectedBundleScriptWorld):
   35164         * WebProcess/InjectedBundle/InjectedBundleScriptWorld.h: Added.
   35165         (WebKit::InjectedBundleScriptWorld::type):
   35166         * win/WebKit2.vcproj:
   35167         * win/WebKit2Generated.make:
   35168 
   35169 2010-08-05  Sam Weinig  <sam (a] webkit.org>
   35170 
   35171         Reviewed Anders Carlsson.
   35172 
   35173         Add DOM Node wrapper class for injected bundle
   35174         https://bugs.webkit.org/show_bug.cgi?id=43524
   35175 
   35176         - This class should not expose any DOM APIs, but just be a handle that can be used to get a JS
   35177           wrapper for the node in a specific world.
   35178 
   35179         * Shared/APIObject.h:
   35180         (WebKit::APIObject::):
   35181         * WebKit2.xcodeproj/project.pbxproj:
   35182         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   35183         (WebKit::):
   35184         * WebProcess/InjectedBundle/API/c/WKBundleBase.h:
   35185         * WebProcess/InjectedBundle/API/c/WKBundleNode.h:
   35186         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp: Added.
   35187         (WKBundleNodeHandleGetTypeID):
   35188         (WKBundleNodeHandleRetain):
   35189         (WKBundleNodeHandleRelease):
   35190         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.h: Added.
   35191         * WebProcess/InjectedBundle/DOM: Added.
   35192         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp: Added.
   35193         (WebKit::domHandleCache):
   35194         (WebKit::getDOMHandle):
   35195         (WebKit::setDOMHandle):
   35196         (WebKit::removeDOMHandle):
   35197         (WebKit::InjectedBundleNodeHandle::getOrCreate):
   35198         (WebKit::InjectedBundleNodeHandle::create):
   35199         (WebKit::InjectedBundleNodeHandle::InjectedBundleNodeHandle):
   35200         (WebKit::InjectedBundleNodeHandle::~InjectedBundleNodeHandle):
   35201         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h: Added.
   35202         (WebKit::InjectedBundleNodeHandle::type):
   35203         * win/WebKit2.vcproj:
   35204         * win/WebKit2Generated.make:
   35205 
   35206 2010-08-05  Anders Carlsson  <andersca (a] apple.com>
   35207 
   35208         Build fix.
   35209 
   35210         * Platform/mac/SharedMemoryMac.cpp:
   35211 
   35212 2010-08-05  Anders Carlsson  <andersca (a] apple.com>
   35213 
   35214         Reviewed by Sam Weinig.
   35215 
   35216         Add VisitedLinkProvider class
   35217         https://bugs.webkit.org/show_bug.cgi?id=43570
   35218 
   35219         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
   35220         (WebProcessMessage::):
   35221         Add SetVisitedLinkTable, VisitedLinkStateChanged and AllVisitedLinkStateChanged.
   35222 
   35223         * UIProcess/VisitedLinkProvider.cpp: Added.
   35224         (WebKit::VisitedLinkProvider::VisitedLinkProvider):
   35225         Initialize table.
   35226 
   35227         (WebKit::VisitedLinkProvider::populateVisitedLinksIfNeeded):
   35228         Ask the context to populate visited links.
   35229 
   35230         (WebKit::VisitedLinkProvider::addVisitedLink):
   35231         Add the link hash to the set of pending visited links and start the timer.
   35232 
   35233         (WebKit::nextPowerOf2):
   35234         Add helper function.
   35235 
   35236         (WebKit::tableSizeForKeyCount):
   35237         Given a key count, returns a table size. The table size is always a power of two, and
   35238         is chosen so that the table is always at least half empty.
   35239 
   35240         (WebKit::VisitedLinkProvider::pendingVisitedLinksTimerFired):
   35241         First, check if we need to resize the hash table and allocate new shared memory for it if that is the case.
   35242         Then, go through the pending link hash vector and insert all the elements in the table. Finally, notify the web
   35243         process about visited links whose state have changed.
   35244 
   35245         * WebProcess/WebProcess.cpp:
   35246         (WebKit::WebProcess::didReceiveMessage):
   35247         Add case statements.
   35248 
   35249         * win/WebKit2.vcproj:
   35250         * WebKit2.xcodeproj/project.pbxproj:
   35251         Add VisitedLinkProvider.cpp and VisitedLinkProvider.h.
   35252 
   35253 2010-08-05  Anders Carlsson  <andersca (a] apple.com>
   35254 
   35255         Reviewed by Sam Weinig.
   35256 
   35257         Add VisitedLinkTable class
   35258         https://bugs.webkit.org/show_bug.cgi?id=43566
   35259 
   35260         * Shared/VisitedLinkTable.cpp: Added.
   35261         (WebKit::VisitedLinkTable::VisitedLinkTable):
   35262         (WebKit::VisitedLinkTable::~VisitedLinkTable):
   35263         Add out of line constructors so we won't have to include SharedMemory.h in the 
   35264         VisitedLinkTable.h header.
   35265 
   35266         (WebKit::isPowerOf2):
   35267         Add helper function.
   35268 
   35269         (WebKit::VisitedLinkTable::setSharedMemory):
   35270         Set the new shared memory and update the table size and hash.
   35271 
   35272         (WebKit::doubleHash):
   35273         Add helper function from the WTF HashTable.
   35274 
   35275         (WebKit::VisitedLinkTable::addLinkHash):
   35276         Add a link hash to the table.
   35277 
   35278         (WebKit::VisitedLinkTable::isLinkVisited):
   35279         See if there is an entry for the given link hash.
   35280 
   35281         * Shared/VisitedLinkTable.h: Added.
   35282         (WebKit::VisitedLinkTable::sharedMemory):
   35283         * WebKit2.xcodeproj/project.pbxproj:
   35284         * win/WebKit2.vcproj:
   35285         Add VisitedLinkTable.cpp and VisitedLinkTable.h
   35286 
   35287 2010-08-04  Anders Carlsson  <andersca (a] apple.com>
   35288 
   35289         Reviewed by Adam Roben.
   35290 
   35291         Add shared memory abstraction
   35292         https://bugs.webkit.org/show_bug.cgi?id=43535
   35293         <rdar://problem/8275295>
   35294 
   35295         * Platform/SharedMemory.h: Added.
   35296         (WebKit::SharedMemory::):
   35297         (WebKit::SharedMemory::size):
   35298         Return the size, in bytes, of the shared memory object.
   35299         
   35300         (WebKit::SharedMemory::data):
   35301         Return a pointer to the shared memory object.
   35302         
   35303         * Platform/mac/SharedMemoryMac.cpp: Added.
   35304         (WebKit::SharedMemory::Handle):
   35305         A shared memory handle, which can be passed in a CoreIPC Connection.
   35306 
   35307         (WebKit::SharedMemory::create):
   35308         Allocate the shared memory.
   35309 
   35310         (WebKit::SharedMemory::~SharedMemory):
   35311         Deallocate the shared memory.
   35312 
   35313         (WebKit::SharedMemory::createHandle):
   35314         Create a mach port and pass it to the handle.
   35315 
   35316         (WebKit::SharedMemory::systemPageSize):
   35317         Return the system page size, in bytes.
   35318         
   35319         * Platform/win/SharedMemoryWin.cpp: Added.
   35320         Add stubbed out version.
   35321 
   35322         * WebKit2.xcodeproj/project.pbxproj:
   35323         * win/WebKit2.vcproj:
   35324         Add files.
   35325 
   35326 2010-08-05  Jian Li  <jianli (a] chromium.org>
   35327 
   35328         Reviewed by David Levin.
   35329 
   35330         Unify blob related feature defines to ENABLE(BLOB).
   35331         https://bugs.webkit.org/show_bug.cgi?id=43081
   35332 
   35333         * Configurations/FeatureDefines.xcconfig:
   35334 
   35335 2010-08-05  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   35336 
   35337         Rubber-stamped by Kenneth Rohde Christiansen.
   35338 
   35339         [Qt] Remove redundant include paths from WebKit2.pro.
   35340 
   35341         * WebKit2.pro:
   35342 
   35343 2010-08-04  Adam Roben  <aroben (a] apple.com>
   35344 
   35345         Teach WebKit2 how to load the TestNetscapePlugin
   35346 
   35347         Fixes <http://webkit.org/b/43513> WebKitTestRunner on Windows fails to
   35348         load TestNetscapePlugin
   35349 
   35350         Reviewed by Jon Honeycutt.
   35351 
   35352         * Platform/Module.cpp:
   35353         (WebKit::Module::Module): Initialize m_module on Windows.
   35354 
   35355         * Platform/Module.h: Added m_module on Windows.
   35356 
   35357         * Platform/win/ModuleWin.cpp:
   35358         (WebKit::Module::load): Implemented using ::LoadLibraryExW.
   35359         (WebKit::Module::unload): Implemented using ::FreeLibrary.
   35360         (WebKit::Module::platformFunctionPointer): Implemented using
   35361         ::GetProcAddress.
   35362 
   35363         * Platform/win/RunLoopWin.cpp:
   35364         (RunLoop::TimerBase::timerFired): Kill the native timer before calling
   35365         the fired callback. This makes all our timers non-repeating, but
   35366         that's all we need currently.
   35367         (RunLoop::TimerBase::start): Added an assertion to help us figure out
   35368         when we need to implement repeating timers. Also fixed a typo.
   35369 
   35370         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
   35371         (WebKit::PluginInfoStore::pluginsDirectories): Added a FIXME.
   35372 
   35373         (WebKit::PathWalker::PathWalker):
   35374         (WebKit::PathWalker::~PathWalker):
   35375         (WebKit::PathWalker::isValid):
   35376         (WebKit::PathWalker::data):
   35377         (WebKit::PathWalker::step):
   35378         Added. This class wraps the ::FindFirstFile/::FindNextFile APIs.
   35379 
   35380         (WebKit::PluginInfoStore::pluginPathsInDirectory): Implemented by
   35381         porting logic from
   35382         WebCore::PluginDatabase::getPluginPathsInDirectories.
   35383         (WebKit::getVersionInfo): Copied from PluginDatabaseWin.cpp.
   35384         (WebKit::PluginInfoStore::getPluginInfo): Implemented by porting logic
   35385         from WebCore::PluginPackage::fetchInfo.
   35386         (WebKit::PluginInfoStore::shouldUsePlugin): Changed to always return
   35387         true for now. Added a FIXME about implementing this for real.
   35388 
   35389         * UIProcess/WebProcessProxy.cpp:
   35390         (WebKit::WebProcessProxy::didReceiveSyncMessage):
   35391         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   35392         (WebKit::WebFrameLoaderClient::createPlugin):
   35393         Removed PLATFORM(MAC) guards around plugin code.
   35394 
   35395         * win/WebKit2.vcproj: Let VS sort the file.
   35396 
   35397 2010-08-05  Antti Koivisto  <koivisto (a] iki.fi>
   35398 
   35399         Reviewed by Kenneth Rohde Christiansen.
   35400 
   35401         Use toCopiedRef for making WK objects
   35402         https://bugs.webkit.org/show_bug.cgi?id=43552
   35403 
   35404         * UIProcess/API/cpp/qt/WKStringQt.cpp:
   35405         (WKStringCreateWithQString):
   35406         * UIProcess/API/cpp/qt/WKURLQt.cpp:
   35407         (WKURLCreateWithQUrl):
   35408 
   35409 2010-08-04  Brady Eidson  <beidson (a] apple.com>
   35410 
   35411         Reviewed by Sam Weinig.
   35412 
   35413         Change callback APIs to include an Error object in one callback, instead of having a second callback for failure.
   35414         https://bugs.webkit.org/show_bug.cgi?id=43522
   35415 
   35416         This includes adding a WKErrorRef object which - for now - either exists or doesn't.
   35417         In the future, it may contain useful information about the error.
   35418         
   35419         * WebKit2.xcodeproj/project.pbxproj:
   35420         * win/WebKit2.vcproj:
   35421         * win/WebKit2Generated.make:
   35422         
   35423         * Shared/APIObject.h:
   35424         (WebKit::APIObject::):
   35425         * UIProcess/API/C/WKAPICast.h:
   35426         * UIProcess/API/C/WKBase.h:
   35427         
   35428         * Shared/WebError.h: Added.
   35429         (WebKit::WebError::create):
   35430         (WebKit::WebError::WebError):
   35431         (WebKit::WebError::type):
   35432         
   35433         * UIProcess/API/C/WKError.cpp: Added.
   35434         (WKErrorGetTypeID):
   35435         * UIProcess/API/C/WKError.h: Added.
   35436         
   35437         * UIProcess/API/C/WKPage.cpp:
   35438         (WKPageRunJavaScriptInMainFrame):
   35439         (callRunJavaScriptBlockAndRelease):
   35440         (WKPageRunJavaScriptInMainFrame_b):
   35441         (WKPageRenderTreeExternalRepresentation):
   35442         (callRenderTreeExternalRepresentationBlockAndDispose):
   35443         (WKPageRenderTreeExternalRepresentation_b):
   35444         * UIProcess/API/C/WKPage.h:
   35445         * UIProcess/API/C/WKPagePrivate.h:
   35446         
   35447         * UIProcess/GenericCallback.h:
   35448         (WebKit::GenericCallback::create):
   35449         (WebKit::GenericCallback::performCallbackWithReturnValue):
   35450         (WebKit::GenericCallback::invalidate):
   35451         (WebKit::GenericCallback::GenericCallback):
   35452 
   35453 2010-08-04  Ada Chan  <adachan (a] apple.com>
   35454 
   35455         Windows build fix        
   35456 
   35457         * win/WebKit2Generated.make:
   35458 
   35459 2010-08-04  John Sullivan  <sullivan (a] apple.com>
   35460 
   35461         Build fix, rubber-stamped by Brady Eidson.
   35462 
   35463         * WebKit2.xcodeproj/project.pbxproj:
   35464         Made WKData.h a public header.
   35465 
   35466 2010-08-04  Adam Roben  <aroben (a] apple.com>
   35467 
   35468         Windows build fix
   35469 
   35470         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   35471         (WebKit::NPN_SetValue): Removed unreachable code.
   35472 
   35473 2010-08-04  Adam Roben  <aroben (a] apple.com>
   35474 
   35475         Windows build fix
   35476 
   35477         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   35478         (WebKit::NPN_SetValue): Added some case statements that are compiled
   35479         on Windows to avoid a warning about having default but not cases.
   35480 
   35481 2010-08-04  Adam Roben  <aroben (a] apple.com>
   35482 
   35483         Windows build fix
   35484 
   35485         * win/WebKit2.vcproj: Added NetscapeBrowserFuncs.
   35486 
   35487 2010-08-04  Adam Roben  <aroben (a] apple.com>
   35488 
   35489         Windows build fix
   35490 
   35491         The functions in NetscapePluginModuleWin.cpp have been moved to
   35492         NetscapePluginModule.cpp.
   35493 
   35494         * WebProcess/Plugins/Netscape/win/NetscapePluginModuleWin.cpp: Removed.
   35495         * win/WebKit2.vcproj: Removed NetscapePluginModuleWin.
   35496 
   35497 2010-08-04  Adam Roben  <aroben (a] apple.com>
   35498 
   35499         Move bundle-loading code from NetscapePluginModule to a new Module
   35500         class
   35501 
   35502         This allows more NetscapePluginModule code to be cross-platform.
   35503 
   35504         Fixes <http://webkit.org/b/43497> NetscapePluginModule::try/unload
   35505         should be cross-platform
   35506 
   35507         Reviewed by Anders Carlsson.
   35508 
   35509         * Platform/Module.cpp: Added.
   35510         (WebKit::Module::Module): Store our path.
   35511         (WebKit::Module::~Module): Unload our native module.
   35512 
   35513         * Platform/Module.h: Added.
   35514         (WebKit::Module::leakBundle): Does what it says.
   35515         (WebKit::Module::functionPointer): Returns a pointer to the named
   35516         function, with the right type.
   35517 
   35518         * Platform/mac/ModuleMac.mm: Added.
   35519         (WebKit::Module::load): Code was moved here from
   35520         NetscapePluginModule::tryLoad.
   35521         (WebKit::Module::unload): Just clears our bundle.
   35522         (WebKit::Module::platformFunctionPointer): Code was moved here from
   35523         NetscapePluginModuleMac.cpp.
   35524 
   35525         * Platform/qt/ModuleQt.cpp: Added.
   35526         (WebKit::Module::load):
   35527         (WebKit::Module::unload):
   35528         (WebKit::Module::platformFunctionPointer):
   35529         * Platform/win/ModuleWin.cpp: Added.
   35530         (WebKit::Module::load):
   35531         (WebKit::Module::unload):
   35532         (WebKit::Module::platformFunctionPointer):
   35533         Just stubbed out these functions.
   35534 
   35535         * WebKit2.xcodeproj/project.pbxproj: Added Module.
   35536 
   35537         * WebProcess/Plugins/Netscape/NetscapePluginModule.cpp:
   35538         (WebKit::NetscapePluginModule::tryLoad):
   35539         (WebKit::NetscapePluginModule::unload):
   35540         Moved here from NetscapePluginModuleMac.cpp. Now uses the
   35541         cross-platform m_module member.
   35542 
   35543         * WebProcess/Plugins/Netscape/NetscapePluginModule.h: Replaced
   35544         m_bundle with m_module.
   35545 
   35546         * WebProcess/Plugins/Netscape/mac/NetscapePluginModuleMac.cpp: Removed.
   35547 
   35548         * win/WebKit2.vcproj: Added Module.
   35549 
   35550 2010-08-04  Brady Eidson  <beidson (a] apple.com>
   35551 
   35552         Reviewed by Sam Weinig.
   35553 
   35554         Lay the groundwork for saving/restoring page session state to WK2
   35555         https://bugs.webkit.org/show_bug.cgi?id=43495
   35556 
   35557         * WebKit2.xcodeproj/project.pbxproj:
   35558         * win/WebKit2.vcproj:
   35559 
   35560         * Shared/APIObject.h:
   35561         (WebKit::APIObject::):
   35562         * UIProcess/API/C/WKAPICast.h:
   35563         * UIProcess/API/C/WKBase.h:
   35564         
   35565         Arbitrary byte buffer:
   35566         * Shared/WebData.h: Added.
   35567         (WebKit::WebData::create):
   35568         (WebKit::WebData::bytes):
   35569         (WebKit::WebData::size):
   35570         (WebKit::WebData::WebData):
   35571         (WebKit::WebData::type):
   35572         
   35573         API facing object to act as a byte buffer:
   35574         * UIProcess/API/C/WKData.cpp: Added.
   35575         (WKDataGetTypeID):
   35576         (WKDataCreate):
   35577         (WKDataGetBytes):
   35578         (WKDataGetSize):
   35579         (WKDataRetain):
   35580         (WKDataRelease):
   35581         * UIProcess/API/C/WKData.h: Added.
   35582 
   35583         API for saving/restoring state:
   35584         * UIProcess/API/C/WKPage.cpp:
   35585         (WKPageCopySessionState):
   35586         (WKPageRestoreFromSessionState):
   35587         * UIProcess/API/C/WKPage.h:
   35588 
   35589         These will be filled in later:
   35590         * UIProcess/WebPageProxy.cpp:
   35591         (WebKit::WebPageProxy::sessionState):
   35592         (WebKit::WebPageProxy::restoreFromSessionState):
   35593         * UIProcess/WebPageProxy.h:
   35594 
   35595 
   35596 2010-08-04  Sam Weinig  <sam (a] webkit.org>
   35597 
   35598         Reviewed by Anders Carlsson.
   35599 
   35600         Set correct default minimumFontSize.
   35601 
   35602         * Shared/WebPreferencesStore.cpp:
   35603         (WebKit::WebPreferencesStore::WebPreferencesStore):
   35604 
   35605 2010-08-03  Adam Roben  <aroben (a] apple.com>
   35606 
   35607         Turn on PLATFORM_STRATEGIES on Windows
   35608 
   35609         Fixes <http://webkit.org/b/43431>.
   35610 
   35611         Reviewed by Anders Carlsson.
   35612 
   35613         * win/WebKit2.vcproj: Added WebPlatformStrategies. Also let VS reorder
   35614         this file as it saw fit.
   35615 
   35616 2010-08-03  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   35617 
   35618         Reviewed by Kenneth Rohde Christiansen.
   35619 
   35620         [Qt] Close the WebProcess
   35621 
   35622         https://bugs.webkit.org/show_bug.cgi?id=41690
   35623 
   35624         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   35625         (CoreIPC::Connection::open): Registered connectionDidClose to be called when the client disconnected.
   35626         * Platform/qt/RunLoopQt.cpp:
   35627         (RunLoop::stop): Implemented by calling QCoreApplication::exit.
   35628 
   35629 2010-08-03  Jon Honeycutt  <jhoneycutt (a] apple.com>
   35630 
   35631         WebKitTestRunner needs to activate the Mac font ascent hack
   35632         https://bugs.webkit.org/show_bug.cgi?id=43404
   35633 
   35634         Reviewed by Darin Adler.
   35635 
   35636         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   35637         (WKBundleActivateMacFontAscentHack):
   35638         Get the InjectedBundle, and calls its activateMacFontAscentHack().
   35639 
   35640         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
   35641         Declare WKBundleActivateMacFontAscentHack().
   35642 
   35643         * WebProcess/InjectedBundle/InjectedBundle.h:
   35644         Declare activateMacFontAscentHack().
   35645 
   35646         * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp:
   35647         (WebKit::InjectedBundle::activateMacFontAscentHack):
   35648         Stubbed.
   35649 
   35650         * WebProcess/InjectedBundle/qt/InjectedBundleQt.cpp:
   35651         (WebKit::InjectedBundle::activateMacFontAscentHack):
   35652         Stubbed.
   35653 
   35654         * WebProcess/InjectedBundle/win/InjectedBundleWin.cpp:
   35655         (WebKit::InjectedBundle::activateMacFontAscentHack):
   35656         Activate the ascent hack.
   35657 
   35658 2010-08-03  Simon Fraser  <simon.fraser (a] apple.com>
   35659 
   35660         Fix typo in typo fix.
   35661 
   35662         * Shared/DrawingAreaBase.h:
   35663         (WebKit::DrawingAreaBase::DrawingAreaInfo::DrawingAreaInfo):
   35664         (WebKit::DrawingAreaBase::DrawingAreaBase):
   35665 
   35666 2010-08-03  Simon Fraser  <simon.fraser (a] apple.com>
   35667 
   35668         Fix typo in previous commit.
   35669 
   35670         * Shared/DrawingAreaBase.h:
   35671         (WebKit::DrawingAreaBase::DrawingAreaInfo::DrawingAreaInfo):
   35672         (WebKit::DrawingAreaBase::DrawingAreaBase):
   35673 
   35674 2010-08-03  Simon Fraser  <simon.fraser (a] apple.com>
   35675 
   35676         Reviewed by Anders Carlsson.
   35677 
   35678         Compositing iframe layout test crashes in WebKit2
   35679         https://bugs.webkit.org/show_bug.cgi?id=42860
   35680         
   35681         Fix assertion caused by a DrawingArea handling a message that was targetted at an older DrawingArea
   35682         that it has replaced.
   35683         
   35684         This was done by assigning a unique ID to each DrawingAreaProxy that gets created, and passing
   35685         this ID, along with the type, to the WebProcess via an encoded DrawingAreaInfo. Each message
   35686         also includes this ID. Messages with an ID that doesn't match that of the current DrawingArea are ignored.
   35687         
   35688         Refactored some common code and data into a DrawingAreaBase class which is shared, and adding
   35689         encode/decode of DrawingAreaInfo.
   35690 
   35691         * Shared/DrawingAreaBase.cpp: Added.
   35692         (WebKit::DrawingAreaBase::encode):
   35693         (WebKit::DrawingAreaBase::decode):
   35694         * Shared/DrawingAreaBase.h: Added.
   35695         (WebKit::DrawingAreaBase::):
   35696         (WebKit::DrawingAreaBase::~DrawingAreaBase):
   35697         (WebKit::DrawingAreaBase::type):
   35698         (WebKit::DrawingAreaBase::id):
   35699         (WebKit::DrawingAreaBase::DrawingAreaInfo::DrawingAreaInfo):
   35700         (WebKit::DrawingAreaBase::DrawingAreaBase):
   35701         (CoreIPC::):
   35702         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   35703         (WebKit::ChunkedUpdateDrawingAreaProxy::setSize):
   35704         (WebKit::ChunkedUpdateDrawingAreaProxy::setPageIsVisible):
   35705         (WebKit::ChunkedUpdateDrawingAreaProxy::update):
   35706         * UIProcess/DrawingAreaProxy.cpp:
   35707         (WebKit::DrawingAreaProxy::DrawingAreaProxy):
   35708         (WebKit::DrawingAreaProxy::nextDrawingAreaID):
   35709         * UIProcess/DrawingAreaProxy.h:
   35710         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   35711         (WebKit::LayerBackedDrawingAreaProxy::setSize):
   35712         (WebKit::LayerBackedDrawingAreaProxy::setPageIsVisible):
   35713         (WebKit::LayerBackedDrawingAreaProxy::update):
   35714         * UIProcess/LayerBackedDrawingAreaProxy.h:
   35715         * UIProcess/WebPageProxy.cpp:
   35716         (WebKit::WebPageProxy::didReceiveSyncMessage):
   35717         * WebKit2.xcodeproj/project.pbxproj:
   35718         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   35719         (WebKit::WebChromeClient::createWindow):
   35720         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   35721         (WebKit::ChunkedUpdateDrawingArea::ChunkedUpdateDrawingArea):
   35722         (WebKit::ChunkedUpdateDrawingArea::didReceiveMessage):
   35723         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h:
   35724         * WebProcess/WebPage/DrawingArea.cpp:
   35725         (WebKit::DrawingArea::create):
   35726         (WebKit::DrawingArea::DrawingArea):
   35727         * WebProcess/WebPage/DrawingArea.h:
   35728         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   35729         (WebKit::LayerBackedDrawingArea::LayerBackedDrawingArea):
   35730         (WebKit::LayerBackedDrawingArea::didReceiveMessage):
   35731         * WebProcess/WebPage/LayerBackedDrawingArea.h:
   35732         * WebProcess/WebPage/WebPage.cpp:
   35733         (WebKit::WebPage::create):
   35734         (WebKit::WebPage::WebPage):
   35735         (WebKit::WebPage::changeAcceleratedCompositingMode):
   35736         * WebProcess/WebPage/WebPage.h:
   35737         * WebProcess/WebProcess.cpp:
   35738         (WebKit::WebProcess::createWebPage):
   35739         (WebKit::WebProcess::didReceiveMessage):
   35740         * WebProcess/WebProcess.h:
   35741         * win/WebKit2.vcproj:
   35742 
   35743 2010-08-03  Alex Milowski  <alex (a] milowski.com>
   35744 
   35745         Reviewed by Beth Dakin.
   35746 
   35747         Changed the ENABLE_MATHML value to enable MathML by default.
   35748 
   35749         * Configurations/FeatureDefines.xcconfig:
   35750 
   35751 2010-08-03  Simon Fraser  <simon.fraser (a] apple.com>
   35752 
   35753         Reviewed by Sam Weinig.
   35754 
   35755         Compositing iframe layout test crashes in WebKit2
   35756         https://bugs.webkit.org/show_bug.cgi?id=42860
   35757         
   35758         Part one of the fix: make DrawingArea ref-counted, so that the object
   35759         can survide a swap in drawing areas inside the run loop observer callback.
   35760 
   35761         * WebProcess/WebPage/DrawingArea.cpp:
   35762         (WebKit::DrawingArea::create):
   35763         * WebProcess/WebPage/DrawingArea.h:
   35764         * WebProcess/WebPage/WebPage.h:
   35765         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   35766         (WebKit::LayerBackedDrawingArea::platformClear):
   35767         (WebKit::LayerBackedDrawingArea::updateLayoutRunLoopObserverCallback):
   35768         (WebKit::LayerBackedDrawingArea::updateLayoutRunLoopObserverFired):
   35769 
   35770 2010-08-03  Anders Carlsson  <andersca (a] apple.com>
   35771 
   35772         Reviewed by Adam Roben.
   35773 
   35774         Frequent ASSERT_NOT_REACHED in Connection::processIncomingMessage when running regression tests
   35775         https://bugs.webkit.org/show_bug.cgi?id=42926
   35776         <rdar://problem/8237329>
   35777 
   35778         Remove this assert, it's bogus. It would fire when a reply came in on the connection queue before 
   35779         waitForReply was called on the client thread, but that case is already covered.
   35780 
   35781         * Platform/CoreIPC/Connection.cpp:
   35782         (CoreIPC::Connection::processIncomingMessage):
   35783 
   35784 2010-08-03  Adam Roben  <aroben (a] apple.com>
   35785 
   35786         Compile out two Mac-only localized strings on non-Mac platforms
   35787 
   35788         Fixes <http://webkit.org/b/43433> copyImageUnknownFileLabel and
   35789         AXARIAContentGroupText should only be compiled on Mac
   35790 
   35791         Reviewed by Anders Carlsson.
   35792 
   35793         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   35794         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
   35795         Wrapped copyImageUnknownFileLabel and AXARIAContentGroupText in
   35796         PLATFORM(MAC).
   35797 
   35798 2010-08-03  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   35799 
   35800         [Qt] Unreviewed typo fix in the WebKit2/DerivedSources.pro project file.
   35801 
   35802         Use QMAKE_MKDIR as the command for directory creation.
   35803 
   35804         * DerivedSources.pro:
   35805 
   35806 2010-08-02  Brady Eidson  <beidson (a] apple.com>
   35807 
   35808         Reviewed by Anders Carlsson.
   35809 
   35810         Add VisitedLinkStrategy for each platform to implement
   35811         https://bugs.webkit.org/show_bug.cgi?id=43393
   35812 
   35813         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   35814         (WebKit::WebPlatformStrategies::createVisitedLinkStrategy):
   35815         (WebKit::WebPlatformStrategies::isLinkVisited): Call back into PageGroup's visited links, for now.
   35816         (WebKit::WebPlatformStrategies::addVisitedLink): Ditto.
   35817         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
   35818 
   35819 2010-07-27  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   35820 
   35821         Reviewed by Darin Fisher.
   35822 
   35823         PopupMenu refactoring in preparation to WebKit2
   35824         https://bugs.webkit.org/show_bug.cgi?id=42592
   35825 
   35826         Classes WebPopupMenu and WebSearchPopupMenu inherit from PopupMenu and
   35827         SearchPopupMenu respectively. At this point they are just empty implementations.
   35828 
   35829         * WebProcess/WebCoreSupport/WebPopupMenu.cpp: Added.
   35830         (WebKit::WebPopupMenu::WebPopupMenu):
   35831         (WebKit::WebPopupMenu::~WebPopupMenu):
   35832         (WebKit::WebPopupMenu::disconnectClient):
   35833         (WebKit::WebPopupMenu::show):
   35834         (WebKit::WebPopupMenu::hide):
   35835         (WebKit::WebPopupMenu::updateFromElement):
   35836         * WebProcess/WebCoreSupport/WebPopupMenu.h: Added.
   35837         * WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp: Added.
   35838         (WebKit::WebSearchPopupMenu::WebSearchPopupMenu):
   35839         (WebKit::WebSearchPopupMenu::popupMenu):
   35840         (WebKit::WebSearchPopupMenu::saveRecentSearches):
   35841         (WebKit::WebSearchPopupMenu::loadRecentSearches):
   35842         (WebKit::WebSearchPopupMenu::enabled):
   35843         * WebProcess/WebCoreSupport/WebSearchPopupMenu.h: Added.
   35844 
   35845         As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
   35846         instances, concrete classes that inherit from ChromeClient needed to be changed to
   35847         implement the new methods.
   35848 
   35849         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   35850         (WebKit::WebChromeClient::selectItemWritingDirectionIsNatural):
   35851         (WebKit::WebChromeClient::createPopupMenu):
   35852         (WebKit::WebChromeClient::createSearchPopupMenu):
   35853         * WebProcess/WebCoreSupport/WebChromeClient.h:
   35854 
   35855         build issues:
   35856 
   35857         * WebKit2.xcodeproj/project.pbxproj:
   35858         * win/WebKit2.vcproj:
   35859 
   35860 2010-08-02  Anders Carlsson  <andersca (a] apple.com>
   35861 
   35862         Reviewed by Sam Weinig.
   35863 
   35864         Fix plug-in test failures and remove tests from the Skipped list
   35865         https://bugs.webkit.org/show_bug.cgi?id=43389
   35866 
   35867         * WebProcess/Plugins/JSNPMethod.cpp:
   35868         JSNPMethod::s_info should specify InternalFunction::info as its parent.
   35869 
   35870         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   35871         (WebKit::NetscapePlugin::cancelStreamLoad):
   35872         Special-case the manual stream and call PluginController::cancelManualStreamLoad.
   35873 
   35874         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   35875         (WebKit::NetscapePluginStream::stop):
   35876         It's OK to call stop on a stream that hasn't been started. Remove assertion and return early.
   35877         
   35878         * WebProcess/Plugins/PluginController.h:
   35879         Add cancelManualStreamLoad.
   35880 
   35881         * WebProcess/Plugins/PluginView.cpp:
   35882         (WebKit::PluginView::cancelManualStreamLoad):
   35883         Tell the document loader to cancel the main resource load.
   35884 
   35885         * WebProcess/WebPage/WebFrame.cpp:
   35886         (WebKit::WebFrame::innerText):
   35887         Check for a null document element.
   35888 
   35889 2010-08-02  Anders Carlsson  <andersca (a] apple.com>
   35890 
   35891         Reviewed by Sam Weinig.
   35892 
   35893         Add support for loading manual streams
   35894         https://bugs.webkit.org/show_bug.cgi?id=43380
   35895 
   35896         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   35897         (WebKit::NetscapePlugin::NetscapePlugin):
   35898         Initialize m_loadManually to false.
   35899 
   35900         (WebKit::NetscapePlugin::removePluginStream):
   35901         Special case the manual stream.
   35902 
   35903         (WebKit::NetscapePlugin::initialize):
   35904         Don't request the stream if we're already loading.
   35905 
   35906         (WebKit::NetscapePlugin::manualStreamDidReceiveResponse):
   35907         Create the manual stream and pass the response to it.
   35908 
   35909         (WebKit::NetscapePlugin::manualStreamDidReceiveData):
   35910         Pass the data to the manual stream.
   35911 
   35912         (WebKit::NetscapePlugin::manualStreamDidFinishLoading):
   35913         Call the manual stream.
   35914 
   35915         (WebKit::NetscapePlugin::manualStreamDidFail):
   35916         Ditto.
   35917 
   35918         * WebProcess/Plugins/Plugin.h:
   35919         Add pure virtual member functions for manual stream loading.
   35920 
   35921         * WebProcess/Plugins/PluginView.cpp:
   35922         (WebKit::buildHTTPHeaders):
   35923         Put code in a function so both PluginView::Stream::didReceiveResponse and 
   35924         manualLoadDidReceiveResponse can call it.
   35925 
   35926         (WebKit::PluginView::Stream::didReceiveResponse):
   35927         Call buildHTTPHeaders.
   35928 
   35929         (WebKit::PluginView::Stream::didFinishLoading):
   35930         Protect the plug-in when calling destroyStream.
   35931 
   35932         (WebKit::PluginView::manualLoadDidReceiveResponse):
   35933         Call Plugin::manualStreamDidReceiveResponse.
   35934 
   35935         (WebKit::PluginView::manualLoadDidReceiveData):
   35936         Call Plugin::manualStreamDidReceiveData.
   35937 
   35938         (WebKit::PluginView::manualLoadDidFinishLoading):
   35939         Call Plugin::manualStreamDidFinishLoading.
   35940 
   35941         (WebKit::PluginView::manualLoadDidFail):
   35942         Call Plugin::manualStreamDidFail.
   35943 
   35944         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   35945         (WebKit::WebFrameLoaderClient::WebFrameLoaderClient):
   35946         Initialize m_hasSentResponseToPluginView to false.
   35947 
   35948         (WebKit::WebFrameLoaderClient::setMainDocumentError):
   35949         Call PluginView::manualLoadDidFail.
   35950 
   35951         (WebKit::WebFrameLoaderClient::committedLoad):
   35952         Call PluginView::manualLoadDidReceiveResponse.
   35953 
   35954         (WebKit::WebFrameLoaderClient::finishedLoading):
   35955         Call PluginView::manualLoadDidFinishLoading.
   35956 
   35957         (WebKit::WebFrameLoaderClient::redirectDataToPlugin):
   35958         Keep track of the plug-in view.
   35959 
   35960 2010-08-02  Brady Eidson  <beidson (a] apple.com>
   35961 
   35962         Reviewed by Anders Carlsson.
   35963 
   35964         Basic WK2 visited link coloring
   35965         https://bugs.webkit.org/show_bug.cgi?id=43377
   35966 
   35967         Add simple API that allows the WK2 app to add 1 visited link at a time.
   35968         For now, this just pipes each individual LinkHash down to WebCore.
   35969         
   35970         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
   35971         (WebProcessMessage::):
   35972 
   35973         * UIProcess/API/C/WKContext.cpp:
   35974         (WKContextAddVisitedLink):
   35975         * UIProcess/API/C/WKContext.h:
   35976 
   35977         * UIProcess/WebContext.cpp:
   35978         (WebKit::WebContext::addVisitedLink):
   35979         * UIProcess/WebContext.h:
   35980 
   35981         * WebProcess/WebProcess.cpp:
   35982         (WebKit::WebProcess::addVisitedLinkHash):
   35983         (WebKit::WebProcess::didReceiveMessage):
   35984         * WebProcess/WebProcess.h:
   35985 
   35986 2010-08-02  Darin Adler  <darin (a] apple.com>
   35987 
   35988         Reviewed by Sam Weinig.
   35989 
   35990         WebKitTestRunner needs layoutTestController.setCanOpenWindows
   35991         https://bugs.webkit.org/show_bug.cgi?id=42321
   35992 
   35993         WebKitTestRunner needs layoutTestController.setCloseRemainingWindowsWhenComplete
   35994         https://bugs.webkit.org/show_bug.cgi?id=42779
   35995 
   35996         Implemented window.close, added a function that does a similar operation on behalf
   35997         of injected bundle code named WKBundlePageClose, and fixed the reference counting of
   35998         the result of the createNewPage client function.
   35999 
   36000         * UIProcess/API/cpp/WKRetainPtr.h: Added clear. Tweaked formatting. Renamed
   36001         releaseRef to leakRef.
   36002 
   36003         * UIProcess/API/mac/WKView.mm:
   36004         (-[WKView _updateVisibility]): Handle the case where drawing area is 0. This
   36005         came up in WebKitTestRunner and other functions handle drawing area of 0.
   36006 
   36007         * UIProcess/WebPageProxy.cpp:
   36008         (WebKit::WebPageProxy::didReceiveSyncMessage): Update now that createNewPage
   36009         returns a PassRefPtr.
   36010         (WebKit::WebPageProxy::createNewPage): Changed to return a PassRefPtr.
   36011         * UIProcess/WebPageProxy.h: Ditto.
   36012 
   36013         * UIProcess/WebUIClient.cpp:
   36014         (WebKit::WebUIClient::createNewPage): Changed to return a PassRefPtr and adopt
   36015         the WKPageRef passed from the client. This follows the "create rule".
   36016         * UIProcess/WebUIClient.h: Ditto.
   36017 
   36018         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   36019         (WKBundlePageClose): Added.
   36020         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h: Added WKBundlePageClose
   36021         and re-sorted the other functions in this file.
   36022 
   36023         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   36024         (WebKit::WebChromeClient::closeWindowSoon): Implemented this.
   36025 
   36026         * WebProcess/WebPage/WebPage.cpp:
   36027         (WebKit::WebPage::WebPage): Called setJavaScriptCanOpenWindowsAutomatically(true).
   36028         I suppose we will need to revisit this later when we implement pop-up blocking.
   36029         (WebKit::WebPage::tryClose): Factored out the part of this that sends a message
   36030         to the other process.
   36031         (WebKit::WebPage::sendClose): This is where the part that sends a message went.
   36032         * WebProcess/WebPage/WebPage.h: Added sendClose, used by both closeWindowSoon
   36033         and WKBundlePageClose.
   36034 
   36035 2010-08-02  John Sullivan  <sullivan (a] apple.com>
   36036 
   36037         https://bugs.webkit.org/show_bug.cgi?id=43369
   36038         WebBackForwardList::forwardListAsImmutableArrayWithLimit can return partly-uninitialized array
   36039         
   36040         Reviewed by Ada Chan.
   36041 
   36042         * UIProcess/WebBackForwardList.cpp:
   36043         (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
   36044         Use a simpler and correct expression to determine "last".
   36045 
   36046 2010-08-02  Anders Carlsson  <andersca (a] apple.com>
   36047 
   36048         Reviewed by Sam Weinig.
   36049 
   36050         Protect the plug-in from being destroyed while in plug-in code
   36051         https://bugs.webkit.org/show_bug.cgi?id=43370
   36052 
   36053         Add a PluginProtector to NPRuntimeObjectMap and use it in JSNPObject.
   36054         
   36055         * WebProcess/Plugins/JSNPObject.cpp:
   36056         (WebKit::JSNPObject::callMethod):
   36057         (WebKit::JSNPObject::callObject):
   36058         (WebKit::JSNPObject::callConstructor):
   36059         (WebKit::JSNPObject::put):
   36060         (WebKit::JSNPObject::getOwnPropertyNames):
   36061         (WebKit::JSNPObject::propertyGetter):
   36062         Add PluginProtector declarations.
   36063 
   36064         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   36065         (WebKit::NPRuntimeObjectMap::PluginProtector::PluginProtector):
   36066         Ref the plug-in view (unless it's being destroyed).
   36067 
   36068         (WebKit::NPRuntimeObjectMap::PluginProtector::~PluginProtector):
   36069         * WebProcess/Plugins/NPRuntimeObjectMap.h:
   36070 
   36071         * WebProcess/Plugins/PluginView.cpp:
   36072         (WebKit::PluginView::PluginView):
   36073         Initialize m_isBeingDestroyed.
   36074 
   36075         (WebKit::PluginView::~PluginView):
   36076         Set m_isBeingDestroyed to true.
   36077 
   36078         (WebKit::PluginView::scriptObject):
   36079         Don't crash if the plug-in failed to initialize.
   36080 
   36081         (WebKit::PluginView::evaluate):
   36082         Remove comment.
   36083 
   36084         * WebProcess/Plugins/PluginView.h:
   36085         (WebKit::PluginView::isBeingDestroyed):
   36086 
   36087 2010-08-02  Anders Carlsson  <andersca (a] apple.com>
   36088 
   36089         Reviewed by Sam Weinig.
   36090 
   36091         Cache JSNPObjects and fix bugs in the object map
   36092         https://bugs.webkit.org/show_bug.cgi?id=43368
   36093 
   36094         * WebProcess/Plugins/JSNPObject.cpp:
   36095         (WebKit::JSNPObject::JSNPObject):
   36096         Assert that we're not trying to wrap an NPJSObject.
   36097 
   36098         (WebKit::JSNPObject::~JSNPObject):
   36099         Tell the object map that we're gone.
   36100 
   36101         (WebKit::JSNPObject::invalidate):
   36102         Release the NPObject and null out the pointer.
   36103 
   36104         * WebProcess/Plugins/NPJSObject.cpp:
   36105         (WebKit::NPJSObject::create):
   36106         Assert that we're not trying to wrap a JSNPObject.
   36107 
   36108         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   36109         (WebKit::NPRuntimeObjectMap::getOrCreateNPObject):
   36110         If we're passed a JSNPObject, just extract its NPObject.
   36111 
   36112         (WebKit::NPRuntimeObjectMap::getOrCreateJSObject):
   36113         If we're passed an NPJSObject, just extract its JSObject. Otherwise, check if we already have
   36114         a JSObject for this NPObject and return it.
   36115 
   36116         (WebKit::NPRuntimeObjectMap::jsNPObjectDestroyed):
   36117         Remove the object from the map.
   36118 
   36119         (WebKit::NPRuntimeObjectMap::convertNPVariantToJSValue):
   36120         getOrCreateJSObject now checks for wrapped objects.
   36121 
   36122         (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
   36123         getOrCreateNPObject now checks for wrapped objects.
   36124 
   36125         (WebKit::NPRuntimeObjectMap::invalidate):
   36126         Invalidate JSNPObjects as well.
   36127 
   36128 2010-08-02  Jeremy Orlow  <jorlow (a] chromium.org>
   36129 
   36130         Speculative revert of 64425 due to Chromium instability
   36131         https://bugs.webkit.org/show_bug.cgi?id=43347
   36132 
   36133         * WebKit2.xcodeproj/project.pbxproj:
   36134         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   36135         * WebProcess/WebCoreSupport/WebChromeClient.h:
   36136         * WebProcess/WebCoreSupport/WebPopupMenu.cpp: Removed.
   36137         * WebProcess/WebCoreSupport/WebPopupMenu.h: Removed.
   36138         * WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp: Removed.
   36139         * WebProcess/WebCoreSupport/WebSearchPopupMenu.h: Removed.
   36140         * win/WebKit2.vcproj:
   36141 
   36142 2010-08-02  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   36143 
   36144         Reviewed by Simon Hausmann.
   36145 
   36146         [Qt] Generate forwarding headers for WebKit2
   36147 
   36148         https://bugs.webkit.org/show_bug.cgi?id=43336
   36149 
   36150         * DerivedSources.pro: Added.
   36151 
   36152 2010-08-01  Anders Carlsson  <andersca (a] apple.com>
   36153 
   36154         Reviewed by Sam Weinig.
   36155 
   36156         Implement NPN_SetException
   36157         https://bugs.webkit.org/show_bug.cgi?id=43320
   36158 
   36159         * WebProcess/Plugins/JSNPObject.cpp:
   36160         (WebKit::JSNPObject::callConstructor):
   36161         (WebKit::JSNPObject::put):
   36162         (WebKit::JSNPObject::getOwnPropertyNames):
   36163         (WebKit::JSNPObject::propertyGetter):
   36164         Call NPRuntimeObjectMap::moveGlobalExceptionToExecState.
   36165 
   36166         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   36167         (WebKit::globalExceptionString):
   36168         Add static global.
   36169 
   36170         (WebKit::NPRuntimeObjectMap::setGlobalException):
   36171         Set the global exception string.
   36172 
   36173         (WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
   36174         Create an error from the exception string.
   36175 
   36176         * WebProcess/Plugins/NPRuntimeObjectMap.h:
   36177         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   36178         (WebKit::NPN_SetException):
   36179         Call NetscapePlugin::setException.
   36180 
   36181         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   36182         (WebKit::NetscapePlugin::setException):
   36183         Call NPRuntimeObjectMap::setGlobalException.
   36184 
   36185 2010-08-01  Sam Weinig  <sam (a] webkit.org>
   36186 
   36187         Roll r64446 out. It broke the test runner.
   36188 
   36189         * UIProcess/WebContext.cpp:
   36190         (WebKit::WebContext::postMessageToInjectedBundle):
   36191 
   36192 2010-08-01  Sam Weinig  <sam (a] webkit.org>
   36193 
   36194         Reviewed by Anders Carlsson.
   36195 
   36196         Don't send user messages to the injected bundle if the process is not active
   36197         https://bugs.webkit.org/show_bug.cgi?id=43317
   36198 
   36199         * UIProcess/WebContext.cpp:
   36200         (WebKit::WebContext::postMessageToInjectedBundle):
   36201 
   36202 2010-08-01  Sam Weinig  <sam (a] webkit.org>
   36203 
   36204         Reviewed by Anders Carlsson.
   36205 
   36206         Add ability to reset frame names for WebKitTestRunner
   36207         https://bugs.webkit.org/show_bug.cgi?id=43316
   36208 
   36209         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   36210         (WKBundlePageClearMainFrameName):
   36211         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
   36212         * WebProcess/WebPage/WebPage.cpp:
   36213         (WebKit::WebPage::clearMainFrameName):
   36214         * WebProcess/WebPage/WebPage.h:
   36215 
   36216 2010-08-01  Anders Carlsson  <andersca (a] apple.com>
   36217 
   36218         Reviewed by Sam Weinig.
   36219 
   36220         Minor NPRuntime fixes
   36221         https://bugs.webkit.org/show_bug.cgi?id=43318
   36222 
   36223         * WebProcess/Plugins/JSNPObject.h:
   36224         (WebKit::JSNPObject::npObject):
   36225         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   36226         (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
   36227         If we see an JSNPObject, extract the NPObject.
   36228 
   36229         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   36230         (WebKit::NPN_GetProperty):
   36231         Don't check for whether the property exists before getting it.
   36232 
   36233 2010-08-01  Anders Carlsson  <andersca (a] apple.com>
   36234 
   36235         Reviewed by Sam Weinig.
   36236 
   36237         Implement NPN_RemoveProperty
   36238         https://bugs.webkit.org/show_bug.cgi?id=43315
   36239 
   36240         * WebProcess/Plugins/NPJSObject.cpp:
   36241         (WebKit::NPJSObject::removeProperty):
   36242         Try to remove the property.
   36243 
   36244         (WebKit::NPJSObject::npClass):
   36245         Add NP_RemoveProperty.
   36246 
   36247         (WebKit::NPJSObject::NP_RemoveProperty):
   36248         Call NPJSObject::removeProperty.
   36249 
   36250         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   36251         (WebKit::NPN_RemoveProperty):
   36252         Call the NPClass::removeProperty function.
   36253 
   36254 2010-07-31  Sam Weinig  <sam (a] webkit.org>
   36255 
   36256         Reviewed by Darin Adler.
   36257 
   36258         Crash due to calling StringImpl::createCFString() from non-main thread in plug-in code
   36259         https://bugs.webkit.org/show_bug.cgi?id=43306
   36260         <rdar://problem/8259687>
   36261 
   36262         * UIProcess/Plugins/PluginInfoStore.cpp:
   36263         (WebKit::PluginInfoStore::getMIMETypeForExtension):
   36264         (WebKit::PluginInfoStore::findPlugin):
   36265         * UIProcess/Plugins/PluginInfoStore.h:
   36266         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
   36267         (WebKit::safeCreateCFString):
   36268         (WebKit::PluginInfoStore::getMIMETypeForExtension):
   36269         Bypass MIMETypeRegistry in the UIProcess until we can safely convert Strings
   36270         to CFStringRefs.
   36271 
   36272 2010-07-31  Sam Weinig  <sam (a] webkit.org>
   36273 
   36274         Reviewed by Dan Bernstein.
   36275 
   36276         Patch for https://bugs.webkit.org/show_bug.cgi?id=43305
   36277         Add back WKBundleFrameCopyInnerText to fix ~50 test failures
   36278         due to SVGElements not having the innerText function.
   36279 
   36280         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   36281         (WKBundleFrameCopyInnerText):
   36282         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
   36283         * WebProcess/WebPage/WebFrame.cpp:
   36284         (WebKit::WebFrame::innerText):
   36285         * WebProcess/WebPage/WebFrame.h:
   36286 
   36287 2010-07-27  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   36288 
   36289         Reviewed by Darin Fisher.
   36290 
   36291         PopupMenu refactoring in preparation to WebKit2
   36292         https://bugs.webkit.org/show_bug.cgi?id=42592
   36293 
   36294         Classes WebPopupMenu and WebSearchPopupMenu inherit from PopupMenu and
   36295         SearchPopupMenu respectively. At this point they are just empty implementations.
   36296 
   36297         * WebProcess/WebCoreSupport/WebPopupMenu.cpp: Added.
   36298         (WebKit::WebPopupMenu::WebPopupMenu):
   36299         (WebKit::WebPopupMenu::~WebPopupMenu):
   36300         (WebKit::WebPopupMenu::disconnectClient):
   36301         (WebKit::WebPopupMenu::show):
   36302         (WebKit::WebPopupMenu::hide):
   36303         (WebKit::WebPopupMenu::updateFromElement):
   36304         * WebProcess/WebCoreSupport/WebPopupMenu.h: Added.
   36305         * WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp: Added.
   36306         (WebKit::WebSearchPopupMenu::WebSearchPopupMenu):
   36307         (WebKit::WebSearchPopupMenu::popupMenu):
   36308         (WebKit::WebSearchPopupMenu::saveRecentSearches):
   36309         (WebKit::WebSearchPopupMenu::loadRecentSearches):
   36310         (WebKit::WebSearchPopupMenu::enabled):
   36311         * WebProcess/WebCoreSupport/WebSearchPopupMenu.h: Added.
   36312 
   36313         As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
   36314         instances, concrete classes that inherit from ChromeClient needed to be changed to
   36315         implement the new methods.
   36316 
   36317         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   36318         (WebKit::WebChromeClient::selectItemWritingDirectionIsNatural):
   36319         (WebKit::WebChromeClient::createPopupMenu):
   36320         (WebKit::WebChromeClient::createSearchPopupMenu):
   36321         * WebProcess/WebCoreSupport/WebChromeClient.h:
   36322 
   36323         build issues:
   36324 
   36325         * WebKit2.xcodeproj/project.pbxproj:
   36326         * win/WebKit2.vcproj:
   36327 
   36328 2010-07-31  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   36329 
   36330         Unreviewed, rolling out r64422.
   36331         http://trac.webkit.org/changeset/64422
   36332         https://bugs.webkit.org/show_bug.cgi?id=43304
   36333 
   36334         Build fixes are needed for Snow Leopard and Windows.
   36335         (Requested by lca on #webkit).
   36336 
   36337         * WebKit2.xcodeproj/project.pbxproj:
   36338         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   36339         * WebProcess/WebCoreSupport/WebChromeClient.h:
   36340         * WebProcess/WebCoreSupport/WebPopupMenu.cpp: Removed.
   36341         * WebProcess/WebCoreSupport/WebPopupMenu.h: Removed.
   36342         * WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp: Removed.
   36343         * WebProcess/WebCoreSupport/WebSearchPopupMenu.h: Removed.
   36344         * win/WebKit2.vcproj:
   36345 
   36346 2010-07-27  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   36347 
   36348         Reviewed by Darin Fisher.
   36349 
   36350         PopupMenu refactoring in preparation to WebKit2
   36351         https://bugs.webkit.org/show_bug.cgi?id=42592
   36352 
   36353         Classes WebPopupMenu and WebSearchPopupMenu inherit from PopupMenu and
   36354         SearchPopupMenu respectively. At this point they are just empty implementations.
   36355 
   36356         * WebProcess/WebCoreSupport/WebPopupMenu.cpp: Added.
   36357         (WebKit::WebPopupMenu::WebPopupMenu):
   36358         (WebKit::WebPopupMenu::~WebPopupMenu):
   36359         (WebKit::WebPopupMenu::disconnectClient):
   36360         (WebKit::WebPopupMenu::show):
   36361         (WebKit::WebPopupMenu::hide):
   36362         (WebKit::WebPopupMenu::updateFromElement):
   36363         * WebProcess/WebCoreSupport/WebPopupMenu.h: Added.
   36364         * WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp: Added.
   36365         (WebKit::WebSearchPopupMenu::WebSearchPopupMenu):
   36366         (WebKit::WebSearchPopupMenu::popupMenu):
   36367         (WebKit::WebSearchPopupMenu::saveRecentSearches):
   36368         (WebKit::WebSearchPopupMenu::loadRecentSearches):
   36369         (WebKit::WebSearchPopupMenu::enabled):
   36370         * WebProcess/WebCoreSupport/WebSearchPopupMenu.h: Added.
   36371 
   36372         As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
   36373         instances, concrete classes that inherit from ChromeClient needed to be changed to
   36374         implement the new methods.
   36375 
   36376         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   36377         (WebKit::WebChromeClient::selectItemWritingDirectionIsNatural):
   36378         (WebKit::WebChromeClient::createPopupMenu):
   36379         (WebKit::WebChromeClient::createSearchPopupMenu):
   36380         * WebProcess/WebCoreSupport/WebChromeClient.h:
   36381 
   36382         build issues:
   36383 
   36384         * WebKit2.xcodeproj/project.pbxproj:
   36385         * win/WebKit2.vcproj:
   36386 
   36387 2010-07-30  Darin Fisher  <darin (a] chromium.org>
   36388 
   36389         Reviewed by Darin Adler.
   36390 
   36391         Eliminate BackForwardList::pushStateItem
   36392         https://bugs.webkit.org/show_bug.cgi?id=43282
   36393 
   36394         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   36395         * WebProcess/WebPage/WebBackForwardListProxy.h:
   36396 
   36397 2010-07-30  Joseph Pecoraro  <joepeck (a] webkit.org>
   36398 
   36399         Reviewed by David Kilzer.
   36400 
   36401         Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
   36402         https://bugs.webkit.org/show_bug.cgi?id=40627
   36403 
   36404         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   36405         (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
   36406         * WebProcess/WebCoreSupport/WebChromeClient.h:
   36407 
   36408 2010-07-30  Sam Weinig  <sam (a] webkit.org>
   36409 
   36410         Reviewed by Maciej Stachowiak.
   36411 
   36412         Patch for https://bugs.webkit.org/show_bug.cgi?id=43290
   36413         Add structured message passing from the injected bundle to UIProcess
   36414 
   36415         * Platform/CoreIPC/MessageID.h:
   36416         * Shared/CoreIPCSupport/WebContextMessageKinds.h: Added.
   36417         * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:
   36418         (WebProcessProxyMessage::):
   36419         * UIProcess/API/C/WKContext.h:
   36420         * UIProcess/WebContext.cpp:
   36421         (WebKit::):
   36422         (WebKit::PostMessageEncoder::PostMessageDecoder::PostMessageDecoder):
   36423         (WebKit::PostMessageEncoder::PostMessageDecoder::decode):
   36424         (WebKit::WebContext::didReceiveMessageFromInjectedBundle):
   36425         (WebKit::WebContext::didReceiveMessage):
   36426         * UIProcess/WebContext.h:
   36427         * UIProcess/WebContextInjectedBundleClient.cpp:
   36428         (WebKit::WebContextInjectedBundleClient::didReceiveMessageFromInjectedBundle):
   36429         * UIProcess/WebContextInjectedBundleClient.h:
   36430         * UIProcess/WebProcessProxy.cpp:
   36431         (WebKit::WebProcessProxy::didReceiveMessage):
   36432         (WebKit::WebProcessProxy::didReceiveSyncMessage):
   36433         * UIProcess/WebProcessProxy.h:
   36434         * WebKit2.xcodeproj/project.pbxproj:
   36435         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   36436         (WKBundlePostMessage):
   36437         * WebProcess/InjectedBundle/API/c/WKBundle.h:
   36438         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   36439         (WebKit::):
   36440         (WebKit::InjectedBundle::InjectedBundle):
   36441         (WebKit::InjectedBundle::~InjectedBundle):
   36442         (WebKit::InjectedBundle::initializeClient):
   36443         (WebKit::InjectedBundle::postMessage):
   36444         (WebKit::InjectedBundle::setShouldTrackVisitedLinks):
   36445         (WebKit::InjectedBundle::removeAllVisitedLinks):
   36446         (WebKit::InjectedBundle::didCreatePage):
   36447         (WebKit::InjectedBundle::willDestroyPage):
   36448         (WebKit::InjectedBundle::didReceiveMessage):
   36449         * WebProcess/InjectedBundle/InjectedBundle.h:
   36450 
   36451 2010-07-30  Andy Estes  <aestes (a] apple.com>
   36452 
   36453         Reviewed by David Kilzer.
   36454 
   36455         Add support to Xcode for compiling WebKit against iOS SDKs.
   36456         https://bugs.webkit.org/show_bug.cgi?id=42796
   36457 
   36458         * Configurations/FeatureDefines.xcconfig:
   36459 
   36460 2010-07-30  Brady Eidson  <beidson (a] apple.com>
   36461 
   36462         Reviewed by Sam Weinig.
   36463 
   36464         Cast the return value for the templated ImmutableArray::at().
   36465 
   36466         * Shared/ImmutableArray.h:
   36467         (WebKit::ImmutableArray::at):
   36468 
   36469 2010-07-30  Sam Weinig  <sam (a] webkit.org>
   36470 
   36471         Reviewed by Anders Carlsson.
   36472 
   36473         Patch for https://bugs.webkit.org/show_bug.cgi?id=43283
   36474         Add APIObject template introspection support.
   36475 
   36476         Add a way to get the type the APIObject::Type from the APIObject subclass typenames
   36477         for template fun. Use this to make a type checking version of ImmutableArray::at.
   36478 
   36479         * Shared/ImmutableArray.h:
   36480         (WebKit::ImmutableArray::at):
   36481         (WebKit::ImmutableArray::type):
   36482         * Shared/WebString.h:
   36483         (WebKit::WebString::type):
   36484         * Shared/WebURL.h:
   36485         (WebKit::WebURL::type):
   36486         * UIProcess/API/C/WKArray.cpp:
   36487         (WKArrayGetTypeID):
   36488         * UIProcess/API/C/WKBackForwardList.cpp:
   36489         (WKBackForwardListGetTypeID):
   36490         * UIProcess/API/C/WKBackForwardListItem.cpp:
   36491         (WKBackForwardListItemGetTypeID):
   36492         * UIProcess/API/C/WKContext.cpp:
   36493         (WKContextGetTypeID):
   36494         * UIProcess/API/C/WKFrame.cpp:
   36495         (WKFrameGetTypeID):
   36496         * UIProcess/API/C/WKFramePolicyListener.cpp:
   36497         (WKFramePolicyListenerGetTypeID):
   36498         * UIProcess/API/C/WKNavigationData.cpp:
   36499         (WKNavigationDataGetTypeID):
   36500         * UIProcess/API/C/WKPage.cpp:
   36501         (WKPageGetTypeID):
   36502         * UIProcess/API/C/WKPageNamespace.cpp:
   36503         (WKPageNamespaceGetTypeID):
   36504         * UIProcess/API/C/WKPreferences.cpp:
   36505         (WKPreferencesGetTypeID):
   36506         * UIProcess/API/C/WKString.cpp:
   36507         (WKStringGetTypeID):
   36508         * UIProcess/API/C/WKURL.cpp:
   36509         (WKURLGetTypeID):
   36510         * UIProcess/WebBackForwardList.h:
   36511         (WebKit::WebBackForwardList::type):
   36512         * UIProcess/WebBackForwardListItem.h:
   36513         (WebKit::WebBackForwardListItem::type):
   36514         * UIProcess/WebContext.h:
   36515         (WebKit::WebContext::type):
   36516         * UIProcess/WebFramePolicyListenerProxy.h:
   36517         (WebKit::WebFramePolicyListenerProxy::type):
   36518         * UIProcess/WebFrameProxy.h:
   36519         (WebKit::WebFrameProxy::type):
   36520         * UIProcess/WebNavigationData.h:
   36521         (WebKit::WebNavigationData::type):
   36522         * UIProcess/WebPageNamespace.h:
   36523         (WebKit::WebPageNamespace::type):
   36524         * UIProcess/WebPageProxy.h:
   36525         (WebKit::WebPageProxy::type):
   36526         * UIProcess/WebPreferences.h:
   36527         (WebKit::WebPreferences::type):
   36528         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   36529         (WKBundleGetTypeID):
   36530         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   36531         (WKBundleFrameGetTypeID):
   36532         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   36533         (WKBundlePageGetTypeID):
   36534         * WebProcess/InjectedBundle/InjectedBundle.h:
   36535         (WebKit::InjectedBundle::type):
   36536         * WebProcess/WebPage/WebFrame.h:
   36537         (WebKit::WebFrame::type):
   36538         * WebProcess/WebPage/WebPage.h:
   36539         (WebKit::WebPage::type):
   36540 
   36541 2010-07-30  Sam Weinig  <sam (a] webkit.org>
   36542 
   36543         Reviewed by Anders Carlsson.
   36544 
   36545         Patch for https://bugs.webkit.org/show_bug.cgi?id=43275
   36546         Make WKArrayRef more usable.
   36547 
   36548         - Add Create functions.
   36549         - Make WKArrayGetItemAtIndex return a WKTypeRef.
   36550 
   36551         * UIProcess/API/C/WKArray.cpp:
   36552         (WKArrayCreate):
   36553         (WKArrayCreateAdoptingValues):
   36554         (WKArrayGetItemAtIndex):
   36555         * UIProcess/API/C/WKArray.h:
   36556 
   36557 2010-07-30  Ada Chan  <adachan (a] apple.com>
   36558 
   36559         Reviewed by John Sullivan.
   36560 
   36561         Fix issue with populating the back list when limit is a huge number.
   36562         https://bugs.webkit.org/show_bug.cgi?id=43270
   36563 
   36564         * UIProcess/WebBackForwardList.cpp:
   36565         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
   36566 
   36567 2010-07-29  Sam Weinig  <sam (a] webkit.org>
   36568 
   36569         Reviewed by Anders Carlsson.
   36570 
   36571         Patch for https://bugs.webkit.org/show_bug.cgi?id=43274
   36572         Add first pass of structured message passing.
   36573 
   36574         - Only supports passing messages from the UIProcess -> InjectedBundle
   36575         - Only supports passing Strings, Arrays, and WebPage references (NOTE: There
   36576           currently isn't a way to make an array).
   36577         - Changed ImmutableArray to operate on APIObjects instead of void*'s and 
   36578           removed the retain/release abstraction.
   36579 
   36580         * Platform/CoreIPC/MessageID.h:
   36581         (CoreIPC::):
   36582         * Shared/CoreIPCSupport/InjectedBundleMessageKinds.h: Added.
   36583         (InjectedBundleMessage::):
   36584         (CoreIPC::):
   36585         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
   36586         (WebProcessMessage::):
   36587         * Shared/ImmutableArray.cpp:
   36588         (WebKit::ImmutableArray::ImmutableArray):
   36589         (WebKit::ImmutableArray::~ImmutableArray):
   36590         * Shared/ImmutableArray.h:
   36591         (WebKit::ImmutableArray::create):
   36592         (WebKit::ImmutableArray::adopt):
   36593         (WebKit::ImmutableArray::at):
   36594         * UIProcess/API/C/WKBase.h:
   36595         * UIProcess/API/C/WKContext.cpp:
   36596         (WKContextPostMessageToInjectedBundle):
   36597         * UIProcess/API/C/WKContext.h:
   36598         * UIProcess/API/C/WKType.cpp:
   36599         (WKGetTypeID):
   36600         * UIProcess/API/C/WebKit2.h:
   36601         * UIProcess/WebBackForwardList.cpp:
   36602         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
   36603         (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
   36604         * UIProcess/WebContext.cpp:
   36605         (WebKit::WebContext::postMessageToInjectedBundle):
   36606         (WebKit::WebContext::didReceiveMessageFromInjectedBundle):
   36607         * UIProcess/WebContext.h:
   36608         * WebKit2.xcodeproj/project.pbxproj:
   36609         * WebProcess/InjectedBundle/API/c/WKBundle.h:
   36610         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   36611         (WebKit::InjectedBundle::didReceiveMessage):
   36612         * WebProcess/InjectedBundle/InjectedBundle.h:
   36613         * WebProcess/WebPage/WebFrame.cpp:
   36614         (WebKit::WebFrame::childFrames):
   36615         * WebProcess/WebProcess.cpp:
   36616         (WebKit::WebProcess::didReceiveMessage):
   36617         * WebProcess/WebProcess.h:
   36618         * win/WebKit2.vcproj:
   36619 
   36620 2010-07-30  Anders Carlsson  <andersca (a] apple.com>
   36621 
   36622         Reviewed by Sam Weinig.
   36623 
   36624         Implement NPN_Evaluate
   36625         https://bugs.webkit.org/show_bug.cgi?id=43268
   36626 
   36627         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   36628         (WebKit::NPRuntimeObjectMap::evaluate):
   36629         Evaluate the passed in string.
   36630 
   36631         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   36632         (WebKit::NPN_Evaluate):
   36633         Call NetscapePlugin::evaluate.
   36634 
   36635         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   36636         (WebKit::NetscapePlugin::evaluate):
   36637         Call PluginController::evaluate.
   36638 
   36639         * WebProcess/Plugins/PluginController.h:
   36640         Add evaluate pure virtual member function.
   36641 
   36642         * WebProcess/Plugins/PluginView.cpp:
   36643         (WebKit::PluginView::evaluate):
   36644         Update the popup window state and call NPRuntimeObjectMap::evaluate.
   36645 
   36646 2010-07-30  Anders Carlsson  <andersca (a] apple.com>
   36647 
   36648         Reviewed by Sam Weinig.
   36649 
   36650         Implement NPN_InvokeDefault
   36651         https://bugs.webkit.org/show_bug.cgi?id=43266
   36652 
   36653         * WebProcess/Plugins/JSNPObject.cpp:
   36654         (WebKit::JSNPObject::JSNPObject):
   36655         Remove ExecState parameter.
   36656 
   36657         (WebKit::JSNPObject::callObject):
   36658         Call the NPClass::invokeDefault function.
   36659 
   36660         (WebKit::callNPJSObject):
   36661         Call JSNPObject::callObject.
   36662 
   36663         (WebKit::JSNPObject::getCallData):
   36664         Check if the NPClass has an invokeDefault function.
   36665 
   36666         * WebProcess/Plugins/JSNPObject.h:
   36667         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   36668         (WebKit::NPRuntimeObjectMap::getOrCreateJSObject):
   36669         Remove ExecState parameter.
   36670 
   36671         (WebKit::NPRuntimeObjectMap::convertNPVariantToJSValue):
   36672         Remove ExecState parameter.
   36673 
   36674         * WebProcess/Plugins/PluginView.cpp:
   36675         (WebKit::PluginView::scriptObject):
   36676         Remove ExecState parameter.
   36677 
   36678 2010-07-30  Adam Roben  <aroben (a] apple.com>
   36679 
   36680         Roll our r64361 and r64363
   36681 
   36682         We can't make these changes until QuartzCore.lib is included in
   36683         WebKitSupportLibrary.
   36684 
   36685 2010-07-30  Adam Roben  <aroben (a] apple.com>
   36686 
   36687         Windows build fix
   36688 
   36689         * win/WebKit2Apple.vsprops: Always link against QuartzCore, since
   36690         WebKitSystemInterface requires it.
   36691 
   36692 2010-07-30  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   36693 
   36694         Unreviewed build fix.
   36695 
   36696         [Qt] Build fix for recent API changes in WebKit2.
   36697 
   36698         * UIProcess/API/cpp/qt/WKStringQt.cpp:
   36699         (WKStringCopyQString):
   36700         * UIProcess/API/cpp/qt/WKURLQt.cpp:
   36701         (WKURLCopyQUrl):
   36702         * UIProcess/API/qt/qwkpage.cpp:
   36703         (QWKPage::QWKPage):
   36704 
   36705 2010-07-29  Brady Eidson  <beidson (a] apple.com>
   36706 
   36707         Reviewed by Sam Weinig.
   36708 
   36709         Setting empty document schemes on the WKContext shouldn't start the WebProcess
   36710         <rdar://problem/8253734> and https://bugs.webkit.org/show_bug.cgi?id=43222
   36711         
   36712         * UIProcess/WebContext.cpp:
   36713         (WebKit::WebContext::ensureWebProcess):
   36714         (WebKit::WebContext::registerURLSchemeAsEmptyDocument):
   36715         * UIProcess/WebContext.h:
   36716 
   36717 2010-07-29  Brady Eidson  <beidson (a] apple.com>
   36718 
   36719         Reviewed by Sam Weinig.
   36720 
   36721         Make all public facing client setters take const pointers
   36722         https://bugs.webkit.org/show_bug.cgi?id=43219
   36723 
   36724         * UIProcess/API/C/WKContext.cpp:
   36725         (WKContextSetInjectedBundleClient):
   36726         (WKContextSetHistoryClient):
   36727         * UIProcess/API/C/WKContext.h:
   36728 
   36729         * UIProcess/API/C/WKPage.cpp:
   36730         (WKPageSetPageLoaderClient):
   36731         (WKPageSetPagePolicyClient):
   36732         (WKPageSetPageUIClient):
   36733         * UIProcess/API/C/WKPage.h:
   36734 
   36735         * UIProcess/WebContext.cpp:
   36736         (WebKit::WebContext::initializeInjectedBundleClient):
   36737         (WebKit::WebContext::initializeHistoryClient):
   36738         * UIProcess/WebContext.h:
   36739 
   36740         * UIProcess/WebContextInjectedBundleClient.cpp:
   36741         (WebKit::WebContextInjectedBundleClient::initialize):
   36742         * UIProcess/WebContextInjectedBundleClient.h:
   36743 
   36744         * UIProcess/WebHistoryClient.cpp:
   36745         (WebKit::WebHistoryClient::initialize):
   36746         * UIProcess/WebHistoryClient.h:
   36747 
   36748         * UIProcess/WebLoaderClient.cpp:
   36749         (WebKit::WebLoaderClient::initialize):
   36750         * UIProcess/WebLoaderClient.h:
   36751 
   36752         * UIProcess/WebPageProxy.cpp:
   36753         (WebKit::WebPageProxy::initializeLoaderClient):
   36754         (WebKit::WebPageProxy::initializePolicyClient):
   36755         (WebKit::WebPageProxy::initializeUIClient):
   36756         * UIProcess/WebPageProxy.h:
   36757 
   36758         * UIProcess/WebPolicyClient.cpp:
   36759         (WebKit::WebPolicyClient::initialize):
   36760         * UIProcess/WebPolicyClient.h:
   36761 
   36762         * UIProcess/WebUIClient.cpp:
   36763         (WebKit::WebUIClient::initialize):
   36764         * UIProcess/WebUIClient.h:
   36765 
   36766 2010-07-29  Anders Carlsson  <andersca (a] apple.com>
   36767 
   36768         Reviewed by Sam Weinig.
   36769 
   36770         Implement NPN_SetProperty
   36771         https://bugs.webkit.org/show_bug.cgi?id=43217
   36772 
   36773         * WebProcess/Plugins/NPJSObject.cpp:
   36774         (WebKit::NPJSObject::setProperty):
   36775         Convert the NPVariant to a JSValue and set it on the underlying JSObject.
   36776 
   36777         (WebKit::NPJSObject::NP_SetProperty):
   36778         Call NPJSObject::setProperty.
   36779 
   36780         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   36781         (WebKit::NPN_GetProperty):
   36782         Remove unused parameter name.
   36783 
   36784         (WebKit::NPN_SetProperty):
   36785         Call the NPClass::setProperty function.
   36786 
   36787 2010-07-29  Anders Carlsson  <andersca (a] apple.com>
   36788 
   36789         Reviewed by Sam Weinig.
   36790 
   36791         Implement NPN_Enumerate
   36792         https://bugs.webkit.org/show_bug.cgi?id=43215
   36793 
   36794         * WebProcess/Plugins/JSNPObject.cpp:
   36795         (WebKit::npIdentifierFromIdentifier):
   36796         Get the UTF-8 string representation instead of the lossy ASCII representation.
   36797         
   36798         (WebKit::JSNPObject::getOwnPropertyNames):
   36799         Implement by calling the NPClass::enumerate function.
   36800 
   36801         * WebProcess/Plugins/JSNPObject.h:
   36802         * WebProcess/Plugins/NPJSObject.cpp:
   36803         (WebKit::NPJSObject::enumerate):
   36804         Implement by calling JSObject::getPropertyNames.
   36805 
   36806         (WebKit::NPJSObject::npClass):
   36807         (WebKit::NPJSObject::NP_Enumerate):
   36808         Call NPJSObject::enumerate.
   36809 
   36810         * WebProcess/Plugins/NPJSObject.h:
   36811         * WebProcess/Plugins/NPRuntimeUtilities.cpp:
   36812         (WebKit::createNPObject):
   36813         Fix a comment.
   36814 
   36815         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   36816         (WebKit::NPN_Enumerate):
   36817         Call the NPClass::enumerate function.
   36818 
   36819 2010-07-29  John Sullivan  <sullivan (a] apple.com>
   36820 
   36821         <https://bugs.webkit.org/show_bug.cgi?id=43203>
   36822         WebBackForwardList::back/ForwardListWithLimit() crashes if passed a limit larger than max int
   36823 
   36824         Reviewed by Sam Weinig.
   36825 
   36826         * UIProcess/WebBackForwardList.cpp:
   36827         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
   36828         Fixed casting so that a large unsigned won't become a negative int.
   36829         (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
   36830         Ditto.
   36831 
   36832 2010-07-29  Anders Carlsson  <andersca (a] apple.com>
   36833 
   36834         Reviewed by Sam Weinig.
   36835 
   36836         Implement NPN_Status
   36837         https://bugs.webkit.org/show_bug.cgi?id=43205
   36838 
   36839         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   36840         (WebKit::NPN_Status):
   36841         Convert the message char* to a String and call NetscapePlugin::setStatusbarText.
   36842 
   36843         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   36844         (WebKit::NetscapePlugin::setStatusbarText):
   36845         Call PluginController::setStatusbarText.
   36846     
   36847         * WebProcess/Plugins/PluginController.h:
   36848         Add setStatusbarText.
   36849 
   36850         * WebProcess/Plugins/PluginView.cpp:
   36851         (WebKit::PluginView::setStatusbarText):
   36852         Call the Chrome member function.
   36853 
   36854 2010-07-29  Adam Roben  <aroben (a] apple.com>
   36855 
   36856         Always say "plugins directory" when referring to a directory
   36857         containing one or more plugins
   36858 
   36859         Fixes <http://webkit.org/b/43197> WebKit2 often says "plugin
   36860         directory" when it means "plugins directory"
   36861 
   36862         Reviewed by John Sullivan.
   36863 
   36864         * UIProcess/API/C/WKContext.cpp:
   36865         (_WKContextSetAdditionalPluginsDirectory):
   36866         * UIProcess/API/C/WKContextPrivate.h:
   36867         Renamed from _WKContextSetAdditionalPluginDirectory.
   36868 
   36869         * UIProcess/Plugins/PluginInfoStore.cpp:
   36870         (WebKit::PluginInfoStore::setAdditionalPluginsDirectories): Renamed
   36871         from setAdditionalPluginDirectories.
   36872         (WebKit::PluginInfoStore::loadPluginsIfNecessary): Updated for rename.
   36873 
   36874         * UIProcess/Plugins/PluginInfoStore.h: Renamed
   36875         m_additionalPluginDirectories to m_additionalPluginsDirectories.
   36876 
   36877         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
   36878         (WebKit::PluginInfoStore::pluginsDirectories):
   36879         * UIProcess/Plugins/qt/PluginInfoStoreQt.cpp:
   36880         (WebKit::PluginInfoStore::pluginsDirectories):
   36881         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
   36882         (WebKit::PluginInfoStore::pluginsDirectories):
   36883         Renamed from pluginDirectories.
   36884 
   36885         * UIProcess/WebContext.cpp:
   36886         (WebKit::WebContext::setAdditionalPluginsDirectory):
   36887         * UIProcess/WebContext.h:
   36888         Renamed from setAdditionalPluginDirectory.
   36889 
   36890 2010-07-29  Adam Roben  <aroben (a] apple.com>
   36891 
   36892         Always say "directory" when referring to a plugin directory
   36893 
   36894         Fixes <http://webkit.org/b/43195> WebKit2 often says "plugin path"
   36895         when it means "plugin directory"
   36896 
   36897         Reviewed by John Sullivan.
   36898 
   36899         * UIProcess/API/C/WKContext.cpp:
   36900         (_WKContextSetAdditionalPluginDirectory):
   36901         * UIProcess/API/C/WKContextPrivate.h:
   36902         Renamed from _WKContextSetAdditionalPluginPath.
   36903 
   36904         * UIProcess/Plugins/PluginInfoStore.cpp:
   36905         (WebKit::PluginInfoStore::setAdditionalPluginDirectories): Renamed
   36906         from setAdditionalPluginPaths.
   36907         (WebKit::PluginInfoStore::loadPluginsIfNecessary): Updated for rename.
   36908 
   36909         * UIProcess/Plugins/PluginInfoStore.h: Renamed m_additionalPluginPaths
   36910         to m_additionalPluginDirectories.
   36911 
   36912         * UIProcess/WebContext.cpp:
   36913         (WebKit::WebContext::setAdditionalPluginDirectory):
   36914         * UIProcess/WebContext.h:
   36915         Renamed from setAdditionalPluginPath, and updated for PluginInfoStore
   36916         rename.
   36917 
   36918 2010-07-29  Adam Roben  <aroben (a] apple.com>
   36919 
   36920         Remove PluginInfoStore::mimeTypeFromExtension
   36921 
   36922         WebCore::MIMETypeRegistry already provides a cross-platform interface
   36923         for this.
   36924 
   36925         Fixes <http://webkit.org/b/43188>
   36926         PluginInfoStore::mimeTypeFromExtension is unnecessary
   36927 
   36928         Reviewed by Nikolas Zimmermann.
   36929 
   36930         * UIProcess/Plugins/PluginInfoStore.cpp:
   36931         (WebKit::PluginInfoStore::findPlugin): Changed to use
   36932         MIMETypeRegistry.
   36933 
   36934         * UIProcess/Plugins/PluginInfoStore.h:
   36935         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
   36936         * UIProcess/Plugins/qt/PluginInfoStoreQt.cpp:
   36937         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
   36938         Removed mimeTypeFromExtension.
   36939 
   36940 2010-07-28  Sam Weinig  <sam (a] webkit.org>
   36941 
   36942         Another Windows build fix.
   36943 
   36944         * UIProcess/API/C/WKBase.h:
   36945         * win/WebKit2Generated.make:
   36946 
   36947 2010-07-28  Sam Weinig  <sam (a] webkit.org>
   36948 
   36949         Fix builds.
   36950 
   36951         * UIProcess/API/C/WKAPICast.h:
   36952         (WebKit::ProxyingRefPtr::operator APIType):
   36953         (toURLRef):
   36954         (toCopiedRef):
   36955         (toCopiedURLRef):
   36956         * UIProcess/win/WebView.h:
   36957         (WebKit::WebView::type):
   36958 
   36959 2010-07-28  Sam Weinig  <sam (a] webkit.org>
   36960 
   36961         Reviewed by Darin Adler.
   36962 
   36963         Patch for https://bugs.webkit.org/show_bug.cgi?id=43163
   36964         Add a CF-style base type (WKTypeRef) as a base for polymorphic functions.
   36965 
   36966         - Add first polymorphic function, WKGetTypeID.
   36967         - Add functions to each WK type to get their respective TypeIDs.
   36968         - Adds WebURL to complement WebString.
   36969 
   36970         * Shared/APIObject.h:
   36971         (WebKit::APIObject::):
   36972         (WebKit::APIObject::~APIObject):
   36973         * Shared/ImmutableArray.h:
   36974         (WebKit::ImmutableArray::type):
   36975         * Shared/WebString.h:
   36976         (WebKit::WebString::type):
   36977         * Shared/WebURL.h: Added.
   36978         (WebKit::WebURL::create):
   36979         (WebKit::WebURL::type):
   36980         (WebKit::WebURL::isNull):
   36981         (WebKit::WebURL::isEmpty):
   36982         (WebKit::WebURL::string):
   36983         (WebKit::WebURL::WebURL):
   36984         * UIProcess/API/C/WKAPICast.h:
   36985         (WebKit::ProxyingRefPtr::ProxyingRefPtr):
   36986         (WebKit::ProxyingRefPtr::operator APIType):
   36987         (toRef):
   36988         (toURLRef):
   36989         (toCopiedURLRef):
   36990         * UIProcess/API/C/WKArray.cpp:
   36991         (WKArrayGetTypeID):
   36992         * UIProcess/API/C/WKArray.h:
   36993         * UIProcess/API/C/WKBackForwardList.cpp:
   36994         (WKBackForwardListGetTypeID):
   36995         * UIProcess/API/C/WKBackForwardList.h:
   36996         * UIProcess/API/C/WKBackForwardListItem.cpp:
   36997         (WKBackForwardListItemGetTypeID):
   36998         * UIProcess/API/C/WKBackForwardListItem.h:
   36999         * UIProcess/API/C/WKBase.h:
   37000         * UIProcess/API/C/WKContext.cpp:
   37001         (WKContextGetTypeID):
   37002         * UIProcess/API/C/WKContext.h:
   37003         * UIProcess/API/C/WKFrame.cpp:
   37004         (WKFrameGetTypeID):
   37005         * UIProcess/API/C/WKFrame.h:
   37006         * UIProcess/API/C/WKFramePolicyListener.cpp:
   37007         (WKFramePolicyListenerGetTypeID):
   37008         * UIProcess/API/C/WKFramePolicyListener.h:
   37009         * UIProcess/API/C/WKNavigationData.cpp:
   37010         (WKNavigationDataGetTypeID):
   37011         * UIProcess/API/C/WKNavigationData.h:
   37012         * UIProcess/API/C/WKPage.cpp:
   37013         (WKPageGetTypeID):
   37014         * UIProcess/API/C/WKPage.h:
   37015         * UIProcess/API/C/WKPageNamespace.cpp:
   37016         (WKPageNamespaceGetTypeID):
   37017         * UIProcess/API/C/WKPageNamespace.h:
   37018         * UIProcess/API/C/WKPreferences.cpp:
   37019         (WKPreferencesGetTypeID):
   37020         * UIProcess/API/C/WKPreferences.h:
   37021         * UIProcess/API/C/WKString.cpp:
   37022         (WKStringGetTypeID):
   37023         * UIProcess/API/C/WKString.h:
   37024         * UIProcess/API/C/WKType.cpp: Added.
   37025         (WKGetTypeID):
   37026         * UIProcess/API/C/WKType.h: Added.
   37027         * UIProcess/API/C/WKURL.cpp:
   37028         (WKURLGetTypeID):
   37029         * UIProcess/API/C/WKURL.h:
   37030         * UIProcess/API/win/WKView.cpp:
   37031         (WKViewGetTypeID):
   37032         * UIProcess/API/win/WKView.h:
   37033         * UIProcess/WebBackForwardList.h:
   37034         (WebKit::WebBackForwardList::type):
   37035         * UIProcess/WebBackForwardListItem.h:
   37036         (WebKit::WebBackForwardListItem::type):
   37037         * UIProcess/WebContext.h:
   37038         (WebKit::WebContext::type):
   37039         * UIProcess/WebFramePolicyListenerProxy.h:
   37040         (WebKit::WebFramePolicyListenerProxy::type):
   37041         * UIProcess/WebFrameProxy.h:
   37042         (WebKit::WebFrameProxy::type):
   37043         * UIProcess/WebNavigationData.h:
   37044         (WebKit::WebNavigationData::type):
   37045         * UIProcess/WebPageNamespace.h:
   37046         (WebKit::WebPageNamespace::type):
   37047         * UIProcess/WebPageProxy.h:
   37048         (WebKit::WebPageProxy::type):
   37049         * UIProcess/WebPreferences.h:
   37050         (WebKit::WebPreferences::type):
   37051         * WebKit2.xcodeproj/project.pbxproj:
   37052         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   37053         (WKBundleGetTypeID):
   37054         * WebProcess/InjectedBundle/API/c/WKBundle.h:
   37055         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   37056         (WKBundleFrameGetTypeID):
   37057         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   37058         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   37059         (WKBundlePageGetTypeID):
   37060         (WKBundlePageSetEditorClient):
   37061         (WKBundlePageSetLoaderClient):
   37062         (WKBundlePageSetUIClient):
   37063         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   37064         * WebProcess/WebPage/WebFrame.h:
   37065         (WebKit::WebFrame::type):
   37066         * WebProcess/WebPage/WebPage.h:
   37067         (WebKit::WebPage::type):
   37068         * win/WebKit2.vcproj:
   37069 
   37070 2010-07-28  Darin Adler  <darin (a] apple.com>
   37071 
   37072         Reviewed by Sam Weinig.
   37073 
   37074         WebKitTestRunner needs to support layoutTestController.execCommand
   37075         <https://bugs.webkit.org/show_bug.cgi?id=42538>
   37076 
   37077         WebKitTestRunner needs layoutTestController.isCommandEnabled
   37078         <https://bugs.webkit.org/show_bug.cgi?id=42671>
   37079 
   37080         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   37081         (WKBundlePageExecuteEditingCommand): Added.
   37082         (WKBundlePageIsEditingCommandEnabled): Added.
   37083         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h: Ditto.
   37084 
   37085         * WebProcess/WebPage/WebPage.cpp:
   37086         (WebKit::WebPage::executeEditingCommand): Added.
   37087         (WebKit::WebPage::isEditingCommandEnabled): Added.
   37088         * WebProcess/WebPage/WebPage.h: Ditto.
   37089 
   37090 2010-07-28  Anders Carlsson  <andersca (a] apple.com>
   37091 
   37092         Fix 64-bit build.
   37093 
   37094         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   37095         (WebKit::NPN_GetValue):
   37096 
   37097 2010-07-28  Brady Eidson  <beidson (a] apple.com>
   37098 
   37099         Reviewed by Darin Adler.
   37100 
   37101         First pass at visited link support for WK2
   37102         https://bugs.webkit.org/show_bug.cgi?id=43157
   37103 
   37104         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   37105         (WebPageProxyMessage::):
   37106         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
   37107         (WebProcessMessage::):
   37108         * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:
   37109         (WebProcessProxyMessage::):
   37110 
   37111         Move HistoryClient support from the page...:
   37112         * UIProcess/API/C/WKPage.cpp:
   37113         * UIProcess/API/C/WKPage.h:
   37114         
   37115         ...to the Context
   37116         * UIProcess/API/C/WKContext.cpp:
   37117         (WKContextSetHistoryClient):
   37118         * UIProcess/API/C/WKContext.h:
   37119 
   37120         * UIProcess/WebContext.cpp:
   37121         (WebKit::WebContext::initializeHistoryClient):
   37122         (WebKit::WebContext::ensureWebProcess): When a new WebProcess is created, set its "should track visited links" mode.
   37123         (WebKit::WebContext::didNavigateWithNavigationData):
   37124         (WebKit::WebContext::didPerformClientRedirect):
   37125         (WebKit::WebContext::didPerformServerRedirect):
   37126         (WebKit::WebContext::didUpdateHistoryTitle):
   37127         (WebKit::WebContext::populateVisitedLinks):
   37128         * UIProcess/WebContext.h:
   37129         (WebKit::WebContext::hasValidProcess):
   37130 
   37131         * UIProcess/WebHistoryClient.cpp:
   37132         (WebKit::WebHistoryClient::initialize):
   37133         (WebKit::WebHistoryClient::didNavigateWithNavigationData):
   37134         (WebKit::WebHistoryClient::didPerformClientRedirect):
   37135         (WebKit::WebHistoryClient::didPerformServerRedirect):
   37136         (WebKit::WebHistoryClient::didUpdateHistoryTitle):
   37137         (WebKit::WebHistoryClient::populateVisitedLinks):
   37138         * UIProcess/WebHistoryClient.h:
   37139         (WebKit::WebHistoryClient::shouldTrackVisitedLinks):
   37140 
   37141         * UIProcess/WebPageProxy.cpp:
   37142         (WebKit::WebPageProxy::didReceiveMessage):
   37143         * UIProcess/WebPageProxy.h:
   37144 
   37145         * UIProcess/WebProcessProxy.cpp:
   37146         (WebKit::WebProcessProxy::didReceiveMessage):
   37147         (WebKit::WebProcessProxy::didReceiveSyncMessage):
   37148 
   37149         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   37150         (WebKit::WebChromeClient::populateVisitedLinks):
   37151 
   37152         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   37153         (WebKit::WebFrameLoaderClient::updateGlobalHistory):
   37154         (WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
   37155         (WebKit::WebFrameLoaderClient::setTitle):
   37156 
   37157         * WebProcess/WebProcess.cpp:
   37158         (WebKit::WebProcess::didReceiveMessage):
   37159 
   37160 2010-07-28  Anders Carlsson  <andersca (a] apple.com>
   37161 
   37162         Reviewed by Sam Weinig.
   37163 
   37164         Add JSNPObject::getConstructData
   37165         https://bugs.webkit.org/show_bug.cgi?id=43165
   37166 
   37167         * WebProcess/Plugins/JSNPObject.cpp:
   37168         (WebKit::JSNPObject::callMethod):
   37169         Add a null check for m_npObject.
   37170         
   37171         (WebKit::JSNPObject::callConstructor):
   37172         Call NPClass::construct.
   37173 
   37174         (WebKit::JSNPObject::getConstructData):
   37175         Set up the construct data.
   37176 
   37177         (WebKit::JSNPObject::propertyGetter):
   37178         convertNPVariantToJSValue now takes a JSGlobalObject as well.
   37179         
   37180         * WebProcess/Plugins/NPJSObject.cpp:
   37181         (WebKit::NPJSObject::invoke):
   37182         (WebKit::NPJSObject::invokeDefault):
   37183         (WebKit::NPJSObject::construct):
   37184         convertNPVariantToJSValue now takes a JSGlobalObject as well.
   37185         
   37186         * WebProcess/Plugins/NPJSObject.h:
   37187         Make isNPJSObject and toNPJSObject public.
   37188 
   37189         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   37190         (WebKit::NPRuntimeObjectMap::convertNPVariantToJSValue):
   37191         Convert NPObjects correctly.
   37192         
   37193         (WebKit::NPRuntimeObjectMap::globalObject):
   37194         Get the globalObject from the frame.
   37195 
   37196         (WebKit::NPRuntimeObjectMap::globalExec):
   37197         Call globalObject.
   37198 
   37199         * WebProcess/Plugins/NPRuntimeObjectMap.h:
   37200 
   37201 2010-07-28  Anders Carlsson  <andersca (a] apple.com>
   37202 
   37203         Reviewed by Sam Weinig.
   37204 
   37205         Implement NPN_InvokeDefault and NPN_Construct
   37206         https://bugs.webkit.org/show_bug.cgi?id=43160
   37207 
   37208         * WebProcess/Plugins/NPJSObject.cpp:
   37209         (WebKit::NPJSObject::invoke):
   37210         Just call invoke directly.
   37211 
   37212         (WebKit::NPJSObject::invokeDefault):
   37213         Call invoke.
   37214 
   37215         (WebKit::NPJSObject::construct):
   37216         Implement this.
   37217 
   37218         (WebKit::NPJSObject::invoke):
   37219         Add new invoke overload that takes the function as a JSValue.
   37220 
   37221         (WebKit::NPJSObject::npClass):
   37222         Add NP_Construct.
   37223 
   37224         (WebKit::NPJSObject::NP_InvokeDefault):
   37225         Call NPJSObject::invokeDefault.
   37226 
   37227         (WebKit::NPJSObject::NP_Construct):
   37228         Call NPJSObject::construct.
   37229 
   37230         * WebProcess/Plugins/NPJSObject.h:
   37231         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   37232         (WebKit::NPN_GetValue):
   37233         Handle the Core Animation drawing model and the Carbon event model.
   37234 
   37235         (WebKit::NPN_InvokeDefault):
   37236         Call the NPClass::invokeDefault function.
   37237 
   37238         (WebKit::NPN_Construct):
   37239         Call the NPClass::construct function.
   37240 
   37241 2010-07-28  Anders Carlsson  <andersca (a] apple.com>
   37242 
   37243         Reviewed by Sam Weinig.
   37244 
   37245         Implement NPN_Invoke
   37246         https://bugs.webkit.org/show_bug.cgi?id=43158
   37247 
   37248         * WebProcess/Plugins/NPJSObject.cpp:
   37249         (WebKit::NPJSObject::hasMethod):
   37250         Use the free getCallData function.
   37251 
   37252         (WebKit::NPJSObject::invoke):
   37253         Get the JavaScript function and call it.
   37254 
   37255         (WebKit::NPJSObject::NP_Invoke):
   37256         Call NPJSObject::invoke.
   37257 
   37258         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   37259         (WebKit::NPN_Invoke):
   37260         Call the NPClass::invoke function.
   37261 
   37262 2010-07-28  Anders Carlsson  <andersca (a] apple.com>
   37263 
   37264         Reviewed by Sam Weinig.
   37265 
   37266         Implement NPN_HasMethod
   37267         https://bugs.webkit.org/show_bug.cgi?id=43155
   37268 
   37269         * WebProcess/Plugins/NPJSObject.cpp:
   37270         (WebKit::NPJSObject::hasMethod):
   37271         Check if the JSObject has a property with the given name. If it does, check that the value is a function.
   37272     
   37273         (WebKit::NPJSObject::hasProperty):
   37274         Add a JSLock.
   37275 
   37276         (WebKit::NPJSObject::npClass):
   37277         Add some stubbed out functions.
   37278 
   37279         (WebKit::NPJSObject::NP_HasMethod):
   37280         Call NPJSObject::hasMethod.
   37281 
   37282         (WebKit::NPJSObject::NP_Invoke):
   37283         (WebKit::NPJSObject::NP_InvokeDefault):
   37284         (WebKit::NPJSObject::NP_SetProperty):
   37285         Stub out functions.
   37286 
   37287         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   37288         (WebKit::NPN_HasMethod):
   37289         Call the NPClass::hasMethod function.
   37290 
   37291 2010-07-28  Brady Eidson  <beidson (a] apple.com>
   37292 
   37293         Rubberstamped by Sam Weinig.
   37294 
   37295         Make sure new pages are always added to the same PageGroup (for now).
   37296 
   37297         * WebProcess/WebPage/WebPage.cpp:
   37298         (WebKit::WebPage::WebPage):
   37299 
   37300 2010-07-28  Sam Weinig  <sam (a] webkit.org>
   37301 
   37302         Reviewed by Anders Carlsson.
   37303 
   37304         Patch for https://bugs.webkit.org/show_bug.cgi?id=43097
   37305         Make all objects in the WebKit2 API inherit from a single base class
   37306 
   37307         - Adds an APIObject base class for all objects which one can get through
   37308           the C API to inherit from.
   37309         - Adds a WebString class which wraps WebCore::String for now. I am not too fond of
   37310           this solution, so we should continue to iterate on it.
   37311         - This is a first step toward make a CF-style base type (eg. CFTypeRef) for the C-API.
   37312 
   37313         * Shared/APIObject.h: Added.
   37314         (WebKit::APIObject::APIObject):
   37315         Base class for API objects.
   37316 
   37317         * Shared/ImmutableArray.h:
   37318         Make inherit from APIObject.
   37319 
   37320         * Shared/WebString.h: Added.
   37321         (WebKit::WebString::create):
   37322         (WebKit::WebString::isNull):
   37323         (WebKit::WebString::isEmpty):
   37324         (WebKit::WebString::string):
   37325         (WebKit::WebString::WebString):
   37326         Wraps a WebCore::String so that it can be passed out to the API
   37327         and still inherit from APIObject.
   37328 
   37329         * UIProcess/API/C/WKAPICast.h:
   37330         (WebKit::WebStringAdaptor::WebStringAdaptor):
   37331         (WebKit::WebStringAdaptor::operator WKStringRef):
   37332         (WebKit::WebStringAdaptor::operator WKURLRef):
   37333         Update conversion methods to deal in terms of WebStrings. Added WebStringAdaptor
   37334         to ease passing strings to client functions.
   37335 
   37336         * UIProcess/API/C/WKContext.cpp:
   37337         (WKContextCreateWithInjectedBundlePath):
   37338         (WKContextPostMessageToInjectedBundle):
   37339         (_WKContextSetAdditionalPluginPath):
   37340         (_WKContextRegisterURLSchemeAsEmptyDocument): 
   37341         Get the WebCore::String from the WebString.
   37342 
   37343         * UIProcess/API/C/WKPage.cpp:
   37344         (WKPageLoadURL):
   37345         Ditto.
   37346 
   37347         * UIProcess/API/C/WKString.cpp:
   37348         (WKStringIsEmpty):
   37349         Implement in terms of WebString.
   37350 
   37351         * UIProcess/API/C/WKURL.cpp:
   37352         * UIProcess/API/C/cf/WKStringCF.cpp:
   37353         (WKStringCreateWithCFString):
   37354         (WKStringCopyCFString):
   37355         Ditto.
   37356     
   37357         * UIProcess/API/C/cf/WKURLCF.cpp:
   37358         (WKURLCreateWithCFURL):
   37359         (WKURLCopyCFURL):
   37360         Ditto.
   37361 
   37362         * UIProcess/WebBackForwardList.h:
   37363         Make inherit from APIObject.
   37364 
   37365         * UIProcess/WebBackForwardListItem.h:
   37366         Ditto.
   37367 
   37368         * UIProcess/WebContext.cpp:
   37369         (WebKit::WebContext::didReceiveMessageFromInjectedBundle):
   37370         (WebKit::WebContext::postMessageToInjectedBundle):
   37371         (WebKit::WebContext::registerURLSchemeAsEmptyDocument):
   37372         Use String instead of StringImpl to be consistent.
   37373 
   37374         * UIProcess/WebContext.h:
   37375         Make inherit from APIObject.
   37376 
   37377         * UIProcess/WebFramePolicyListenerProxy.h:
   37378         Ditto.
   37379 
   37380         * UIProcess/WebFrameProxy.h:
   37381         Ditto.
   37382 
   37383         * UIProcess/WebNavigationData.h:
   37384         Ditto.
   37385 
   37386         * UIProcess/WebPageNamespace.h:
   37387         Ditto.
   37388 
   37389         * UIProcess/WebPageProxy.h:
   37390         Ditto.
   37391 
   37392         * UIProcess/WebPreferences.h:
   37393         Ditto.
   37394 
   37395         * UIProcess/WebUIClient.cpp:
   37396         (WebKit::WebUIClient::runJavaScriptPrompt):
   37397         Implement in terms of WebString.
   37398 
   37399         * UIProcess/win/WebView.h:
   37400         Make inherit from APIObject.
   37401 
   37402         * WebKit2.xcodeproj/project.pbxproj:
   37403         Add new files.
   37404 
   37405         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   37406         (WKBundlePostMessage):
   37407         Get the WebCore::String from the WebString.
   37408 
   37409         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   37410         (WKBundleFramePauseAnimationOnElementWithId):
   37411         Ditto.
   37412 
   37413         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   37414         (WebKit::InjectedBundle::postMessage):
   37415         * WebProcess/InjectedBundle/InjectedBundle.h:
   37416         Use String instead of StringImpl to be consistent.
   37417 
   37418         * WebProcess/WebPage/WebFrame.h:
   37419         Make inherit from APIObject.
   37420 
   37421         * WebProcess/WebPage/WebPage.h:
   37422         Make inherit from APIObject.
   37423 
   37424         * win/WebKit2.vcproj:
   37425         Add new files.
   37426 
   37427 2010-07-28  Anders Carlsson  <andersca (a] apple.com>
   37428 
   37429         Reviewed by Sam Weinig.
   37430 
   37431         Implement JSNPObject::put
   37432         https://bugs.webkit.org/show_bug.cgi?id=43149
   37433 
   37434         * WebProcess/Plugins/JSNPObject.cpp:
   37435         (WebKit::JSNPObject::getOwnPropertySlot):
   37436         Fix a typo.
   37437 
   37438         (WebKit::JSNPObject::getOwnPropertyDescriptor):
   37439         Implement this in the same way as it's implemented in RuntimeObject.
   37440 
   37441         (WebKit::JSNPObject::put):
   37442         Implement this, call NPClass::setProperty.
   37443 
   37444         * WebProcess/Plugins/JSNPObject.h:
   37445 
   37446 2010-07-28  Anders Carlsson  <andersca (a] apple.com>
   37447 
   37448         Reviewed by Sam Weinig.
   37449 
   37450         Add support for calling NPObject methods
   37451         https://bugs.webkit.org/show_bug.cgi?id=43145
   37452 
   37453         * WebKit2.xcodeproj/project.pbxproj:
   37454         Add JSNPMethod.cpp and JSNPMethod.h
   37455     
   37456         * WebProcess/Plugins/JSNPMethod.cpp: Added.
   37457         * WebProcess/Plugins/JSNPMethod.h: Added.
   37458         * WebProcess/Plugins/JSNPObject.cpp:
   37459         (WebKit::):
   37460         Add a ClassInfo static variable for JSNPObject.
   37461 
   37462         (WebKit::JSNPObject::callMethod):
   37463         Convert the passed in arguments, call the method and convert the result back.
   37464 
   37465         (WebKit::JSNPObject::getOwnPropertySlot):
   37466         Check if the NPObject has a method.
   37467 
   37468         (WebKit::JSNPObject::methodGetter):
   37469         Return a new JSNPMethod.
   37470 
   37471         * WebProcess/Plugins/JSNPObject.h:
   37472         (WebKit::JSNPObject::classInfo):
   37473         Return the s_info.
   37474 
   37475         * WebProcess/Plugins/NPJSObject.cpp:
   37476         (WebKit::NPJSObject::getProperty):
   37477         Get the property from the JSObject.
   37478 
   37479         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   37480         (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
   37481         Convert the given JSValue to an NPVariant.
   37482 
   37483         * win/WebKit2.vcproj:
   37484         Add JSNPMethod.cpp and JSNPMethod.h
   37485 
   37486 2010-07-28  Adam Roben  <aroben (a] apple.com>
   37487 
   37488         Teach CoreIPC how to handle with a pipe closing during a write
   37489 
   37490         Fixes <http://webkit.org/b/43131> Assertion failure in
   37491         Connection::sendOutgoingMessage if the other process exits at just the
   37492         wrong time
   37493 
   37494         Reviewed by Darin Adler.
   37495 
   37496         * Platform/CoreIPC/win/ConnectionWin.cpp:
   37497         (CoreIPC::Connection::sendOutgoingMessage): If ::WriteFile fails with
   37498         ERROR_NO_DATA, the pipe (and thus the connection) has closed.
   37499 
   37500 2010-07-28  Adam Roben  <aroben (a] apple.com>
   37501 
   37502         Teach CoreIPC the right way to send large messages on Windows
   37503 
   37504         r63776 added support for ::WriteFile failing with ERROR_IO_PENDING,
   37505         but it had a major flaw: we didn't ensure that the data being sent
   37506         (which is owned by the ArgumentEncoder) stayed around until the write
   37507         finished. We'd destroy the data immediately, leading to ::WriteFile
   37508         accessing that freed memory later. This seemed to always manifest
   37509         itself as a crash in ::WaitForMultipleObjects.
   37510 
   37511         The correct solution (as hinted above) is to make sure that the data
   37512         being written is not destroyed until the write completes. When
   37513         ::WriteFile fails with ERROR_IO_PENDING, we store the data being sent
   37514         in Connection::m_pendingWriteArguments, and don't send any more
   37515         messages until that write completes. We use an event in the OVERLAPPED
   37516         structure passed to ::WriteFile to detect when the write has completed
   37517         (similar to what we do for reads).
   37518 
   37519         Fixes <http://webkit.org/b/42785> <rdar://problem/8218522> Crash in
   37520         WebKit2WebProcess in WaitForMultipleObjects beneath
   37521         WorkQueue::workQueueThreadBody when running tests that produce a lot
   37522         of output
   37523 
   37524         Reviewed by Anders Carlsson.
   37525 
   37526         * Platform/CoreIPC/Connection.cpp:
   37527         (CoreIPC::Connection::canSendOutgoingMessages): Added. This calls out
   37528         to a platform-specific function to allow each platform to have its own
   37529         policy for when messages can and can't be sent.
   37530         (CoreIPC::Connection::sendOutgoingMessages): Use the new
   37531         canSendOutgoingMessages to determine whether we can send any messages
   37532         right now. We now remove one message at a time from m_outgoingMessages
   37533         and send it. We stop sending messages when sendOutgoingMessage returns
   37534         false.
   37535 
   37536         * Platform/CoreIPC/Connection.h: Added m_pendingWriteArguments and
   37537         m_writeState on Windows.
   37538         (CoreIPC::Connection::Message::Message): Added this default
   37539         constructor.
   37540 
   37541         * Platform/CoreIPC/MessageID.h:
   37542         (CoreIPC::MessageID::MessageID): Made the default constructor public
   37543         for Message's benefit.
   37544 
   37545         * Platform/CoreIPC/mac/ConnectionMac.cpp:
   37546         (CoreIPC::Connection::platformCanSendOutgoingMessages): Added. Always
   37547         returns true.
   37548         (CoreIPC::Connection::sendOutgoingMessage): Changed to return a
   37549         boolean indicating whether more messages can be sent at this time.
   37550 
   37551         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   37552         (CoreIPC::Connection::platformCanSendOutgoingMessages): Added. Returns
   37553         true if we have a socket.
   37554         (CoreIPC::Connection::sendOutgoingMessage): Changed a null-check of
   37555         m_socket to an assertion since it should be checked for null in
   37556         platformCanSendOutgoingMessages. Changed to return a boolean
   37557         indicating whether more messages can be sent at this time.
   37558 
   37559         * Platform/CoreIPC/win/ConnectionWin.cpp:
   37560         (CoreIPC::Connection::platformInitialize): Added initialization of
   37561         m_writeState.
   37562         (CoreIPC::Connection::platformInvalidate): Close m_writeState's event
   37563         handle.
   37564         (CoreIPC::Connection::writeEventHandler): Added. Checks if the pending
   37565         write has completed, cleans up our pending write state, and sends any
   37566         remaining messages.
   37567         (CoreIPC::Connection::open): Register our write event with the
   37568         WorkQueue so that writeEventHandler will be called when the event is
   37569         signaled.
   37570         (CoreIPC::Connection::platformCanSendOutgoingMessages): Added. We can
   37571         only send messages if there isn't a write pending.
   37572         (CoreIPC::Connection::sendOutgoingMessage): Changed to return a
   37573         boolean indicating whether more messages can be sent at this time. We
   37574         now pass m_writeState to ::WriteFile instead of an empty OVERLAPPED
   37575         struct so that our write event will be signaled when the write
   37576         completes. We also no longer pass a pointer to receive how many bytes
   37577         were written, as recommended by MSDN. If ::WriteFile fails with
   37578         ERROR_IO_PENDING, we save the ArgumentEncoder for this message and
   37579         return false to indicate that no more messages can be sent at this
   37580         time.
   37581 
   37582 2010-07-28  Adam Roben  <aroben (a] apple.com>
   37583 
   37584         Stop leaking Connection::m_readState.hEvent on Windows
   37585 
   37586         Fixes <http://webkit.org/b/43129> CoreIPC::Connection leaks its read
   37587         event on Windows
   37588 
   37589         Reviewed by Darin Adler.
   37590 
   37591         * Platform/CoreIPC/win/ConnectionWin.cpp:
   37592         (CoreIPC::Connection::platformInvalidate): Close the event handle.
   37593 
   37594 2010-07-26  Steve Block  <steveblock (a] google.com>
   37595 
   37596        Reviewed by Jeremy Orlow.
   37597 
   37598        Page clients should be passed to Page constructor via structure of pointers
   37599        https://bugs.webkit.org/show_bug.cgi?id=42834
   37600 
   37601        * WebKit2/WebProcess/WebPage/WebPage.cpp:
   37602        (WebPage::WebPage):
   37603 
   37604 2010-07-28  Andras Becsi  <abecsi (a] webkit.org>
   37605 
   37606         Unreviewed trivial build fix.
   37607 
   37608         [Qt] Follow the API changes after r64172.
   37609 
   37610         * UIProcess/API/qt/qwkpage.cpp:
   37611         (QWKPage::url):
   37612         (QWKPage::title):
   37613 
   37614 2010-07-27  Anders Carlsson  <andersca (a] apple.com>
   37615 
   37616         Fix Windows build.
   37617 
   37618         * WebProcess/Plugins/JSNPObject.cpp:
   37619         (WebKit::JSNPObject::propertyGetter):
   37620         Remove unreachable code.
   37621 
   37622 2010-07-27  Anders Carlsson  <andersca (a] apple.com>
   37623 
   37624         Reviewed by Sam Weinig.
   37625 
   37626         Implement JSNPObject::propertyGetter
   37627         https://bugs.webkit.org/show_bug.cgi?id=43091
   37628 
   37629         * WebProcess/Plugins/JSNPObject.cpp:
   37630         (WebKit::JSNPObject::propertyGetter):
   37631         Ask the NPObject for its property.
   37632 
   37633         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   37634         (WebKit::NPRuntimeObjectMap::jsNPObjectDestroyed):
   37635         Add a stub.
   37636 
   37637         (WebKit::NPRuntimeObjectMap::convertNPVariantToValue):
   37638         Implement this for everything except objects.
   37639 
   37640 2010-07-27  Sam Weinig  <sam (a] webkit.org>
   37641 
   37642         Reviewed by Anders Carlsson.
   37643 
   37644         Patch for https://bugs.webkit.org/show_bug.cgi?id=43087
   37645         Clean up handling of strings at the WebKit2 API layer.
   37646 
   37647         - Always use the "copy" rule for functions that return WKStringRefs or WKURLRefs.
   37648         - Never return a null WKStringRef or WKURLRef.
   37649 
   37650         * UIProcess/API/C/WKAPICast.h:
   37651         (toRef):
   37652         (toURLRef):
   37653         (toCopiedRef):
   37654         (toCopiedURLRef):
   37655         * UIProcess/API/C/WKBackForwardListItem.cpp:
   37656         (WKBackForwardListItemCopyOriginalURL):
   37657         (WKBackForwardListItemCopyURL):
   37658         (WKBackForwardListItemCopyTitle):
   37659         * UIProcess/API/C/WKBackForwardListItem.h:
   37660         * UIProcess/API/C/WKFrame.cpp:
   37661         (WKFrameIsMainFrame):
   37662         (WKFrameCopyProvisionalURL):
   37663         (WKFrameCopyURL):
   37664         (WKFrameGetPage):
   37665         (WKFrameRetain):
   37666         (WKFrameRelease):
   37667         * UIProcess/API/C/WKFrame.h:
   37668         * UIProcess/API/C/WKNavigationData.cpp:
   37669         (WKNavigationDataCopyTitle):
   37670         (WKNavigationDataCopyURL):
   37671         * UIProcess/API/C/WKNavigationData.h:
   37672         * UIProcess/API/C/WKPage.cpp:
   37673         (WKPageCopyTitle):
   37674         * UIProcess/API/C/WKPage.h:
   37675         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   37676         (WKBundleFrameCopyURL):
   37677         (WKBundleFrameCopyName):
   37678         (WKBundleFrameCopyCounterValue):
   37679         (WKBundleFrameCopyMarkerText):
   37680         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   37681         * WebProcess/InjectedBundle/API/c/WKBundleNode.cpp:
   37682         (WKBundleNodeCopyNodeName):
   37683         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   37684         (WKBundlePageCopyRenderTreeExternalRepresentation):
   37685 
   37686 2010-07-27  Adam Roben  <aroben (a] apple.com>
   37687 
   37688         Fix PageClient ownership in WebPageProxy
   37689 
   37690         WKView now owns the PageClient, similar to how things work on Windows
   37691         (where the WebView is the PageClient).
   37692 
   37693         Fixes <http://webkit.org/b/40185> WebPageProxy should keep a weak
   37694         reference to the PageClient
   37695 
   37696         Reviewed by Anders Carlsson.
   37697 
   37698         * UIProcess/API/mac/WKView.mm:
   37699         (-[WKView initWithFrame:pageNamespaceRef:]): Store the PageClientImpl
   37700         on our WKViewData object and pass it to the WebPageProxy.
   37701 
   37702         * UIProcess/WebPageProxy.cpp:
   37703         (WebKit::WebPageProxy::setPageClient):
   37704         * UIProcess/WebPageProxy.h:
   37705         Removed Mac-specific code that put the PageClient in an OwnPtr. We now
   37706         store it in a bare pointer just like on Windows.
   37707 
   37708 2010-07-27  Anders Carlsson  <andersca (a] apple.com>
   37709 
   37710         Reviewed by Sam Weinig.
   37711 
   37712         Add JSNPObject, a JSObject that wraps an NPObject
   37713         https://bugs.webkit.org/show_bug.cgi?id=43079
   37714 
   37715         * WebKit2.xcodeproj/project.pbxproj:
   37716         Add JSNPObject.cpp and JSNPObject.h
   37717         
   37718         * WebProcess/Plugins/JSNPObject.cpp: Added.
   37719         (WebKit::npIdentifierFromIdentifier):
   37720         (WebKit::JSNPObject::JSNPObject):
   37721         (WebKit::JSNPObject::~JSNPObject):
   37722         (WebKit::JSNPObject::getOwnPropertySlot):
   37723         Check if the NPObject has the given property.
   37724 
   37725         (WebKit::JSNPObject::propertyGetter):
   37726         (WebKit::JSNPObject::throwInvalidAccessError):
   37727         * WebProcess/Plugins/JSNPObject.h: Added.
   37728         (WebKit::JSNPObject::createStructure):
   37729         * WebProcess/Plugins/NPJSObject.h:
   37730         
   37731         * win/WebKit2.vcproj:
   37732         Add JSNPObject.cpp and JSNPObject.h
   37733 
   37734 2010-07-27  Anders Carlsson  <andersca (a] apple.com>
   37735 
   37736         Reviewed by Sam Weinig.
   37737 
   37738         Expose interface for returning the plug-in script JSObject
   37739         https://bugs.webkit.org/show_bug.cgi?id=43074
   37740 
   37741         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   37742         (WebKit::NPRuntimeObjectMap::getOrCreateJSObject):
   37743         Add empty stub.
   37744 
   37745         * WebProcess/Plugins/NPRuntimeObjectMap.h:
   37746         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   37747         (WebKit::NetscapePlugin::pluginScriptableNPObject):
   37748         Ask the plug-in for it's scriptable NPObject.
   37749 
   37750         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   37751         * WebProcess/Plugins/Plugin.h:
   37752         Add pluginScritableNPObject.
   37753 
   37754         * WebProcess/Plugins/PluginView.cpp:
   37755         (WebKit::PluginView::PluginView):
   37756         Call PluginViewBase constructor.
   37757 
   37758         (WebKit::PluginView::scriptObject):
   37759         Ask the plug-in for its scriptable object and wrap it.
   37760 
   37761         * WebProcess/Plugins/PluginView.h:
   37762         PluginView now inherits from PluginViewBase.
   37763 
   37764 2010-07-27  Anders Carlsson  <andersca (a] apple.com>
   37765 
   37766         Reviewed by Adam Roben.
   37767 
   37768         Move NPJSObject out into separate files
   37769         https://bugs.webkit.org/show_bug.cgi?id=43068
   37770 
   37771         * WebKit2.xcodeproj/project.pbxproj:
   37772         * WebProcess/Plugins/NPJSObject.cpp: Added.
   37773         (WebKit::NPJSObject::create):
   37774         (WebKit::NPJSObject::NPJSObject):
   37775         (WebKit::NPJSObject::~NPJSObject):
   37776         (WebKit::NPJSObject::isNPJSObject):
   37777         (WebKit::NPJSObject::initialize):
   37778         (WebKit::identifierFromIdentifierRep):
   37779         (WebKit::NPJSObject::hasProperty):
   37780         (WebKit::NPJSObject::getProperty):
   37781         (WebKit::NPJSObject::npClass):
   37782         (WebKit::NPJSObject::NP_Allocate):
   37783         (WebKit::NPJSObject::NP_Deallocate):
   37784         (WebKit::NPJSObject::NP_HasProperty):
   37785         (WebKit::NPJSObject::NP_GetProperty):
   37786         * WebProcess/Plugins/NPJSObject.h: Added.
   37787         (WebKit::NPJSObject::jsObject):
   37788         (WebKit::NPJSObject::toNPJSObject):
   37789         * WebProcess/Plugins/NPRuntimeObjectMap.cpp:
   37790         (WebKit::NPRuntimeObjectMap::npJSObjectDestroyed):
   37791         (WebKit::NPRuntimeObjectMap::globalExec):
   37792         * WebProcess/Plugins/NPRuntimeObjectMap.h:
   37793         * win/WebKit2.vcproj:
   37794 
   37795 2010-07-27  Anders Carlsson  <andersca (a] apple.com>
   37796 
   37797         Reviewed by Adam Roben.
   37798 
   37799         Rename NPJSObjectMap to NPRuntimeObjectMap
   37800         https://bugs.webkit.org/show_bug.cgi?id=43066
   37801 
   37802         * WebKit2.xcodeproj/project.pbxproj:
   37803         * WebProcess/Plugins/NPJSObjectMap.cpp: Removed.
   37804         * WebProcess/Plugins/NPJSObjectMap.h: Removed.
   37805         * WebProcess/Plugins/NPRuntimeObjectMap.cpp: Added.
   37806         (WebKit::NPJSObject::NPJSObject):
   37807         (WebKit::NPJSObject::~NPJSObject):
   37808         (WebKit::NPJSObject::toNPJSObject):
   37809         (WebKit::NPJSObject::create):
   37810         (WebKit::NPJSObject::isNPJSObject):
   37811         (WebKit::NPJSObject::initialize):
   37812         (WebKit::identifierFromIdentifierRep):
   37813         (WebKit::NPJSObject::hasProperty):
   37814         (WebKit::NPJSObject::getProperty):
   37815         (WebKit::NPJSObject::npClass):
   37816         (WebKit::NPJSObject::NP_Allocate):
   37817         (WebKit::NPJSObject::NP_Deallocate):
   37818         (WebKit::NPJSObject::NP_HasProperty):
   37819         (WebKit::NPJSObject::NP_GetProperty):
   37820         (WebKit::NPRuntimeObjectMap::NPRuntimeObjectMap):
   37821         (WebKit::NPRuntimeObjectMap::getOrCreateNPObject):
   37822         (WebKit::NPRuntimeObjectMap::invalidate):
   37823         * WebProcess/Plugins/NPRuntimeObjectMap.h: Added.
   37824         * WebProcess/Plugins/PluginView.cpp:
   37825         (WebKit::PluginView::PluginView):
   37826         (WebKit::PluginView::~PluginView):
   37827         (WebKit::PluginView::windowScriptNPObject):
   37828         (WebKit::PluginView::pluginElementNPObject):
   37829         * WebProcess/Plugins/PluginView.h:
   37830         * win/WebKit2.vcproj:
   37831 
   37832 2010-07-27  Adam Roben  <aroben (a] apple.com>
   37833 
   37834         Make preferences APIs robust against web process crashes
   37835 
   37836         Fixes <http://webkit.org/b/43049> Crash in
   37837         WebPageNamespace::preferencesDidChange if preferences are changed
   37838         after the web process crashes
   37839 
   37840         Reviewed by Anders Carlsson.
   37841 
   37842         * UIProcess/WebContext.cpp:
   37843         (WebKit::WebContext::preferencesDidChange): Bail out if we don't have
   37844         a web process. The new preference values will get propogated to the
   37845         web process if and when it launches.
   37846 
   37847 2010-07-27  Adam Roben  <aroben (a] apple.com>
   37848 
   37849         Add a ProcessDidExit callback to the WKPageLoaderClient
   37850 
   37851         Fixes <http://webkit.org/b/43048> UI process needs a way to find out
   37852         when the web process crashes
   37853 
   37854         Reviewed by Anders Carlsson.
   37855 
   37856         * UIProcess/API/C/WKPage.h: Added WKPageProcessDidExitCallback, and a
   37857         processDidExit member of that type to WKPageLoaderClient.
   37858 
   37859         * UIProcess/WebLoaderClient.cpp:
   37860         (WebKit::WebLoaderClient::processDidExit): Added. Calls through to the
   37861         WKPageLoaderClient.
   37862 
   37863         * UIProcess/WebLoaderClient.h: Added processDidExit.
   37864 
   37865         * UIProcess/WebPageProxy.cpp:
   37866         (WebKit::WebPageProxy::processDidExit): Tell the loader client the
   37867         process exited.
   37868 
   37869 2010-07-27  Andras Becsi  <abecsi (a] webkit.org>
   37870 
   37871         Reviewed by Kenneth Rohde Christiansen.
   37872 
   37873         [Qt] WebEventFactory::createWebMouseEvent should follow WebKit2 API changes
   37874         https://bugs.webkit.org/show_bug.cgi?id=43042
   37875 
   37876         * Shared/qt/WebEventFactoryQt.cpp:
   37877         (WebKit::WebEventFactory::createWebMouseEvent):
   37878         Set deltaX, deltaY and deltaZ arguments.
   37879 
   37880 2010-07-27  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   37881 
   37882         Reviewed by Kenneth Rohde Christiansen.
   37883 
   37884         [Qt] WebKit::PageClient implementation needs a dedicated class
   37885 
   37886         https://bugs.webkit.org/show_bug.cgi?id=42974
   37887 
   37888         * UIProcess/API/qt/qwkpage.cpp:
   37889         (PageClientImpl::PageClientImpl): Added.
   37890         (PageClientImpl::pageDidEnterAcceleratedCompositing): Moved from QWKPagePrivate.
   37891         (PageClientImpl::pageDidLeaveAcceleratedCompositing): Ditto.
   37892         (PageClientImpl::processDidExit): Ditto.
   37893         (PageClientImpl::processDidRevive): Ditto.
   37894         (PageClientImpl::setCursor): Ditto.
   37895         (PageClientImpl::takeFocus): Ditto.
   37896         (PageClientImpl::toolTipChanged): Ditto.
   37897         (QWKPagePrivate::QWKPagePrivate): Set a new instance of the PageClientImpl as PageClient rather than 'this'.
   37898         * UIProcess/API/qt/qwkpage_p.h: Removed PageClient implementation methods from QWKPagePrivate.
   37899 
   37900 2010-07-26  Darin Adler  <darin (a] apple.com>
   37901 
   37902         Reviewed by Sam Weinig.
   37903 
   37904         WebKitTestRunner needs to support layoutTestController.counterValueForElementById
   37905         https://bugs.webkit.org/show_bug.cgi?id=42537
   37906 
   37907         WebKitTestRunner needs layoutTestController.markerTextForListItem
   37908         https://bugs.webkit.org/show_bug.cgi?id=42549
   37909 
   37910         * UIProcess/API/C/WKString.cpp:
   37911         (WKStringIsEmpty): Added.
   37912         * UIProcess/API/C/WKString.h: Added WKStringIsEmpty.
   37913 
   37914         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   37915         (copiedString): Added. Helper for functions that return a
   37916         WKStringRef that follows the copy rule.
   37917         (WKBundleFrameCopyName): Use copiedString.
   37918         (WKBundleFrameCopyCounterValue): Added. Calls counterValue.
   37919         (WKBundleFrameCopyMarkerText): Added. Calls markerText.
   37920         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
   37921         Added WKBundleFrameCopyCounterValue and WKBundleFrameCopyMarkerText.
   37922 
   37923         * WebProcess/WebPage/WebFrame.cpp:
   37924         (WebKit::WebFrame::computedStyleIncludingVisitedInfo):
   37925         Renamed argument to streamline function a bit.
   37926         (WebKit::WebFrame::counterValue): Added.
   37927         (WebKit::WebFrame::markerText): Added.
   37928         * WebProcess/WebPage/WebFrame.h: Added counterValue and markerText.
   37929 
   37930 2010-07-26  Sam Weinig  <sam (a] webkit.org>
   37931 
   37932         Reviewed by Anders Carlsson.
   37933 
   37934         Part 2 of https://bugs.webkit.org/show_bug.cgi?id=43013
   37935         <rdar://problem/8152434>
   37936         Add support for scrolling using the keyboard in WebKit2
   37937 
   37938         Add support for scrolling with the space bar and ensure that we don't scroll
   37939         if WebCore is handling the event in another way.
   37940 
   37941         * WebProcess/WebPage/WebPage.cpp:
   37942         (WebKit::WebPage::keyEvent):
   37943         (WebKit::getScrollMapping):
   37944         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
   37945         * WebProcess/WebPage/WebPage.h:
   37946 
   37947 2010-07-26  Sam Weinig  <sam (a] webkit.org>
   37948 
   37949         Reviewed by Anders Carlsson.
   37950 
   37951         Patch for https://bugs.webkit.org/show_bug.cgi?id=43013
   37952         Part of <rdar://problem/8152434>
   37953         Add support for scrolling using the keyboard in WebKit2
   37954 
   37955         * WebProcess/WebPage/WebPage.cpp:
   37956         (WebKit::getScrollMapping):
   37957         (WebKit::WebPage::keyEvent):
   37958         Scroll the page in response to keyDown.
   37959         * WebProcess/WebPage/WebPage.h:
   37960         * WebProcess/WebPage/mac/WebPageMac.mm:
   37961         Use WindowsKeyboardCodes.h instead of redefining the constants.
   37962 
   37963 2010-07-26  Ada Chan  <adachan (a] apple.com>
   37964 
   37965         Fix Windows build.
   37966 
   37967         * win/WebKit2Generated.make:
   37968 
   37969 2010-07-26  Anders Carlsson  <andersca (a] apple.com>
   37970 
   37971         Fix Windows build.
   37972 
   37973         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   37974         (WebKit::NetscapePlugin::platformHandleMouseEnterEvent):
   37975         (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent):
   37976 
   37977 2010-07-26  Anders Carlsson  <andersca (a] apple.com>
   37978 
   37979         Reviewed by Sam Weinig.
   37980 
   37981         Handle mouseenter/mouseleave + focus events
   37982         https://bugs.webkit.org/show_bug.cgi?id=42997
   37983 
   37984         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   37985         (WebKit::NetscapePlugin::handleMouseEnterEvent):
   37986         Call platformHandleMouseEnterEvent.
   37987         
   37988         (WebKit::NetscapePlugin::handleMouseLeaveEvent):
   37989         Call platformHandleMouseExitEvent.
   37990 
   37991         (WebKit::NetscapePlugin::setFocus):
   37992         Call platformSetFocus.
   37993 
   37994         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
   37995         (WebKit::fillInCocoaEventFromMouseEvent):
   37996         Factor out code that fills in an NPCocoaEvent from a WebMouseEvent.
   37997 
   37998         (WebKit::initializeMouseEvent):
   37999         Call fillInCocoaEventFromMouseEvent.
   38000         
   38001         (WebKit::NetscapePlugin::platformHandleMouseEnterEvent):
   38002         Send an NPCocoaEventMouseEntered event.
   38003     
   38004         (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent):
   38005         Send an NPCocoaEventMouseExited event.
   38006 
   38007         (WebKit::NetscapePlugin::platformSetFocus):
   38008         Send an NPCocoaEventFocusChanged.
   38009 
   38010         * WebProcess/Plugins/Plugin.h:
   38011         * WebProcess/Plugins/PluginView.cpp:
   38012         (WebKit::PluginView::handleEvent):
   38013         Dispatch mouse enter and mouse leave events. Call focusPluginElement on mousedown.
   38014 
   38015         (WebKit::PluginView::focusPluginElement):
   38016         Focus the plug-in's containing frame and its element.
   38017 
   38018         (WebKit::PluginView::setFocus):
   38019         Call Plugin::setFocus.
   38020 
   38021 2010-07-26  Brady Eidson  <beidson (a] apple.com>
   38022 
   38023         Reviewed by Sam Weinig.
   38024 
   38025         Add ability for WK2 to register a scheme to always be displayed as an empty document
   38026         https://bugs.webkit.org/show_bug.cgi?id=42995
   38027 
   38028         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
   38029         (WebProcessMessage::):
   38030         
   38031         * UIProcess/API/C/WKContext.cpp:
   38032         (_WKContextRegisterURLSchemeAsEmptyDocument):
   38033         * UIProcess/API/C/WKContextPrivate.h:
   38034         
   38035         * UIProcess/WebContext.cpp:
   38036         (WebKit::WebContext::registerURLSchemeAsEmptyDocument):
   38037         * UIProcess/WebContext.h:
   38038         
   38039         * WebProcess/WebProcess.cpp:
   38040         (WebKit::WebProcess::registerURLSchemeAsEmptyDocument):
   38041         (WebKit::WebProcess::didReceiveMessage):
   38042         * WebProcess/WebProcess.h:
   38043 
   38044 2010-07-26  Anders Carlsson  <andersca (a] apple.com>
   38045 
   38046         Reviewed by Adam Roben.
   38047 
   38048         Get rid of the dummy plug-in.
   38049 
   38050         * WebKit2.xcodeproj/project.pbxproj:
   38051         * WebProcess/Plugins/DummyPlugin.cpp: Removed.
   38052         * WebProcess/Plugins/DummyPlugin.h: Removed.
   38053         * win/WebKit2.vcproj:
   38054 
   38055 2010-07-26  Sam Weinig  <sam (a] webkit.org>
   38056 
   38057         Reviewed by Anders Carlsson.
   38058 
   38059         Move some non-APIish functions into private headers.
   38060 
   38061         * WebKit2.xcodeproj/project.pbxproj:
   38062         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   38063         * WebProcess/InjectedBundle/API/c/WKBundle.h:
   38064         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   38065         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   38066         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h: Copied from WebProcess/InjectedBundle/API/c/WKBundleFrame.h.
   38067         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Copied from WebProcess/InjectedBundle/API/c/WKBundle.h.
   38068         * win/WebKit2.vcproj:
   38069 
   38070 2010-07-26  Sam Weinig  <sam (a] webkit.org>
   38071 
   38072         Reviewed by Anders Carlsson.
   38073 
   38074         Fix for https://bugs.webkit.org/show_bug.cgi?id=42986
   38075         Add prompt and confirm client functions to WebKit2
   38076 
   38077         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   38078         (WebPageProxyMessage::):
   38079         * UIProcess/API/C/WKPage.h:
   38080         * UIProcess/WebPageProxy.cpp:
   38081         (WebKit::WebPageProxy::didReceiveSyncMessage):
   38082         (WebKit::WebPageProxy::runJavaScriptAlert):
   38083         (WebKit::WebPageProxy::runJavaScriptConfirm):
   38084         (WebKit::WebPageProxy::runJavaScriptPrompt):
   38085         * UIProcess/WebPageProxy.h:
   38086         * UIProcess/WebUIClient.cpp:
   38087         (WebKit::WebUIClient::runJavaScriptAlert):
   38088         (WebKit::WebUIClient::runJavaScriptConfirm):
   38089         (WebKit::WebUIClient::runJavaScriptPrompt):
   38090         * UIProcess/WebUIClient.h:
   38091         * WebKit2.xcodeproj/project.pbxproj:
   38092         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   38093         (WebKit::WebChromeClient::runJavaScriptConfirm):
   38094         (WebKit::WebChromeClient::runJavaScriptPrompt):
   38095 
   38096 2010-07-26  Adam Roben  <aroben (a] apple.com>
   38097 
   38098         Windows build fix
   38099 
   38100         * win/WebKit2.vcproj:
   38101         * win/WebKit2WebProcess.vcproj:
   38102         Removed empty attributes so the values will be picked up from the
   38103         vsprops files. (Also removed a couple of attributes that accidentally
   38104         duplicated values from the vsprops files.)
   38105 
   38106 2010-07-26  Simon Fraser  <simon.fraser (a] apple.com>
   38107 
   38108         Reviewed by Anders Carlsson.
   38109 
   38110         Composited layers don't scroll in WebKit2
   38111         https://bugs.webkit.org/show_bug.cgi?id=42771
   38112         
   38113         In WebKit2, do the compositing layer geometry flipping on the drawing area's main 
   38114         backing layer. This both avoids us having to flip the layer contents, and also avoids issues
   38115         with the positioning of the root platform layer, which we want top-left. Doing the flipping
   38116         lower down would require that the root platform layer know where the scrollbar is.
   38117 
   38118         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   38119         (WebKit::LayerBackedDrawingArea::LayerBackedDrawingArea):
   38120 
   38121 2010-07-26  Anders Carlsson  <andersca (a] apple.com>
   38122 
   38123         Reviewed by Sam Weinig.
   38124 
   38125         Deliver mouse and wheel events to plug-ins
   38126         https://bugs.webkit.org/show_bug.cgi?id=42988
   38127 
   38128         * Shared/WebEvent.h:
   38129         (WebKit::WebMouseEvent::WebMouseEvent):
   38130         (WebKit::WebMouseEvent::deltaX):
   38131         (WebKit::WebMouseEvent::deltaY):
   38132         (WebKit::WebMouseEvent::deltaZ):
   38133         * Shared/mac/WebEventFactory.mm:
   38134         (WebKit::WebEventFactory::createWebMouseEvent):
   38135         Add deltaX, deltaY and deltaZ member variables to WebMosueEvent.
   38136 
   38137         * WebKit2.xcodeproj/project.pbxproj:
   38138         Rename NetscapePluginMac.cpp to NetscapePluginMac.mm.
   38139         
   38140         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   38141         (WebKit::NetscapePlugin::NPP_HandleEvent):
   38142         Add NPP_ wrapper.
   38143 
   38144         (WebKit::NetscapePlugin::handleMouseEvent):
   38145         (WebKit::NetscapePlugin::handleWheelEvent):
   38146         Call the platform variants.
   38147     
   38148         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: Added.
   38149         (WebKit::modifierFlags):        
   38150         (WebKit::buttonNumber):
   38151         (WebKit::initializeMouseEvent):
   38152         (WebKit::NetscapePlugin::platformHandleMouseEvent):
   38153         Create an NPCocoaEvent and send it to the plug-in.
   38154         
   38155         (WebKit::NetscapePlugin::platformHandleWheelEvent):
   38156         Ditto.
   38157 
   38158         * WebProcess/Plugins/PluginView.cpp:
   38159         (WebKit::PluginView::handleEvent):
   38160         Get the current WebEvent and send it to the plug-in if necessary.
   38161 
   38162         * WebProcess/WebPage/WebPage.cpp:
   38163         (WebKit::WebPage::currentEvent):
   38164         (WebKit::CurrentEvent::CurrentEvent):
   38165         (WebKit::CurrentEvent::~CurrentEvent):
   38166         (WebKit::WebPage::mouseEvent):
   38167         (WebKit::WebPage::wheelEvent):
   38168         (WebKit::WebPage::keyEvent):
   38169         * WebProcess/WebPage/WebPage.h:
   38170         Add RAII object for keeping track of the current event.
   38171 
   38172 2010-07-26  Anders Carlsson  <andersca (a] apple.com>
   38173 
   38174         Reviewed by Sam Weinig.
   38175 
   38176         Clean up event handling functions
   38177         https://bugs.webkit.org/show_bug.cgi?id=42977
   38178 
   38179         * WebProcess/WebPage/WebPage.cpp:
   38180         (WebKit::WebPage::mouseEvent):
   38181         (WebKit::WebPage::wheelEvent):
   38182         (WebKit::WebPage::keyEvent):
   38183         (WebKit::WebPage::didReceiveMessage):
   38184         * WebProcess/WebPage/WebPage.h:
   38185 
   38186 2010-07-25  Darin Adler  <darin (a] apple.com>
   38187 
   38188         Reviewed by Maciej Stachowiak.
   38189 
   38190         WebKitTestRunner needs to support layoutTestController.keepWebHistory
   38191         https://bugs.webkit.org/show_bug.cgi?id=42323
   38192 
   38193         Added WKBundleSetShouldTrackVisitedLinks, WKBundleRemoveAllVisitedLinks,
   38194         and WKBundleFrameGetComputedStyleIncludingVisitedInfo.
   38195 
   38196         Also fixed misspellings of the word "receive".
   38197 
   38198         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   38199         (WKBundleSetShouldTrackVisitedLinks): Added.
   38200         (WKBundleRemoveAllVisitedLinks): Added.
   38201         * WebProcess/InjectedBundle/API/c/WKBundle.h: Added functions and
   38202         fixed mispellings of receive.
   38203 
   38204         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   38205         (WKBundleFrameGetJavaScriptContext): Moved the code from here into WebFrame,
   38206         to be consistent with the rest of the functions in this file.
   38207         (WKBundleFrameGetComputedStyleIncludingVisitedInfo): Added.
   38208         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h: Added
   38209         WKBundleFrameGetComputedStyleIncludingVisitedInfo and tried to rearrange the
   38210         file to be more logically ordered and grouped.
   38211 
   38212         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   38213         (WebKit::InjectedBundle::setShouldTrackVisitedLinks): Added.
   38214         (WebKit::InjectedBundle::removeAllVisitedLinks): Added.
   38215         (WebKit::InjectedBundle::didReceiveMessage): Fixed mispellings of receive.
   38216         * WebProcess/InjectedBundle/InjectedBundle.h: Ditto.
   38217 
   38218         * WebProcess/WebPage/WebFrame.cpp:
   38219         (WebKit::WebFrame::jsContext): Added. Contains the code that used to be in
   38220         WKBundleFrameGetJavaScriptContext.
   38221         (WebKit::WebFrame::computedStyleIncludingVisitedInfo): Added.
   38222         * WebProcess/WebPage/WebFrame.h: Ditto.
   38223 
   38224         * UIProcess/API/C/WKContext.h: Fixed misspellings of receive.
   38225         * UIProcess/WebContext.cpp:
   38226         (WebKit::WebContext::didReceiveMessageFromInjectedBundle): Ditto.
   38227         * UIProcess/WebContext.h: Ditto.
   38228         * UIProcess/WebContextInjectedBundleClient.cpp:
   38229         (WebKit::WebContextInjectedBundleClient::didReceiveMessageFromInjectedBundle): Ditto.
   38230         * UIProcess/WebContextInjectedBundleClient.h: Ditto.
   38231         * UIProcess/WebProcessProxy.cpp:
   38232         (WebKit::WebProcessProxy::forwardMessageToWebContext): Ditto.
   38233         * WebProcess/WebProcess.cpp:
   38234         (WebKit::WebProcess::forwardMessageToInjectedBundle): Ditto.
   38235 
   38236 2010-07-25  Alexey Proskuryakov  <ap (a] apple.com>
   38237 
   38238         Reviewed by Sam Weinig.
   38239 
   38240         https://bugs.webkit.org/show_bug.cgi?id=42193
   38241         Support layoutTestController.dumpEditingDelegates in WebKitTestRunner
   38242 
   38243         Step 2 - add the rest of editing delegates.
   38244 
   38245         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   38246         * WebProcess/InjectedBundle/API/c/WKBundleBase.h:
   38247         Added enums for EditorInsertAction and EAffinity. Also added a dummy type for
   38248         CSSStyleDeclaration - neither DumpRenderTree not WebKitTestRunner actually use that.
   38249 
   38250         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   38251         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
   38252         (WebKit::InjectedBundlePageEditorClient::shouldBeginEditing):
   38253         (WebKit::InjectedBundlePageEditorClient::shouldEndEditing):
   38254         (WebKit::InjectedBundlePageEditorClient::shouldInsertNode):
   38255         (WebKit::InjectedBundlePageEditorClient::shouldInsertText):
   38256         (WebKit::InjectedBundlePageEditorClient::shouldDeleteRange):
   38257         (WebKit::InjectedBundlePageEditorClient::shouldChangeSelectedRange):
   38258         (WebKit::InjectedBundlePageEditorClient::shouldApplyStyle):
   38259         (WebKit::InjectedBundlePageEditorClient::didBeginEditing):
   38260         (WebKit::InjectedBundlePageEditorClient::didEndEditing):
   38261         (WebKit::InjectedBundlePageEditorClient::didChange):
   38262         (WebKit::InjectedBundlePageEditorClient::didChangeSelection):
   38263         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h:
   38264         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   38265         (WebKit::WebEditorClient::shouldDeleteRange):
   38266         (WebKit::WebEditorClient::shouldEndEditing):
   38267         (WebKit::WebEditorClient::shouldInsertNode):
   38268         (WebKit::WebEditorClient::shouldInsertText):
   38269         (WebKit::WebEditorClient::shouldChangeSelectedRange):
   38270         (WebKit::WebEditorClient::shouldApplyStyle):
   38271         (WebKit::WebEditorClient::didBeginEditing):
   38272         (WebKit::WebEditorClient::respondToChangedContents):
   38273         (WebKit::WebEditorClient::respondToChangedSelection):
   38274         (WebKit::WebEditorClient::didEndEditing):
   38275         Added remaining delagates that are needed for WebKitTestRunner.
   38276 
   38277 2010-07-19 Balazs Kelemen <kb (a] inf.u-szeged.hu>
   38278 
   38279         Reviewed by Kenneth Rohde Christiansen.
   38280 
   38281         [Qt] Setup the QtWebProcess
   38282 
   38283         https://bugs.webkit.org/show_bug.cgi?id=42623
   38284 
   38285         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   38286         Remove the framework entry point from here to WebProcess/qt/WebProcessMainQt.cpp to match with with the mac and the win port.
   38287         * WebKit2.pro: Added.
   38288         * WebProcess/qt/WebProcessMainQt.cpp: Added.
   38289         (WebKit::WebProcessMainQt): Framework entry point for Qt.
   38290         * qt/MainQt.cpp: Added.
   38291         (main):
   38292 
   38293 2010-07-22  Darin Adler  <darin (a] apple.com>
   38294 
   38295         Reviewed by Sam Weinig.
   38296 
   38297         Eliminate unneeded WKBundleFrameCopyInnerText function from WebKit2
   38298         https://bugs.webkit.org/show_bug.cgi?id=42847
   38299 
   38300         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: Removed WKBundleFrameCopyInnerText.
   38301         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h: Ditto.
   38302         * WebProcess/WebPage/WebFrame.cpp: Removed innerText.
   38303         * WebProcess/WebPage/WebFrame.h: Ditto.
   38304 
   38305 2010-07-22  Alexey Proskuryakov  <ap (a] apple.com>
   38306 
   38307         More Windows build fixing.
   38308 
   38309         * win/WebKit2Generated.make: Copy the new public headers to $(WEBKITOUTPUTDIR)\include\WebKit2.
   38310 
   38311 2010-07-22  Alexey Proskuryakov  <ap (a] apple.com>
   38312 
   38313         Windows build fix.
   38314 
   38315         * win/WebKit2.vcproj: Added new files.
   38316 
   38317 2010-07-22  Alexey Proskuryakov  <ap (a] apple.com>
   38318 
   38319         Reviewed by Sam Weinig and Darin Adler.
   38320 
   38321         https://bugs.webkit.org/show_bug.cgi?id=42193
   38322         Support layoutTestController.dumpEditingDelegates in WebKitTestRunner
   38323 
   38324         Step 1: Add the method, and implement one actual delegate call as proof of concept. No tests
   38325         fixed, but this makes difference one line smaller on many editing tests.
   38326 
   38327         * WebKit2.xcodeproj/project.pbxproj:
   38328         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
   38329         * WebProcess/InjectedBundle/API/c/WKBundleBase.h:
   38330         * WebProcess/InjectedBundle/API/c/WKBundleNode.cpp: Added.
   38331         (WKBundleNodeCopyNodeName):
   38332         (WKBundleNodeGetParent):
   38333         * WebProcess/InjectedBundle/API/c/WKBundleNode.h: Added.
   38334         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   38335         (WKBundlePageSetEditorClient):
   38336         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   38337         * WebProcess/InjectedBundle/API/c/WKBundleRange.cpp: Added.
   38338         (WKBundleRangeGetStartOffset):
   38339         (WKBundleRangeGetStartContainer):
   38340         (WKBundleRangeGetEndOffset):
   38341         (WKBundleRangeGetEndContainer):
   38342         * WebProcess/InjectedBundle/API/c/WKBundleRange.h: Added.
   38343         Added WKBundleRangeRef and WKBundleNodeRef types for injected bundles. These are just pointers
   38344         to respective WebCore objects, without any WebKit2 wrappers.
   38345 
   38346         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp: Added.
   38347         (WebKit::InjectedBundlePageEditorClient::InjectedBundlePageEditorClient):
   38348         (WebKit::InjectedBundlePageEditorClient::initialize):
   38349         (WebKit::InjectedBundlePageEditorClient::shouldBeginEditing):
   38350         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h: Added.
   38351         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   38352         (WebKit::WebEditorClient::shouldBeginEditing):
   38353         * WebProcess/WebPage/WebPage.cpp:
   38354         (WebKit::WebPage::initializeInjectedBundleEditorClient):
   38355         * WebProcess/WebPage/WebPage.h:
   38356         (WebKit::WebPage::injectedBundleEditorClient):
   38357         Added the plumbing for invoking injected bundle code for editor client. There is no real API
   38358         for editor client yet.
   38359 
   38360 2010-07-22  Ivan Krsti  <ike (a] apple.com>
   38361 
   38362         Reviewed by Anders Carlsson.
   38363 
   38364         Adapt sandbox for new WebProcess bootstrap service naming scheme.
   38365         <rdar://problem/8225000>
   38366 
   38367         * WebProcess/com.apple.WebProcess.sb:
   38368 
   38369 2010-07-22  Anders Carlsson  <andersca (a] apple.com>
   38370 
   38371         Reviewed by Adam Roben.
   38372 
   38373         It should be possible to attach to the WebProcess in gdb during startup
   38374         https://bugs.webkit.org/show_bug.cgi?id=42853
   38375 
   38376         Create an unique bootstrap service name and pass it to the web process, instead of registering a per process
   38377         name (which was incorrect anyway). This lets us get rid of the requirement that the UI process always should be
   38378         the parent process of the web process, something which is false when running under the debugger.
   38379 
   38380         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   38381         (WebKit::ProcessLauncher::launchProcess):
   38382         * WebProcess/mac/WebProcessMainMac.mm:
   38383         (WebKit::WebProcessMain):
   38384 
   38385 2010-07-22  Anders Carlsson  <andersca (a] apple.com>
   38386 
   38387         Reviewed by Sam Weinig.
   38388 
   38389         Don't assert when Connection::invalidate is called before Connection::dispatchConnectionDidClose
   38390         https://bugs.webkit.org/show_bug.cgi?id=42851
   38391 
   38392         * Platform/CoreIPC/Connection.cpp:
   38393         (CoreIPC::Connection::dispatchConnectionDidClose):
   38394         Just return early if m_client is 0.
   38395 
   38396 2010-07-22  Adam Roben  <aroben (a] apple.com>
   38397 
   38398         Use ::MessageBox instead of ::DebugBreak to make the web process wait
   38399         for a debugger
   38400 
   38401         While ::DebugBreak can make it easier to attach a debugger (because it
   38402         brings up the Just-in-Time debugger window), using ::MessageBox has
   38403         two advantages:
   38404           1) It explains to the user what's going on, so it's harder to
   38405              mistake this debugging aid for a bug.
   38406           2) It allows you to debug the UI process and the web process using
   38407              the same debugger, if desired.
   38408 
   38409         Special thanks to John Sullivan for help with the text that's shown in
   38410         the alert.
   38411 
   38412         Fixes <http://webkit.org/b/42848> WebKit2's wait-for-debugger
   38413         debugging aid should explain to the user what's happening
   38414 
   38415         Reviewed by John Sullivan and Anders Carlsson.
   38416 
   38417         * WebProcess/WebKitMain.cpp:
   38418         (WebKitMain): Use a ::MessageBox instead of a ::DebugBreak to wait for
   38419         the debugger. The alert explains to the user what's going on.
   38420 
   38421 2010-07-22  Adam Roben  <aroben (a] apple.com>
   38422 
   38423         Make WorkQueue aware of potential errors with ::WaitForMultipleObjects
   38424 
   38425         Fixes <http://webkit.org/b/42846> WorkQueue should detect
   38426         ::WaitForMultipleObject failures
   38427 
   38428         Reviewed by Anders Carlsson.
   38429 
   38430         * Platform/win/WorkQueueWin.cpp:
   38431         (WorkQueue::workQueueThreadBody): Added some assertions about the
   38432         various things that can fail with ::WaitForMultipleObjects,
   38433         specifically:
   38434           - Passing too many objects
   38435           - Timeouts (which shouldn't happen since we pass a timeout interval
   38436             of INFINITE)
   38437           - Abandoned mutexes (which shouldn't happen since we don't wait on
   38438             any mutexes currently)
   38439           - Miscellaneous failures
   38440 
   38441 2010-07-22  Sam Weinig  <sam (a] webkit.org>
   38442 
   38443         Reviewed by Anders Carlsson.
   38444 
   38445         Patch for https://bugs.webkit.org/show_bug.cgi?id=42836
   38446         Add localized strings stubs for WebKit2.
   38447 
   38448         Gets us below 200 tests failing in WebKitTestRunner.
   38449 
   38450         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   38451         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
   38452 
   38453 2010-07-22  Andras Becsi  <abecsi (a] webkit.org>
   38454 
   38455         Unreviewed trivial build fix.
   38456 
   38457         [Qt] Mend remaining issues to fix the WebKit2 build.
   38458 
   38459         * Shared/qt/UpdateChunk.h: add missing function
   38460         (WebKit::UpdateChunk::isEmpty):
   38461         * UIProcess/API/qt/qwkpage_p.h: Add stub implementation
   38462         (QWKPagePrivate::pageDidEnterAcceleratedCompositing):
   38463         (QWKPagePrivate::pageDidLeaveAcceleratedCompositing):
   38464 
   38465 2010-07-22  Andras Becsi  <abecsi (a] webkit.org>
   38466 
   38467         Reviewed by Antonio Gomes.
   38468 
   38469         [Qt] Implement WebContext::applicationCacheDirectory() for the Qt port of WebKit2.
   38470         https://bugs.webkit.org/show_bug.cgi?id=42830
   38471 
   38472         * UIProcess/qt/WebContextQt.cpp: Added.
   38473         (WebKit::WebContext::applicationCacheDirectory):
   38474 
   38475 2010-07-22  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   38476 
   38477         Unreviewed build fix.
   38478 
   38479         [Qt] Fix WebKit2 build
   38480 
   38481         https://bugs.webkit.org/show_bug.cgi?id=42638
   38482 
   38483         * UIProcess/API/qt/qwkpage_p.h:
   38484         (QWKPagePrivate::setCursor): Added empty implementation.
   38485 
   38486 2010-07-22  Balazs Kelemen  <kb (a] inf.u-szeged.hu>
   38487 
   38488         Reviewed by Antonio Gomes.
   38489 
   38490         Lazy cursor creation should be guarded by #if USE(LAZY_NATIVE_CURSOR) in WebKit2
   38491 
   38492         https://bugs.webkit.org/show_bug.cgi?id=42622
   38493 
   38494         * Shared/WebCoreArgumentCoders.h:
   38495         * UIProcess/WebPageProxy.cpp:
   38496         (WebKit::WebPageProxy::didReceiveMessage):
   38497         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   38498         (WebKit::WebChromeClient::setCursor):
   38499 
   38500 2010-07-22  Jon Honeycutt  <jhoneycutt (a] apple.com>
   38501 
   38502         Build fix. Unreviewed.
   38503 
   38504         * win/WebKit2WebProcess.vcproj:
   38505         Remove the pre- and post-build events, so that they will use the value
   38506         inherited from the vsprops.
   38507 
   38508 2010-07-21  Darin Adler  <darin (a] apple.com>
   38509 
   38510         Reviewed by Sam Weinig.
   38511 
   38512         WebKitTestRunner needs layoutTestController.dumpChildFrameScrollPositions
   38513         https://bugs.webkit.org/show_bug.cgi?id=42548
   38514 
   38515         Added WKBundleFrameCopyName.
   38516 
   38517         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   38518         (WKBundleFrameCopyName): Added.
   38519         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h: Ditto.
   38520 
   38521         * WebProcess/WebPage/WebFrame.cpp:
   38522         (WebKit::WebFrame::name): Added.
   38523         * WebProcess/WebPage/WebFrame.h: Ditto.
   38524 
   38525 2010-07-21  Darin Adler  <darin (a] apple.com>
   38526 
   38527         Reviewed by Sam Weinig.
   38528 
   38529         WebKitTestRunner needs to support dumping of scroll position
   38530         https://bugs.webkit.org/show_bug.cgi?id=42514
   38531 
   38532         Added WKBundleFrameGetJavaScriptContext function.
   38533 
   38534         * WebKit2.xcodeproj: Added property svn:ignore.
   38535 
   38536         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   38537         (WKBundleFrameGetJavaScriptContext): Added.
   38538         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h: Ditto.
   38539 
   38540         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   38541         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
   38542         (WebKit::InjectedBundlePageLoaderClient::didClearWindowObjectForFrame):
   38543         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
   38544         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   38545         (WebKit::WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
   38546         Use JSGlobalContextRef instead of JSContextRef and context instead of ct.
   38547 
   38548 2010-07-21  Adam Roben  <aroben (a] apple.com>
   38549 
   38550         Handle broken pipes in more places in CoreIPC
   38551 
   38552         Fixes <http://webkit.org/b/42784> Assertion failure in
   38553         Connection::readEventHandler when WebKitTestRunner exits
   38554 
   38555         Reviewed by Anders Carlsson.
   38556 
   38557         * Platform/CoreIPC/win/ConnectionWin.cpp:
   38558         (CoreIPC::Connection::readEventHandler): Check for a broken pipe
   38559         whenever we call ::PeekNamedPipe.
   38560 
   38561 2010-07-21  Adam Roben  <aroben (a] apple.com>
   38562 
   38563         Teach CoreIPC how to handle messages that are larger than the pipe's
   38564         buffer
   38565 
   38566         ::GetOverlappedResult and ::ReadFile can fail with ERROR_MORE_DATA
   38567         when there is more data available on the pipe than was requested in
   38568         the read operation. In those cases, the appropriate response is to
   38569         perform another read operation to read the extra data. We now do this.
   38570 
   38571         Also, MSDN says that, because we are doing asynchronous read
   38572         operations, we should not pass a pointer to ::ReadFile to find out how
   38573         many bytes were read. Instead we should always call
   38574         ::GetOverlappedResult to find this out. I've changed
   38575         Connection::readEventHandler to have a single loop that calls
   38576         ::GetOverlappedResult and ::ReadFile in alternation, rather than
   38577         sometimes calling ::ReadFile multiple times in a row, to satisfy this
   38578         requirement.
   38579 
   38580         In order to simplify the logic in this function, I've made us request
   38581         only a single byte from the pipe when there are no messages already in
   38582         the pipe. (Previously we were requesting 4096 bytes in this case.)
   38583         This allows us not to have to consider the case where the received
   38584         message is smaller than our read buffer. If we decide that this has a
   38585         negative impact on performance, we can of course change it. I've
   38586         mitigated this somewhat by using ::PeekNamedMessage to find out the
   38587         size of the next message in the pipe (if any), so that we can read it
   38588         all in one read operation.
   38589 
   38590         Fixes <http://webkit.org/b/42710> <rdar://problem/8197571> Assertion
   38591         in Connection::readEventHandler when launching WebKitTestRunner
   38592 
   38593         Reviewed by Anders Carlsson.
   38594 
   38595         * Platform/CoreIPC/win/ConnectionWin.cpp:
   38596         (CoreIPC::Connection::readEventHandler): Put the call to
   38597         ::GetOverlappedResult in the same loop as ::ReadFile so that we will
   38598         call them alternately. If ::GetOverlappedResult fails with
   38599         ERROR_MORE_DATA, use ::PeekNamedPipe to determine the size of the rest
   38600         of the message, then read it from the pipe. After dispatching the
   38601         message, use ::PeekNamedPipe to find out the size of the next message
   38602         in the pipe so we can read it all in one operation. If there's no
   38603         message in the pipe, we'll request just a single byte of the next
   38604         message that becomes available, and Windows will tell us when the rest
   38605         of the message is ready. If ::ReadFile fails with ERROR_MORE_DATA it
   38606         means there is data available now even though we didn't think there
   38607         was any. We go back to the top of the loop in this case and call
   38608         ::GetOverlappedResult again to retrieve the available data.
   38609 
   38610 2010-07-21  Sam Weinig  <sam (a] webkit.org>
   38611 
   38612         Reviewed by Anders Carlsson.
   38613 
   38614         Patch for https://bugs.webkit.org/show_bug.cgi?id=42539
   38615         WebKitTestRunner needs to support printing ALERT, PROMPT and CONFIRM messages
   38616 
   38617         - Convert injected bundle UIClient functions to will-style, at least until we establish
   38618           more concrete use cases for them past the TestRunner.
   38619 
   38620         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   38621         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
   38622         (WebKit::InjectedBundlePageUIClient::willAddMessageToConsole):
   38623         (WebKit::InjectedBundlePageUIClient::willSetStatusbarText):
   38624         (WebKit::InjectedBundlePageUIClient::willRunJavaScriptAlert):
   38625         (WebKit::InjectedBundlePageUIClient::willRunJavaScriptConfirm):
   38626         (WebKit::InjectedBundlePageUIClient::willRunJavaScriptPrompt):
   38627         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
   38628         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   38629         (WebKit::WebChromeClient::addMessageToConsole):
   38630         (WebKit::WebChromeClient::runJavaScriptAlert):
   38631         (WebKit::WebChromeClient::runJavaScriptConfirm):
   38632         (WebKit::WebChromeClient::runJavaScriptPrompt):
   38633         (WebKit::WebChromeClient::setStatusbarText):
   38634 
   38635 2010-07-21  Simon Fraser  <simon.fraser (a] apple.com>
   38636 
   38637         Windows build fix.
   38638 
   38639         Need to supply implementations of PageClient::pageDidEnterAcceleratedCompositing()
   38640         and pageDidLeaveAcceleratedCompositing() for WebView on Windows.
   38641 
   38642         * UIProcess/win/WebView.cpp:
   38643         (WebKit::WebView::pageDidEnterAcceleratedCompositing):
   38644         (WebKit::WebView::pageDidLeaveAcceleratedCompositing):
   38645         * UIProcess/win/WebView.h:
   38646 
   38647 2010-07-21  Anders Carlsson  <andersca (a] apple.com>
   38648 
   38649         Reviewed by Sam Weinig.
   38650 
   38651         Don't assert when clicking on a plug-in in WebKit2
   38652         https://bugs.webkit.org/show_bug.cgi?id=42762
   38653 
   38654         Add stub for PluginView::handleEvent.
   38655 
   38656         * WebProcess/Plugins/PluginView.cpp:
   38657         (WebKit::PluginView::handleEvent):
   38658         * WebProcess/Plugins/PluginView.h:
   38659 
   38660 2010-07-21  Simon Fraser  <simon.fraser (a] apple.com>
   38661 
   38662         Reviewed by Anders Carlsson.
   38663 
   38664         Get accelerated compositing working with webkit2
   38665         https://bugs.webkit.org/show_bug.cgi?id=41084
   38666         
   38667         Hook up dynamic DrawingArea switching, so that when the WebProcess hits a page
   38668         that requires accelerated compositing, we switch to the LayerBackedDrawingArea.
   38669         
   38670         * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h:
   38671         (DrawingAreaProxyMessage::):
   38672         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   38673         (WebPageProxyMessage::):
   38674         * UIProcess/API/mac/PageClientImpl.h:
   38675         * UIProcess/API/mac/PageClientImpl.mm:
   38676         (WebKit::PageClientImpl::pageDidEnterAcceleratedCompositing):
   38677         (WebKit::PageClientImpl::pageDidLeaveAcceleratedCompositing):
   38678         * UIProcess/API/mac/WKView.mm:
   38679         (-[WKView _startAcceleratedCompositing:]):
   38680         (-[WKView _switchToDrawingAreaTypeIfNecessary:DrawingAreaProxy::]):
   38681         (-[WKView _pageDidEnterAcceleratedCompositing]):
   38682         (-[WKView _pageDidLeaveAcceleratedCompositing]):
   38683         * UIProcess/API/mac/WKViewInternal.h:
   38684         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   38685         (WebKit::ChunkedUpdateDrawingAreaProxy::didReceiveSyncMessage):
   38686         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   38687         * UIProcess/DrawingAreaProxy.h:
   38688         (WebKit::DrawingAreaProxy::):
   38689         (WebKit::DrawingAreaProxy::type):
   38690         * UIProcess/LayerBackedDrawingAreaProxy.cpp:
   38691         (WebKit::LayerBackedDrawingAreaProxy::didSetSize):
   38692         (WebKit::LayerBackedDrawingAreaProxy::didReceiveMessage):
   38693         (WebKit::LayerBackedDrawingAreaProxy::didReceiveSyncMessage):
   38694         * UIProcess/LayerBackedDrawingAreaProxy.h:
   38695         * UIProcess/PageClient.h:
   38696         * UIProcess/WebPageProxy.cpp:
   38697         (WebKit::WebPageProxy::setDrawingArea):
   38698         (WebKit::WebPageProxy::didReceiveSyncMessage):
   38699         (WebKit::WebPageProxy::didEnterAcceleratedCompositing):
   38700         (WebKit::WebPageProxy::didLeaveAcceleratedCompositing):
   38701         * UIProcess/WebPageProxy.h:
   38702         * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm:
   38703         (WebKit::LayerBackedDrawingAreaProxy::attachCompositingContext):
   38704         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   38705         (WebKit::WebChromeClient::attachRootGraphicsLayer):
   38706         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h:
   38707         (WebKit::ChunkedUpdateDrawingArea::attachCompositingContext):
   38708         (WebKit::ChunkedUpdateDrawingArea::setRootCompositingLayer):
   38709         * WebProcess/WebPage/DrawingArea.cpp:
   38710         (WebKit::DrawingArea::create):
   38711         * WebProcess/WebPage/DrawingArea.h:
   38712         (WebKit::DrawingArea::):
   38713         (WebKit::DrawingArea::type):
   38714         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   38715         (WebKit::LayerBackedDrawingArea::LayerBackedDrawingArea):
   38716         (WebKit::LayerBackedDrawingArea::setNeedsDisplay):
   38717         (WebKit::LayerBackedDrawingArea::setSize):
   38718         (WebKit::LayerBackedDrawingArea::didUpdate):
   38719         (WebKit::LayerBackedDrawingArea::setRootCompositingLayer):
   38720         * WebProcess/WebPage/LayerBackedDrawingArea.h:
   38721         * WebProcess/WebPage/WebPage.cpp:
   38722         (WebKit::WebPage::changeAcceleratedCompositingMode):
   38723         (WebKit::WebPage::enterAcceleratedCompositingMode):
   38724         (WebKit::WebPage::exitAcceleratedCompositingMode):
   38725         * WebProcess/WebPage/WebPage.h:
   38726         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   38727         (WebKit::LayerBackedDrawingArea::platformInit):
   38728         (WebKit::LayerBackedDrawingArea::attachCompositingContext):
   38729         (WebKit::LayerBackedDrawingArea::detachCompositingContext):
   38730         (WebKit::LayerBackedDrawingArea::setRootCompositingLayer):
   38731 
   38732 2010-07-20  Steve Falkenburg  <sfalken (a] apple.com>
   38733 
   38734         Reviewed by Adam Roben.
   38735 
   38736         WebKit on Windows should build optionally with an unversioned ICU DLL
   38737         https://bugs.webkit.org/show_bug.cgi?id=42722
   38738         <rdar://problem/8211767> WebKit needs to link against unversioned ICU
   38739 
   38740         To get the proper value for U_DISABLE_RENAMING into all source files, we force
   38741         the include of ICUVersion.h (our generated header) via the compiler options.
   38742 
   38743         Since the versioned and unversioned ICU have different filenames (libicuuc.lib vs icuuc.lib)
   38744         we copy the ICU lib to an intermediate location under obj with a common name. This
   38745         allows us to link properly with either without adding a new build configuration.
   38746 
   38747         * win/WebKit2Common.vsprops:
   38748         Copy ICU libs into a common location with a common name.
   38749         Add additional library search path to pick up icu lib.
   38750         Change ICU library filename specified to linker.
   38751         Add forced include of ICUVersion.h.        
   38752 
   38753 2010-07-21  Adam Roben  <aroben (a] apple.com>
   38754 
   38755         Windows build fix
   38756 
   38757         * Shared/win/UpdateChunk.h:
   38758         (WebKit::UpdateChunk::isEmpty): Added to match the Mac definition.
   38759 
   38760 2010-07-21  Anders Carlsson  <andersca (a] apple.com>
   38761 
   38762         Land file I forgot to add.
   38763 
   38764         * WebProcess/com.apple.WebProcess.sb: Added.
   38765 
   38766 2010-07-21  Adam Roben  <aroben (a] apple.com>
   38767 
   38768         Move WebKit2WebProcess's settings to a vsprops file
   38769 
   38770         Fixes <http://webkit.org/b/42751> WebKit2WebProcess should use vsprops
   38771         files
   38772 
   38773         Reviewed by Darin Adler.
   38774 
   38775         * win/WebKit2WebProcess.vcproj: Moved settings from here...
   38776         * win/WebKit2WebProcessCommon.vsprops: ...to here.
   38777 
   38778 2010-07-20  Ivan Krsti  <ike (a] apple.com>
   38779 
   38780         Reviewed and tweaked by Anders Carlsson and Sam Weinig.
   38781 
   38782         Put WebProcess in a sandbox. All of the following changes are
   38783         Mac-only.
   38784         <rdar://problem/7865269>
   38785 
   38786         * UIProcess/WebProcessProxy.cpp:
   38787         (WebKit::WebProcessProxy::WebProcessProxy):
   38788         Send Sandbox extension for injected bundle to WebProcess.
   38789 
   38790         * WebKit2.xcodeproj/project.pbxproj:
   38791         Add Sandbox profile to Resources for WebProcess.
   38792 
   38793         * WebProcess/InjectedBundle/InjectedBundle.h:
   38794         New function InjectedBundle::setSandboxToken.
   38795 
   38796         * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp:
   38797         (WebKit::InjectedBundle::load):
   38798         Consume Sandbox token for the bundle if present.
   38799 
   38800         (WebKit::InjectedBundle::setSandboxToken):
   38801         Set Sandbox token for the bundle.
   38802 
   38803         * WebProcess/WebProcess.cpp:
   38804         (WebKit::WebProcess::loadInjectedBundle):
   38805         Extra function parameter for Sandbox token.
   38806 
   38807         (WebKit::WebProcess::didReceiveMessage):
   38808         Pass Sandbox token to loadInjectedBundle().
   38809 
   38810         * WebProcess/WebProcess.h:
   38811         Extra function parameter for Sandbox token in loadInjectedBundle().
   38812 
   38813         * WebProcess/com.apple.WebProcess.sb: Added.
   38814         Sandbox profile for WebProcess.
   38815 
   38816         * WebProcess/mac/WebProcessMainMac.mm:
   38817         (WebKit::WebProcessMain):
   38818         Initialize Sandbox, exit on failure.
   38819 
   38820 2010-07-20  Sam Weinig  <sam (a] webkit.org>
   38821 
   38822         Reviewed by Brady Eidson.
   38823 
   38824         Patch for https://bugs.webkit.org/show_bug.cgi?id=42719
   38825         Make Acid2 pass in WebKit2
   38826 
   38827         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   38828         (WebKit::WebFrameLoaderClient::objectContentType): Check for supported image mimetypes
   38829         before falling back to plugins.
   38830 
   38831 2010-07-20  Adam Roben  <aroben (a] apple.com>
   38832 
   38833         Remove WebKit2.sln
   38834 
   38835         WebKit.sln builds all the same projects.
   38836 
   38837         Rubber-stamped in advance by Steve Falkenburg.
   38838 
   38839         * WebKit2.sln: Removed.
   38840 
   38841 2010-07-20  Adam Roben  <aroben (a] apple.com>
   38842 
   38843         Make the web process break into the debugger when Ctrl-Alt-Shift is
   38844         held during launch
   38845 
   38846         Fixes <http://webkit.org/b/42670> Would like a way to break into the
   38847         debugger when the web process launches
   38848 
   38849         Reviewed by Anders Carlsson.
   38850 
   38851         * WebProcess/WebKitMain.cpp:
   38852         (WebKitMain): If the Control, Alt, and Shift keys are held down in a
   38853         Debug build, call DebugBreak() so that we will break into the
   38854         debugger.
   38855 
   38856 2010-07-20  Adam Roben  <aroben (a] apple.com>
   38857 
   38858         Teach Connection how to handle a slow receiver
   38859 
   38860         Fixes <http://webkit.org/b/42667> Assertion in
   38861         Connection::sendOutgoingMessage when browser or web process is paused
   38862 
   38863         Reviewed by Anders Carlsson.
   38864 
   38865         * Platform/CoreIPC/win/ConnectionWin.cpp:
   38866         (CoreIPC::Connection::sendOutgoingMessage): If WriteFile returns FALSE
   38867         and the last error is ERROR_IO_PENDING, Windows will write the data as
   38868         soon as the current write operation is completed. We don't need to do
   38869         anything special in this case, so there's no need to assert about it.
   38870 
   38871 2010-07-20  Anders Carlsson  <andersca (a] apple.com>
   38872 
   38873         Reviewed by Dan Bernstein.
   38874 
   38875         Handle WKView visibility changes
   38876         <rdar://problem/7891077>
   38877     
   38878         * Shared/mac/UpdateChunk.h:
   38879         (WebKit::UpdateChunk::isEmpty):
   38880         Add convenience getter.
   38881 
   38882         * UIProcess/API/mac/WKView.mm:
   38883         (-[WKView viewDidMoveToWindow]):
   38884         Reorder the calls to _updateActiveState and _updateVisibility based on whether the view is moved to
   38885         a window or away from a window.
   38886 
   38887         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   38888         (WebKit::ChunkedUpdateDrawingAreaProxy::ChunkedUpdateDrawingAreaProxy):
   38889         Initialize m_forceRepaintWhenResumingPainting to false.
   38890 
   38891         (WebKit::ChunkedUpdateDrawingAreaProxy::setPageIsVisible):
   38892         Pass the m_forceRepaintWhenResumingPainting along to the DrawingAreaMessage::ResumePainting message.
   38893 
   38894         (WebKit::ChunkedUpdateDrawingAreaProxy::didSetSize):
   38895         Don't try to paint empty update chunks.
   38896 
   38897         (WebKit::ChunkedUpdateDrawingAreaProxy::update):
   38898         Don't paint the update chunk if we're not visible. Instead, make sure that the entire page is being redrawn
   38899         when its shown again.
   38900 
   38901         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   38902         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   38903         (WebKit::ChunkedUpdateDrawingArea::ChunkedUpdateDrawingArea):
   38904         (WebKit::ChunkedUpdateDrawingArea::display):
   38905         (WebKit::ChunkedUpdateDrawingArea::suspendPainting):
   38906         Rename m_shouldPaint to m_isPaintingSuspended and invert its logic.
   38907         
   38908         (WebKit::ChunkedUpdateDrawingArea::scheduleDisplay):
   38909         Don't schedule a display timer if the dirty rect is empty.
   38910 
   38911         (WebKit::ChunkedUpdateDrawingArea::setSize):
   38912         If painting is suspended, just send back an empty update chunk in the DidSetSize message.
   38913 
   38914         (WebKit::ChunkedUpdateDrawingArea::resumePainting):
   38915         If forceRepaint is true, repaint the entire drawing area.
   38916 
   38917 2010-07-20  Anders Carlsson  <andersca (a] apple.com>
   38918 
   38919         Reviewed by Dan Bernstein.
   38920 
   38921         Implement NPN_GetURL and NPN_PostURL
   38922         https://bugs.webkit.org/show_bug.cgi?id=42650
   38923 
   38924         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   38925         (WebKit::parsePostBuffer):
   38926         Add a FIXME about deleting the file.
   38927 
   38928         (WebKit::makeURLString):
   38929         Move this static method before NPN_GetURL.
   38930 
   38931         (WebKit::NPN_GetURL):
   38932         Call NetscapePLugin::LoadURL.
   38933         
   38934         (WebKit::NPN_PostURL):
   38935         Ditto.
   38936 
   38937         (WebKit::NPN_PostURLNotify):
   38938         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   38939         Remove unreached code.
   38940 
   38941         (WebKit::NetscapePluginStream::deliverDataToPlugin):
   38942         Stop the stream if the plug-in returns -1 from NPP_Write.
   38943 
   38944 2010-07-19  Anders Carlsson  <andersca (a] apple.com>
   38945 
   38946         Reviewed by Sam Weinig.
   38947 
   38948         WebKitTestRunner and WebProcess simultaneously stall in CoreIPC::Connection::sendOutgoingMessage
   38949         https://bugs.webkit.org/show_bug.cgi?id=42356
   38950 
   38951         Up the port queue length from 5 to 1024. While this does solve the problem, we should still try to
   38952         make sendOutgoingMessage not block. I've filed https://bugs.webkit.org/show_bug.cgi?id=42611 to track 
   38953         doing this on Mac and Windows.
   38954 
   38955         * Platform/CoreIPC/mac/ConnectionMac.cpp:
   38956         (CoreIPC::Connection::open):
   38957         Call setMachPortQueueLength.
   38958 
   38959         * Platform/mac/MachUtilities.cpp: Added.
   38960         (setMachPortQueueLength):
   38961         Given a mach port receive right, sets the port queue length.
   38962 
   38963         * Platform/mac/MachUtilities.h: Added.
   38964         
   38965         * WebKit2.xcodeproj/project.pbxproj:
   38966         Add MachUtilities.cpp and MachUtilities.h
   38967 
   38968 2010-07-19  Anders Carlsson  <andersca (a] apple.com>
   38969 
   38970         Reviewed by Darin Adler, Adam Roben, Dan Bernstein and Sam Weinig.
   38971 
   38972         Handle NP_ASFILE and NP_ASFILEONLY transfer modes
   38973         https://bugs.webkit.org/show_bug.cgi?id=42587
   38974 
   38975         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   38976         (WebKit::NetscapePlugin::NPP_StreamAsFile):
   38977         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   38978         Add NPP_ wrapper.
   38979 
   38980         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   38981         (WebKit::NetscapePluginStream::NetscapePluginStream):
   38982         Initialize m_fileHandle.
   38983 
   38984         (WebKit::isSupportedTransferMode):
   38985         NP_ASFILE and NP_ASFILEONLY is now supported.
   38986 
   38987         (WebKit::NetscapePluginStream::deliverData):
   38988         Call deliverDataToFile if necessary.
   38989 
   38990         (WebKit::NetscapePluginStream::deliverDataToFile):
   38991         Create a temporary file and write the data into it.
   38992 
   38993         (WebKit::NetscapePluginStream::stop):
   38994         If the transfer mode is either NP_ASFILE or NP_ASFILEONLY, make sure to
   38995         call NPP_StreamAsFile and close the file and delete it.
   38996 
   38997         * WebProcess/Plugins/PluginView.cpp:
   38998         (WebKit::PluginView::cancelStreamLoad):
   38999         Keep a reference to the Stream since cancelling it will remove it from the map.
   39000 
   39001 2010-07-19  Anders Carlsson  <andersca (a] apple.com>
   39002 
   39003         Reviewed by Sam Weinig.
   39004 
   39005         Implement NPN_PostURLNotify
   39006         https://bugs.webkit.org/show_bug.cgi?id=42602
   39007 
   39008         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   39009         (WebKit::parsePostBuffer):
   39010         Read the buffer from a file if necessary and parse it.
   39011 
   39012         (WebKit::NPN_GetURLNotify):
   39013         Add extra arguments.
   39014 
   39015         (WebKit::NPN_PostURLNotify):
   39016         Parse the post buffer, then call NetscapePlugin::loadURL.
   39017 
   39018         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   39019         (WebKit::NetscapePlugin::loadURL):
   39020         Pass the method, the header fields and form data along.
   39021 
   39022         (WebKit::NetscapePlugin::allowPopups):
   39023         Just return false for now.
   39024 
   39025         (WebKit::NetscapePlugin::initialize):
   39026         Pass extra arguments to loadURL.
   39027 
   39028         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   39029         * WebProcess/Plugins/PluginController.h:
   39030         Add method, header fields and form data.
   39031 
   39032         * WebProcess/Plugins/PluginView.cpp:
   39033         (WebKit::PluginView::loadURL):
   39034         Set the method, add the header fields and set the body.
   39035 
   39036 2010-07-19  Sam Weinig  <sam (a] webkit.org>
   39037 
   39038         Reviewed by Darin Adler.
   39039 
   39040         Add local storage support for WebKit2
   39041         https://bugs.webkit.org/show_bug.cgi?id=42584
   39042 
   39043         * Shared/WebPreferencesStore.cpp:
   39044         (WebKit::WebPreferencesStore::WebPreferencesStore):
   39045         (WebKit::WebPreferencesStore::swap):
   39046         * Shared/WebPreferencesStore.h:
   39047         (WebKit::WebPreferencesStore::encode):
   39048         (WebKit::WebPreferencesStore::decode):
   39049         * UIProcess/API/C/WKPreferences.cpp:
   39050         (WKPreferencesSetLocalStorageEnabled):
   39051         (WKPreferencesGetLocalStorageEnabled):
   39052         * UIProcess/API/C/WKPreferences.h:
   39053         * UIProcess/WebPreferences.cpp:
   39054         (WebKit::WebPreferences::setLocalStorageEnabled):
   39055         (WebKit::WebPreferences::localStorageEnabled):
   39056         * UIProcess/WebPreferences.h:
   39057         * WebProcess/WebPage/WebPage.cpp:
   39058         (WebKit::WebPage::WebPage):
   39059         (WebKit::WebPage::preferencesDidChange):
   39060 
   39061 2010-07-19  Simon Fraser  <simon.fraser (a] apple.com>
   39062 
   39063         Reviewed by Anders Carlsson.
   39064 
   39065         Uae an OwnPtr for the drawing area in WebPage (fixes a leak!).
   39066 
   39067         * WebProcess/WebPage/WebPage.h:
   39068         (WebKit::WebPage::drawingArea):
   39069 
   39070 2010-07-19  Anders carlsson  <andersca (a] apple.com>
   39071 
   39072         Reviewed by Adam Roben.
   39073 
   39074         WebKit2 does not have application cache
   39075         https://bugs.webkit.org/show_bug.cgi?id=42552
   39076 
   39077         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
   39078         (WebProcessMessage::):
   39079         Add SetApplicationCacheDirectory.
   39080 
   39081         * Shared/WebPreferencesStore.h:
   39082         (WebKit::WebPreferencesStore::encode):
   39083         (WebKit::WebPreferencesStore::decode):
   39084         add offlineWebApplicationCacheEnabled.
   39085 
   39086         * UIProcess/API/C/WKPreferences.cpp:
   39087         (WKPreferencesSetOfflineWebApplicationCacheEnabled):
   39088         (WKPreferencesGetOfflineWebApplicationCacheEnabled):
   39089         * UIProcess/API/C/WKPreferences.h:
   39090         Add getters/setters for whether the application cache is enabled.
   39091 
   39092         * UIProcess/WebContext.h:
   39093         * UIProcess/WebPreferences.cpp:
   39094         (WebKit::WebPreferences::setOfflineWebApplicationCacheEnabled):
   39095         Update the store and call update().
   39096         
   39097         * UIProcess/WebPreferences.h:
   39098         * UIProcess/WebProcessProxy.cpp:
   39099         (WebKit::WebProcessProxy::WebProcessProxy):
   39100         Ask the web process to set the application cache directory.
   39101 
   39102         * UIProcess/mac/WebContextMac.mm: Added.
   39103         (WebKit::WebContext::applicationCacheDirectory):
   39104         Return the application cache directory.
   39105 
   39106         * UIProcess/win/WebContextWin.cpp: Added.
   39107         (WebKit::WebContext::applicationCacheDirectory):
   39108         Ditto.
   39109 
   39110         * WebKit2.xcodeproj/project.pbxproj:
   39111         Add WebContextMac.mm
   39112 
   39113         * WebProcess/WebPage/WebPage.cpp:
   39114         (WebKit::WebPage::preferencesDidChange):
   39115         
   39116         (WebKit::WebPage::didReceiveMessage):
   39117         Handle PreferencesDidChange. Get rid of the default: case statement so we'll
   39118         get warnings if we have unhandled message kinds.
   39119 
   39120         * WebProcess/WebProcess.cpp:
   39121         (WebKit::WebProcess::setApplicationCacheDirectory):
   39122         Set the application cache directory.
   39123 
   39124         (WebKit::WebProcess::didReceiveMessage):
   39125         Handle SetApplicationCacheDirectory.
   39126 
   39127         win/WebKit2.vcproj:
   39128         Add WebContextWin.cpp
   39129 
   39130 2010-07-18  Anders Carlsson  <andersca (a] apple.com>
   39131 
   39132         Another attempt at fixing the Windows build.
   39133 
   39134         * WebProcess/Plugins/NPJSObjectMap.h:
   39135 
   39136 2010-07-18  Anders Carlsson  <andersca (a] apple.com>
   39137 
   39138         Try to fix Windows build.
   39139 
   39140         * win/WebKit2.vcproj:
   39141 
   39142 2010-07-18  Anders Carlsson  <andersca (a] apple.com>
   39143 
   39144         Reviewed by Sam Weinig.
   39145 
   39146         More NPRuntime work
   39147         https://bugs.webkit.org/show_bug.cgi?id=42526
   39148 
   39149         * WebProcess/Plugins/NPJSObjectMap.cpp:
   39150         (WebKit::identifierFromIdentifierRep):
   39151         (WebKit::NPJSObject::hasProperty):
   39152         Check if the JSObject has the given property.
   39153 
   39154         (WebKit::NPJSObject::getProperty):
   39155         Add stubbed out function.
   39156 
   39157         (WebKit::NPJSObject::npClass):
   39158         Add NP_HasProperty and NP_GetProperty.
   39159 
   39160         (WebKit::NPJSObject::NP_HasProperty):
   39161         Call NPJSObject::hasProperty.
   39162 
   39163         (WebKit::NPJSObject::NP_GetProperty):
   39164         Call NPJSObject::getProperty.
   39165 
   39166         * WebProcess/Plugins/NPRuntimeUtilities.cpp:
   39167         (WebKit::releaseNPVariantValue):
   39168         Release the given NPVariant.
   39169 
   39170         * WebProcess/Plugins/NPRuntimeUtilities.h:
   39171         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   39172         (WebKit::NPN_GetProperty):
   39173         Call the NPClass GetProperty function.
   39174 
   39175         (WebKit::NPN_HasProperty):
   39176         Call the NPClass HasProperty function.
   39177         
   39178         (WebKit::NPN_ReleaseVariantValue):
   39179         Call releaseNPVariantValue.
   39180 
   39181 2010-07-18  Anders Carlsson  <andersca (a] apple.com>
   39182 
   39183         Reviewed by Sam Weinig.
   39184 
   39185         Add NPJSObjectMap class
   39186         https://bugs.webkit.org/show_bug.cgi?id=42524
   39187 
   39188         * WebKit2.xcodeproj/project.pbxproj:
   39189         Add files.
   39190 
   39191         * WebProcess/Plugins/NPJSObjectMap.cpp: Added.
   39192         * WebProcess/Plugins/NPJSObjectMap.h: Added.
   39193         Add NPJSObjectMap, a map which contains NPObjects that wrap JavaScript objects.
   39194 
   39195         * WebProcess/Plugins/PluginView.cpp:
   39196         (WebKit::PluginView::PluginView):
   39197         Initialize the map.
   39198 
   39199         (WebKit::PluginView::~PluginView):
   39200         Invalidate the map.
   39201 
   39202         (WebKit::PluginView::frame):
   39203         Add frame getter.
   39204 
   39205         (WebKit::PluginView::windowScriptNPObject):
   39206         Wrap the window object.
   39207 
   39208         (WebKit::PluginView::pluginElementNPObject):
   39209         Wrap the plug-in element object.
   39210 
   39211         * WebProcess/Plugins/PluginView.h:
   39212 
   39213 2010-07-18  Anders Carlsson  <andersca (a] apple.com>
   39214 
   39215         Reviewed by Sam Weinig.
   39216 
   39217         Implement more NPRuntime related NPN_ functions
   39218         https://bugs.webkit.org/show_bug.cgi?id=42520
   39219 
   39220         * WebKit2.xcodeproj/project.pbxproj:
   39221         * WebProcess/Plugins/NPRuntimeUtilities.cpp: Added.
   39222         * WebProcess/Plugins/NPRuntimeUtilities.h: Added.
   39223         Add new file with NPRuntime related utility functions.
   39224 
   39225         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   39226         (WebKit::NPN_CreateObject):
   39227         (WebKit::NPN_RetainObject):
   39228         (WebKit::NPN_ReleaseObject):
   39229         Call the corresponding NPRuntimeUtilities functions.
   39230 
   39231 2010-07-18  Anders Carlsson  <andersca (a] apple.com>
   39232 
   39233         Reviewed by Dan Bernstein.
   39234 
   39235         Begin work on NPRuntime support
   39236         https://bugs.webkit.org/show_bug.cgi?id=42519
   39237 
   39238         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   39239         (WebKit::NPN_GetValue):
   39240         Handle NPNVWindowNPObject and NPNVPluginElementNPObject.
   39241 
   39242         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   39243         (WebKit::NetscapePlugin::windowScriptNPObject):
   39244         (WebKit::NetscapePlugin::pluginElementNPObject):
   39245         Call the plug-in controller.
   39246 
   39247         * WebProcess/Plugins/PluginController.h:
   39248         Add new windowScriptNPObject and pluginElementNPObject functions.
   39249 
   39250         * WebProcess/Plugins/PluginView.cpp:
   39251         (WebKit::PluginView::windowScriptNPObject):
   39252         (WebKit::PluginView::pluginElementNPObject):
   39253         Add stubbed out functions.
   39254 
   39255 2010-07-18  Anders Carlsson  <andersca (a] apple.com>
   39256 
   39257         Reviewed by Dan Bernstein.
   39258 
   39259         Implement some NPRuntime related NPN_ functions
   39260         https://bugs.webkit.org/show_bug.cgi?id=42518
   39261 
   39262         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   39263         (WebKit::NPN_GetStringIdentifier):
   39264         (WebKit::NPN_GetStringIdentifiers):
   39265         (WebKit::NPN_GetIntIdentifier):
   39266         (WebKit::NPN_IdentifierIsString):
   39267         (WebKit::NPN_UTF8FromIdentifier):
   39268         (WebKit::NPN_IntFromIdentifier):
   39269         (WebKit::NPN_CreateObject):
   39270 
   39271 2010-07-18  Anders Carlsson  <andersca (a] apple.com>
   39272 
   39273         Reviewed by Dan Bernstein.
   39274 
   39275         Add dumping of statusbar text to WebKitTestRunner
   39276         https://bugs.webkit.org/show_bug.cgi?id=42516
   39277 
   39278         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   39279         Add setStatusbarText callback to WKBundlePageUIClient.
   39280 
   39281         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
   39282         (WebKit::InjectedBundlePageUIClient::setStatusbarText):
   39283         Call setStatusbarText.
   39284 
   39285         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
   39286         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   39287         (WebKit::WebChromeClient::setStatusbarText):
   39288         Call the bundle page UI client.
   39289 
   39290 2010-07-17  Anders Carlsson  <andersca (a] apple.com>
   39291 
   39292         Reviewed by Maciej Stachowiak.
   39293 
   39294         WebKitTestRunner should load the test plug-in
   39295         https://bugs.webkit.org/show_bug.cgi?id=42509
   39296 
   39297         * UIProcess/API/C/WKContext.cpp:
   39298         (_WKContextSetAdditionalPluginPath):
   39299         Add a private function for setting a single additional plug-in path. the WebKit1 SPI that does the
   39300         same thing takes an array of paths, but this is good enough for now.
   39301 
   39302         * UIProcess/Plugins/PluginInfoStore.cpp:
   39303         (WebKit::PluginInfoStore::setAdditionalPluginPaths):
   39304         Set the additional plug-in paths vector and refresh the database.
   39305         
   39306         (WebKit::PluginInfoStore::loadPluginsIfNecessary):
   39307         First try to load plug-ins in the additional plug-in paths.
   39308         
   39309         * UIProcess/WebContext.cpp:
   39310         (WebKit::WebContext::setAdditionalPluginPath):
   39311         Call PluginInfoStore::setAdditionalPluginPaths.
   39312 
   39313         * UIProcess/WebContext.h:
   39314         (WebKit::WebContext::pluginInfoStore):
   39315         Make the plug-in info store per context instead of having a single shared info store.
   39316 
   39317         * UIProcess/WebProcessProxy.cpp:
   39318         (WebKit::WebProcessProxy::getPlugins):
   39319         (WebKit::WebProcessProxy::getPluginHostConnection):
   39320         * UIProcess/WebProcessProxy.h:
   39321         Get the plug-in info store from the context.
   39322 
   39323 2010-07-17  Anders Carlsson  <andersca (a] apple.com>
   39324 
   39325         Reviewed by Dan Bernstein.
   39326 
   39327         Stop all NPStreams before destroying a plug-in
   39328         https://bugs.webkit.org/show_bug.cgi?id=42504
   39329 
   39330         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   39331         (WebKit::NetscapePlugin::stopAllStreams):
   39332         Go through all streams and stop them.
   39333 
   39334         (WebKit::NetscapePlugin::destroy):
   39335         Call stopAllStreams.
   39336 
   39337         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   39338         Add stopAllStreams.
   39339         
   39340         * WebProcess/Plugins/Netscape/NetscapePluginStream.h:
   39341         Make stop public.
   39342 
   39343 2010-07-17  Anders Carlsson  <andersca (a] apple.com>
   39344 
   39345         Reviewed by Dan Bernstein.
   39346 
   39347         Open streams should not keep a plug-in view alive
   39348         https://bugs.webkit.org/show_bug.cgi?id=42503
   39349 
   39350         PluginView::Stream now has a weak reference to its PluginView.
   39351 
   39352         * WebProcess/Plugins/PluginView.cpp:
   39353         (WebKit::PluginView::Stream::~Stream):
   39354         Assert that the plug-in view is null.
   39355 
   39356         (WebKit::PluginView::Stream::didFail):
   39357         After calling removeStream, set the plug-in view member variable to 0. This is OK to do
   39358         since we keep a reference to the Stream, so we're sure that the call to removeStream does not
   39359         destroy the stream.
   39360 
   39361         (WebKit::PluginView::Stream::didFinishLoading):
   39362         Ditto .
   39363 
   39364         (WebKit::PluginView::~PluginView):
   39365         Cancel all streams.
   39366         
   39367         (WebKit::PluginView::cancelAllStreams):
   39368         Cancel all streams.
   39369 
   39370 2010-07-16  Zhe Su  <suzhe (a] chromium.org>
   39371 
   39372         Reviewed by Darin Adler.
   39373 
   39374         REGRESSION(r61484): Broke focus behaviour on Qt and probably other platforms
   39375         https://bugs.webkit.org/show_bug.cgi?id=42253
   39376 
   39377         Dummy implementation of EditorClient::willSetInputMethodState.
   39378 
   39379         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   39380         (WebKit::WebEditorClient::willSetInputMethodState):
   39381         * WebProcess/WebCoreSupport/WebEditorClient.h:
   39382 
   39383 2010-07-16  Alice Liu  <alice.liu (a] apple.com>
   39384 
   39385         Build fix, not reviewed.
   39386 
   39387         Reverted http://trac.webkit.org/changeset/63585 because getopt isn't 
   39388         available in the OpenSource support libraries
   39389 
   39390         * WebKit2.sln:
   39391 
   39392 2010-07-16  Sam Weinig  <sam (a] webkit.org>
   39393 
   39394         Reviewed by Anders Carlsson.
   39395 
   39396         Fix for https://bugs.webkit.org/show_bug.cgi?id=42482
   39397         <rdar://problem/8197701>
   39398         Add notification of when the BackForwardList changes
   39399         to aid invalidation of Back/Forward related UI elements.
   39400 
   39401         * UIProcess/API/C/WKPage.h:
   39402         Add didChangeBackForwardList to the WKPageLoaderClient. This 
   39403         fires whenever an item is added or removed from the back forward
   39404         list or when the cursor changes position.
   39405 
   39406         * UIProcess/WebBackForwardList.cpp:
   39407         (WebKit::WebBackForwardList::addItem):
   39408         (WebKit::WebBackForwardList::goToItem):
   39409         * UIProcess/WebLoaderClient.cpp:
   39410         (WebKit::WebLoaderClient::didChangeBackForwardList):
   39411         * UIProcess/WebLoaderClient.h:
   39412         * UIProcess/WebPageProxy.cpp:
   39413         (WebKit::WebPageProxy::didChangeBackForwardList):
   39414         * UIProcess/WebPageProxy.h:
   39415         Pipe changes to the WebBackForwardList up to the page load client.
   39416 
   39417 2010-07-16  Alice Liu  <alice.liu (a] apple.com>
   39418 
   39419         Reviewed by Sam Weinig.
   39420 
   39421         Add WebKitTestRunner to the WebKit2 solution
   39422 
   39423         * WebKit2.sln: Add InjectedBundle and WebKitTestRunner projects.  Also change the build dependency order from
   39424         DumpRunderTree --> WebKitAPITest to
   39425         DumpRenderTree --> InjectedBundle --> WebKitTestRunner --> WebKitAPITest
   39426 
   39427 2010-07-15  Anders Carlsson  <andersca (a] apple.com>
   39428 
   39429         Reviewed by Dan Bernstein.
   39430 
   39431         Set notifyData to the stream's notification data
   39432         https://bugs.webkit.org/show_bug.cgi?id=42429
   39433 
   39434         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   39435         (WebKit::NetscapePluginStream::start):
   39436 
   39437 2010-07-15  Brent Fulgham  <bfulgham (a] webkit.org>
   39438 
   39439         Build fix.  Don't include CoreGraphics.h on non-CG builds.
   39440 
   39441         * WebKit2Prefix.h: Conditionalize include of CoreGraphics.h
   39442         to avoid build break on WinCairo.
   39443 
   39444 2010-07-15  Anders Carlsson  <andersca (a] apple.com>
   39445 
   39446         Reviewed by Sam Weinig.
   39447 
   39448         If needed, NPN_GetURL the src URL
   39449         https://bugs.webkit.org/show_bug.cgi?id=42424
   39450 
   39451         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   39452         (WebKit::NetscapePlugin::NPP_GetValue):
   39453         Add NPP_GetValue wrapper.
   39454 
   39455         (WebKit::NetscapePlugin::shouldLoadSrcURL):
   39456         Check whether the src url should be cancelled.
   39457 
   39458         (WebKit::NetscapePlugin::initialize):
   39459         If the src URL should be loaded, then load it.
   39460         
   39461 2010-07-15  Anders Carlsson  <andersca (a] apple.com>
   39462 
   39463         Reviewed by Sam Weinig.
   39464 
   39465         Stop the plug-in stream when it's finished loading
   39466         https://bugs.webkit.org/show_bug.cgi?id=42423
   39467 
   39468         * WebProcess/Plugins/DummyPlugin.cpp:
   39469         (WebKit::DummyPlugin::streamDidFinishLoading):
   39470         * WebProcess/Plugins/DummyPlugin.h:
   39471         Add empty stub.
   39472         
   39473         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   39474         (WebKit::NetscapePlugin::streamDidFinishLoading):
   39475         Call NetscapePluginStream::didFinishLoading.
   39476 
   39477         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   39478         (WebKit::NetscapePluginStream::didFinishLoading):
   39479         Stop the stream with NPRES_DONE.
   39480 
   39481         * WebProcess/Plugins/Plugin.h:
   39482         Add streamDidFinishLoading.
   39483 
   39484         * WebProcess/Plugins/PluginView.cpp:
   39485         (WebKit::PluginView::Stream::didFinishLoading):
   39486         Call Plugin::streamDidFinishLoading.
   39487 
   39488 2010-07-15  Anders Carlsson  <andersca (a] apple.com>
   39489 
   39490         Reviewed by Sam Weinig.
   39491 
   39492         Pass URL stream data to the plug-in
   39493         https://bugs.webkit.org/show_bug.cgi?id=42420
   39494 
   39495         * WebProcess/Plugins/DummyPlugin.cpp:
   39496         (WebKit::DummyPlugin::streamDidReceiveData):
   39497         * WebProcess/Plugins/DummyPlugin.h:
   39498         Add empty stub.
   39499 
   39500         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   39501         (WebKit::NetscapePlugin::streamDidReceiveData):
   39502         Call NetscapePluginStream::didReceiveData.
   39503 
   39504         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   39505         (WebKit::NetscapePluginStream::didReceiveData):
   39506         Deliver the data to the plug-in.
   39507 
   39508         * WebProcess/Plugins/Plugin.h:
   39509         Add pure virtual streamDidReceiveData member function.
   39510 
   39511         * WebProcess/Plugins/PluginView.cpp:
   39512         (WebKit::PluginView::Stream::didReceiveData):
   39513         Call Plugin::streamDidReceiveData.
   39514 
   39515 2010-07-15  Anders Carlsson  <andersca (a] apple.com>
   39516 
   39517         Reviewed by Sam Weinig.
   39518 
   39519         Handle failed loads correctly
   39520         https://bugs.webkit.org/show_bug.cgi?id=42418
   39521 
   39522         * WebProcess/Plugins/DummyPlugin.cpp:
   39523         (WebKit::DummyPlugin::streamDidFail):
   39524         * WebProcess/Plugins/DummyPlugin.h:
   39525         Add empty stub.
   39526 
   39527         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   39528         (WebKit::NetscapePlugin::streamDidFail):
   39529         Call NetscapePluginStream::didFail.
   39530     
   39531         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   39532         (WebKit::NetscapePluginStream::didReceiveResponse):
   39533         Take a reference to the plug-in stream in case starting it causes it to be destroyed.
   39534         
   39535         (WebKit::NetscapePluginStream::didFail):
   39536         Take a reference to the plug-in stream in case stopping it causes it to be destroyed.
   39537 
   39538         (WebKit::NetscapePluginStream::destroy):
   39539         Cancel the stream.
   39540 
   39541         (WebKit::NetscapePluginStream::start):
   39542         If we fail to start the stream, cancel the load.
   39543 
   39544         (WebKit::NetscapePluginStream::cancel):
   39545         Call NetscapePlugin::cancelStreamLoad.
   39546 
   39547         (WebKit::NetscapePluginStream::notifyAndDestroyStream):
   39548         Don't call cancel here. notifyAndDestroyStream can be called when we don't want to cancel the
   39549         load, such as when it's already failed to load.
   39550 
   39551         * WebProcess/Plugins/Netscape/NetscapePluginStream.h:
   39552         Add didFail.
   39553 
   39554         * WebProcess/Plugins/Plugin.h:
   39555         Add pure virtual streamDidFail member function.
   39556 
   39557         * WebProcess/Plugins/PluginView.cpp:
   39558         (WebKit::PluginView::Stream::Stream):
   39559         Initialize m_streamWasCancelled to false.
   39560 
   39561         (WebKit::PluginView::Stream::cancel):
   39562         Set m_streamWasCancelled to true.
   39563 
   39564         (WebKit::PluginView::Stream::didFail):
   39565         Call Plugin::streamDidFail.
   39566 
   39567 2010-07-15  Sam Weinig  <sam (a] webkit.org>
   39568 
   39569         Reviewed by Anders Carlsson.
   39570 
   39571         Fix for https://bugs.webkit.org/show_bug.cgi?id=42358
   39572         <rdar://problem/8194512>
   39573         Hyphenation tests crash the Web process
   39574 
   39575         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
   39576         (InitWebCoreSystemInterface): Add missing initializer.
   39577 
   39578 2010-07-15  Anders Carlsson  <andersca (a] apple.com>
   39579 
   39580         Attempt to fix the Windows build.
   39581 
   39582         * WebProcess/Plugins/PluginView.cpp:
   39583         (WebKit::PluginView::Stream::didReceiveResponse):
   39584         expectedContentLength should be a signed long long.
   39585 
   39586 2010-07-15  Anders Carlsson  <andersca (a] apple.com>
   39587 
   39588         Reviewed by Sam Weinig.
   39589 
   39590         Cancel stream loads when destroying NetscapePluginStreams
   39591         https://bugs.webkit.org/show_bug.cgi?id=42413
   39592 
   39593         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   39594         (WebKit::NetscapePlugin::cancelStreamLoad):
   39595         Call PluginController::cancelStreamLoad.
   39596 
   39597         (WebKit::NetscapePlugin::streamDidReceiveResponse):
   39598         Call NetscapePluginStream::didReceiveResponse.
   39599 
   39600         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   39601         (WebKit::NetscapePluginStream::didReceiveResponse):
   39602         Try to start the stream.
   39603 
   39604         (WebKit::NetscapePluginStream::sendJavaScriptStream):
   39605         Don't stop the stream if it can't be started. start handles that now.
   39606 
   39607         (WebKit::isSupportedTransferMode):
   39608         Return whether the given transfer mode is supported.
   39609 
   39610         (WebKit::NetscapePluginStream::start):
   39611         If the stream fails to start, call notifyAndDestroyStream. If it starts successfully but has
   39612         an unsupported transfer mode, call stop.
   39613         
   39614         (WebKit::NetscapePluginStream::notifyAndDestroyStream):
   39615         Cancel the stream load unless it's being destroyed because it has finished loading.
   39616 
   39617         * WebProcess/Plugins/PluginController.h:
   39618         Add cancelStreamLoad pure virtual member function.
   39619 
   39620         * WebProcess/Plugins/PluginView.cpp:
   39621         (WebKit::PluginView::Stream::cancel):
   39622         Tell the stream loader to cancel and null it out.
   39623 
   39624         (WebKit::PluginView::cancelStreamLoad):
   39625         Get the stream and cancel it.
   39626 
   39627         * WebProcess/Plugins/PluginView.h:
   39628 
   39629 2010-07-15  Anders Carlsson  <andersca (a] apple.com>
   39630 
   39631         Reviewed by Sam Weinig.
   39632 
   39633         Start loading plug-in streams
   39634         https://bugs.webkit.org/show_bug.cgi?id=42407
   39635 
   39636         * WebProcess/Plugins/DummyPlugin.cpp:
   39637         (WebKit::DummyPlugin::streamDidReceiveResponse):
   39638         * WebProcess/Plugins/DummyPlugin.h:
   39639         Add empty stub.
   39640 
   39641         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   39642         (WebKit::NetscapePlugin::streamDidReceiveResponse):
   39643         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   39644         Add empty stub.
   39645 
   39646         * WebProcess/Plugins/Plugin.h:
   39647         Add streamDidReceiveResponse pure virtual member function.
   39648 
   39649         * WebProcess/Plugins/PluginView.cpp:
   39650         Make PluginView::Stream a NetscapePlugInStreamLoaderClient.
   39651 
   39652         (WebKit::PluginView::Stream::start):
   39653         Create a plug-in loader and start loading.
   39654 
   39655         (WebKit::PluginView::Stream::didReceiveResponse):
   39656         Get the necessary data out of the resource response and call streamDidReceiveResponse.
   39657 
   39658         (WebKit::PluginView::Stream::didReceiveData):
   39659         (WebKit::PluginView::Stream::didFail):
   39660         (WebKit::PluginView::Stream::didFinishLoading):
   39661         Add empty stubs.
   39662 
   39663 2010-07-15  Sam Weinig  <sam (a] webkit.org>
   39664 
   39665         Reviewed by Anders Carlsson.
   39666 
   39667         Patch for https://bugs.webkit.org/show_bug.cgi?id=42396
   39668         Give the navigation type in the policy client callbacks meaning. 
   39669 
   39670         - Use the new WKFrameNavigationType instead of just uint32_t.
   39671 
   39672         * UIProcess/API/C/WKAPICast.h:
   39673         (toWK):
   39674         Add conversion method from WebCore::NavigationType to WKFrameNavigationType.
   39675         * UIProcess/API/C/WKPage.h:
   39676         * UIProcess/WebPageProxy.cpp:
   39677         (WebKit::WebPageProxy::didReceiveMessage):
   39678         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
   39679         (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
   39680         * UIProcess/WebPageProxy.h:
   39681         * UIProcess/WebPolicyClient.cpp:
   39682         (WebKit::WebPolicyClient::decidePolicyForNavigationAction):
   39683         (WebKit::WebPolicyClient::decidePolicyForNewWindowAction):
   39684         * UIProcess/WebPolicyClient.h:
   39685         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   39686 
   39687 2010-07-15  Anders Carlsson  <andersca (a] apple.com>
   39688 
   39689         Reviewed by Sam Weinig.
   39690 
   39691         Add a PluginView::Stream class
   39692         https://bugs.webkit.org/show_bug.cgi?id=42398
   39693 
   39694         * WebProcess/Plugins/PluginView.cpp:
   39695         Add the Stream class.
   39696 
   39697         (WebKit::PluginView::performURLRequest):
   39698         Create the stream and start it.
   39699 
   39700         (WebKit::PluginView::addStream):
   39701         Add the stream to the map.
   39702 
   39703         (WebKit::PluginView::removeStream):
   39704         Remove the stream from the map.
   39705 
   39706         * WebProcess/Plugins/PluginView.h:
   39707         Add Stream forward declaration and the m_streams map.
   39708 
   39709 2010-07-15  Anders Carlsson  <andersca (a] apple.com>
   39710 
   39711         Reviewed by Sam Weinig.
   39712 
   39713         Don't allow multiple calls to NetscapePluginStream::stop
   39714         https://bugs.webkit.org/show_bug.cgi?id=42395
   39715 
   39716         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   39717         (WebKit::NetscapePluginStream::NetscapePluginStream):
   39718         Initialize m_urlNotifyHasBeenCalled.
   39719 
   39720         (WebKit::NetscapePluginStream::~NetscapePluginStream):
   39721         Assert that the stream didn't need a URL notification or that one was sent.
   39722 
   39723         (WebKit::NetscapePluginStream::sendJavaScriptStream):
   39724         Don't call stop in the JS failure case because the stream won't be started.
   39725 
   39726         (WebKit::NetscapePluginStream::stop):
   39727         Remove m_isStarted check and add an assertion instead. Move code that calls NPP_URLNotify and
   39728         destroys the stream out to a separate function.
   39729 
   39730         (WebKit::NetscapePluginStream::notifyAndDestroyStream):
   39731         Call NPP_URLNotify if necessary and destroy the stream.
   39732 
   39733         * WebProcess/Plugins/Netscape/NetscapePluginStream.h:
   39734 
   39735 2010-07-15  Anders Carlsson  <andersca (a] apple.com>
   39736 
   39737         Reviewed by Sam Weinig.
   39738 
   39739         Implement NPN_DestroyStream
   39740         https://bugs.webkit.org/show_bug.cgi?id=42393
   39741 
   39742         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   39743         (WebKit::NPN_DestroyStream):
   39744         Call NetscapePlugin::destroyStream.
   39745 
   39746         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   39747         (WebKit::NetscapePlugin::destroyStream):
   39748         Check if the stream is valid, and if it is call NetscapePluginStream::destroy.
   39749 
   39750         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   39751         (WebKit::NetscapePluginStream::sendJavaScriptStream):
   39752         Keep a reference to the stream in case it's destroyed by an NPP_ call.
   39753 
   39754         (WebKit::NetscapePluginStream::destroy):
   39755         Verify that the stream can be destroyed and stop it.
   39756 
   39757         (WebKit::NetscapePluginStream::deliverDataToPlugin):
   39758         Add m_isStarted checks after any calls to NPP_ functions.
   39759 
   39760         (WebKit::NetscapePluginStream::stop):
   39761         Set m_isStarted to false before calling NPP_DestroyStream.
   39762         
   39763         * WebProcess/Plugins/Netscape/NetscapePluginStream.h:
   39764         (WebKit::NetscapePluginStream::npStream):
   39765         Add NPStream getter.
   39766 
   39767 2010-07-15  Anders Carlsson  <andersca (a] apple.com>
   39768 
   39769         Reviewed by Darin Adler.
   39770 
   39771         WebKitTestRunner goes off the deep end, spinning in a dispatch queue thread
   39772         https://bugs.webkit.org/show_bug.cgi?id=42355
   39773 
   39774         Sometimes, when receiving a message whose size is very close to the inlineMessageMaxSize,
   39775         mach_msg would return with MACH_RCV_TOO_LARGE. In debug builds we would assert, but in release
   39776         builds we would just bail and the receiveSourceEventHandler would be run again shortly since we didn't
   39777         actually pull the message off the mach message queue.
   39778 
   39779         Fix this by setting the receive source buffer size to include the maximum message trailer size, which
   39780         mach_msg requires. Also, handle mach_msg returning MACH_RCV_TOO_LARGE (even though in theory it would never happen
   39781         now that the receivedBufferSize always includes the maximum message trailer size.
   39782 
   39783         * Platform/CoreIPC/mac/ConnectionMac.cpp:
   39784         (CoreIPC::Connection::receiveSourceEventHandler):
   39785         Use a Vector with inline data instead of a char array. This way we can resize the Vector if the message received
   39786         is too big.
   39787 
   39788 2010-07-15  Anders Carlsson  <andersca (a] apple.com>
   39789 
   39790         Reviewed by Darin Adler.
   39791 
   39792         Send JavaScript stream data to plug-ins
   39793         https://bugs.webkit.org/show_bug.cgi?id=42384
   39794 
   39795         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   39796         (WebKit::NetscapePlugin::NPP_WriteReady):
   39797         (WebKit::NetscapePlugin::NPP_Write):
   39798         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   39799         Add NPP_ wrappers.
   39800         
   39801         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   39802         (WebKit::NetscapePluginStream::NetscapePluginStream):
   39803         Initialize m_deliveryDataTimer and m_stopstreamWhenDoneDelivering.
   39804 
   39805         (WebKit::NetscapePluginStream::sendJavaScriptStream):
   39806         Call deliverData and stop.
   39807 
   39808         (WebKit::NetscapePluginStream::deliverData):
   39809         Add the data to m_deliveryData and call deliverDataToPlugin.
   39810 
   39811         (WebKit::NetscapePluginStream::deliverDataToPlugin):
   39812         Deliver the data in m_deliveryData to the plug-in. Call NPP_WriteReady to see how much
   39813         data the plug-in can handle right now. If the plug-in returns zero or a negative value, delay the
   39814         delivery using the delivery data timer. Otherwise, call NPP_Write in chunks until all the data has been
   39815         delivered, then stop the stream if needed.
   39816 
   39817         (WebKit::NetscapePluginStream::stop):
   39818         If the reason for stopping the stream is that it's finished and the plug-in hasn't processed all the data,
   39819         don't close the stream now. Instead, set m_stopStreamWhenDoneDelivering to true which will cause the stream to be
   39820         closed once all data has been delivered.
   39821 
   39822         * WebProcess/Plugins/Netscape/NetscapePluginStream.h:
   39823         Add member functions and member variables.
   39824 
   39825 2010-07-14  Brent Fulgham  <bfulgham (a] webkit.org>
   39826 
   39827         Reviewed by Steve Falkenburg.
   39828 
   39829         Patch for https://bugs.webkit.org/show_bug.cgi?id=42299
   39830         Correct WinCairo build for new WebKit2 project structure.
   39831 
   39832         * win/WebKit2Apple.vsprops: Put WebKit2.def here.
   39833         * win/WebKit2CFLite.def: Added CFLite version of def file.
   39834         * win/WebKit2CFLite.vsprops: Add new WebKit2CFLite.def here.
   39835         * win/WebKit2Common.vsprops: Remove WebKit2.def definition as
   39836           WinCairo and Apple need different versions of this.
   39837         * win/WebKit2WebProcess.vcproj: Add a new Debug_Cairo target
   39838           for the WebKit2WebProcess project.
   39839 
   39840 2010-07-15  Mark Rowe  <mrowe (a] apple.com>
   39841 
   39842         Update the sorting in the Xcode project files.
   39843 
   39844         * WebKit2.xcodeproj/project.pbxproj:
   39845 
   39846 2010-07-14  Sam Weinig  <sam (a] webkit.org>
   39847 
   39848         Reviewed by Dan Bernstein.
   39849 
   39850         Patch for https://bugs.webkit.org/show_bug.cgi?id=42315
   39851         <rdar://problem/8185281>
   39852         All text in WebKit2 draws with no subpixel antialiasing
   39853 
   39854         - Change CGBitmapInfo passed to CGBitmapContextCreate and CGImageCreate
   39855           from kCGImageAlphaPremultipliedLast to kCGImageAlphaPremultipliedFirst | kCGBitmapByteOrder32Host.
   39856 
   39857         * Shared/mac/UpdateChunk.cpp:
   39858         (WebKit::UpdateChunk::createImage):
   39859         * UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm:
   39860         (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore):
   39861         * WebProcess/WebPage/mac/ChunkedUpdateDrawingAreaMac.cpp:
   39862         (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):
   39863 
   39864 2010-07-14  Maciej Stachowiak  <mjs (a] apple.com>
   39865 
   39866         Reviewed by Mark Rowe.
   39867 
   39868         - Fix WebKitTestRunner build
   39869 
   39870         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Add stdint.h include.
   39871 
   39872 2010-07-14  Anders Carlsson  <andersca (a] apple.com>
   39873 
   39874         Try to fix Windows build.
   39875 
   39876         * win/WebKit2.vcproj:
   39877 
   39878 2010-07-14  Anders Carlsson  <andersca (a] apple.com>
   39879 
   39880         Reviewed by Sam Weinig.
   39881 
   39882         More work on plug-in streams
   39883         https://bugs.webkit.org/show_bug.cgi?id=42308
   39884 
   39885         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   39886         (WebKit::NetscapePlugin::loadURL):
   39887         If the target is null, create a NetscapePluginStream and add it to the m_streams map.
   39888 
   39889         (WebKit::NetscapePlugin::removePluginStream):
   39890         Remove the given NetscapePluginStream from the m_streams map.
   39891 
   39892         (WebKit::NetscapePlugin::NPP_NewStream):
   39893         (WebKit::NetscapePlugin::NPP_DestroyStream):
   39894         Add NPP_ wrappers.
   39895 
   39896         (WebKit::NetscapePlugin::streamFromID):
   39897         Return the plug-in stream given a stream ID.
   39898 
   39899         (WebKit::NetscapePlugin::didEvaluateJavaScript):
   39900         Find the plug-in stream and call sendJavaScriptStream.
   39901 
   39902         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
   39903         (WebKit::NetscapePluginStream::NetscapePluginStream):
   39904         Initialize member variables.
   39905 
   39906         (WebKit::NetscapePluginStream::~NetscapePluginStream):
   39907         Assert that we aren't started.
   39908 
   39909         (WebKit::NetscapePluginStream::sendJavaScriptStream):
   39910         If the JavaScript request was successful, start the stream. Otherwise call stop() which just
   39911         ends up calling NPP_URLNotify when the stream isn't started.
   39912 
   39913         (WebKit::NetscapePluginStream::start):
   39914         Set up the NPStream object. Call NPP_NewStream. Return false if the call was not successful, or if
   39915         the requested stream type is one that we don't yet support.
   39916 
   39917         (WebKit::NetscapePluginStream::stop):
   39918         Call NPP_DestroyStream if the stream is started. Call NPP_URLNotify if necessary.
   39919 
   39920         * WebProcess/Plugins/PluginView.cpp:
   39921         (WebKit::PluginView::performJavaScriptURLRequest):
   39922         Remove unneeded comment.
   39923 
   39924 2010-07-14  Sam Weinig  <sam (a] webkit.org>
   39925 
   39926         Reviewed by John Sullivan.
   39927 
   39928         Make Back/Forward work.
   39929 
   39930         * UIProcess/WebPageProxy.cpp:
   39931         (WebKit::WebPageProxy::goForward): Pass the item ID to avoid roundtrip.
   39932         (WebKit::WebPageProxy::goBack): Ditto.
   39933         (WebKit::WebPageProxy::didReceiveMessage): Implement WebPageProxyMessage::BackForwardGoToItem.
   39934         * WebProcess/WebPage/WebPage.cpp:
   39935         (WebKit::WebPage::WebPage):
   39936         (WebKit::WebPage::goForward): Use m_page->goToItem with the correct type instead of the Page shortcut.
   39937         (WebKit::WebPage::goBack): Ditto.
   39938         (WebKit::WebPage::didReceiveMessage):
   39939         * WebProcess/WebPage/WebPage.h:
   39940         Remove unused m_canGoBack and m_canGoForward.
   39941 
   39942 2010-07-14  Anders Carlsson  <andersca (a] apple.com>
   39943 
   39944         Reviewed by Darin Adler.
   39945 
   39946         Add NetscapePluginStream class
   39947         https://bugs.webkit.org/show_bug.cgi?id=42296
   39948 
   39949         * WebKit2.xcodeproj/project.pbxproj:
   39950         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp: Added.
   39951         (WebKit::NetscapePluginStream::NetscapePluginStream):
   39952         (WebKit::NetscapePluginStream::~NetscapePluginStream):
   39953         * WebProcess/Plugins/Netscape/NetscapePluginStream.h: Added.
   39954         (WebKit::NetscapePluginStream::create):
   39955 
   39956 2010-07-14  Sam Weinig  <sam (a] webkit.org>
   39957 
   39958         Reviewed by Darin Adler.
   39959 
   39960         Patch for https://bugs.webkit.org/show_bug.cgi?id=42297
   39961         <rdar://problem/8187355>
   39962         Make titles in WebBackForwardListItems work.
   39963 
   39964         - Make WebBackForwardListItemMap per WebProcessProxy to allow updating
   39965           them separate from a page. They are conceptually per process anyway.
   39966         - Add a message to add or update a WebBackForwardListItemMap triggered
   39967           by the WebCore::notifyHistoryItemChanged mechanism.
   39968 
   39969         * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:
   39970         (WebProcessProxyMessage::):
   39971         Add AddOrUpdateBackForwardItem message.
   39972 
   39973         * UIProcess/WebBackForwardListItem.h:
   39974         (WebKit::WebBackForwardListItem::setOriginalURL):
   39975         (WebKit::WebBackForwardListItem::setURL):
   39976         (WebKit::WebBackForwardListItem::setTitle):
   39977         Add setters.
   39978 
   39979         * UIProcess/WebPageProxy.cpp:
   39980         (WebKit::WebPageProxy::didReceiveMessage):
   39981         BackForwardAddItem now assumes the item has already been created, so
   39982         now just forwards the add message onto the WebBackForwardList.
   39983 
   39984         (WebKit::WebPageProxy::addItemToBackForwardList): Take a WebBackForwardList instead of an ID.
   39985         (WebKit::WebPageProxy::goToItemInBackForwardList): Ditto.
   39986         * UIProcess/WebPageProxy.h: Ditto.
   39987 
   39988         * UIProcess/WebProcessProxy.cpp:
   39989         (WebKit::WebProcessProxy::webBackForwardItem):
   39990         (WebKit::WebProcessProxy::addOrUpdateBackForwardListItem):
   39991         (WebKit::WebProcessProxy::didReceiveMessage):
   39992         (WebKit::WebProcessProxy::didReceiveSyncMessage):
   39993         * UIProcess/WebProcessProxy.h:
   39994         Have the WebProcessProxy manage the WebBackForwardListItems.
   39995 
   39996         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   39997         (WebKit::updateBackForwardItem):
   39998         (WebKit::WK2NotifyHistoryItemChanged): Use this to notify UIProcess
   39999         of HistoryItem changes (such as the title being added).
   40000         (WebKit::WebBackForwardListProxy::WebBackForwardListProxy):
   40001         Register the notifyHistoryItemChanged function.
   40002         (WebKit::WebBackForwardListProxy::addItem):
   40003         Just send the ID as the updateBackForwardItem is already going to have
   40004         been called by this time.
   40005 
   40006 2010-07-14  Anders Carlsson  <andersca (a] apple.com>
   40007 
   40008         Reviewed by Sam Weinig.
   40009 
   40010         Call NPN_URLNotify for frame loads initiated by plug-ins
   40011         https://bugs.webkit.org/show_bug.cgi?id=42291
   40012 
   40013         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   40014         (WebKit::NetscapePlugin::loadURL):
   40015         If needed, keep track of the request ID and URL so we can call NPP_URLNotify at a later point.
   40016 
   40017         (WebKit::NetscapePlugin::frameDidFinishLoading):
   40018         Get the notification data and the URL from the map and call NPP_URLNotify.
   40019 
   40020         (WebKit::NetscapePlugin::frameDidFail):
   40021         Get the notification data and the URL from the map and call NPP_URLNotify.
   40022 
   40023         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   40024 
   40025 2010-07-14  Anders Carlsson  <andersca (a] apple.com>
   40026 
   40027         Reviewed by Sam Weinig.
   40028 
   40029         Add NetscapePlugin::NPP_ member functions for calling into the plug-in
   40030         https://bugs.webkit.org/show_bug.cgi?id=42287
   40031 
   40032         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   40033         (WebKit::NetscapePlugin::NPP_New):
   40034         (WebKit::NetscapePlugin::NPP_Destroy):
   40035         (WebKit::NetscapePlugin::NPP_SetWindow):
   40036         (WebKit::NetscapePlugin::NPP_URLNotify):
   40037         (WebKit::NetscapePlugin::callSetWindow):
   40038         (WebKit::NetscapePlugin::initialize):
   40039         (WebKit::NetscapePlugin::destroy):
   40040         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   40041 
   40042 2010-07-14  Anders Carlsson  <andersca (a] apple.com>
   40043 
   40044         Reviewed by Sam Weinig.
   40045 
   40046         Send JavaScript url request results back to the plug-in
   40047         https://bugs.webkit.org/show_bug.cgi?id=42277
   40048 
   40049         * WebProcess/Plugins/DummyPlugin.cpp:
   40050         (WebKit::DummyPlugin::didEvaluateJavaScript):
   40051         * WebProcess/Plugins/DummyPlugin.h:
   40052         Add empty stub.
   40053 
   40054         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   40055         (WebKit::NetscapePlugin::didEvaluateJavaScript):
   40056         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   40057         Add Empty stub.
   40058 
   40059         * WebProcess/Plugins/Plugin.h:
   40060         Add didEvaluateJavaScript pure virtual member function.
   40061 
   40062         * WebProcess/Plugins/PluginView.cpp:
   40063         (WebKit::PluginView::performJavaScriptURLRequest):
   40064         If target is not null, Call Plugin::frameDidFail or Plugin::frameDidFinishLoading.
   40065         If target is null, call didEvaluateJavaScript with the result string.
   40066 
   40067 2010-07-14  Sam Weinig  <sam (a] webkit.org>
   40068 
   40069         Reviewed by Darin Adler.
   40070 
   40071         Patch for https://bugs.webkit.org/show_bug.cgi?id=42232
   40072         Make changing Cursors work in WebKit2.
   40073 
   40074         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   40075         Add SetCursor message.
   40076 
   40077         * Shared/WebCoreArgumentCoders.h:
   40078         Add encoding/decoding of Cursors. For now we don't support Custom
   40079         cursors.
   40080 
   40081         * UIProcess/API/mac/PageClientImpl.h:
   40082         * UIProcess/API/mac/PageClientImpl.mm:
   40083         (WebKit::PageClientImpl::setCursor):
   40084         * UIProcess/PageClient.h:
   40085         Add pass through functions to get the cursor from the WebPageProxy
   40086         to the WKView.
   40087 
   40088         * UIProcess/API/mac/WKView.mm:
   40089         (-[WKView _setCursor:]):
   40090         * UIProcess/API/mac/WKViewInternal.h:
   40091         Implement changing the cursor.
   40092 
   40093         * UIProcess/WebPageProxy.cpp:
   40094         (WebKit::WebPageProxy::didReceiveMessage):
   40095         (WebKit::WebPageProxy::setCursor):
   40096         * UIProcess/WebPageProxy.h:
   40097         Decode the cursor.
   40098 
   40099         * UIProcess/win/WebView.cpp:
   40100         (WebKit::WebView::wndProc):
   40101         (WebKit::WebView::WebView):
   40102         (WebKit::WebView::onSetCursor):
   40103         (WebKit::WebView::setCursor):
   40104         * UIProcess/win/WebView.h:
   40105         Implement changing the cursor.
   40106 
   40107         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   40108         (WebKit::WebChromeClient::setCursor):
   40109         (WebKit::WebChromeClient::setLastSetCursorToCurrentCursor):
   40110         * WebProcess/WebCoreSupport/WebChromeClient.h:
   40111         Encode the cursor when setCursor is called.
   40112 
   40113 2010-07-13  Anders Carlsson  <andersca (a] apple.com>
   40114 
   40115         Reviewed by Sam Weinig.
   40116 
   40117         Add support for loading javascript: URLs
   40118         https://bugs.webkit.org/show_bug.cgi?id=42221
   40119 
   40120         * WebProcess/Plugins/DummyPlugin.cpp:
   40121         (WebKit::DummyPlugin::controller):
   40122         * WebProcess/Plugins/DummyPlugin.h:
   40123         Add stub function.
   40124 
   40125         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   40126         (WebKit::NetscapePlugin::destroy):
   40127         Set the plug-in controller to 0.
   40128 
   40129         (WebKit::NetscapePlugin::controller):
   40130         Return the plug-in controller.
   40131 
   40132         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   40133         Add controller() member function.
   40134 
   40135         * WebProcess/Plugins/Plugin.h:
   40136         Add controller() pure virtual member function.
   40137         
   40138         * WebProcess/Plugins/PluginView.cpp:
   40139         (WebKit::PluginView::performURLRequest):
   40140         If the given URL request has a javascript: protocol, call
   40141         performJavaScriptURLRequest.
   40142 
   40143         (WebKit::PluginView::performFrameLoadURLRequest):
   40144         Add a security origin check.
   40145 
   40146         (WebKit::PluginView::performJavaScriptURLRequest):
   40147         Evaluate the JavaScript code, Get the resulting string.
   40148 
   40149         * WebProcess/Plugins/PluginView.h:
   40150         Add performJavaScriptURLRequest.
   40151 
   40152 2010-07-13  Anders Carlsson  <andersca (a] apple.com>
   40153 
   40154         Reviewed by Sam Weinig.
   40155 
   40156         Add support for URL frame loading using NPN_GetURLNotify
   40157         https://bugs.webkit.org/show_bug.cgi?id=42192
   40158 
   40159         * WebProcess/Plugins/DummyPlugin.cpp:
   40160         (WebKit::DummyPlugin::frameDidFinishLoading):
   40161         (WebKit::DummyPlugin::frameDidFail):
   40162         * WebProcess/Plugins/DummyPlugin.h:
   40163         Add empty stubs.
   40164         
   40165         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   40166         Implement NPN_GetURLNotify and have it call NetscapePlugin::loadURL.
   40167 
   40168         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   40169         (WebKit::NetscapePlugin::NetscapePlugin):
   40170         Initialize m_nextRequestID to 0.
   40171 
   40172         (WebKit::NetscapePlugin::loadURL):
   40173         Ask the plug-in controller to load the URL.
   40174 
   40175         (WebKit::NetscapePlugin::frameDidFinishLoading):
   40176         (WebKit::NetscapePlugin::frameDidFail):
   40177         Add empty stubs for now.
   40178 
   40179         * WebProcess/Plugins/Plugin.h:
   40180         Add new member functions for frame load notifications.
   40181 
   40182         * WebProcess/Plugins/PluginController.h:
   40183         Add loadURL.
   40184 
   40185         * WebProcess/Plugins/PluginView.cpp:
   40186         (WebKit::PluginView::URLRequest::URLRequest):
   40187         Add class that represents an URL request.
   40188 
   40189         (WebKit::PluginView::PluginView):
   40190         Initialize m_pendingURLRequestsTimer.
   40191 
   40192         (WebKit::PluginView::~PluginView):
   40193         Unset all active load listeners.
   40194 
   40195         (WebKit::PluginView::pendingURLRequestsTimerFired):
   40196         Take the first request in the queue and process it.
   40197 
   40198         (WebKit::PluginView::performURLRequest):
   40199         Call performFrameLoadURLRequest if necessary.
   40200 
   40201         (WebKit::PluginView::performFrameLoadURLRequest):
   40202         Find a frame to load the request in. If a frame doesn't exist try to create a new frame.
   40203 
   40204         (WebKit::PluginView::loadURL):
   40205         Create a URLRequest and add it to the queue.
   40206 
   40207         (WebKit::PluginView::didFinishLoad):
   40208         Get the pending frame load request and call Plugin::frameDidFinishLoading.
   40209 
   40210         (WebKit::PluginView::didFailLoad):
   40211         Get the pending frame load request and call Plugin::frameDidFail.
   40212 
   40213         * WebProcess/Plugins/PluginView.h:
   40214         Inherit from WebFrame::LoadListener.
   40215 
   40216         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   40217         (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
   40218         (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
   40219         (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
   40220         (WebKit::WebFrameLoaderClient::didFinishLoad):
   40221         Call the WebFrame's load listener if needed.
   40222 
   40223         * WebProcess/WebPage/WebFrame.cpp:
   40224         (WebKit::WebFrame::WebFrame):
   40225         Initialize m_loadListener to 0.
   40226 
   40227         * WebProcess/WebPage/WebFrame.h:
   40228         Add a LoadListener class that the plug-in view can use to track frame loads.
   40229 
   40230         (WebKit::WebFrame::LoadListener::~LoadListener):
   40231         (WebKit::WebFrame::setLoadListener):
   40232         (WebKit::WebFrame::loadListener):
   40233 
   40234 2010-07-13  Diego Gonzalez  <diegohcg (a] webkit.org>
   40235 
   40236         Reviewed by Kenneth Rohde Christiansen.
   40237 
   40238         [Qt] [WebKit2] Hook up navigation actions
   40239         https://bugs.webkit.org/show_bug.cgi?id=42183
   40240 
   40241         Make Back, Forward, Stop and Reload being enable/disabled according
   40242         page loading.
   40243 
   40244         * UIProcess/API/qt/ClientImpl.cpp:
   40245         (qt_wk_didStartProvisionalLoadForFrame):
   40246         (qt_wk_didCommitLoadForFrame):
   40247         (qt_wk_didFinishLoadForFrame):
   40248         (qt_wk_didFailLoadWithErrorForFrame):
   40249         * UIProcess/API/qt/qwkpage.cpp:
   40250         (QWKPagePrivate::updateAction):
   40251 
   40252 2010-07-13  John Sullivan  <sullivan (a] apple.com>
   40253 
   40254         Written by Simon Fraser, reviewed by me.
   40255 
   40256         Cleaner fix for previous check-in.
   40257 
   40258         * UIProcess/WebBackForwardList.cpp:
   40259         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
   40260         Use std::max<int> for int-casting brevity.
   40261 
   40262 2010-07-13  John Sullivan  <sullivan (a] apple.com>
   40263 
   40264         Reviewed by Sam Weinig.
   40265 
   40266         Fixed signed/unsigned problem that led to bogus contents in the array
   40267         returned by WKBackForwardListCopyBackListWithLimit().
   40268 
   40269         * UIProcess/WebBackForwardList.cpp:
   40270         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
   40271         Cast m_current and limit to signed values in std::max call.
   40272 
   40273 2010-07-13  Steve Falkenburg  <sfalken (a] apple.com>
   40274 
   40275         Reviewed by Ada Chan.
   40276 
   40277         Fix missing resources causing layout test failures
   40278         https://bugs.webkit.org/show_bug.cgi?id=42179
   40279         
   40280         Quick fix to get the layout tests going again.
   40281         I'll work on getting resource.h from WebKit into a cross-project
   40282         propagated header after this lands.
   40283 
   40284         * win/WebKit2.rc:
   40285         * win/resource.h: Copied from WebKit/win/WebKit.vcproj/resource.h.
   40286 
   40287 2010-07-13  Anders Carlsson  <andersca (a] apple.com>
   40288 
   40289         Reviewed by Adam Roben.
   40290 
   40291         Make all NPN_ functions static.
   40292 
   40293         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   40294 
   40295 2010-07-13  Anders Carlsson  <andersca (a] apple.com>
   40296 
   40297         Reviewed by Adam Roben.
   40298 
   40299         Document the member functions of the abstract Plugin and PluginController classes.
   40300 
   40301         * WebProcess/Plugins/Plugin.h:
   40302         * WebProcess/Plugins/PluginController.h:
   40303 
   40304 2010-07-13  Simon Hausmann  <simon.hausmann (a] nokia.com>
   40305 
   40306         [Qt] Trivial build fix.
   40307 
   40308         Provide a stub for mimeTypeFromExtension() that uses notImplemented().
   40309 
   40310         * UIProcess/Plugins/qt/PluginInfoStoreQt.cpp:
   40311         (WebKit::PluginInfoStore::mimeTypeFromExtension):
   40312 
   40313 2010-07-13  Simon Hausmann  <simon.hausmann (a] nokia.com>
   40314 
   40315         Reviewed by Kenneth Rohde Christiansen.
   40316 
   40317         [Qt] Tweaks needed to compile WebKit2 with Qt
   40318         https://bugs.webkit.org/show_bug.cgi?id=41604
   40319 
   40320         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   40321         (WebKit::ProcessLauncherHelper::launch): Adjust to PassOwnPtr API changes.
   40322         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Don't include JavaScriptCore.h,
   40323         as it unconditionally includes JSStringRefCF. Instead include JavaScript.h.
   40324 
   40325 2010-07-12  Steve Falkenburg  <sfalken (a] apple.com>
   40326 
   40327         Windows build fix.
   40328         Don't build MiniBrowser except for Debug_Internal.
   40329 
   40330         * WebKit2.sln:
   40331 
   40332 2010-07-12  Steve Falkenburg  <sfalken (a] apple.com>
   40333 
   40334         Reviewed by Maciej Stachowiak.
   40335 
   40336         Make WebKit2 be built by build-webkit (so it will be built by build.webkit.org bots)
   40337         https://bugs.webkit.org/show_bug.cgi?id=40922
   40338         
   40339         Add additional dependent projects. Necessary since our WebKit build on
   40340         Windows is packaged into a DLL with WebKit2.
   40341 
   40342         * WebKit2.sln:
   40343 
   40344 2010-07-12  Mark Rowe  <mrowe (a] apple.com>
   40345 
   40346         Rubber-stamped by Maciej Stachowiak.
   40347 
   40348         Fix WebKit2 to use the same compiler-selection logic as the other projects.
   40349 
   40350         * WebKit2.xcodeproj/project.pbxproj: Don't hard-code WebKit2 to build with GCC 4.2.
   40351 
   40352 2010-07-12  Maciej Stachowiak  <mjs (a] apple.com>
   40353 
   40354         Reviewed by Anders Carlsson.
   40355 
   40356         WKView should override setFrameSize: instead of setFrame:
   40357         https://bugs.webkit.org/show_bug.cgi?id=42127
   40358 
   40359         * UIProcess/API/mac/WKView.mm:
   40360         (-[WKView setFrameSize:]): Override this method instead of setFrame:,
   40361         since that is the right way to do it.
   40362 
   40363 2010-07-12  Steve Falkenburg  <sfalken (a] apple.com>
   40364 
   40365         Reviewed by Alice Liu.
   40366 
   40367         <rdar://problem/8113038> WebKit1 and WebKit2 should build as a single DLL
   40368         https://bugs.webkit.org/show_bug.cgi?id=40921
   40369         
   40370         Pre-WebKit2 WebKit now builds into a static library named WebKitLib.lib.
   40371         WebKit.dll now links in WebCore.lib, WebKitLib.lib and WebKit2 code.
   40372 
   40373         This is a first step. We'll likely want to migrate the remainder of
   40374         the non-deprecated WebKit code (strings, DLLMain, resources) into WebKit2.
   40375 
   40376         * UIProcess/API/C/WKBase.h: Updated to new BUILDING_ name.
   40377         * WebProcess/InjectedBundle/API/c/WKBundleBase.h: Updated to new BUILDING_ name.
   40378         * WebProcess/WebCoreSupport/win/WebCoreLocalizedStrings.cpp: Removed.
   40379         * WebProcess/win/DllMain.cpp: Removed. Overlaps with implementation in WebKitLib.lib.
   40380         * WebProcess/win/WebLocalizableStrings.cpp: Removed. Overlaps with implementation in WebKitLib.lib.
   40381         * WebProcess/win/WebLocalizableStrings.h: Removed. Overlaps with implementation in WebKitLib.lib.
   40382         * win/WebKit2.def: Added. Copied from WebKit project.
   40383         * win/WebKit2.rc: Added resources previously in WebKit.
   40384         * win/WebKit2.vcproj: Changed project name to WebKit so we will link output to WebKit.dll.
   40385         Removed implementations overlapping with WebKitLib (WebCoreLocalizedStrings, DllMain, WebLocalizableStrings, WebProcessMain).
   40386         * win/WebKit2Common.vsprops: Use a framework name of WebKit instead of WebKit2 to reflect project name.
   40387         Renamed BUILDING_WEBKIT2 to BUILDING_WEBKIT since there is now just a single WebKit.dll.
   40388         * win/WebKit2WebProcess.vcproj: Link against WebKit instead of WebKit2 due to renaming.        
   40389         * win/deleteButton.png: Copied from ../WebKit/win/WebKit.vcproj/deleteButton.png.
   40390         * win/deleteButtonPressed.png: Copied from ../WebKit/win/WebKit.vcproj/deleteButtonPressed.png.
   40391         * win/fsVideoAudioVolumeHigh.png: Copied from ../WebKit/win/WebKit.vcproj/fsVideoAudioVolumeHigh.png.
   40392         * win/fsVideoAudioVolumeLow.png: Copied from ../WebKit/win/WebKit.vcproj/fsVideoAudioVolumeLow.png.
   40393         * win/fsVideoExitFullscreen.png: Copied from ../WebKit/win/WebKit.vcproj/fsVideoExitFullscreen.png.
   40394         * win/fsVideoPause.png: Copied from ../WebKit/win/WebKit.vcproj/fsVideoPause.png.
   40395         * win/fsVideoPlay.png: Copied from ../WebKit/win/WebKit.vcproj/fsVideoPlay.png.
   40396         * win/missingImage.png: Copied from ../WebKit/win/WebKit.vcproj/missingImage.png.
   40397         * win/nullplugin.png: Copied from ../WebKit/win/WebKit.vcproj/nullplugin.png.
   40398         * win/panEastCursor.png: Copied from ../WebKit/win/WebKit.vcproj/panEastCursor.png.
   40399         * win/panIcon.png: Copied from ../WebKit/win/WebKit.vcproj/panIcon.png.
   40400         * win/panNorthCursor.png: Copied from ../WebKit/win/WebKit.vcproj/panNorthCursor.png.
   40401         * win/panNorthEastCursor.png: Copied from ../WebKit/win/WebKit.vcproj/panNorthEastCursor.png.
   40402         * win/panNorthWestCursor.png: Copied from ../WebKit/win/WebKit.vcproj/panNorthWestCursor.png.
   40403         * win/panSouthCursor.png: Copied from ../WebKit/win/WebKit.vcproj/panSouthCursor.png.
   40404         * win/panSouthEastCursor.png: Copied from ../WebKit/win/WebKit.vcproj/panSouthEastCursor.png.
   40405         * win/panSouthWestCursor.png: Copied from ../WebKit/win/WebKit.vcproj/panSouthWestCursor.png.
   40406         * win/panWestCursor.png: Copied from ../WebKit/win/WebKit.vcproj/panWestCursor.png.
   40407         * win/searchCancel.png: Copied from ../WebKit/win/WebKit.vcproj/searchCancel.png.
   40408         * win/searchCancelPressed.png: Copied from ../WebKit/win/WebKit.vcproj/searchCancelPressed.png.
   40409         * win/searchMagnifier.png: Copied from ../WebKit/win/WebKit.vcproj/searchMagnifier.png.
   40410         * win/searchMagnifierResults.png: Copied from ../WebKit/win/WebKit.vcproj/searchMagnifierResults.png.
   40411         * win/textAreaResizeCorner.png: Copied from ../WebKit/win/WebKit.vcproj/textAreaResizeCorner.png.
   40412         * win/verticalTextCursor.png: Copied from ../WebKit/win/WebKit.vcproj/verticalTextCursor.png.
   40413         * win/zoomInCursor.png: Copied from ../WebKit/win/WebKit.vcproj/zoomInCursor.png.
   40414         * win/zoomOutCursor.png: Copied from ../WebKit/win/WebKit.vcproj/zoomOutCursor.png.
   40415 
   40416 2010-07-12  Maciej Stachowiak  <mjs (a] apple.com>
   40417 
   40418         Reviewed by Anders Carlsson.
   40419 
   40420         Get rid of auto_ptr use in WebKit2
   40421         https://bugs.webkit.org/show_bug.cgi?id=42119
   40422         
   40423         Replace all use of auto_ptr with OwnPtr/PassOwnPtr.
   40424 
   40425         * Platform/CoreIPC/Connection.cpp:
   40426         (CoreIPC::Connection::sendMessage):
   40427         (CoreIPC::Connection::waitForMessage):
   40428         (CoreIPC::Connection::sendSyncMessage):
   40429         (CoreIPC::Connection::processIncomingMessage):
   40430         (CoreIPC::Connection::sendOutgoingMessages):
   40431         (CoreIPC::Connection::dispatchMessages):
   40432         * Platform/CoreIPC/Connection.h:
   40433         (CoreIPC::Connection::Message::Message):
   40434         (CoreIPC::Connection::send):
   40435         (CoreIPC::Connection::sendSync):
   40436         (CoreIPC::Connection::waitFor):
   40437         * Platform/CoreIPC/mac/ConnectionMac.cpp:
   40438         (CoreIPC::Connection::sendOutgoingMessage):
   40439         (CoreIPC::createArgumentDecoder):
   40440         (CoreIPC::Connection::receiveSourceEventHandler):
   40441         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   40442         (CoreIPC::Connection::readyReadHandler):
   40443         (CoreIPC::Connection::sendOutgoingMessage):
   40444         * Platform/CoreIPC/win/ConnectionWin.cpp:
   40445         (CoreIPC::Connection::readEventHandler):
   40446         (CoreIPC::Connection::sendOutgoingMessage):
   40447         * Platform/RunLoop.cpp:
   40448         (RunLoop::performWork):
   40449         (RunLoop::scheduleWork):
   40450         * Platform/RunLoop.h:
   40451         * Platform/WorkItem.h:
   40452         (WorkItem::create):
   40453         * Platform/WorkQueue.h:
   40454         * Platform/mac/WorkQueueMac.cpp:
   40455         (WorkQueue::executeWorkItem):
   40456         (WorkQueue::scheduleWork):
   40457         (WorkQueue::EventSource::EventSource):
   40458         (WorkQueue::registerMachPortEventHandler):
   40459         * Platform/qt/WorkQueueQt.cpp:
   40460         (WorkQueue::connectSignal):
   40461         (WorkQueue::scheduleWork):
   40462         * Platform/win/WorkQueueWin.cpp:
   40463         (WorkQueue::registerHandle):
   40464         (WorkQueue::scheduleWork):
   40465         (WorkQueue::performWork):
   40466         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   40467         (WebKit::ChunkedUpdateDrawingAreaProxy::paint):
   40468         * UIProcess/WebProcessProxy.cpp:
   40469         (WebKit::WebProcessProxy::sendMessage):
   40470         (WebKit::WebProcessProxy::didFinishLaunching):
   40471         * UIProcess/WebProcessProxy.h:
   40472         (WebKit::WebProcessProxy::send):
   40473 
   40474 2010-07-12  Ada Chan  <adachan (a] apple.com>
   40475 
   40476         Build fix.  Copy WKArray.h to the include directory.
   40477 
   40478         * win/WebKit2Generated.make:
   40479 
   40480 2010-07-12  Mark Rowe  <mrowe (a] apple.com>
   40481 
   40482         Re-do an Xcode project change that Xcode decided not to save.
   40483 
   40484         * WebKit2.xcodeproj/project.pbxproj: Remove WebKit2.exp from the project.
   40485         For some reason it was being copied in to the framework wrapper.
   40486 
   40487 2010-07-12  Mark Rowe  <mrowe (a] apple.com>
   40488 
   40489         Reviewed by Sam Weinig.
   40490 
   40491         Remove the exports file from WebKit2.
   40492 
   40493         * Configurations/Base.xcconfig: Have symbols default to hidden visibility.
   40494         * Configurations/WebKit2.xcconfig: Remove the export file.
   40495         * UIProcess/API/mac/WKView.h: Export the WKView class.
   40496         * WebProcess/WebKitMain.cpp: Export the WebKitMain function.
   40497         * mac/WebKit2.exp: Removed.
   40498 
   40499 2010-07-12  Adam Roben  <aroben (a] apple.com>
   40500 
   40501         Move WebKit2.vcproj's settings into .vsprops files
   40502 
   40503         This makes it easier to make changes that affect all configurations.
   40504 
   40505         Fixes <http://webkit.org/b/42097> WebKit2 should use .vsprops files
   40506 
   40507         Reviewed by Steve Falkenburg.
   40508 
   40509         * win/WebKit2.vcproj: Moved settings from here to the files below.
   40510         * win/WebKit2Apple.vsprops: Added. Links against Apple-specific
   40511         libraries.
   40512         * win/WebKit2CFLite.vsprops: Added. Links against CFLite.
   40513         * win/WebKit2Common.vsprops: Added. Contains settings shared by all
   40514         configurations.
   40515         * win/WebKit2DirectX.vsprops: Added. Contains settings to help with
   40516         linking against DirectX.
   40517 
   40518 2010-07-12  Adam Roben  <aroben (a] apple.com>
   40519 
   40520         Stop generating stripped symbols for Release builds
   40521 
   40522         It turns out we can strip the symbols after-the-fact using PDBCopy.
   40523 
   40524         Fixes <http://webkit.org/b/42085>.
   40525 
   40526         Reviewed by Steve Falkenburg.
   40527 
   40528         * win/WebKit2.vcproj: Removed the no-longer-needed Release override of
   40529         the StripPrivateSymbols attribute. (This attribute is no longer set in
   40530         release.vsprops, so doesn't need to be overridden.)
   40531 
   40532 2010-07-12  Brian Weinstein  <bweinstein (a] apple.com>
   40533 
   40534         WebKit2 build fix for Windows.
   40535 
   40536         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: Remove some stub function definitions.
   40537         * win/WebKit2.vcproj: Add PluginController.h to the vcproj.
   40538 
   40539 2010-07-12  Anders Carlsson  <andersca (a] apple.com>
   40540 
   40541         Reviewed by Adam Roben.
   40542 
   40543         Add a PluginController class, use it for invalidation and getting the user agent
   40544         https://bugs.webkit.org/show_bug.cgi?id=42084
   40545 
   40546         * WebKit2.xcodeproj/project.pbxproj:
   40547         Add PluginController.h
   40548 
   40549         * WebProcess/Plugins/DummyPlugin.cpp:
   40550         (WebKit::DummyPlugin::initialize):
   40551         * WebProcess/Plugins/DummyPlugin.h:
   40552         Pass the PluginController to initialize.
   40553 
   40554         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   40555         Implement NPN_UserAgent, NPN_MemAlloc, NPN_MemFree, NPN_InvalidateRect and NPN_InvalidateRegion.
   40556 
   40557         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   40558         (WebKit::NetscapePlugin::NetscapePlugin):
   40559         Initialize m_pluginController to null.
   40560 
   40561         (WebKit::NetscapePlugin::invalidate):
   40562         Ask the plug-in controller to invalidate.
   40563 
   40564         (WebKit::NetscapePlugin::userAgent):
   40565         Ask the plug-in controller for the user agent.
   40566 
   40567         (WebKit::NetscapePlugin::initialize):
   40568         Set the m_pluginController member variable.
   40569 
   40570         * WebProcess/Plugins/Plugin.h:
   40571         Make initialize take a PluginController.
   40572 
   40573         * WebProcess/Plugins/PluginController.h: Added.
   40574 
   40575         * WebProcess/Plugins/PluginView.cpp:
   40576         (WebKit::PluginView::initializePlugin):
   40577         Pass the PluginController to initialize.
   40578 
   40579         (WebKit::PluginView::invalidateRect):
   40580         Tell the host window to invalidate the given rect.
   40581 
   40582         (WebKit::PluginView::invalidate):
   40583         Call invalidateRect.
   40584 
   40585         (WebKit::PluginView::userAgent):
   40586         Ask the frame loader client for the user agent.
   40587 
   40588         * WebProcess/Plugins/PluginView.h:
   40589 
   40590 2010-07-12  Adam Roben  <aroben (a] apple.com>
   40591 
   40592         Windows build fix
   40593 
   40594         * WebProcess/Plugins/Netscape/win/NetscapePluginModuleWin.cpp: Added.
   40595         (WebKit::NetscapePluginModule::tryLoad):
   40596         (WebKit::NetscapePluginModule::unload):
   40597         Stubbed these out.
   40598 
   40599         * win/WebKit2.vcproj: Added a Netscape filter beneath
   40600         WebProcess/Plugins, and moved NetscapePlugin into it. Added
   40601         NetscapePluginModule to the new Netscape filter. Added
   40602         WebProcess/Plugins to the include path for all configurations (it was
   40603         only added to Release and Debug_Internal previously) and added
   40604         WebProcess/Plugins/Netscape to the include path for all
   40605         configurations.
   40606 
   40607 2010-07-11  Maciej Stachowiak  <mjs (a] apple.com>
   40608 
   40609         Reviewed by Dan Bernstein.
   40610 
   40611         Implement animation-related methods for WebKitTestRunner
   40612         https://bugs.webkit.org/show_bug.cgi?id=42053
   40613 
   40614         Implemented some helpers for WebKitTestRunner;
   40615         
   40616         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   40617         (WKBundleFrameGetNumberOfActiveAnimations):
   40618         (WKBundleFramePauseAnimationOnElementWithId):
   40619         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   40620         * WebProcess/WebPage/WebFrame.cpp:
   40621         (WebKit::WebFrame::numberOfActiveAnimations):
   40622         (WebKit::WebFrame::pauseAnimationOnElementWithId):
   40623         * WebProcess/WebPage/WebFrame.h:
   40624         * mac/WebKit2.exp:
   40625 
   40626 2010-07-10  Anders Carlsson  <andersca (a] apple.com>
   40627 
   40628         Reviewed by Sam Weinig.
   40629 
   40630         Don't initialize plug-ins until allowed by the page
   40631         https://bugs.webkit.org/show_bug.cgi?id=42033
   40632 
   40633         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   40634         (WebKit::NetscapePlugin::paint):
   40635         (WebKit::NetscapePlugin::geometryDidChange):
   40636         Assert that the plug-in is started.
   40637 
   40638         * WebProcess/Plugins/PluginView.cpp:
   40639         (WebKit::PluginView::PluginView):
   40640         Initialize m_isWaitingUntilMediaCanStart.
   40641         
   40642         (WebKit::PluginView::~PluginView):
   40643         If necessary, remove the plug-in view as a MediaCanStartListener.
   40644 
   40645         (WebKit::PluginView::initializePlugin):
   40646         If we're not allowed to initialize the plug-in, add the plug-in view as a MediaCanStartListener.
   40647 
   40648         (WebKit::PluginView::paint):
   40649         Check that the plug-in is initialized.
   40650 
   40651         (WebKit::PluginView::viewGeometryDidChange):
   40652         Ditto.
   40653 
   40654         (WebKit::PluginView::mediaCanStart):
   40655         Initialize the plug-in.
   40656 
   40657         * WebProcess/Plugins/PluginView.h:
   40658 
   40659 2010-07-10  Anders Carlsson  <andersca (a] apple.com>
   40660 
   40661         Reviewed by Dan Bernstein.
   40662 
   40663         Have the plug-in view initialize the plug-in
   40664         https://bugs.webkit.org/show_bug.cgi?id=42030
   40665 
   40666         * WebProcess/Plugins/DummyPlugin.cpp:
   40667         (WebKit::DummyPlugin::initialize):
   40668         * WebProcess/Plugins/DummyPlugin.h:
   40669         Plugin::initialize now takes a struct.
   40670         
   40671         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   40672         (WebKit::NetscapePlugin::initialize):        
   40673         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   40674         Plugin::initialize now takes a struct.
   40675         
   40676         * WebProcess/Plugins/Plugin.h:
   40677         Add Parameters struct.
   40678 
   40679         * WebProcess/Plugins/PluginView.cpp:
   40680         (WebKit::PluginView::PluginView):
   40681         Add Parameters parameter.
   40682 
   40683         (WebKit::PluginView::~PluginView):
   40684         Add m_plugin null check.
   40685 
   40686         (WebKit::PluginView::initializePlugin):
   40687         Try to initialize the plug-in and zero out the plug-in if initialization fails.
   40688 
   40689         (WebKit::PluginView::paint):
   40690         Add m_plugin null check.
   40691         
   40692         (WebKit::PluginView::setParent):
   40693         Initialize the plug-in.
   40694     
   40695         * WebProcess/Plugins/PluginView.h:
   40696         (WebKit::PluginView::create):
   40697         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   40698         (WebKit::WebFrameLoaderClient::createPlugin):
   40699         Don't initialize the plug-in here.
   40700 
   40701 2010-07-10  Anders Carlsson  <andersca (a] apple.com>
   40702 
   40703         Reviewed by Oliver Hunt.
   40704 
   40705         Call Page::canStartMedia when the WKView is added to/removed from a window
   40706         https://bugs.webkit.org/show_bug.cgi?id=42029
   40707 
   40708         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
   40709         (WebPageMessage::):
   40710         Add SetIsInWindow.
   40711 
   40712         * UIProcess/API/mac/WKView.mm:
   40713         (-[WKView initWithFrame:pageNamespaceRef:]):
   40714         Call setIsInWindow.
   40715 
   40716         (-[WKView _updateVisibility]):
   40717         Call setIsInWindow.
   40718 
   40719         * UIProcess/WebPageProxy.cpp:
   40720         (WebKit::WebPageProxy::WebPageProxy):
   40721         Initialize m_isInWindow.
   40722 
   40723         (WebKit::WebPageProxy::setIsInWindow):
   40724         Send WebPageMessage::SetIsInWindow.
   40725 
   40726         * UIProcess/WebPageProxy.h:
   40727         * WebProcess/WebPage/WebPage.cpp:
   40728         (WebKit::WebPage::setIsInWindow):
   40729         Call Page::canStartMedia.
   40730 
   40731         (WebKit::WebPage::didReceiveMessage):
   40732         Handle the SetIsInWindow message.
   40733 
   40734         * WebProcess/WebPage/WebPage.h:
   40735 
   40736 2010-07-10  Anders Carlsson  <andersca (a] apple.com>
   40737 
   40738         Reviewed by Dan Bernstein.
   40739 
   40740         Reuse initialized NetscapePluginModules, pass parameters to NPP_New
   40741         https://bugs.webkit.org/show_bug.cgi?id=42028
   40742 
   40743         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   40744         (WebKit::NetscapePlugin::NetscapePlugin):
   40745         Let the plug-in module know that a plug-in has been created.
   40746 
   40747         (WebKit::NetscapePlugin::~NetscapePlugin):
   40748         Let the plug-in module know that a plug-in has been destroyed.
   40749 
   40750         (WebKit::NetscapePlugin::initialize):
   40751         Pass the MIME type and parameters to the plug-in.
   40752 
   40753         * WebProcess/Plugins/Netscape/NetscapePluginModule.cpp:
   40754         (WebKit::initializedNetscapePluginModules):
   40755         Add list of initialized plug-in modules.
   40756 
   40757         (WebKit::NetscapePluginModule::NetscapePluginModule):
   40758         Initialize m_pluginCount to 0.
   40759 
   40760         (WebKit::NetscapePluginModule::~NetscapePluginModule):
   40761         Assert that we're not in the list of initialized plug-ins.
   40762 
   40763         (WebKit::NetscapePluginModule::pluginCreated):
   40764         Increment the plug-in count.
   40765 
   40766         (WebKit::NetscapePluginModule::pluginDestroyed):
   40767         Decrement the plug-in count and call shutdown if it's 0.
   40768 
   40769         (WebKit::NetscapePluginModule::shutdown):
   40770         Call NP_Shutdown and remove the plug-in from the list of initialized plug-ins.
   40771 
   40772         (WebKit::NetscapePluginModule::getOrCreate):
   40773         Look for an already initialized plug-in module before creating one.
   40774 
   40775         (WebKit::NetscapePluginModule::load):
   40776         Set m_isInitialized to true.
   40777 
   40778         * WebProcess/Plugins/Netscape/mac/NetscapePluginModuleMac.cpp:
   40779         (WebKit::NetscapePluginModule::unload):
   40780         Leak the CFBundleRef to avoid possible crashes.
   40781 
   40782         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   40783         (WebKit::WebFrameLoaderClient::createPlugin):
   40784         Call getOrCreate instead of create.
   40785 
   40786 2010-07-09  Leon Clarke  <leonclarke (a] google.com>
   40787 
   40788         Reviewed by Adam Barth.
   40789 
   40790         add support for link prefetching
   40791         https://bugs.webkit.org/show_bug.cgi?id=3652
   40792 
   40793         * Configurations/FeatureDefines.xcconfig:
   40794 
   40795 2010-07-09  Anders Carlsson  <andersca (a] apple.com>
   40796 
   40797         Reviewed by Sam Weinig and Dan Bernstein.
   40798 
   40799         Handle setting of drawing and event models
   40800         https://bugs.webkit.org/show_bug.cgi?id=41994
   40801 
   40802         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   40803         Handle NPPVpluginDrawingModel and NPPVpluginEventModel.
   40804 
   40805         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   40806         (WebKit::NetscapePlugin::NetscapePlugin):
   40807         Initialize m_inNPPNew.
   40808 
   40809         (WebKit::NetscapePlugin::~NetscapePlugin):
   40810         Assert that we aren't still running.
   40811 
   40812         (WebKit::NetscapePlugin::fromNPP):
   40813         New function that returns a NetscapePlugin object given a NPP pointer.
   40814 
   40815         (WebKit::NetscapePlugin::initialize):
   40816         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.cpp:
   40817         (WebKit::NetscapePlugin::setDrawingModel):
   40818         Set the drawing model.
   40819 
   40820         (WebKit::NetscapePlugin::setEventModel):
   40821         Set the event model.
   40822 
   40823         (WebKit::initializeEvent):
   40824         (WebKit::NetscapePlugin::platformPaint):
   40825         Only send the Cocoa event when using the Cocoa event model.
   40826 
   40827 2010-07-09  Sam Weinig  <sam (a] webkit.org>
   40828 
   40829         Reviewed by Anders Carlsson.
   40830 
   40831         Patch for https://bugs.webkit.org/show_bug.cgi?id=41971
   40832         Add really basic BackForwardList support.
   40833 
   40834         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
   40835         (WebPageMessage::):
   40836         Add new message kind.
   40837 
   40838         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   40839         (WebPageProxyMessage::):
   40840         Add new message kinds. Remove DidChangeCanGoBack and DidChangeCanGoForward.
   40841 
   40842         * UIProcess/API/C/WKPage.cpp:
   40843         (WKPageGoToBackForwardListItem):
   40844         * UIProcess/API/C/WKPage.h:
   40845         Add function to initiate a navigation to a BackForward item.  The
   40846         BackForward list will be updated to use this as the current item
   40847         asynchronously. 
   40848 
   40849         * UIProcess/WebBackForwardList.cpp:
   40850         (WebKit::WebBackForwardList::WebBackForwardList):
   40851         (WebKit::WebBackForwardList::addItem): Added.
   40852         (WebKit::WebBackForwardList::goToItem): Added.
   40853         (WebKit::WebBackForwardList::itemAtIndex): Added.
   40854         (WebKit::WebBackForwardList::backListCount): Changed to return int matching WebCore.
   40855         (WebKit::WebBackForwardList::forwardListCount): Ditto.
   40856         (WebKit::WebBackForwardList::backListWithLimit): Add cast to int.
   40857         (WebKit::WebBackForwardList::forwardListWithLimit): Ditto.
   40858         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit): Ditto.
   40859         (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit): Ditto.
   40860         * UIProcess/WebBackForwardList.h:
   40861 
   40862         * UIProcess/WebBackForwardListItem.cpp:
   40863         (WebKit::WebBackForwardListItem::WebBackForwardListItem):
   40864         * UIProcess/WebBackForwardListItem.h:
   40865         (WebKit::WebBackForwardListItem::create):
   40866         (WebKit::WebBackForwardListItem::itemID):
   40867         Added itemID.
   40868 
   40869         * UIProcess/WebPageProxy.cpp:
   40870         (WebKit::WebPageProxy::WebPageProxy):
   40871         (WebKit::WebPageProxy::close):
   40872         (WebKit::WebPageProxy::canGoForward):
   40873         (WebKit::WebPageProxy::canGoBack):
   40874         (WebKit::WebPageProxy::goToBackForwardItem):
   40875         (WebKit::WebPageProxy::didReceiveMessage):
   40876         (WebKit::WebPageProxy::didReceiveSyncMessage):
   40877         (WebKit::WebPageProxy::addItemToBackForwardList):
   40878         (WebKit::WebPageProxy::goToItemInBackForwardList):
   40879         (WebKit::WebPageProxy::processDidExit):
   40880         * UIProcess/WebPageProxy.h:
   40881         - Removed m_canGoBack and m_canGoForward booleans and instead use the BackForwardList.
   40882         - Forward goToBackForwardItem to the WebProcess.
   40883         - Respond to messages from the WebBackForwardListProxy in the WebProcess,
   40884           forwarding to the WebBackForwardList.
   40885 
   40886         * WebProcess/WebCoreSupport/WebBackForwardControllerClient.cpp:
   40887         (WebKit::WebBackForwardControllerClient::createBackForwardList):
   40888         Start using a WebBackForwardListProxy instead of a BackForwardListImpl.
   40889 
   40890         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   40891         (WebKit::WebFrameLoaderClient::dispatchDidAddBackForwardItem):
   40892         (WebKit::WebFrameLoaderClient::dispatchDidRemoveBackForwardItem):
   40893         (WebKit::WebFrameLoaderClient::dispatchDidChangeBackForwardIndex):
   40894         Remove calls backForwardListDidChange() now that we communicate much more
   40895         information than just this state.
   40896 
   40897         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
   40898         (WebKit::idToHistoryItemMap):
   40899         (WebKit::historyItemToIDMap):
   40900         (WebKit::generateHistoryItemID):
   40901         (WebKit::getIDForHistoryItem):
   40902         (WebKit::WebBackForwardListProxy::itemForID):
   40903         Add leaking cached maps of HistoryItems to IDs, the life time of these
   40904         objects will be improved in a subsequent patch.
   40905 
   40906         (WebKit::WebBackForwardListProxy::WebBackForwardListProxy):
   40907         (WebKit::WebBackForwardListProxy::addItem):
   40908         (WebKit::WebBackForwardListProxy::goBack):
   40909         (WebKit::WebBackForwardListProxy::goForward):
   40910         (WebKit::WebBackForwardListProxy::goToItem):
   40911         (WebKit::WebBackForwardListProxy::backItem):
   40912         (WebKit::WebBackForwardListProxy::currentItem):
   40913         (WebKit::WebBackForwardListProxy::forwardItem):
   40914         (WebKit::WebBackForwardListProxy::itemAtIndex):
   40915         (WebKit::WebBackForwardListProxy::backListWithLimit):
   40916         (WebKit::WebBackForwardListProxy::forwardListWithLimit):
   40917         (WebKit::WebBackForwardListProxy::capacity):
   40918         (WebKit::WebBackForwardListProxy::setCapacity):
   40919         (WebKit::WebBackForwardListProxy::enabled):
   40920         (WebKit::WebBackForwardListProxy::setEnabled):
   40921         (WebKit::WebBackForwardListProxy::backListCount):
   40922         (WebKit::WebBackForwardListProxy::forwardListCount):
   40923         (WebKit::WebBackForwardListProxy::containsItem):
   40924         (WebKit::WebBackForwardListProxy::close):
   40925         (WebKit::WebBackForwardListProxy::closed):
   40926         (WebKit::WebBackForwardListProxy::removeItem):
   40927         (WebKit::WebBackForwardListProxy::entries):
   40928         (WebKit::WebBackForwardListProxy::pushStateItem):
   40929         * WebProcess/WebPage/WebBackForwardListProxy.h:
   40930         Forward functions to the UIProcess.
   40931 
   40932         * WebProcess/WebPage/WebPage.cpp:
   40933         (WebKit::WebPage::goToBackForwardItem):
   40934         (WebKit::WebPage::didReceiveMessage):
   40935         * WebProcess/WebPage/WebPage.h:
   40936         Respond to GoToBackForwardItem message.
   40937 
   40938         * mac/WebKit2.exp: Add new API function.
   40939 
   40940 2010-07-09  Anders Carlsson  <andersca (a] apple.com>
   40941 
   40942         Reviewed by Sam Weinig.
   40943 
   40944         Verify drawing coordinates, add crude painting support
   40945         https://bugs.webkit.org/show_bug.cgi?id=41984
   40946     
   40947         * WebKit2.xcodeproj/project.pbxproj:
   40948         Add NetscapePluginMac.cpp.
   40949 
   40950         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   40951         (WebKit::NetscapePlugin::NetscapePlugin):
   40952         Initialize drawing and event models.
   40953 
   40954         (WebKit::NetscapePlugin::initialize):
   40955         Call platformPostInitialize.
   40956 
   40957         (WebKit::NetscapePlugin::destroy):
   40958         Call NPP_Destroy.
   40959 
   40960         (WebKit::NetscapePlugin::paint):
   40961         Call platformPaint.
   40962 
   40963         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   40964         Add member functions.
   40965 
   40966         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.cpp: Added.
   40967         (WebKit::NetscapePlugin::platformPostInitialize):
   40968         Set default event and drawing models and verify that they are compatible.
   40969         
   40970         (WebKit::NetscapePlugin::platformPaint):
   40971         Send a paint event (assuming the Cocoa event model currently).
   40972 
   40973         * WebProcess/Plugins/PluginView.cpp:
   40974         (WebKit::PluginView::paint):
   40975         Change the paint rect to be in window coordinates.
   40976 
   40977         (WebKit::PluginView::viewGeometryDidChange):
   40978         (WebKit::PluginView::clipRectInWindowCoordinates):
   40979         * WebProcess/Plugins/PluginView.h:
   40980 
   40981 2010-07-09  Anders Carlsson  <andersca (a] apple.com>
   40982 
   40983         Reviewed by Sam Weinig.
   40984 
   40985         Pass a clip rect to the plugin and call NPP_SetWindow
   40986         https://bugs.webkit.org/show_bug.cgi?id=41969
   40987 
   40988         * WebProcess/Plugins/DummyPlugin.cpp:
   40989         (WebKit::DummyPlugin::geometryDidChange):
   40990         * WebProcess/Plugins/DummyPlugin.h:
   40991         Add clip rect parameter.
   40992 
   40993         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   40994         (WebKit::NetscapePlugin::NetscapePlugin):
   40995         Initialize m_npWindow.
   40996 
   40997         (WebKit::NetscapePlugin::callSetWindow):
   40998         Call NPP_SetWindow.
   40999 
   41000         (WebKit::NetscapePlugin::initialize):
   41001         Set the window type to NPWindowTypeDrawable for now.
   41002 
   41003         (WebKit::NetscapePlugin::geometryDidChange):
   41004         Update the frame and clip rects and call NPP_SetWindow.
   41005 
   41006         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   41007         Add an NPWindow member variable.
   41008 
   41009         * WebProcess/Plugins/Plugin.h:
   41010         Add a clipRect parameter to geometryDidChange.
   41011 
   41012         * WebProcess/Plugins/PluginView.cpp:
   41013         (WebKit::PluginView::PluginView):
   41014         Add the plug-in element to the constructor.
   41015         
   41016         (WebKit::PluginView::viewGeometryDidChange):
   41017         Compute the clip rect and pass it to the plug-in.
   41018 
   41019         * WebProcess/Plugins/PluginView.h:
   41020         (WebKit::PluginView::create):
   41021         Pass the plug-in element to the constructor.
   41022 
   41023         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   41024         (WebKit::WebFrameLoaderClient::createPlugin):
   41025         Pass the plug-in element to PluginView::create.
   41026 
   41027 2010-07-09  Anders Carlsson  <andersca (a] apple.com>
   41028 
   41029         Reviewed by Simon Fraser.
   41030 
   41031         Instantiate Netscape plug-ins, pass geometry information to Plugin
   41032         https://bugs.webkit.org/show_bug.cgi?id=41960
   41033 
   41034         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
   41035         Handle NPNVsupportsCoreGraphicsBool and NPNVsupportsCocoaBool.
   41036 
   41037         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
   41038         (WebKit::NetscapePlugin::NetscapePlugin):
   41039         Set npp.ndata.
   41040 
   41041         (WebKit::NetscapePlugin::initialize):
   41042         Try to instantiate the plug-in by calling NPP_New.
   41043 
   41044         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
   41045         Store the NetscapePluginModule and the NPP struct.
   41046 
   41047         * WebProcess/Plugins/Netscape/NetscapePluginModule.h:
   41048         Add a getter for the NPPluginFuncs vtable.
   41049 
   41050         * WebProcess/Plugins/PluginView.cpp:
   41051         (WebKit::PluginView::frameRectsChanged):
   41052         Make sure to call viewGeometryDidChange.
   41053 
   41054         (WebKit::PluginView::setParent):
   41055         Ditto.
   41056 
   41057         (WebKit::PluginView::viewGeometryDidChange):
   41058         Convert the frame rect to window coordinates and pass it to the plug-in.
   41059 
   41060         * WebProcess/Plugins/PluginView.h:
   41061         Add function declarations.
   41062 
   41063 2010-07-08  Diego Gonzalez  <diegohcg (a] webkit.org>
   41064 
   41065         Reviewed by Kenneth Rohde Christiansen.
   41066 
   41067         [Qt] [WebKit2] Make QWKPage call _q_webActionTriggered as a private slot
   41068         https://bugs.webkit.org/show_bug.cgi?id=41880
   41069 
   41070         * UIProcess/API/qt/qwkpage.cpp:
   41071         * UIProcess/API/qt/qwkpage.h:
   41072 
   41073 2010-07-09  Antti Koivisto  <koivisto (a] iki.fi>
   41074 
   41075         Not reviewed.
   41076 
   41077         Build fix.
   41078 
   41079         * UIProcess/API/qt/qwkpage.h:
   41080 
   41081 2010-07-08  Brian Weinstein  <bweinstein (a] apple.com>
   41082 
   41083         WebKit2 build fix for Windows.
   41084 
   41085         * WebProcess/Plugins/PluginView.h: Change the forward declaration of Plugin
   41086             to an include.
   41087         * win/WebKit2.vcproj: Update the include paths for Release to match Debug, and
   41088             add some files to the vcproj that were added on Mac.
   41089 
   41090 2010-07-08  Sam Weinig  <sam (a] webkit.org>
   41091 
   41092         Attempt to fix the windows build.
   41093 
   41094         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   41095         (WebKit::WebFrameLoaderClient::createPlugin):
   41096 
   41097 2010-07-08  Anders Carlsson  <andersca (a] apple.com>
   41098 
   41099         Reviewed by Sam Weinig.
   41100 
   41101         Add NetscapePlugin class
   41102         https://bugs.webkit.org/show_bug.cgi?id=41919
   41103 
   41104         * WebKit2.xcodeproj/project.pbxproj:
   41105         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: Added.
   41106         (WebKit::NetscapePlugin::NetscapePlugin):
   41107         (WebKit::NetscapePlugin::~NetscapePlugin):
   41108         (WebKit::NetscapePlugin::initialize):
   41109         (WebKit::NetscapePlugin::destroy):
   41110         (WebKit::NetscapePlugin::paint):
   41111         (WebKit::NetscapePlugin::geometryDidChange):
   41112         * WebProcess/Plugins/Netscape/NetscapePlugin.h: Added.
   41113         (WebKit::NetscapePlugin::create):
   41114         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   41115         (WebKit::WebFrameLoaderClient::createPlugin):
   41116 
   41117 2010-07-08  Anders Carlsson  <andersca (a] apple.com>
   41118 
   41119         Reviewed by Sam Weinig.
   41120 
   41121         Enable notImplemented messages by default and have the various clients explicitly disable them.
   41122 
   41123         * Shared/NotImplemented.h:
   41124         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   41125         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
   41126         * WebProcess/WebCoreSupport/WebDragClient.cpp:
   41127         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
   41128         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   41129         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
   41130 
   41131 2010-07-08  Anders Carlsson  <andersca (a] apple.com>
   41132 
   41133         Reviewed by Sam Weinig.
   41134 
   41135         Add stubbed out NPN functions
   41136         https://bugs.webkit.org/show_bug.cgi?id=41917
   41137 
   41138         * WebKit2.xcodeproj/project.pbxproj:
   41139         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: Added.
   41140         (WebKit::initializeBrowserFuncs):
   41141         (WebKit::netscapeBrowserFuncs):
   41142         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.h: Added.
   41143         * WebProcess/Plugins/Netscape/mac/NetscapePluginModuleMac.cpp:
   41144         (WebKit::NetscapePluginModule::tryLoad):
   41145 
   41146 2010-07-08  Anders Carlsson  <andersca (a] apple.com>
   41147 
   41148         Fix Windows build.
   41149 
   41150         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   41151 
   41152 2010-07-08  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   41153 
   41154         Reviewed by Kenneth Rohde Christiansen.
   41155 
   41156         [Qt] Spelling and style correction
   41157         https://bugs.webkit.org/show_bug.cgi?id=41891
   41158 
   41159         Correcting a spelling and a style mistakes.
   41160 
   41161         * UIProcess/Launcher/ProcessLauncher.h:
   41162         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   41163 
   41164 2010-07-08  Anders Carlsson  <andersca (a] apple.com>
   41165 
   41166         Reviewed by Sam Weinig.
   41167 
   41168         Implement more of NetscapePluginModule
   41169         https://bugs.webkit.org/show_bug.cgi?id=41910
   41170 
   41171         * WebKit2.xcodeproj/project.pbxproj:
   41172         * WebProcess/Plugins/Netscape/NetscapePluginModule.cpp:
   41173         (WebKit::NetscapePluginModule::create):
   41174         (WebKit::NetscapePluginModule::load):
   41175         * WebProcess/Plugins/Netscape/NetscapePluginModule.h:
   41176         * WebProcess/Plugins/Netscape/mac/NetscapePluginModuleMac.cpp: Added.
   41177         (WebKit::NetscapePluginModule::unload):
   41178         (WebKit::pointerToFunction):
   41179         (WebKit::NetscapePluginModule::tryLoad):
   41180         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   41181         (WebKit::WebFrameLoaderClient::createPlugin):
   41182 
   41183 2010-07-08  Anders Carlsson  <andersca (a] apple.com>
   41184 
   41185         Reviewed by Sam Weinig.
   41186 
   41187         Add stubbed out NetscapePluginModule class
   41188         https://bugs.webkit.org/show_bug.cgi?id=41901
   41189 
   41190         * WebKit2.xcodeproj/project.pbxproj:
   41191         * WebProcess/Plugins/Netscape/NetscapePluginModule.cpp: Added.
   41192         (WebKit::NetscapePluginModule::NetscapePluginModule):
   41193         * WebProcess/Plugins/Netscape/NetscapePluginModule.h: Added.
   41194         (WebKit::NetscapePluginModule::create):
   41195         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   41196         (WebKit::WebFrameLoaderClient::createPlugin):
   41197 
   41198 2010-07-08  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   41199 
   41200         Reviewed by Kenneth Rohde Christiansen.
   41201 
   41202         [Qt] Move socket objects to connection's thread
   41203         https://bugs.webkit.org/show_bug.cgi?id=41897
   41204 
   41205         To receive network related notifications in the WorkQueue thread, the
   41206         QLocalSocket instances must be moved to that thread.
   41207 
   41208         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   41209         (CoreIPC::Connection::open):
   41210         * Platform/WorkQueue.h:
   41211         * Platform/qt/WorkQueueQt.cpp:
   41212         (WorkQueue::moveSocketToWorkThread):
   41213 
   41214 2010-07-08  Alice Liu  <alice.liu (a] apple.com>
   41215 
   41216         Reviewed by Sam Weinig.
   41217 
   41218         https://bugs.webkit.org/show_bug.cgi?id=41653
   41219         Add new WebKitTestRunner project for Windows
   41220 
   41221         * win/WebKit2Generated.make: Add files needed for WebKitTestRunner
   41222 
   41223 2010-07-08  Anders Carlsson  <andersca (a] apple.com>
   41224 
   41225         Reviewed by Sam Weinig.
   41226 
   41227         Add a GetPluginHostConnection WebProcessProxy message
   41228         https://bugs.webkit.org/show_bug.cgi?id=41893
   41229         
   41230         * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:
   41231         (WebProcessProxyMessage::):
   41232         * UIProcess/WebProcessProxy.cpp:
   41233         (WebKit::WebProcessProxy::getPluginHostConnection):
   41234         (WebKit::WebProcessProxy::didReceiveMessage):
   41235         (WebKit::WebProcessProxy::didReceiveSyncMessage):
   41236         * UIProcess/WebProcessProxy.h:
   41237         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   41238         (WebKit::WebFrameLoaderClient::createPlugin):
   41239 
   41240 2010-07-08  Anders Carlsson  <andersca (a] apple.com>
   41241 
   41242         Reviewed by Sam Weinig.
   41243 
   41244         Add more parameters to Plugin::initialize
   41245         https://bugs.webkit.org/show_bug.cgi?id=41890
   41246 
   41247         * WebProcess/Plugins/DummyPlugin.cpp:
   41248         (WebKit::DummyPlugin::initialize):
   41249         * WebProcess/Plugins/DummyPlugin.h:
   41250         * WebProcess/Plugins/Plugin.h:
   41251         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   41252         (WebKit::WebFrameLoaderClient::createPlugin):
   41253 
   41254 2010-07-08  Anders Carlsson  <andersca (a] apple.com>
   41255 
   41256         Fix build.
   41257 
   41258         * WebProcess/Plugins/DummyPlugin.h:
   41259 
   41260 2010-07-08  Anders Carlsson  <andersca (a] apple.com>
   41261 
   41262         Reviewed by Sam Weinig.
   41263 
   41264         Add a Plugin abstract base class and a DummyPlugin that implements it
   41265         https://bugs.webkit.org/show_bug.cgi?id=41885
   41266 
   41267         * WebKit2.xcodeproj/project.pbxproj:
   41268         Add files.
   41269 
   41270         * WebProcess/Plugins/DummyPlugin.cpp: Added.
   41271         (WebKit::DummyPlugin::paint):
   41272         Paint a red rectangle.
   41273         
   41274         * WebProcess/Plugins/Plugin.cpp: Added.
   41275         * WebProcess/Plugins/Plugin.h: Added.
   41276         Add Plugin, an abstract baseclass.
   41277 
   41278         * WebProcess/Plugins/PluginView.cpp:
   41279         (WebKit::PluginView::PluginView):
   41280         (WebKit::PluginView::~PluginView):
   41281         (WebKit::PluginView::paint):
   41282         (WebKit::PluginView::viewGeometryDidChange):
   41283         * WebProcess/Plugins/PluginView.h:
   41284         (WebKit::PluginView::create):
   41285         Add a Plugin member function and forward PluginView calls to it.
   41286 
   41287         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   41288         (WebKit::WebFrameLoaderClient::createPlugin):
   41289         Make a DummyPlugin and pass it to the PluginView.
   41290 
   41291         * win/WebKit2.vcproj:
   41292         Add files.
   41293         
   41294 2010-07-08  Anders Carlsson  <andersca (a] apple.com>
   41295 
   41296         Reviewed by Sam Weinig.
   41297 
   41298         Add stubbed out PluginView class
   41299         https://bugs.webkit.org/show_bug.cgi?id=41879
   41300 
   41301         * WebKit2.xcodeproj/project.pbxproj:
   41302         Add PluginView.cpp and PluginView.h
   41303 
   41304         * WebProcess/Plugins/PluginView.cpp: Added.
   41305         (WebKit::PluginView::PluginView):
   41306         (WebKit::PluginView::~PluginView):
   41307         (WebKit::PluginView::setFrameRect):
   41308         (WebKit::PluginView::paint):
   41309         (WebKit::PluginView::viewGeometryDidChange):
   41310         (WebKit::PluginView::invalidateRect):
   41311         Stub out these functions.
   41312 
   41313         * WebProcess/Plugins/PluginView.h: Added.
   41314         (WebKit::PluginView::create):
   41315         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   41316         (WebKit::WebFrameLoaderClient::createPlugin):
   41317         Create a plug-in view.
   41318         
   41319         * win/WebKit2.vcproj:
   41320         Add PluginView.cpp and PluginView.h.
   41321 
   41322 2010-07-08  Steve Falkenburg  <sfalken (a] apple.com>
   41323 
   41324         Reviewed by Adam Roben.
   41325 
   41326         WebKit2 on Windows needs a version resource
   41327         https://bugs.webkit.org/show_bug.cgi?id=41870
   41328         <rdar://problem/8170501>
   41329 
   41330         * win/WebKit2.rc: Added.
   41331         * win/WebKit2.vcproj:
   41332         * win/WebKit2WebProcess.rc: Added.
   41333         * win/WebKit2WebProcess.vcproj:
   41334 
   41335 2010-07-08  Sam Weinig  <sam (a] webkit.org>
   41336 
   41337         Reviewed by Anders Carlsson.
   41338 
   41339         Patch for https://bugs.webkit.org/show_bug.cgi?id=41874
   41340         Add stubbed out WebBackForwardListProxy
   41341 
   41342         - No behavior change.
   41343         - Rename the old WebBackForwardListProxy to WebBackForwardList since it
   41344           will be the implementation, not the proxy.
   41345 
   41346         * UIProcess/API/C/WKAPICast.h:
   41347         * UIProcess/API/C/WKBackForwardList.cpp:
   41348         * UIProcess/API/C/WKPage.cpp:
   41349         * UIProcess/WebBackForwardList.cpp: Copied from UIProcess/WebBackForwardListProxy.cpp.
   41350         * UIProcess/WebBackForwardList.h: Copied from UIProcess/WebBackForwardListProxy.h.
   41351         (WebKit::WebBackForwardList::create):
   41352         * UIProcess/WebBackForwardListProxy.cpp: Removed.
   41353         * UIProcess/WebBackForwardListProxy.h: Removed.
   41354         * UIProcess/WebPageProxy.cpp:
   41355         (WebKit::WebPageProxy::WebPageProxy):
   41356         * UIProcess/WebPageProxy.h:
   41357         (WebKit::WebPageProxy::backForwardList):
   41358         * WebKit2.xcodeproj/project.pbxproj:
   41359         * WebProcess/WebPage/WebBackForwardListProxy.cpp: Added.
   41360         * WebProcess/WebPage/WebBackForwardListProxy.h: Added.
   41361         (WebKit::WebBackForwardListProxy::create):
   41362         * win/WebKit2.vcproj:
   41363 
   41364 2010-07-08  Sam Weinig  <sam (a] webkit.org>
   41365 
   41366         Reviewed by Anders Carlsson.
   41367 
   41368         Pass Page to BackForwardControllerClient::createBackForwardList since it
   41369         may be called before implementations of BackForwardControllerClient have
   41370         access to a Page.
   41371 
   41372         * WebProcess/WebCoreSupport/WebBackForwardControllerClient.cpp:
   41373         (WebKit::WebBackForwardControllerClient::createBackForwardList):
   41374         * WebProcess/WebCoreSupport/WebBackForwardControllerClient.h:
   41375 
   41376 2010-07-08  Anders Carlsson  <andersca (a] apple.com>
   41377 
   41378         Reviewed by Sam Weinig.
   41379 
   41380         Fix fallout from Darin's adoptRef assertion changes.
   41381 
   41382         * UIProcess/WebContext.cpp:
   41383         (WebKit::WebContext::sharedProcessContext):
   41384         (WebKit::WebContext::sharedThreadContext):
   41385         * WebProcess/WebPage/WebFrame.cpp:
   41386         (WebKit::WebFrame::createMainFrame):
   41387         (WebKit::WebFrame::createSubframe):
   41388         (WebKit::WebFrame::create):
   41389         (WebKit::WebFrame::WebFrame):
   41390         * WebProcess/WebPage/WebFrame.h:
   41391 
   41392 2010-07-08  Steve Falkenburg  <sfalken (a] apple.com>
   41393 
   41394         Reviewed by Mark Rowe.
   41395 
   41396         WebKit2 should enable DEP (Data Execution Prevention) on Windows via /NXCOMPAT
   41397         https://bugs.webkit.org/show_bug.cgi?id=41837
   41398         <rdar://problem/8170505>
   41399 
   41400         * win/WebKit2WebProcess.vcproj:
   41401 
   41402 2010-07-08  Sam Weinig  <sam (a] webkit.org>
   41403 
   41404         Reviewed by Anders Carlsson.
   41405 
   41406         Patch for https://bugs.webkit.org/show_bug.cgi?id=41826
   41407         Convert BackForwardList to an abstract base class and add BackForwardListImpl
   41408         as the concrete implementation of it.
   41409 
   41410         * WebProcess/WebCoreSupport/WebBackForwardControllerClient.cpp:
   41411         (WebKit::WebBackForwardControllerClient::createBackForwardList):
   41412 
   41413 2010-07-08  Luiz Agostini  <luiz (a] webkit.org>, Kenneth Rohde Christiansen <kenneth (a] webkit.org>
   41414 
   41415         Reviewed by Antti Koivisto.
   41416 
   41417         [Qt] Improve QtWebkit2 secondary process launching procedure
   41418         https://bugs.webkit.org/show_bug.cgi?id=41853
   41419 
   41420         Changing secondary process launching procedure to make sure that the method
   41421         ProcessLauncher::didFinishLaunchingProcess will only be called after secondary
   41422         process has been launched and the connection has been stablished between the
   41423         UIProcess and WebProcess.
   41424 
   41425         This solves the timing issues ocasionaly observed when launching MiniBrowser.
   41426 
   41427         QLocalServer object and related code has been removed from the class Connection.
   41428         Server instances of the Connection class now get the QLocalSocket via ProcessLauncher.
   41429 
   41430         * Platform/CoreIPC/Connection.h:
   41431         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   41432         (CoreIPC::Connection::platformInitialize):
   41433         (CoreIPC::Connection::platformInvalidate):
   41434         (CoreIPC::Connection::open):
   41435 
   41436         Using QProcess* as PlatformProcessIdentifier.
   41437 
   41438         * Platform/PlatformProcessIdentifier.h:
   41439 
   41440         A new singleton class named ProcessLauncherHelper was created to handle the QLocalServer
   41441         object used to receive connections. This class launches the process and waits for it to connect
   41442         before calling ProcessLauncher::didFinishLaunchingProcess.
   41443 
   41444         * UIProcess/Launcher/ProcessLauncher.h:
   41445         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
   41446         (WebKit::ProcessLauncherHelper::launch):
   41447         (WebKit::ProcessLauncherHelper::takePendingConnection):
   41448         (WebKit::ProcessLauncherHelper::ProcessLauncherHelper):
   41449         (WebKit::ProcessLauncherHelper::instance):
   41450         (WebKit::ProcessLauncherHelper::newConnection):
   41451         (WebKit::ProcessLauncher::launchProcess):
   41452         (WebKit::ProcessLauncher::terminateProcess):
   41453         (_qt_takePendingConnection):
   41454 
   41455 2010-07-08  Antti Koivisto  <koivisto (a] iki.fi>
   41456 
   41457         Reviewed by Kenneth Rohde Christiansen.
   41458 
   41459         [Qt] Initial WebKit2 implementation
   41460         https://bugs.webkit.org/show_bug.cgi?id=40233
   41461     
   41462         Random build fixes.
   41463 
   41464         * Shared/qt/WebEventFactoryQt.cpp:
   41465         * UIProcess/API/qt/ClientImpl.cpp:
   41466         * UIProcess/API/qt/qwkpage.cpp:
   41467         * UIProcess/API/qt/qwkpage.h:
   41468         * UIProcess/DrawingAreaProxy.h:
   41469         * UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp:
   41470         * WebProcess/WebProcess.cpp:
   41471 
   41472 2010-07-07  Zoltan Horvath  <zoltan (a] webkit.org>
   41473 
   41474         Reviewed by Kenneth Rohde Christiansen.
   41475 
   41476         [Qt] Terminate QtWebProcess on exit
   41477         https://bugs.webkit.org/show_bug.cgi?id=41766
   41478 
   41479         Call WKPageTerminate to terminate QtWebProcess on exit.
   41480 
   41481         * UIProcess/API/qt/qwkpage.cpp:
   41482         (QWKPage::~QWKPage):
   41483 
   41484 2010-07-07  Steve Falkenburg  <sfalken (a] apple.com>
   41485 
   41486         Windows release build fix.
   41487         Don't generate public symbols since this is exceeding address space on our builders.
   41488 
   41489         * win/WebKit2.vcproj:
   41490 
   41491 2010-07-07  Sam Weinig  <sam (a] webkit.org>
   41492 
   41493         Reviewed by Anders Carlsson.
   41494 
   41495         Patch for https://bugs.webkit.org/show_bug.cgi?id=41772
   41496         Add basic piping for BackForwardControllerClient.
   41497 
   41498         - Add very basic WebBackForwardControllerClient.
   41499 
   41500         * WebKit2.xcodeproj/project.pbxproj:
   41501         * WebProcess/WebCoreSupport/WebBackForwardControllerClient.cpp: Added.
   41502         (WebKit::WebBackForwardControllerClient::backForwardControllerDestroyed):
   41503         (WebKit::WebBackForwardControllerClient::createBackForwardList):
   41504         * WebProcess/WebCoreSupport/WebBackForwardControllerClient.h: Added.
   41505         (WebKit::WebBackForwardControllerClient::WebBackForwardControllerClient):
   41506         * WebProcess/WebPage/WebPage.cpp:
   41507         (WebKit::WebPage::WebPage):
   41508         * win/WebKit2.vcproj:
   41509 
   41510 2010-07-07  Antti Koivisto  <koivisto (a] iki.fi>
   41511 
   41512         Reviewed by Kenneth Rohde Christiansen.
   41513 
   41514         [Qt] Initial WebKit2 implementation
   41515         https://bugs.webkit.org/show_bug.cgi?id=40233
   41516         
   41517         Add Qt section to the prefix header.
   41518 
   41519         * WebKit2Prefix.h:
   41520 
   41521 2010-07-07  Antti Koivisto  <koivisto (a] iki.fi>
   41522 
   41523         Not reviewed.
   41524 
   41525         Fix build, remove some left over debugging code.
   41526 
   41527         * Platform/CoreIPC/qt/ConnectionQt.cpp:
   41528         (CoreIPC::Connection::readyReadHandler):
   41529         (CoreIPC::Connection::sendOutgoingMessage):
   41530 
   41531 2010-07-07  Antti Koivisto  <koivisto (a] iki.fi>
   41532 
   41533         Reviewed by Kenneth Rohde Christiansen.
   41534 
   41535         [Qt] Initial WebKit2 implementation
   41536         https://bugs.webkit.org/show_bug.cgi?id=40233
   41537         
   41538         Implement WebPage for Qt.
   41539 
   41540         * WebProcess/WebPage/qt/WebPageQt.cpp: Added.
   41541         (WebKit::WebPage::platformInitialize):
   41542         (WebKit::):
   41543         (WebKit::WebPage::interpretKeyEvent):
   41544 
   41545 
   41546 2010-07-06  Anders Carlsson  <andersca (a] apple.com>
   41547 
   41548         Fix Windows WebKit2 build.
   41549 
   41550         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
   41551         (WebKit::PluginInfoStore::mimeTypeFromExtension):
   41552 
   41553 2010-07-06  Anders Carlsson  <andersca (a] apple.com>
   41554 
   41555         Reviewed by Sam Weinig.
   41556 
   41557         Add PluginInfoStore::findPlugin
   41558         https://bugs.webkit.org/show_bug.cgi?id=41719
   41559 
   41560         * UIProcess/Plugins/PluginInfoStore.cpp:
   41561         (WebKit::PluginInfoStore::getPlugins):
   41562         (WebKit::PluginInfoStore::findPluginForMIMEType):
   41563         (WebKit::PluginInfoStore::findPluginForExtension):
   41564         (WebKit::pathExtension):
   41565         (WebKit::PluginInfoStore::findPlugin):
   41566         * UIProcess/Plugins/PluginInfoStore.h:
   41567         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
   41568         (WebKit::PluginInfoStore::mimeTypeFromExtension):
   41569 
   41570 2010-07-06  Sam Weinig  <sam (a] webkit.org>
   41571 
   41572         Reviewed by Anders Carlsson.
   41573 
   41574         Add injected bundle API for exposing console messages.
   41575 
   41576         - Split WKBundlePageClient into multiple clients matching WKPage.
   41577           (For now we only have a loader client and a UI client)
   41578 
   41579         * WebKit2.xcodeproj/project.pbxproj:
   41580         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   41581         (WKBundlePageSetLoaderClient):
   41582         (WKBundlePageSetUIClient):
   41583         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   41584         * WebProcess/InjectedBundle/InjectedBundlePageClient.cpp: Removed.
   41585         * WebProcess/InjectedBundle/InjectedBundlePageClient.h: Removed.
   41586         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp: Copied from WebProcess/InjectedBundle/InjectedBundlePageClient.cpp.
   41587         (WebKit::InjectedBundlePageLoaderClient::InjectedBundlePageLoaderClient):
   41588         (WebKit::InjectedBundlePageLoaderClient::initialize):
   41589         (WebKit::InjectedBundlePageLoaderClient::didStartProvisionalLoadForFrame):
   41590         (WebKit::InjectedBundlePageLoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
   41591         (WebKit::InjectedBundlePageLoaderClient::didFailProvisionalLoadWithErrorForFrame):
   41592         (WebKit::InjectedBundlePageLoaderClient::didCommitLoadForFrame):
   41593         (WebKit::InjectedBundlePageLoaderClient::didFinishLoadForFrame):
   41594         (WebKit::InjectedBundlePageLoaderClient::didFailLoadWithErrorForFrame):
   41595         (WebKit::InjectedBundlePageLoaderClient::didReceiveTitleForFrame):
   41596         (WebKit::InjectedBundlePageLoaderClient::didClearWindowObjectForFrame):
   41597         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h: Copied from WebProcess/InjectedBundle/InjectedBundlePageClient.h.
   41598         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: Added.
   41599         (WebKit::InjectedBundlePageUIClient::InjectedBundlePageUIClient):
   41600         (WebKit::InjectedBundlePageUIClient::initialize):
   41601         (WebKit::InjectedBundlePageUIClient::addMessageToConsole):
   41602         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: Added.
   41603         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   41604         (WebKit::WebChromeClient::addMessageToConsole):
   41605         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   41606         (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
   41607         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
   41608         (WebKit::WebFrameLoaderClient::dispatchDidReceiveTitle):
   41609         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
   41610         (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
   41611         (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
   41612         (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
   41613         (WebKit::WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
   41614         * WebProcess/WebPage/WebPage.cpp:
   41615         (WebKit::WebPage::initializeInjectedBundleLoaderClient):
   41616         (WebKit::WebPage::initializeInjectedBundleUIClient):
   41617         * WebProcess/WebPage/WebPage.h:
   41618         (WebKit::WebPage::injectedBundleLoaderClient):
   41619         (WebKit::WebPage::injectedBundleUIClient):
   41620         * mac/WebKit2.exp:
   41621         * win/WebKit2.vcproj:
   41622 
   41623 2010-07-06  Sam Weinig  <sam (a] webkit.org>
   41624 
   41625         Reviewed by Anders Carlsson.
   41626 
   41627         Patch for https://bugs.webkit.org/show_bug.cgi?id=41707
   41628         Add ability to dump frame inner text for the test runner
   41629 
   41630         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   41631         (WKBundleFrameCopyInnerText):
   41632         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   41633         * WebProcess/WebPage/WebFrame.cpp:
   41634         (WebKit::WebFrame::innerText):
   41635         * WebProcess/WebPage/WebFrame.h:
   41636         * mac/WebKit2.exp:
   41637 
   41638 2010-07-06  Anders Carlsson  <andersca (a] apple.com>
   41639 
   41640         Reviewed by Sam Weinig.
   41641 
   41642         Only export a single WebKitMain function for the Web Process to call
   41643         https://bugs.webkit.org/show_bug.cgi?id=41702
   41644 
   41645         * Shared/CommandLine.h:
   41646         Add windows CommandLine::parse overload.
   41647 
   41648         * Shared/win/CommandLineWin.cpp: Added.
   41649         (WebKit::CommandLine::parse):
   41650         Move parse overload from WebProcess/win/WebProcessMain.cpp.
   41651 
   41652         * UIProcess/Launcher/win/ProcessLauncherWin.cpp:
   41653         (WebKit::ProcessLauncher::launchProcess):
   41654         Pass the right mode to.
   41655 
   41656         * WebKit2.xcodeproj/project.pbxproj:
   41657         Update for moves.
   41658         
   41659         * WebProcess/Launching/mac/WebProcessMain.mm: Removed.
   41660         * WebProcess/Launching/win/WebProcessWinMain.cpp: Removed.
   41661         * WebProcess/WebKitMain.cpp: Added.
   41662         (WebKitMain):
   41663         (enableTerminationOnHeapCorruption):
   41664         Add WebKitMain functions for Mac and Windows.
   41665 
   41666         * WebProcess/WebProcessMain.h: Added.
   41667         * WebProcess/mac/WebProcessMainMac.mm: Added.
   41668         (WebKit::WebProcessMain):
   41669         Add Mac version of WebProcessMain.
   41670 
   41671         * WebProcess/win/WebProcessMain.cpp: Removed.
   41672         * WebProcess/win/WebProcessMain.h: Removed.
   41673         * WebProcess/win/WebProcessMainWin.cpp: Added.
   41674         (WebKit::WebProcessMain):
   41675         Add Windows version of WebProcessMain.
   41676 
   41677         * mac/MainMac.cpp: Added.
   41678         (main):
   41679         Add Mac WebProcess main function.
   41680 
   41681         * mac/WebKit2.exp:
   41682         Remove functions that we don't need to export.
   41683 
   41684         * win/MainWin.cpp: Added.
   41685         (wWinMain):
   41686         Add Windows WebProcess main function.
   41687 
   41688         * win/WebKit2.vcproj:
   41689         * win/WebKit2WebProcess.vcproj:
   41690         Update for moves.
   41691 
   41692 2010-07-05  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   41693 
   41694         Reviewed by Kenneth Rohde Christiansen.
   41695 
   41696         [Qt] WebKit2 triple click
   41697         https://bugs.webkit.org/show_bug.cgi?id=41629
   41698 
   41699         QtWebkit2 triple click implementation.
   41700 
   41701         * UIProcess/API/qt/qwkpage.cpp:
   41702         (QWKPagePrivate::mousePressEvent):
   41703         (QWKPagePrivate::mouseDoubleClickEvent):
   41704         (QWKPage::timerEvent):
   41705         * UIProcess/API/qt/qwkpage.h:
   41706         * UIProcess/API/qt/qwkpage_p.h:
   41707 
   41708 2010-07-05  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   41709 
   41710         Reviewed by Antti Koivisto.
   41711 
   41712         [Qt] Initial WebKit2 implementation
   41713         https://bugs.webkit.org/show_bug.cgi?id=40233
   41714 
   41715         Add stubs
   41716 
   41717         * UIProcess/Plugins/qt/PluginInfoStoreQt.cpp: Copied from WebKit2/UIProcess/Plugins/win/PluginInfoStoreWin.cpp.
   41718         (WebKit::PluginInfoStore::pluginDirectories):
   41719         (WebKit::PluginInfoStore::pluginPathsInDirectory):
   41720         (WebKit::PluginInfoStore::getPluginInfo):
   41721         (WebKit::PluginInfoStore::shouldUsePlugin):
   41722         * WebProcess/InjectedBundle/InjectedBundle.h:
   41723         * WebProcess/InjectedBundle/qt/InjectedBundleQt.cpp: Added.
   41724         (WebKit::InjectedBundle::load):
   41725 
   41726 2010-07-05  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   41727 
   41728         Reviewed by Antti Koivisto.
   41729 
   41730         [Qt] Initial WebKit2 implementation
   41731         https://bugs.webkit.org/show_bug.cgi?id=40233
   41732 
   41733         Add WebErrorsQt
   41734 
   41735         * WebProcess/WebCoreSupport/qt/WebErrorsQt.cpp: Added.
   41736         (WebKit::):
   41737         (WebKit::cancelledError):
   41738         (WebKit::blockedError):
   41739         (WebKit::cannotShowURLError):
   41740         (WebKit::interruptForPolicyChangeError):
   41741         (WebKit::cannotShowMIMETypeError):
   41742         (WebKit::fileDoesNotExistError):
   41743 
   41744 2010-07-05  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   41745 
   41746         Reviewed by Antti Koivisto.
   41747 
   41748         [Qt] Initial WebKit2 implementation
   41749         https://bugs.webkit.org/show_bug.cgi?id=40233
   41750 
   41751         Add Qt C API integration.
   41752 
   41753         * UIProcess/API/cpp/qt/WKStringQt.cpp: Added.
   41754         (WKStringCreateWithQString):
   41755         (WKStringCopyQString):
   41756         * UIProcess/API/cpp/qt/WKStringQt.h: Added.
   41757         * UIProcess/API/cpp/qt/WKURLQt.cpp: Added.
   41758         (WKURLCreateWithQUrl):
   41759         (WKURLCopyQUrl):
   41760         * UIProcess/API/cpp/qt/WKURLQt.h: Added.
   41761 
   41762 2010-07-05  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   41763 
   41764         Reviewed by Antti Koivisto.
   41765 
   41766         [Qt] Initial WebKit2 implementation
   41767         https://bugs.webkit.org/show_bug.cgi?id=40233
   41768 
   41769         Add the Qt process launcher.
   41770 
   41771         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp: Added.
   41772         (WebKit::ProcessLauncher::launchProcess):
   41773         (WebKit::ProcessLauncher::terminateProcess):
   41774         (WebKit::webThreadBody):
   41775         (WebKit::ProcessLauncher::createWebThread):
   41776         (webProcessMain):
   41777 
   41778 2010-07-05  Antti Koivisto  <koivisto (a] iki.fi>
   41779 
   41780         Reviewed by Kenneth Rohde Christiansen.
   41781 
   41782         [Qt] Initial WebKit2 implementation
   41783         https://bugs.webkit.org/show_bug.cgi?id=40233
   41784         
   41785         Implement ChunkedUpdateDrawingArea + Proxy for Qt. Not built yet.
   41786 
   41787         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   41788         * UIProcess/qt: Added.
   41789         * UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp: Added.
   41790         (WebKit::ChunkedUpdateDrawingAreaProxy::page):
   41791         (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore):
   41792         (WebKit::ChunkedUpdateDrawingAreaProxy::invalidateBackingStore):
   41793         (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint):
   41794         (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore):
   41795         * WebProcess/WebPage/qt: Added.
   41796         * WebProcess/WebPage/qt/ChunkedUpdateDrawingAreaQt.cpp: Added.
   41797         (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):
   41798 
   41799 2010-07-04  Anders Carlsson  <andersca (a] apple.com>
   41800 
   41801         Reviewed by Dan Bernstein.
   41802 
   41803         Add simple command line parser and pass mode argument to the web process
   41804         https://bugs.webkit.org/show_bug.cgi?id=41586
   41805 
   41806         * Shared/CommandLine.h:
   41807         (WebKit::CommandLine::operator[]):
   41808         Add CommandLine class.
   41809 
   41810         * Shared/mac/CommandLineMac.cpp:
   41811         (WebKit::CommandLine::parse):
   41812         Implement Mac version of CommandLine::parse.
   41813 
   41814         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
   41815         (WebKit::ProcessLauncher::launchProcess):
   41816         Add "legacywebprocess" mode to the posix_spawn call.
   41817 
   41818         * WebKit2.xcodeproj/project.pbxproj:
   41819         Add CommandLine to the xcode project.
   41820 
   41821         * WebProcess/Launching/mac/WebProcessMain.mm:
   41822         (webProcessMain):
   41823         (main):
   41824         Parse the command line and check the mode.
   41825 
   41826 2010-07-04  Maciej Stachowiak  <mjs (a] apple.com>
   41827 
   41828         Reviewed by Mark Rowe.
   41829 
   41830         WebProcess crashes in release for simple layout tests
   41831         https://bugs.webkit.org/show_bug.cgi?id=41575
   41832 
   41833         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   41834         (WKBundlePageCopyRenderTreeExternalRepresentation): ref external representation StringImpl*
   41835         before taking it out of its parent String, to avoid returning freed memory.
   41836 
   41837 2010-07-03  Maciej Stachowiak  <mjs (a] apple.com>
   41838 
   41839         Rubber stamped by Anders Carlsson.
   41840 
   41841         Add stdint.h include to fix WebKitTestRunner build.
   41842 
   41843         * UIProcess/API/C/WKPage.h:
   41844 
   41845 2010-07-02  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   41846 
   41847         Reviewed by Kenneth Rohde Christiansen.
   41848 
   41849         [Qt] Wrong method name in file  Connection.h
   41850         https://bugs.webkit.org/show_bug.cgi?id=41536
   41851 
   41852         Method openConnectionHandler was spelled as openConnection in class Connection.
   41853 
   41854         * Platform/CoreIPC/Connection.h:
   41855 
   41856 2010-07-02  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   41857 
   41858         Reviewed by Sam Weinig.
   41859 
   41860         Adding notification and touch events methods to WebChromeClient
   41861         https://bugs.webkit.org/show_bug.cgi?id=41527
   41862 
   41863         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   41864         (WebKit::WebChromeClient::notificationPresenter):
   41865         (WebKit::WebChromeClient::needTouchEvents):
   41866         * WebProcess/WebCoreSupport/WebChromeClient.h:
   41867 
   41868 2010-07-02  Luiz Agostini  <luiz.agostini (a] openbossa.org>
   41869 
   41870         Reviewed by Sam Weinig.
   41871 
   41872         Removing CoreFoundation.h include from WKFrame.h
   41873         https://bugs.webkit.org/show_bug.cgi?id=41528
   41874 
   41875         * UIProcess/API/C/WKFrame.h:
   41876 
   41877 2010-07-02  Sam Weinig  <sam (a] webkit.org>
   41878 
   41879         Reviewed by Oliver Hunt.
   41880 
   41881         Patch for https://bugs.webkit.org/show_bug.cgi?id=41540
   41882         WebKit2: Add InjectedCode API to get a list of subframes
   41883 
   41884         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
   41885         (WKBundleFrameCopyChildFrames):
   41886         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
   41887         * WebProcess/WebPage/WebFrame.cpp:
   41888         (WebKit::childFrameRef):
   41889         (WebKit::childFrameDeref):
   41890         (WebKit::WebFrame::childFrames):
   41891         * WebProcess/WebPage/WebFrame.h:
   41892         * mac/WebKit2.exp:
   41893 
   41894 2010-07-02  Sam Weinig  <sam (a] webkit.org>
   41895 
   41896         Reviewed by Anders Carlsson.
   41897 
   41898         Turn off the Objective-C garbage collection for the WebProcess.
   41899 
   41900         * Configurations/WebProcess.xcconfig:
   41901         * WebProcess/Launching/mac/WebProcessMain.mm:
   41902         (main): Assert that GC is off.
   41903 
   41904 2010-07-02  Sam Weinig  <sam (a] webkit.org>
   41905 
   41906         Reviewed by Anders Carlsson.
   41907 
   41908         There is no longer a reason to check that the process is valid when posting
   41909         a message to the bundle, the process code will take care of that for us.
   41910 
   41911         * UIProcess/WebContext.cpp:
   41912         (WebKit::WebContext::postMessageToInjectedBundle):
   41913 
   41914 2010-07-02  Sam Weinig  <sam (a] webkit.org>
   41915 
   41916         Reviewed by Anders Carlsson.
   41917 
   41918         Use send instead of connection()->send(), now that connections() are created
   41919         asynchronously it can be null at this point and the message needs to be queued.
   41920 
   41921         * UIProcess/mac/WebProcessProxyMac.mm:
   41922         (WebKit::WebProcessProxy::setUpAcceleratedCompositing):
   41923 
   41924 2010-07-01  Steve Falkenburg  <sfalken (a] apple.com>
   41925 
   41926         Even more Windows build fixing.
   41927         Removed bogus post-build event commands.
   41928         Removed unnecessary link libraries.
   41929 
   41930         * win/WebKit2.vcproj:
   41931 
   41932 2010-07-01  Steve Falkenburg  <sfalken (a] apple.com>
   41933 
   41934         Fix Windows while not breaking Qt (didn't realize this was building for Qt).
   41935 
   41936         * WebProcess/WebProcess.cpp:
   41937 
   41938 2010-07-01  Steve Falkenburg  <sfalken (a] apple.com>
   41939 
   41940         Windows build fix.
   41941 
   41942         * win/WebKit2Generated.make:
   41943 
   41944 2010-07-01  Steve Falkenburg  <sfalken (a] apple.com>
   41945 
   41946         Windows build fix.
   41947 
   41948         * WebProcess/WebProcess.cpp:
   41949 
   41950 2010-07-01  Sam Weinig  <sam (a] webkit.org>
   41951 
   41952         Reviewed by Jon Honeycutt.
   41953 
   41954         Make WebKit2 compile (though not work) on Leopard.
   41955 
   41956         * Platform/WorkQueue.h:
   41957         * Platform/mac/WorkQueueMac.cpp:
   41958         (WorkQueue::EventSource::EventSource):
   41959         (WorkQueue::scheduleWork):
   41960         (WorkQueue::registerMachPortEventHandler):
   41961         (WorkQueue::unregisterMachPortEventHandler):
   41962         (WorkQueue::platformInitialize):
   41963         (WorkQueue::platformInvalidate):
   41964         * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm:
   41965         (WebKit::LayerBackedDrawingAreaProxy::attachCompositingContext):
   41966         * UIProcess/mac/WebProcessProxyMac.mm:
   41967         (WebKit::WebProcessProxy::setUpAcceleratedCompositing):
   41968         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
   41969         (WebKit::LayerBackedDrawingArea::LayerBackedDrawingArea):
   41970         (WebKit::LayerBackedDrawingArea::setNeedsDisplay):
   41971         * WebProcess/WebPage/LayerBackedDrawingArea.h:
   41972         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   41973         (WebKit::LayerBackedDrawingArea::platformClear):
   41974         (WebKit::LayerBackedDrawingArea::attachCompositingContext):
   41975 
   41976 2010-07-01  Sam Weinig  <sam (a] webkit.org>
   41977 
   41978         Reviewed by Anders Carlsson.
   41979 
   41980         https://bugs.webkit.org/show_bug.cgi?id=41491
   41981         Add first stab at back/forward list API.
   41982 
   41983         * UIProcess/API/C/WKAPICast.h:
   41984         * UIProcess/API/C/WKBackForwardList.cpp: Added.
   41985         * UIProcess/API/C/WKBackForwardList.h: Added.
   41986         * UIProcess/API/C/WKBackForwardListItem.cpp: Added.
   41987         * UIProcess/API/C/WKBackForwardListItem.h: Added.
   41988         * UIProcess/API/C/WKBase.h:
   41989         * UIProcess/API/C/WKPage.cpp:
   41990         * UIProcess/API/C/WKPage.h:
   41991         * UIProcess/API/C/WebKit2.h:
   41992         * UIProcess/WebBackForwardListItem.cpp: Added.
   41993         * UIProcess/WebBackForwardListItem.h: Added.
   41994         * UIProcess/WebBackForwardListProxy.cpp: Added.
   41995         * UIProcess/WebBackForwardListProxy.h: Added.
   41996         * UIProcess/WebPageProxy.cpp:
   41997         * UIProcess/WebPageProxy.h:
   41998         * WebKit2.xcodeproj/project.pbxproj:
   41999         * win/WebKit2.vcproj:
   42000 
   42001 2010-07-01  Anders Carlsson  <andersca (a] apple.com>
   42002 
   42003         Reviewed by Sam Weinig.
   42004 
   42005         Make process launching asynchronous
   42006         https://bugs.webkit.org/show_bug.cgi?id=41489
   42007 
   42008         * Platform/CoreIPC/Connection.h:
   42009         Make OutgoingMessage public.
   42010 
   42011         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   42012         (WebKit::ChunkedUpdateDrawingAreaProxy::paint):
   42013         Don't wait for a paint reply when the process is starting up.
   42014 
   42015         * UIProcess/Launcher/ProcessLauncher.cpp: Added.
   42016         Add new ProcessLauncher class.
   42017 
   42018         (WebKit::processLauncherWorkQueue):
   42019         Returns the work queue where process launching will happen.
   42020 
   42021         (WebKit::ProcessLauncher::ProcessLauncher):
   42022         Schedule launching the process.
   42023 
   42024         (WebKit::ProcessLauncher::didFinishLaunchingProcess):
   42025         Call the client method.
   42026         
   42027         (WebKit::ProcessLauncher::invalidate):
   42028         Set the client to 0.
   42029 
   42030         * UIProcess/Launcher/ProcessLauncher.h: Added.
   42031         * UIProcess/Launcher/WebProcessLauncher.h: Removed.
   42032         Rename WebProcessLauncher.h -> ProcessLauncher.h
   42033 
   42034         * UIProcess/Launcher/mac/ProcessLauncherMac.mm: Added.
   42035         * UIProcess/Launcher/mac/WebProcessLauncher.mm: Removed.
   42036         Rename WebProcessLauncher.mm -> ProcessLauncherMac.mm, update for ProcessLauncher changes.
   42037 
   42038         * UIProcess/Launcher/win/ProcessLauncherWin.cpp: Added.
   42039         * UIProcess/Launcher/win/WebProcessLauncher.cpp: Removed.
   42040         Rename WebProcessLauncher.cpp -> ProcessLauncherWin.cpp, update for ProcessLauncher changes.
   42041         
   42042         * UIProcess/WebProcessProxy.cpp:
   42043         (WebKit::WebProcessProxy::~WebProcessProxy):
   42044         Delete any unsent messages.
   42045 
   42046         (WebKit::WebProcessProxy::connect):
   42047         Use the new ProcessLauncher.
   42048 
   42049         (WebKit::WebProcessProxy::sendMessage):
   42050         If we're waiting for the process to launch, the messages need to be enqueued.
   42051 
   42052         (WebKit::WebProcessProxy::didFinishLaunching):
   42053         Send the outgoing messages.
   42054 
   42055         * WebKit2.xcodeproj/project.pbxproj:
   42056         * win/WebKit2.vcproj:
   42057         Update for renames.
   42058 
   42059 2010-07-01  Simon Fraser  <simon.fraser (a] apple.com>
   42060 
   42061         Reviewed by Anders Carlsson.
   42062 
   42063         Get accelerated compositing working with webkit2
   42064         https://bugs.webkit.org/show_bug.cgi?id=41084
   42065         
   42066         Start up the CA render server in the UI process (currently, at launch time), and
   42067         pass the server port over to the web process for use by the layer-backed drawing area.
   42068         
   42069         Fix some style issues pointed out by Dan Bernstein.
   42070         
   42071         Implement the WebChromeClient methods that pass the attach/detach calls through
   42072         to the drawing area.
   42073 
   42074         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
   42075         * UIProcess/API/mac/WKView.mm:
   42076         (-[WKView _startAcceleratedCompositing:]):
   42077         * UIProcess/API/mac/WKViewInternal.h:
   42078         * UIProcess/WebProcessProxy.cpp:
   42079         (WebKit::WebProcessProxy::WebProcessProxy):
   42080         (WebKit::WebProcessProxy::setUpAcceleratedCompositing):
   42081         * UIProcess/WebProcessProxy.h:
   42082         * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm:
   42083         * UIProcess/mac/WebProcessProxyMac.mm: Added.
   42084         (WebKit::WebProcessProxy::setUpAcceleratedCompositing):
   42085         * WebKit2.xcodeproj/project.pbxproj:
   42086         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   42087         (WebKit::WebChromeClient::attachRootGraphicsLayer):
   42088         (WebKit::WebChromeClient::scheduleCompositingLayerSync):
   42089         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
   42090         (WebKit::LayerBackedDrawingArea::attachCompositingContext):
   42091         * WebProcess/WebProcess.cpp:
   42092         (WebKit::WebProcess::WebProcess):
   42093         (WebKit::WebProcess::didReceiveMessage):
   42094         * WebProcess/WebProcess.h:
   42095         (WebKit::WebProcess::compositingRenderServerPort):
   42096 
   42097 2010-07-01  Simon Fraser  <simon.fraser (a] apple.com>
   42098 
   42099         Reviewed by Anders Carlsson.
   42100 
   42101         Get accelerated compositing working with webkit2
   42102         https://bugs.webkit.org/show_bug.cgi?id=41084
   42103         
   42104         Add a new kind of DrawingArea, which is a LayerBackedDrawingArea, which will be used
   42105         when the page goes into accelerated compositing mode. It is not wired up yet.
   42106 
   42107         * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h: New 'attach' and 'detach' messages
   42108         related to accelerated compositing.
   42109 
   42110         * UIProcess/API/mac/WKView.mm:
   42111         (-[WKView _startAcceleratedCompositing:]):
   42112         (-[WKView _stopAcceleratedCompositing]):
   42113         * UIProcess/API/mac/WKViewInternal.h:
   42114         Add a subview of the WKView which has layer-backing enabled, and put the drawing area's
   42115         layer inside of that.
   42116         
   42117         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
   42118         (WebKit::ChunkedUpdateDrawingAreaProxy::attachCompositingContext):
   42119         (WebKit::ChunkedUpdateDrawingAreaProxy::detachCompositingContext): These methods will never be called
   42120         on the ChunkedUpdateDrawingArea. Stub them out.
   42121 
   42122         * UIProcess/DrawingAreaProxy.h:
   42123         Add attachCompositingContext() and detachCompositingContext() methods, and a new drawing area
   42124         type to the enum.
   42125 
   42126         * UIProcess/LayerBackedDrawingAreaProxy.cpp: Added.
   42127         * UIProcess/LayerBackedDrawingAreaProxy.h: Added.
   42128         * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm: Added.
   42129 
   42130         * WebKit2.xcodeproj/project.pbxproj: Add LayerBackedDrawingArea files.
   42131 
   42132         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h: Add virtual methods stubs.
   42133 
   42134         * WebProcess/WebPage/DrawingArea.cpp:
   42135         (WebKit::DrawingArea::create): Create a LayerBackedDrawingArea if asked.
   42136         * WebProcess/WebPage/DrawingArea.h: New LayerBackedDrawingAreaType type, and new virtual
   42137         methods related to accelerated compositing.
   42138 
   42139         * WebProcess/WebPage/LayerBackedDrawingArea.cpp: Added.
   42140         * WebProcess/WebPage/LayerBackedDrawingArea.h: Added.
   42141         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm: Added.
   42142 
   42143 2010-07-01  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   42144 
   42145        Rubberstamped by Sam Weinig.
   42146 
   42147        Export symbols on Linux with GCC, like JSC does.
   42148 
   42149        * UIProcess/API/C/WKBase.h:
   42150        * WebProcess/InjectedBundle/API/c/WKBundleBase.h:
   42151 
   42152 2010-07-01  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   42153 
   42154         Reviewed by Antti Koivisto.
   42155 
   42156         [Qt] Initial WebKit2 implementation
   42157         https://bugs.webkit.org/show_bug.cgi?id=40233
   42158 
   42159         Add implementation of the UI and loader client for Qt.
   42160 
   42161         * UIProcess/API/qt/qwkpage.cpp:
   42162         * UIProcess/API/qt/ClientImpl.cpp: Added.
   42163         (toQWKPage):
   42164         (qt_wk_didStartProvisionalLoadForFrame):
   42165         (qt_wk_didReceiveServerRedirectForProvisionalLoadForFrame):
   42166         (qt_wk_didFailProvisionalLoadWithErrorForFrame):
   42167         (qt_wk_didCommitLoadForFrame):
   42168         (qt_wk_didFinishLoadForFrame):
   42169         (qt_wk_didFailLoadWithErrorForFrame):
   42170         (qt_wk_didReceiveTitleForFrame):
   42171         (qt_wk_didFirstLayoutForFrame):
   42172         (qt_wk_didFirstVisuallyNonEmptyLayoutForFrame):
   42173         (qt_wk_didStartProgress):
   42174         (qt_wk_didChangeProgress):
   42175         (qt_wk_didFinishProgress):
   42176         (qt_wk_didBecomeUnresponsive):
   42177         (qt_wk_didBecomeResponsive):
   42178         (qt_wk_createNewPage):
   42179         (qt_wk_showPage):
   42180         (qt_wk_close):
   42181         (qt_wk_runJavaScriptAlert):
   42182         * UIProcess/API/qt/ClientImpl.h: Added.
   42183 
   42184 2010-07-01  Anders Carlsson  <andersca (a] apple.com>
   42185 
   42186         Reviewed by Dan Bernstein.
   42187 
   42188         Change the CoreIPC connection identifier to be a HANDLE on Windows
   42189         https://bugs.webkit.org/show_bug.cgi?id=41479
   42190 
   42191         * Platform/CoreIPC/Connection.h:
   42192         * Platform/CoreIPC/win/ConnectionWin.cpp:
   42193         (CoreIPC::Connection::createServerAndClientIdentifiers):
   42194         New function that creates a server and client HANDLE.
   42195 
   42196         (CoreIPC::Connection::platformInitialize):
   42197         Don't open the connections here.
   42198 
   42199         (CoreIPC::Connection::readEventHandler):
   42200         (CoreIPC::Connection::open):
   42201         
   42202         * UIProcess/Launcher/win/WebProcessLauncher.cpp:
   42203         (WebKit::webThreadBody):
   42204         Get the handle from the thread.
   42205 
   42206         (WebKit::launchWebProcess):
   42207         Mark the client identifier as inheritable and pass it along to the web process.
   42208 
   42209         * WebProcess/win/WebProcessMain.cpp:
   42210         (WebKit::CommandLine::CommandLine):
   42211         (WebKit::CommandLine::parse):
   42212         (WebKit::CommandLine::operator[]):
   42213         Add simple command line parser.
   42214 
   42215         (WebKit::WebProcessMain):
   42216         Get the handle identifier from the command line.
   42217 
   42218         * WebProcess/win/WebProcessMain.h:
   42219 
   42220 2010-07-01  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   42221 
   42222         Reviewed by Antti Koivisto.
   42223 
   42224         [Qt] Initial WebKit2 implementation
   42225         https://bugs.webkit.org/show_bug.cgi?id=40233
   42226 
   42227         Add initial Qt API for WebKit2
   42228 
   42229         * UIProcess/API/qt/WKView.h: Added.
   42230         * UIProcess/API/qt/qgraphicswkview.cpp: Added.
   42231         (QGraphicsWKViewPrivate::pageRef):
   42232         (QGraphicsWKView::QGraphicsWKView):
   42233         (QGraphicsWKView::~QGraphicsWKView):
   42234         (QGraphicsWKView::page):
   42235         (QGraphicsWKView::paint):
   42236         (QGraphicsWKView::setGeometry):
   42237         (QGraphicsWKView::load):
   42238         (QGraphicsWKView::setUrl):
   42239         (QGraphicsWKView::url):
   42240         (QGraphicsWKView::title):
   42241         (QGraphicsWKView::triggerPageAction):
   42242         (QGraphicsWKView::back):
   42243         (QGraphicsWKView::forward):
   42244         (QGraphicsWKView::reload):
   42245         (QGraphicsWKView::stop):
   42246         (QGraphicsWKView::itemChange):
   42247         (QGraphicsWKView::event):
   42248         (QGraphicsWKView::sizeHint):
   42249         (QGraphicsWKView::inputMethodQuery):
   42250         (QGraphicsWKView::keyPressEvent):
   42251         (QGraphicsWKView::keyReleaseEvent):
   42252         (QGraphicsWKView::hoverMoveEvent):
   42253         (QGraphicsWKView::mouseMoveEvent):
   42254         (QGraphicsWKView::mousePressEvent):
   42255         (QGraphicsWKView::mouseReleaseEvent):
   42256         (QGraphicsWKView::mouseDoubleClickEvent):
   42257         (QGraphicsWKView::wheelEvent):
   42258         (QGraphicsWKViewPrivate::QGraphicsWKViewPrivate):
   42259         (QGraphicsWKView::visibleRect):
   42260         * UIProcess/API/qt/qgraphicswkview.h: Added.
   42261         * UIProcess/API/qt/qwkpage.cpp: Added.
   42262         (QWKPagePrivate::QWKPagePrivate):
   42263         (QWKPagePrivate::~QWKPagePrivate):
   42264         (QWKPagePrivate::init):
   42265         (QWKPagePrivate::toolTipChanged):
   42266         (QWKPagePrivate::paint):
   42267         (QWKPagePrivate::keyPressEvent):
   42268         (QWKPagePrivate::keyReleaseEvent):
   42269         (QWKPagePrivate::mouseMoveEvent):
   42270         (QWKPagePrivate::mousePressEvent):
   42271         (QWKPagePrivate::mouseReleaseEvent):
   42272         (QWKPagePrivate::mouseDoubleClickEvent):
   42273         (QWKPagePrivate::wheelEvent):
   42274         (QWKPagePrivate::updateAction):
   42275         (QWKPagePrivate::updateNavigationActions):
   42276         (QWKPagePrivate::_q_webActionTriggered):
   42277         (QWKPage::QWKPage):
   42278         (QWKPage::~QWKPage):
   42279         (QWKPage::pageRef):
   42280         (QWKPage::setCreateNewPageFunction):
   42281         (QWKPage::load):
   42282         (QWKPage::setUrl):
   42283         (QWKPage::url):
   42284         (QWKPage::title):
   42285         (QWKPage::setViewportSize):
   42286         (QWKPage::requestZoomRect):
   42287         (QWKPage::triggerAction):
   42288         (QWKPage::action):
   42289         * UIProcess/API/qt/qwkpage.h: Added.
   42290         * UIProcess/API/qt/qwkpage_p.h: Added.
   42291         (QWKPagePrivate::get):
   42292         (QWKPagePrivate::processDidExit):
   42293         (QWKPagePrivate::processDidRevive):
   42294         (QWKPagePrivate::takeFocus):
   42295 
   42296 2010-07-01  John Sullivan  <sullivan (a] apple.com>
   42297 
   42298         Rubber-stamped by Anders Carlsson.
   42299 
   42300         * mac/WebKit2.exp:
   42301         Added _WKFramePolicyListenerDownload and _WKFramePolicyListenerIgnore.
   42302 
   42303 2010-07-01  Sheriff Bot  <webkit.review.bot (a] gmail.com>
   42304 
   42305         Unreviewed, rolling out r62267.
   42306         http://trac.webkit.org/changeset/62267
   42307         https://bugs.webkit.org/show_bug.cgi?id=41468
   42308 
   42309         broke stuff (Requested by weinig on #webkit).
   42310 
   42311         * UIProcess/API/C/WKBase.h:
   42312         * WebProcess/InjectedBundle/API/c/WKBundleBase.h:
   42313 
   42314 2010-07-01  John Sullivan  <sullivan (a] apple.com>
   42315 
   42316         Rubber-stamped by Sam Weinig.
   42317 
   42318         * mac/WebKit2.exp:
   42319         Added _WKFramePolicyListenerRelease and _WKFramePolicyListenerRetain.
   42320 
   42321 2010-07-01  Kenneth Rohde Christiansen  <kenneth.christiansen (a] openbossa.org>
   42322 
   42323         Reviewed by Antti Koivisto.
   42324 
   42325         [Qt] Initial WebKit2 implementation
   42326         https://bugs.webkit.org/show_bug.cgi?id=40233
   42327 
   42328         Add our event factory for converting Qt events to something WebKit2
   42329         understands.
   42330 
   42331         * Shared/qt/WebEventFactoryQt.cpp: Added.
   42332         (WebKit::mouseButtonForEvent):
   42333         (WebKit::webEventTypeForEvent):
   42334         (WebKit::modifiersForEvent):
   42335         (WebKit::WebEventFactory::createWebMouseEvent):
   42336         (WebKit::WebEventFactory::createWebWheelEvent):
   42337         (WebKit::WebEventFactory::createWebKeyboardEvent):
   42338         * Shared/qt/WebEventFactoryQt.h: Added.
   42339 
   42340 2010-07-01  Antti Koivisto  <koivisto (a] iki.fi>
   42341 
   42342         Reviewed by Kenneth Rohde Christiansen.
   42343 
   42344         [Qt] Initial WebKit2 implementation
   42345         https://bugs.webkit.org/show_bug.cgi?id=40233
   42346         
   42347         Add UpdateChunk. This one is mmap based, using Qt abstractions.
   42348 
   42349         * Shared/qt: Added.
   42350         * Shared/qt/UpdateChunk.cpp: Added.
   42351         (WebKit::MappedMemory::markUsed):
   42352         (WebKit::MappedMemory::markFree):
   42353         (WebKit::MappedMemory::isFree):
   42354         (WebKit::mapMemory):
   42355         (WebKit::mapFile):
   42356         (WebKit::UpdateChunk::UpdateChunk):
   42357         (WebKit::UpdateChunk::~UpdateChunk):
   42358         (WebKit::UpdateChunk::data):
   42359         (WebKit::UpdateChunk::encode):
   42360         (WebKit::UpdateChunk::decode):
   42361         (WebKit::UpdateChunk::createImage):
   42362         * Shared/qt/UpdateChunk.h: Added.
   42363         (WebKit::UpdateChunk::rect):
   42364         (WebKit::UpdateChunk::size):
   42365 
   42366 2010-07-01  Antti Koivisto  <koivisto (a] iki.fi>
   42367 
   42368         Reviewed by Kenneth Rohde Christiansen.
   42369 
   42370         [Qt] Initial WebKit2 implementation
   42371         https://bugs.webkit.org/show_bug.cgi?id=40233
   42372         
   42373         Include some stdlib headers to fix linux build.
   42374 
   42375         * Platform/CoreIPC/ArgumentDecoder.cpp:
   42376         * Platform/CoreIPC/ArgumentEncoder.cpp:
   42377         * UIProcess/WebLoaderClient.cpp:
   42378         * UIProcess/WebPageProxy.cpp:
   42379         * UIProcess/WebUIClient.cpp:
   42380 
   42381 2010-07-01  Antti Koivisto  <koivisto (a] iki.fi>
   42382 
   42383         Reviewed by Kenneth Rohde Christiansen.
   42384 
   42385         [Qt] Initial WebKit2 implementation
   42386         https://bugs.webkit.org/show_bug.cgi?id=40233
   42387         
   42388         Implement CoreIPC::Connection and PlatformProcessIdentifier for Qt. Not built yet.
   42389 
   42390         * Platform/CoreIPC/Connection.h:
   42391         * Platform/CoreIPC/qt: Added.
   42392         * Platform/CoreIPC/qt/ConnectionQt.cpp: Added.
   42393         (CoreIPC::Connection::platformInitialize):
   42394         (CoreIPC::Connection::platformInvalidate):
   42395         (CoreIPC::Connection::newConnectionHandler):
   42396         (CoreIPC::Connection::readyReadHandler):
   42397         (CoreIPC::Connection::openConnection):
   42398         (CoreIPC::Connection::open):
   42399         (CoreIPC::Connection::sendOutgoingMessage):
   42400         * Platform/PlatformProcessIdentifier.h:
   42401 
   42402 2010-07-01  Antti Koivisto  <koivisto (a] iki.fi>
   42403 
   42404         Reviewed by Kenneth Rohde Christiansen.
   42405 
   42406         [Qt] Initial WebKit2 implementation
   42407         https://bugs.webkit.org/show_bug.cgi?id=40233
   42408         
   42409         Implement WorkQueue for Qt. Not built yet.
   42410 
   42411         * Platform/WorkQueue.h:
   42412         * Platform/qt/WorkQueueQt.cpp: Added.
   42413         (WorkQueue::WorkItemQt::WorkItemQt):
   42414         (WorkQueue::WorkItemQt::~WorkItemQt):
   42415         (WorkQueue::WorkItemQt::execute):
   42416         (WorkQueue::WorkItemQt::timerEvent):
   42417         (WorkQueue::connectSignal):
   42418         (WorkQueue::disconnectSignal):
   42419         (WorkQueue::platformInitialize):
   42420         (WorkQueue::platformInvalidate):
   42421         (WorkQueue::scheduleWork):
   42422 
   42423 2010-07-01  Antti Koivisto  <koivisto (a] iki.fi>
   42424 
   42425         Reviewed by Kenneth Rohde Christiansen.
   42426 
   42427         [Qt] Initial WebKit2 implementation
   42428         https://bugs.webkit.org/show_bug.cgi?id=40233
   42429         
   42430         Implement RunLoop for Qt. Not built yet.
   42431 
   42432         * Platform/RunLoop.h:
   42433         * Platform/qt: Added.
   42434         * Platform/qt/RunLoopQt.cpp: Added.
   42435         (RunLoop::TimerObject::TimerObject):
   42436         (RunLoop::TimerObject::performWork):
   42437         (RunLoop::TimerObject::wakeUp):
   42438         (RunLoop::TimerObject::timerEvent):
   42439         (RunLoop::run):
   42440         (RunLoop::stop):
   42441         (RunLoop::RunLoop):
   42442         (RunLoop::~RunLoop):
   42443         (RunLoop::wakeUp):
   42444         (RunLoop::TimerBase::timerFired):
   42445         (RunLoop::TimerBase::TimerBase):
   42446         (RunLoop::TimerBase::~TimerBase):
   42447         (RunLoop::TimerBase::start):
   42448         (RunLoop::TimerBase::stop):
   42449         (RunLoop::TimerBase::isActive):
   42450 
   42451 2010-06-30  Sam Weinig  <sam (a] webkit.org>
   42452 
   42453         Reviewed by Darin Adler.
   42454 
   42455         Patch for https://bugs.webkit.org/show_bug.cgi?id=41426
   42456         Add ImmutableArray class and WKArrayRef API to go with it. This will be used
   42457         in a few follow up patches.
   42458 
   42459         * Shared/ImmutableArray.cpp: Added.
   42460         (WebKit::ImmutableArray::ImmutableArray):
   42461         (WebKit::ImmutableArray::~ImmutableArray):
   42462         * Shared/ImmutableArray.h: Added.
   42463         * UIProcess/API/C/WKAPICast.h:
   42464         * UIProcess/API/C/WKArray.cpp: Added.
   42465         * UIProcess/API/C/WKArray.h: Added.
   42466         * UIProcess/API/C/WKBase.h:
   42467         * WebKit2.xcodeproj/project.pbxproj:
   42468         * mac/WebKit2.exp:
   42469         * win/WebKit2.vcproj:
   42470 
   42471 2010-06-30  Anders Carlsson  <andersca (a] apple.com>
   42472 
   42473         Reviewed by Adam Roben.
   42474 
   42475         Add WebProcessProxy::send
   42476         https://bugs.webkit.org/show_bug.cgi?id=41416
   42477 
   42478         * Platform/CoreIPC/Connection.h:
   42479         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   42480         (WebKit::ChunkedUpdateDrawingAreaProxy::setSize):
   42481         (WebKit::ChunkedUpdateDrawingAreaProxy::setPageIsVisible):
   42482         (WebKit::ChunkedUpdateDrawingAreaProxy::update):
   42483         * UIProcess/WebContext.cpp:
   42484         (WebKit::WebContext::postMessageToInjectedBundle):
   42485         * UIProcess/WebPageProxy.cpp:
   42486         (WebKit::WebPageProxy::initializeWebPage):
   42487         (WebKit::WebPageProxy::reinitializeWebPage):
   42488         (WebKit::WebPageProxy::close):
   42489         (WebKit::WebPageProxy::tryClose):
   42490         (WebKit::WebPageProxy::loadURL):
   42491         (WebKit::WebPageProxy::stopLoading):
   42492         (WebKit::WebPageProxy::reload):
   42493         (WebKit::WebPageProxy::goForward):
   42494         (WebKit::WebPageProxy::goBack):
   42495         (WebKit::WebPageProxy::setFocused):
   42496         (WebKit::WebPageProxy::setActive):
   42497         (WebKit::WebPageProxy::mouseEvent):
   42498         (WebKit::WebPageProxy::wheelEvent):
   42499         (WebKit::WebPageProxy::keyEvent):
   42500         (WebKit::WebPageProxy::receivedPolicyDecision):
   42501         (WebKit::WebPageProxy::runJavaScriptInMainFrame):
   42502         (WebKit::WebPageProxy::getRenderTreeExternalRepresentation):
   42503         (WebKit::WebPageProxy::preferencesDidChange):
   42504         * UIProcess/WebProcessProxy.cpp:
   42505         (WebKit::WebProcessProxy::WebProcessProxy):
   42506         (WebKit::WebProcessProxy::sendMessage):
   42507         * UIProcess/WebProcessProxy.h:
   42508         (WebKit::WebProcessProxy::connection):
   42509         (WebKit::WebProcessProxy::send):
   42510 
   42511 2010-06-29  Anders Carlsson  <andersca (a] apple.com>
   42512 
   42513         Reviewed by Sam Weinig.
   42514 
   42515         Add a private Message class template
   42516         https://bugs.webkit.org/show_bug.cgi?id=41370
   42517 
   42518         * Platform/CoreIPC/Connection.h:
   42519         (CoreIPC::Connection::Message::Message):
   42520         (CoreIPC::Connection::Message::arguments):
   42521 
   42522 2010-06-28  John Gregg  <johnnyg (a] google.com>
   42523 
   42524         Unreviewed, build fix (removing merge conflict from previous).
   42525 
   42526         * Configurations/FeatureDefines.xcconfig:
   42527 
   42528 2010-06-23  John Gregg  <johnnyg (a] google.com>
   42529 
   42530         Reviewed by Kent Tamura.
   42531 
   42532         add ENABLE_DIRECTORY_UPLOAD build support
   42533         https://bugs.webkit.org/show_bug.cgi?id=41100
   42534 
   42535         * Configurations/FeatureDefines.xcconfig:
   42536 
   42537 2010-06-28  Sam Weinig  <sam (a] webkit.org>
   42538 
   42539         Rubber-stamped Geoffrey Garen.
   42540 
   42541         Add WKBundleFrameIsMainFrame to exports file.
   42542 
   42543         * mac/WebKit2.exp:
   42544 
   42545 2010-06-28  Sam Weinig  <sam (a] webkit.org>
   42546 
   42547         Reviewed by Anders Carlsson.
   42548 
   42549         Patch for https://bugs.webkit.org/show_bug.cgi?id=41288
   42550         WebKit2: Add frame API for InjectedBundle code
   42551 
   42552         * WebKit2.xcodeproj/project.pbxproj:
   42553         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: Added.
   42554         (WKBundleFrameIsMainFrame):
   42555         (WKBundleFrameGetURL):
   42556         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h: Added.
   42557         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   42558         (WKBundlePageGetMainFrame):
   42559         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   42560         * WebProcess/WebPage/WebFrame.cpp:
   42561         (WebKit::WebFrame::isMainFrame):
   42562         (WebKit::WebFrame::url):
   42563         * WebProcess/WebPage/WebFrame.h:
   42564         * WebProcess/WebPage/WebPage.cpp:
   42565         * WebProcess/WebPage/WebPage.h:
   42566         (WebKit::WebPage::mainFrame):
   42567         * mac/WebKit2.exp:
   42568         * win/WebKit2.vcproj:
   42569 
   42570 2010-06-27  Mark Rowe  <mrowe (a] apple.com>
   42571 
   42572         Rubber-stamped by Maciej Stachowiak.
   42573 
   42574         Update guards related to blocks to check whether __BLOCKS__ is defined, rather than checking its value.
   42575         This matches how similar checks are performed in system headers, and avoids a compile error when __BLOCKS__
   42576         is not defined.
   42577 
   42578         * UIProcess/API/C/WKPage.cpp:
   42579         * UIProcess/API/C/WKPage.h:
   42580         * UIProcess/API/C/WKPagePrivate.h:
   42581 
   42582 2010-06-26  Tony Gentilcore  <tonyg (a] chromium.org>
   42583 
   42584         Reviewed by Dimitri Glazkov.
   42585 
   42586         Add an ENABLE_WEB_TIMING option for enabling Web Timing support.
   42587         https://bugs.webkit.org/show_bug.cgi?id=38924
   42588 
   42589         * Configurations/FeatureDefines.xcconfig:
   42590 
   42591 2010-06-25  Steve Falkenburg  <sfalken (a] apple.com>
   42592 
   42593         Windows build fix.
   42594 
   42595         * win/WebKit2.vcproj:
   42596 
   42597 2010-06-25  Ada Chan  <adachan (a] apple.com>
   42598 
   42599         Rubber-stamped by Mark Rowe.
   42600 
   42601         Add additional include search paths relative to $(WebKitLibrariesDir) to fix a build.
   42602 
   42603         * win/WebKit2.vcproj:
   42604 
   42605 2010-06-25  Sam Weinig  <sam (a] webkit.org>
   42606 
   42607         Reviewed by Anders Carlsson.
   42608 
   42609         WKBundlePageRenderTreeExternalRepresentation really needs to be 
   42610         WKBundlePageCopyRenderTreeExternalRepresentation so we don't have dangling
   42611         pointers and adhere to naming conventions.
   42612 
   42613         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   42614         (WKBundlePageCopyRenderTreeExternalRepresentation):
   42615         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
   42616         * mac/WebKit2.exp:
   42617 
   42618 2010-06-24  Steve Falkenburg  <sfalken (a] apple.com>
   42619 
   42620         Windows build fix.
   42621 
   42622         * win/WebKit2.make: Added.
   42623         * win/WebKit2.submit.sln: Added.
   42624 
   42625 2010-06-24  Steve Falkenburg  <sfalken (a] apple.com>
   42626 
   42627         Windows build fix.
   42628 
   42629         * win/WebKit2WebProcess.vcproj:
   42630 
   42631 2010-06-24  Sam Weinig  <sam (a] webkit.org>
   42632 
   42633         Reviewed by Brady Eidson.
   42634 
   42635         Add WKBundlePageRenderTreeExternalRepresentation for WebKitTestRunner.
   42636 
   42637         * WebKit2.xcodeproj/project.pbxproj:
   42638         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
   42639         (WKBundlePageRenderTreeExternalRepresentation):
   42640         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h: Added.
   42641         * WebProcess/WebPage/WebPage.cpp:
   42642         (WebKit::WebPage::renderTreeExternalRepresentation):
   42643         (WebKit::WebPage::getRenderTreeExternalRepresentation):
   42644         * WebProcess/WebPage/WebPage.h:
   42645         * mac/WebKit2.exp:
   42646         * win/WebKit2.vcproj:
   42647 
   42648 2010-06-24  John Sullivan  <sullivan (a] apple.com>
   42649 
   42650         Rubber-stamped by Ada Chan.
   42651 
   42652         * mac/WebKit2.exp:
   42653         Added _WKNavigationDataRelease and _WKNavigationDataRetain.
   42654 
   42655 2010-06-24  John Sullivan  <sullivan (a] apple.com>
   42656 
   42657         Rubber-stamped by Anders Carlsson.
   42658 
   42659         * mac/WebKit2.exp:
   42660         Added _WKPageReloadFromOrigin.
   42661 
   42662 2010-06-24  Sam Weinig  <sam (a] webkit.org>
   42663 
   42664         Reviewed by Anders Carlsson.
   42665 
   42666         Fix for https://bugs.webkit.org/show_bug.cgi?id=41168
   42667         <rdar://problem/8124605>
   42668         Webkit2: Add WKPageReloadFromOrigin() to match old-WebKit functionality
   42669 
   42670         * UIProcess/API/C/WKPage.cpp:
   42671         (WKPageReload):
   42672         (WKPageReloadFromOrigin):
   42673         * UIProcess/API/C/WKPage.h:
   42674         * UIProcess/WebPageProxy.cpp:
   42675         (WebKit::WebPageProxy::reload):
   42676         * UIProcess/WebPageProxy.h:
   42677         * WebProcess/WebPage/WebPage.cpp:
   42678         (WebKit::WebPage::reload):
   42679         (WebKit::WebPage::didReceiveMessage):
   42680         * WebProcess/WebPage/WebPage.h:
   42681 
   42682 2010-06-24  Adam Roben  <aroben (a] apple.com>
   42683 
   42684         Windows build fix
   42685 
   42686         Fixes <http://webkit.org/b/41158>.
   42687 
   42688         Reviewed by Anders Carlsson.
   42689 
   42690         * Shared/win/UpdateChunk.cpp: Updated header name.
   42691 
   42692         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp: Added.
   42693         (WebKit::PluginInfoStore::pluginDirectories):
   42694         (WebKit::PluginInfoStore::pluginPathsInDirectory):
   42695         (WebKit::PluginInfoStore::getPluginInfo):
   42696         (WebKit::PluginInfoStore::shouldUsePlugin):
   42697         Stubbed these out.
   42698 
   42699         * win/WebKit2.vcproj: Added UIProcess/Plugins to the include path for
   42700         all configurations. Added UIProcess/Plugins files to the project.
   42701 
   42702 2010-06-23  Anders Carlsson  <andersca (a] apple.com>
   42703 
   42704         Reviewed by Sam Weinig.
   42705 
   42706         Have the UI process compute the plug-in data
   42707         https://bugs.webkit.org/show_bug.cgi?id=41118
   42708 
   42709         * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:
   42710         (WebProcessProxyMessage::):
   42711         Add GetPlugin message kind.
   42712 
   42713         * Shared/WebCoreArgumentCoders.h:
   42714         Add argument coders for PluginInfo and MimeClassInfo.
   42715         
   42716         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
   42717         (WebKit::safeCreateCFString):
   42718         (WebKit::PluginInfoStore::pluginPathsInDirectory):
   42719         (WebKit::PluginInfoStore::getPluginInfo):
   42720         Use safeCreateCFString.
   42721         
   42722         * UIProcess/WebProcessProxy.cpp:
   42723         (WebKit::WebProcessProxy::getPlugins):
   42724         Ask the plug-in info store for the plug-in list.
   42725 
   42726         (WebKit::WebProcessProxy::didReceiveSyncMessage):
   42727         Handle GetPlugins.
   42728 
   42729         * UIProcess/WebProcessProxy.h:
   42730         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   42731         (WebKit::WebFrameLoaderClient::objectContentType):
   42732         Implement.
   42733 
   42734         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   42735         (WebKit::WebPlatformStrategies::populatePluginCache):
   42736         Send a sync GetPlugins message.
   42737 
   42738 2010-06-23  Anders Carlsson  <andersca (a] apple.com>
   42739 
   42740         Reviewed by Dan Bernstein.
   42741 
   42742         Add ArgumentCoder for vectors.
   42743 
   42744         * Platform/CoreIPC/ArgumentCoders.h:
   42745         (CoreIPC::):
   42746 
   42747 2010-06-23  Anders Carlsson  <andersca (a] apple.com>
   42748 
   42749         Reviewed by Dan Bernstein.
   42750 
   42751         Rename WebCoreTypeArgumentMarshalling.h to WebCoreArgumentCoders.h
   42752 
   42753         * Shared/WebCoreArgumentCoders.h: Copied from Shared/WebCoreTypeArgumentMarshalling.h.
   42754         * Shared/WebCoreTypeArgumentMarshalling.h: Removed.
   42755         * Shared/WebEvent.h:
   42756         * Shared/WebNavigationDataStore.h:
   42757         * Shared/WebPreferencesStore.h:
   42758         * Shared/mac/UpdateChunk.cpp:
   42759         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
   42760         * UIProcess/WebContext.cpp:
   42761         * UIProcess/WebPageProxy.cpp:
   42762         * WebKit2.xcodeproj/project.pbxproj:
   42763         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   42764         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   42765         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   42766         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
   42767         * WebProcess/WebPage/WebPage.cpp:
   42768         * WebProcess/WebProcess.cpp:
   42769 
   42770 2010-06-23  Anders Carlsson  <andersca (a] apple.com>
   42771 
   42772         Reviewed by Dan Bernstein.
   42773 
   42774         MessageIDs should always have the most significant bit zeroed out
   42775         https://bugs.webkit.org/show_bug.cgi?id=41112
   42776 
   42777         The most significant bit is used by the Mac implementation of CoreIPC, and
   42778         should always be zero in MessageID objects.
   42779 
   42780         * Platform/CoreIPC/Connection.cpp:
   42781         (CoreIPC::Connection::waitForMessage):
   42782         * Platform/CoreIPC/MessageID.h:
   42783         (CoreIPC::MessageID::):
   42784         (CoreIPC::MessageID::MessageID):
   42785         (CoreIPC::MessageID::operator==):
   42786         (CoreIPC::MessageID::fromInt):
   42787         (CoreIPC::MessageID::isSync):
   42788         (CoreIPC::MessageID::stripMostSignificantBit):
   42789         * Platform/CoreIPC/mac/ConnectionMac.cpp:
   42790         (CoreIPC::Connection::sendOutgoingMessage):
   42791         (CoreIPC::createArgumentDecoder):
   42792 
   42793 2010-06-23  John Sullivan  <sullivan (a] apple.com>
   42794 
   42795         Rubber-stamped by Anders Carlsson.
   42796 
   42797         * mac/WebKit2.exp:
   42798         Added yet another symbol needed by Mac clients.
   42799 
   42800 2010-06-23  John Sullivan  <sullivan (a] apple.com>
   42801 
   42802         Rubber-stamped by Anders Carlsson.
   42803 
   42804         * mac/WebKit2.exp:
   42805         Added another symbol needed by Mac clients.
   42806 
   42807 2010-06-23  Anders Carlsson  <andersca (a] apple.com>
   42808 
   42809         Reviewed by Sam Weinig.
   42810 
   42811         Rename SimpleArgumentCoder.h to ArgumentCoders.h
   42812 
   42813         * Platform/CoreIPC/ArgumentCoders.h: Copied from Platform/CoreIPC/SimpleArgumentCoder.h.
   42814         * Platform/CoreIPC/SimpleArgumentCoder.h: Removed.
   42815         * Shared/WebCoreTypeArgumentMarshalling.h:
   42816         * WebKit2.xcodeproj/project.pbxproj:
   42817 
   42818 2010-06-23  Anders Carlsson  <andersca (a] apple.com>
   42819 
   42820         Reviewed by Sam Weinig.
   42821 
   42822         Add a plug-in info cache to WebPlatformStrategies
   42823         https://bugs.webkit.org/show_bug.cgi?id=41087
   42824 
   42825         This is in preparation for proxying the getPlugins call over to the UI process.
   42826 
   42827         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   42828         (WebKit::WebPlatformStrategies::WebPlatformStrategies):
   42829         (WebKit::WebPlatformStrategies::populatePluginCache):
   42830         (WebKit::WebPlatformStrategies::refreshPlugins):
   42831         (WebKit::WebPlatformStrategies::getPluginInfo):
   42832         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
   42833 
   42834 2010-06-23  Sam Weinig  <sam (a] webkit.org>
   42835 
   42836         Reviewed by John Sullivan.
   42837 
   42838         Stop silently ignoring crashes.
   42839 
   42840         * WebProcess/Launching/mac/WebProcessMain.mm:
   42841 
   42842 2010-06-23  Sam Weinig  <sam (a] webkit.org>
   42843 
   42844         Reviewed by Anders Carlsson.
   42845 
   42846         Add missing include to WKRetainPtr.
   42847 
   42848         * UIProcess/API/cpp/WKRetainPtr.h:
   42849 
   42850 2010-06-23  Sam Weinig  <sam (a] webkit.org>
   42851 
   42852         Reviewed by Anders Carlsson.
   42853 
   42854         Fix for https://bugs.webkit.org/show_bug.cgi?id=41073
   42855         WebKit2: Flesh out more of the InjectedBundle client API
   42856 
   42857         * WebProcess/InjectedBundle/API/c/WKBundle.h:
   42858         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
   42859         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   42860         (WebKit::InjectedBundle::willDestroyPage):
   42861         * WebProcess/InjectedBundle/InjectedBundle.h:
   42862         * WebProcess/InjectedBundle/InjectedBundlePageClient.cpp:
   42863         (WebKit::InjectedBundlePageClient::didStartProvisionalLoadForFrame):
   42864         (WebKit::InjectedBundlePageClient::didReceiveServerRedirectForProvisionalLoadForFrame):
   42865         (WebKit::InjectedBundlePageClient::didFailProvisionalLoadWithErrorForFrame):
   42866         (WebKit::InjectedBundlePageClient::didCommitLoadForFrame):
   42867         (WebKit::InjectedBundlePageClient::didFinishLoadForFrame):
   42868         (WebKit::InjectedBundlePageClient::didFailLoadWithErrorForFrame):
   42869         (WebKit::InjectedBundlePageClient::didReceiveTitleForFrame):
   42870         * WebProcess/InjectedBundle/InjectedBundlePageClient.h:
   42871         * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp:
   42872         (WebKit::InjectedBundle::load): Add some error logging on failure to load the bundle.
   42873         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   42874         (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
   42875         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
   42876         (WebKit::WebFrameLoaderClient::dispatchDidReceiveTitle):
   42877         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
   42878         (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
   42879         (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
   42880         (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
   42881         * WebProcess/WebPage/WebPage.cpp:
   42882         (WebKit::WebPage::close):
   42883         * mac/WebKit2.exp:
   42884 
   42885 2010-06-22  Anders Carlsson  <andersca (a] apple.com>
   42886 
   42887         Reviewed by Sam Weinig.
   42888 
   42889         Add a SimpleArgumentCoder class template that works on POD types
   42890         https://bugs.webkit.org/show_bug.cgi?id=41023
   42891 
   42892         * Platform/CoreIPC/SimpleArgumentCoder.h: Added.
   42893         (CoreIPC::SimpleArgumentCoder::encode):
   42894         (CoreIPC::SimpleArgumentCoder::decode):
   42895         * Shared/WebCoreTypeArgumentMarshalling.h:
   42896         (CoreIPC::):
   42897         * WebKit2.xcodeproj/project.pbxproj:
   42898 
   42899 2010-06-22  Anders Carlsson  <andersca (a] apple.com>
   42900 
   42901         Reviewed by Sam Weinig.
   42902 
   42903         Use the ArgumentCoder class template for decoding
   42904         https://bugs.webkit.org/show_bug.cgi?id=41021
   42905 
   42906         * Platform/CoreIPC/ArgumentCoder.h:
   42907         (CoreIPC::ArgumentCoder::decode):
   42908         * Platform/CoreIPC/ArgumentDecoder.h:
   42909         (CoreIPC::ArgumentDecoder::decode):
   42910         * Shared/WebCoreTypeArgumentMarshalling.h:
   42911         (CoreIPC::):
   42912 
   42913 2010-06-22  Anders Carlsson  <andersca (a] apple.com>
   42914 
   42915         Reviewed by Dan Bernstein.
   42916 
   42917         Change the encode functions to be specializations of a class template
   42918         https://bugs.webkit.org/show_bug.cgi?id=41015
   42919 
   42920         * Platform/CoreIPC/ArgumentCoder.h: Added.
   42921         (CoreIPC::ArgumentCoder::encode):
   42922         * Platform/CoreIPC/ArgumentEncoder.h:
   42923         (CoreIPC::ArgumentEncoder::encode):
   42924         * Shared/WebCoreTypeArgumentMarshalling.h:
   42925         (CoreIPC::):
   42926         * WebKit2.xcodeproj/project.pbxproj:
   42927 
   42928 2010-06-22  Anders Carlsson  <andersca (a] apple.com>
   42929 
   42930         Reviewed by Sam Weinig.
   42931 
   42932         Implement PluginInfoStore::shouldUsePlugin.
   42933 
   42934         * UIProcess/Plugins/PluginInfoStore.h:
   42935         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
   42936         (WebKit::PluginInfoStore::getPluginInfo):
   42937         (WebKit::PluginInfoStore::shouldUsePlugin):
   42938         * WebKit2.xcodeproj/project.pbxproj:
   42939 
   42940 2010-06-21  Anders Carlsson  <andersca (a] apple.com>
   42941 
   42942         Reviewed by Sam Weinig.
   42943 
   42944         Support reading plug-in info from Carbon resources
   42945         https://bugs.webkit.org/show_bug.cgi?id=40959
   42946 
   42947         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
   42948         (WebKit::ResourceMap::ResourceMap):
   42949         (WebKit::ResourceMap::~ResourceMap):
   42950         (WebKit::ResourceMap::isValid):
   42951         (WebKit::getStringListResource):
   42952         (WebKit::getPluginInfoFromCarbonResources):
   42953         (WebKit::PluginInfoStore::getPluginInfo):
   42954 
   42955 2010-06-21  Anders Carlsson  <andersca (a] apple.com>
   42956 
   42957         Build fix.
   42958 
   42959         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
   42960         (WebKit::PluginInfoStore::getPluginInfo):
   42961 
   42962 2010-06-21  Anders Carlsson  <andersca (a] apple.com>
   42963 
   42964         Reviewed by Sam Weinig.
   42965 
   42966         Have PluginInfoStoreMac actually get plug-in info and populate the plug-in list
   42967         https://bugs.webkit.org/show_bug.cgi?id=40957
   42968 
   42969         * UIProcess/Plugins/PluginInfoStore.cpp:
   42970         (WebKit::PluginInfoStore::loadPluginsIfNecessary):
   42971         (WebKit::PluginInfoStore::loadPluginsInDirectory):
   42972         (WebKit::PluginInfoStore::loadPlugin):
   42973         (WebKit::PluginInfoStore::getPlugins):
   42974         * UIProcess/Plugins/PluginInfoStore.h:
   42975         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm: Added.
   42976         (WebKit::PluginInfoStore::pluginDirectories):
   42977         (WebKit::PluginInfoStore::pluginPathsInDirectory):
   42978         (WebKit::getPluginArchitecture):
   42979         (WebKit::getPluginInfoFromPropertyLists):
   42980         (WebKit::PluginInfoStore::getPluginInfo):
   42981         (WebKit::PluginInfoStore::shouldUsePlugin):
   42982         * WebKit2.xcodeproj/project.pbxproj:
   42983 
   42984 2010-06-21  Anders Carlsson  <andersca (a] apple.com>
   42985 
   42986         Reviewed by Sam Weinig.
   42987 
   42988         Add PluginInfoStore class
   42989         https://bugs.webkit.org/show_bug.cgi?id=40949
   42990 
   42991         * Shared/WebPreferencesStore.cpp:
   42992         (WebKit::WebPreferencesStore::WebPreferencesStore):
   42993         * Shared/WebPreferencesStore.h:
   42994         (WebKit::WebPreferencesStore::encode):
   42995         (WebKit::WebPreferencesStore::decode):
   42996         Add plugInsEnabled to the preferences store.
   42997 
   42998         * UIProcess/Plugins: Added.
   42999         * UIProcess/Plugins/PluginInfoStore.cpp: Added.
   43000         (WebKit::PluginInfoStore::shared):
   43001         (WebKit::PluginInfoStore::PluginInfoStore):
   43002         (WebKit::PluginInfoStore::refresh):
   43003         (WebKit::PluginInfoStore::getPlugins):
   43004         * UIProcess/Plugins/PluginInfoStore.h: Added.
   43005         * UIProcess/Plugins/mac: Added.
   43006         * WebKit2.xcodeproj/project.pbxproj:
   43007         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   43008         (WebKit::WebPlatformStrategies::refreshPlugins):
   43009         (WebKit::WebPlatformStrategies::getPluginInfo):
   43010         * WebProcess/WebPage/WebPage.cpp:
   43011         (WebKit::WebPage::WebPage):
   43012 
   43013 2010-06-21  Simon Fraser  <simon.fraser (a] apple.com>
   43014 
   43015         Reviewed by Anders Carlsson.
   43016 
   43017         Rename DrawingAreaProxyUpdateChunk to ChunkedUpdateDrawingArea
   43018         https://bugs.webkit.org/show_bug.cgi?id=40948
   43019 
   43020         Rename UIProcess version of DrawingAreaUpdateChunk to ChunkedUpdateDrawingAreaProxy,
   43021         and rename the Mac/Win versions of the various DrawingArea files too.
   43022         
   43023         Also rename the DrawingAreaUpdateChunkType enum to ChunkedUpdateDrawingAreaType.
   43024 
   43025         * UIProcess/API/mac/WKView.mm:
   43026         (-[WKView initWithFrame:pageNamespaceRef:]):
   43027         * UIProcess/ChunkedUpdateDrawingArea.cpp: Removed.
   43028         * UIProcess/ChunkedUpdateDrawingArea.h: Removed.
   43029         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp: Added.
   43030         (WebKit::ChunkedUpdateDrawingAreaProxy::ChunkedUpdateDrawingAreaProxy):
   43031         (WebKit::ChunkedUpdateDrawingAreaProxy::~ChunkedUpdateDrawingAreaProxy):
   43032         (WebKit::ChunkedUpdateDrawingAreaProxy::paint):
   43033         (WebKit::ChunkedUpdateDrawingAreaProxy::setSize):
   43034         (WebKit::ChunkedUpdateDrawingAreaProxy::setPageIsVisible):
   43035         (WebKit::ChunkedUpdateDrawingAreaProxy::didSetSize):
   43036         (WebKit::ChunkedUpdateDrawingAreaProxy::update):
   43037         (WebKit::ChunkedUpdateDrawingAreaProxy::didReceiveMessage):
   43038         * UIProcess/ChunkedUpdateDrawingAreaProxy.h: Added.
   43039         (WebKit::ChunkedUpdateDrawingAreaProxy::encode):
   43040         * UIProcess/DrawingAreaProxy.h:
   43041         (WebKit::DrawingAreaProxy::):
   43042         * UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm: Added.
   43043         (WebKit::ChunkedUpdateDrawingAreaProxy::page):
   43044         (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore):
   43045         (WebKit::ChunkedUpdateDrawingAreaProxy::invalidateBackingStore):
   43046         (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint):
   43047         (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore):
   43048         * UIProcess/mac/DrawingAreaProxyUpdateChunkMac.mm: Removed.
   43049         * UIProcess/win/ChunkedUpdateDrawingAreaProxyWin.cpp: Added.
   43050         (WebKit::ChunkedUpdateDrawingAreaProxy::page):
   43051         (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore):
   43052         (WebKit::ChunkedUpdateDrawingAreaProxy::invalidateBackingStore):
   43053         (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint):
   43054         (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore):
   43055         * UIProcess/win/DrawingAreaProxyUpdateChunkWin.cpp: Removed.
   43056         * UIProcess/win/WebView.cpp:
   43057         (WebKit::WebView::WebView):
   43058         * WebKit2.xcodeproj/project.pbxproj:
   43059         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp: Added.
   43060         (WebKit::ChunkedUpdateDrawingArea::ChunkedUpdateDrawingArea):
   43061         (WebKit::ChunkedUpdateDrawingArea::~ChunkedUpdateDrawingArea):
   43062         (WebKit::ChunkedUpdateDrawingArea::invalidateWindow):
   43063         (WebKit::ChunkedUpdateDrawingArea::invalidateContentsAndWindow):
   43064         (WebKit::ChunkedUpdateDrawingArea::invalidateContentsForSlowScroll):
   43065         (WebKit::ChunkedUpdateDrawingArea::scroll):
   43066         (WebKit::ChunkedUpdateDrawingArea::setNeedsDisplay):
   43067         (WebKit::ChunkedUpdateDrawingArea::display):
   43068         (WebKit::ChunkedUpdateDrawingArea::scheduleDisplay):
   43069         (WebKit::ChunkedUpdateDrawingArea::setSize):
   43070         (WebKit::ChunkedUpdateDrawingArea::suspendPainting):
   43071         (WebKit::ChunkedUpdateDrawingArea::resumePainting):
   43072         (WebKit::ChunkedUpdateDrawingArea::didUpdate):
   43073         (WebKit::ChunkedUpdateDrawingArea::didReceiveMessage):
   43074         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h: Added.
   43075         * WebProcess/WebPage/DrawingArea.cpp:
   43076         (WebKit::DrawingArea::create):
   43077         * WebProcess/WebPage/DrawingArea.h:
   43078         (WebKit::DrawingArea::):
   43079         * WebProcess/WebPage/DrawingAreaUpdateChunk.cpp: Removed.
   43080         * WebProcess/WebPage/DrawingAreaUpdateChunk.h: Removed.
   43081         * WebProcess/WebPage/mac/ChunkedUpdateDrawingAreaMac.cpp: Added.
   43082         (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):
   43083         * WebProcess/WebPage/mac/DrawingAreaUpdateChunkMac.cpp: Removed.
   43084         * WebProcess/WebPage/win/ChunkedUpdateDrawingAreaWin.cpp: Added.
   43085         (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):
   43086         * WebProcess/WebPage/win/DrawingAreaUpdateChunkWin.cpp: Removed.
   43087         * win/WebKit2.vcproj:
   43088 
   43089 2010-06-21  Simon Fraser  <simon.fraser (a] apple.com>
   43090 
   43091         Reviewed by Anders Carlsson.
   43092 
   43093         Rename DrawingAreaProxyUpdateChunk to ChunkedUpdateDrawingArea
   43094         https://bugs.webkit.org/show_bug.cgi?id=40948
   43095         
   43096         Rename DrawingAreaUpdateChunk to ChunkedUpdateDrawingArea.
   43097 
   43098         * UIProcess/API/mac/WKView.mm:
   43099         (-[WKView initWithFrame:pageNamespaceRef:]):
   43100         * UIProcess/ChunkedUpdateDrawingArea.cpp: Added.
   43101         (WebKit::ChunkedUpdateDrawingArea::ChunkedUpdateDrawingArea):
   43102         (WebKit::ChunkedUpdateDrawingArea::~ChunkedUpdateDrawingArea):
   43103         (WebKit::ChunkedUpdateDrawingArea::paint):
   43104         (WebKit::ChunkedUpdateDrawingArea::setSize):
   43105         (WebKit::ChunkedUpdateDrawingArea::setPageIsVisible):
   43106         (WebKit::ChunkedUpdateDrawingArea::didSetSize):
   43107         (WebKit::ChunkedUpdateDrawingArea::update):
   43108         (WebKit::ChunkedUpdateDrawingArea::didReceiveMessage):
   43109         * UIProcess/ChunkedUpdateDrawingArea.h: Added.
   43110         (WebKit::ChunkedUpdateDrawingArea::encode):
   43111         * UIProcess/DrawingAreaProxyUpdateChunk.cpp: Removed.
   43112         * UIProcess/DrawingAreaProxyUpdateChunk.h: Removed.
   43113         * UIProcess/mac/DrawingAreaProxyUpdateChunkMac.mm:
   43114         (WebKit::ChunkedUpdateDrawingArea::page):
   43115         (WebKit::ChunkedUpdateDrawingArea::ensureBackingStore):
   43116         (WebKit::ChunkedUpdateDrawingArea::invalidateBackingStore):
   43117         (WebKit::ChunkedUpdateDrawingArea::platformPaint):
   43118         (WebKit::ChunkedUpdateDrawingArea::drawUpdateChunkIntoBackingStore):
   43119         * UIProcess/win/DrawingAreaProxyUpdateChunkWin.cpp:
   43120         (WebKit::ChunkedUpdateDrawingArea::page):
   43121         (WebKit::ChunkedUpdateDrawingArea::ensureBackingStore):
   43122         (WebKit::ChunkedUpdateDrawingArea::invalidateBackingStore):
   43123         (WebKit::ChunkedUpdateDrawingArea::platformPaint):
   43124         (WebKit::ChunkedUpdateDrawingArea::drawUpdateChunkIntoBackingStore):
   43125         * UIProcess/win/WebView.cpp:
   43126         (WebKit::WebView::WebView):
   43127         * WebKit2.xcodeproj/project.pbxproj:
   43128         * win/WebKit2.vcproj:
   43129 
   43130 2010-06-21  Sam Weinig  <sam (a] webkit.org>
   43131 
   43132         Reviewed by Anders Carlsson.
   43133 
   43134         Patch for https://bugs.webkit.org/show_bug.cgi?id=40940
   43135         Add message passing support to the WebKit2 API.
   43136 
   43137         Adds message passing for both InjectedBundle -> WebContext
   43138         and WebContext -> InjectedBundle.
   43139 
   43140         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
   43141         (WebProcessMessage::):
   43142         * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h: Added.
   43143         (WebProcessProxyMessage::):
   43144         (CoreIPC::):
   43145         * UIProcess/API/C/WKContext.cpp:
   43146         (WKContextSetInjectedBundleClient):
   43147         (WKContextPostMessageToInjectedBundle):
   43148         * UIProcess/API/C/WKContext.h:
   43149         * UIProcess/WebContext.cpp:
   43150         (WebKit::WebContext::initializeInjectedBundleClient):
   43151         (WebKit::WebContext::forwardMessageToWebContext):
   43152         (WebKit::WebContext::postMessageToInjectedBundle):
   43153         * UIProcess/WebContext.h:
   43154         * UIProcess/WebContextInjectedBundleClient.cpp: Added.
   43155         (WebKit::WebContextInjectedBundleClient::WebContextInjectedBundleClient):
   43156         (WebKit::WebContextInjectedBundleClient::initialize):
   43157         (WebKit::WebContextInjectedBundleClient::didRecieveMessageFromInjectedBundle):
   43158         * UIProcess/WebContextInjectedBundleClient.h: Added.
   43159         * UIProcess/WebProcessManager.cpp:
   43160         (WebKit::WebProcessManager::processDidClose):
   43161         * UIProcess/WebProcessProxy.cpp:
   43162         (WebKit::WebProcessProxy::didReceiveInjectedBundleMessage):
   43163         (WebKit::WebProcessProxy::didReceiveMessage):
   43164         * UIProcess/WebProcessProxy.h:
   43165         * WebKit2.xcodeproj/project.pbxproj:
   43166         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
   43167         (WKBundlePostMessage):
   43168         * WebProcess/InjectedBundle/API/c/WKBundle.h:
   43169         * WebProcess/InjectedBundle/InjectedBundle.cpp:
   43170         (WebKit::InjectedBundle::postMessage):
   43171         (WebKit::InjectedBundle::didCreatePage):
   43172         (WebKit::InjectedBundle::didRecieveMessage):
   43173         * WebProcess/InjectedBundle/InjectedBundle.h:
   43174         * WebProcess/WebProcess.cpp:
   43175         (WebKit::WebProcess::loadInjectedBundle):
   43176         (WebKit::WebProcess::forwardMessageToInjectedBundle):
   43177         (WebKit::WebProcess::didReceiveMessage):
   43178         * WebProcess/WebProcess.h:
   43179         * mac/WebKit2.exp:
   43180         * win/WebKit2.vcproj:
   43181 
   43182 2010-06-21  Anders Carlsson  <andersca (a] apple.com>
   43183 
   43184         Reviewed by Sam Weinig.
   43185 
   43186         Make WebKit2 build with clang++
   43187 
   43188         * Platform/CoreIPC/Connection.h:
   43189         * UIProcess/API/mac/WKView.mm:
   43190         (-[WKView keyUp:]):
   43191         (-[WKView keyDown:]):
   43192         * UIProcess/WebHistoryClient.h:
   43193         * UIProcess/WebPageProxy.h:
   43194         * WebProcess/WebPage/WebPage.h:
   43195         * WebProcess/WebProcess.h:
   43196 
   43197 2010-06-21  Satish Sampath  <satish (a] chromium.org>
   43198 
   43199         Reviewed by Steve Block.
   43200 
   43201         Speech Input Patch 0: Added compilation argument to conditionally compile pending patches.
   43202 
   43203         Speech Input Patch 0: Added compilation argument to conditionally compile pending patches.
   43204         https://bugs.webkit.org/show_bug.cgi?id=40878
   43205 
   43206         * Configurations/FeatureDefines.xcconfig:
   43207 
   43208 2010-06-20  Jessie Berlin  <jberlin (a] apple.com>
   43209 
   43210         Reviewed by Dan Bernstein.
   43211 
   43212         Add #if USE(PLATFORM_STRATEGIES) where WebPlatformStrategies is being used.
   43213 
   43214         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
   43215         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
   43216         * WebProcess/WebProcess.cpp:
   43217         (WebKit::WebProcess::WebProcess):
   43218         Only initialize the web platform strategies if PLATFORM_STRATEGIES is being used.
   43219 
   43220 2010-06-19  Sam Weinig  <sam (a] webkit.org>
   43221 
   43222         Reviewed by Anders Carlsson.
   43223 
   43224         Fix for https://bugs.webkit.org/show_bug.cgi?id=40882
   43225         Add ability to have a WebProcess per WebContext.
   43226 
   43227         - Move to a one-to-one correspondence of WebContexts to WebProcessProxies.
   43228         - Add explicit shared contexts for general use.
   43229         - Only non-shared contexts can use injected bundles.
   43230 
   43231         * UIProcess/API/C/WKContext.cpp:
   43232         (WKContextCreate):
   43233         (WKContextCreateWithInjectedBundlePath):
   43234         (WKContextGetSharedProcessContext):
   43235         (WKContextGetSharedThreadContext):
   43236         * UIProcess/API/C/WKContext.h:
   43237         * UIProcess/API/C/WKContextPrivate.h:
   43238         Change API for WKContext to no longer take a WKProcessModel type and instead
   43239         have explicit Create/Get functions for the different kind of contexts. Added
   43240         two shared contexts, one threaded, one process, and made the threaded on private
   43241         for now.
   43242 
   43243         * UIProcess/API/mac/WKView.mm:
   43244         (-[WKView initWithFrame:]):
   43245         Make WKViews that don't have an explicit context use the shared process
   43246         context by default.
   43247 
   43248         * UIProcess/Launcher/WebProcessLauncher.h:
   43249         * UIProcess/Launcher/mac/WebProcessLauncher.mm:
   43250         (WebKit::launchWebProcess):
   43251         * UIProcess/Launcher/win/WebProcessLauncher.cpp:
   43252         (WebKit::launchWebProcess):
   43253         Use a boolean argument to note whether we are using a thread or a process
   43254         instead of using the process model enum.
   43255 
   43256         * UIProcess/ProcessModel.h:
   43257         (WebKit::):
   43258         Convert to using explicit Shared modifier for shared contexts.
   43259 
   43260         * UIProcess/WebContext.cpp:
   43261         (WebKit::WebContext::sharedProcessContext):
   43262         (WebKit::WebContext::sharedThreadContext):
   43263         (WebKit::WebContext::ensureWebProcess):
   43264         (WebKit::WebContext::createWebPage):
   43265         (WebKit::WebContext::reviveIfNecessary):
   43266         * UIProcess/WebContext.h:
   43267         (WebKit::WebContext::create):
   43268         (WebKit::WebContext::process):
   43269         * UIProcess/WebPageNamespace.cpp:
   43270         (WebKit::WebPageNamespace::createWebPage):
   43271         (WebKit::WebPageNamespace::preferencesDidChange):
   43272         (WebKit::WebPageNamespace::getStatistics):
   43273         * UIProcess/WebPageNamespace.h:
   43274         (WebKit::WebPageNamespace::process):
   43275         (WebKit::WebPageNamespace::reviveIfNecessary):
   43276         Move WebProcessProxy creation logic up into WebContext.
   43277 
   43278         * UIProcess/WebProcessManager.cpp:
   43279         (WebKit::WebProcessManager::getWebProcess):
   43280         (WebKit::WebProcessManager::processDidClose):
   43281         * UIProcess/WebProcessManager.h:
   43282         Keep a map of WebContexts to WebProcessProxies in addition to the two
   43283         shared processes.
   43284 
   43285         * UIProcess/WebProcessProxy.cpp:
   43286         (WebKit::WebProcessProxy::create):
   43287         (WebKit::WebProcessProxy::WebProcessProxy):
   43288         (WebKit::WebProcessProxy::connect):
   43289         (WebKit::WebProcessProxy::didClose):
   43290         * UIProcess/WebProcessProxy.h:
   43291         Store a WebContext instead of the process model.
   43292 
   43293         * mac/WebKit2.exp:
   43294         Add new functions.
   43295 
   43296 2010-06-18  Anders Carlsson  <andersca (a] apple.com>
   43297 
   43298         Reviewed by Sam Weinig.
   43299 
   43300         Make WebCoreSystemInterface.h a C++ only header
   43301         https://bugs.webkit.org/show_bug.cgi?id=40867
   43302 
   43303         * WebKit2.xcodeproj/project.pbxproj:
   43304         * WebProcess/WebCoreSupport/mac/WebSystemInterface.h:
   43305         * WebProcess/WebCoreSupport/mac/WebSystemInterface.m: Removed.
   43306         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: Copied from WebKit2/WebProcess/WebCoreSupport/mac/WebSystemInterface.m.
   43307         * mac/WebKit2.exp:
   43308 
   43309 2010-06-18  Anders Carlsson  <andersca (a] apple.com>
   43310 
   43311         Reviewed by Sam Weinig.
   43312 
   43313         Add platform strategies for WebKit2.
   43314         https://bugs.webkit.org/show_bug.cgi?id=40863
   43315 
   43316         * WebKit2.xcodeproj/project.pbxproj:
   43317         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: Added.
   43318         (WebKit::WebPlatformStrategies::initialize):
   43319         (WebKit::WebPlatformStrategies::WebPlatformStrategies):
   43320         (WebKit::WebPlatformStrategies::createPluginStrategy):
   43321         (WebKit::WebPlatformStrategies::refreshPlugins):
   43322         (WebKit::WebPlatformStrategies::getPluginInfo):
   43323         * WebProcess/WebCoreSupport/WebPlatformStrategies.h: Added.
   43324         * WebProcess/WebProcess.cpp:
   43325         (WebKit::WebProcess::WebProcess):
   43326 
   43327 2010-06-18  Sam Weinig  <weinig (a] apple.com>
   43328 
   43329         Rolling http://trac.webkit.org/changeset/61297 back in.
   43330 
   43331         * WebKit2.xcodeproj/project.pbxproj:
   43332         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: Added.
   43333         (WKBundlePageSetClient):
   43334         (WKBundlePageGetMainFrameURL):
   43335         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Added.
   43336         * WebProcess/InjectedBundle/InjectedBundlePageClient.cpp: Added.
   43337         (WebKit::InjectedBundlePageClient::InjectedBundlePageClient):
   43338         (WebKit::InjectedBundlePageClient::initialize):
   43339         (WebKit::InjectedBundlePageClient::didClearWindowObjectForFrame):
   43340         * WebProcess/InjectedBundle/InjectedBundlePageClient.h: Added.
   43341         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   43342         (WebKit::WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
   43343         * WebProcess/WebPage/WebPage.cpp:
   43344         (WebKit::WebPage::initializeInjectedBundleClient):
   43345         (WebKit::WebPage::mainFrameURL):
   43346         * WebProcess/WebPage/WebPage.h:
   43347         (WebKit::WebPage::injectedBundleClient):
   43348         * mac/WebKit2.exp:
   43349         * win/WebKit2.vcproj:
   43350 
   43351 2010-06-17  Anders Carlsson  <andersca (a] apple.com>
   43352 
   43353         Reviewed by Sam Weinig.
   43354 
   43355         Fix a race condition during startup where we would never send the InitializeConnection message to the server.
   43356 
   43357         * Platform/CoreIPC/mac/ConnectionMac.cpp:
   43358         (CoreIPC::Connection::open):
   43359 
   43360 2010-06-17  Ada Chan  <adachan (a] apple.com>
   43361 
   43362         Rolling out http://trac.webkit.org/changeset/61297 due to build errors.
   43363 
   43364         * WebKit2.xcodeproj/project.pbxproj:
   43365         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: Removed.
   43366         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Removed.
   43367         * WebProcess/InjectedBundle/InjectedBundlePageClient.cpp: Removed.
   43368         * WebProcess/InjectedBundle/InjectedBundlePageClient.h: Removed.
   43369         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   43370         (WebKit::WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
   43371         * WebProcess/WebPage/WebPage.cpp:
   43372         * WebProcess/WebPage/WebPage.h:
   43373         * mac/WebKit2.exp:
   43374         * win/WebKit2.vcproj:
   43375 
   43376 2010-06-15  Sam Weinig  <sam (a] webkit.org>
   43377 
   43378         Reviewed by Anders Carlsson.
   43379 
   43380         Fix for <rdar://problem/8010805>
   43381         Assertion failure ("mainThreadPthread") in isMainThread() mousing over cnn.com in Mini Browser
   43382 
   43383         Don't use WebCore::String::operator NSString*() from the UIProcess, since it uses
   43384         StringImpl::createCFString() which expects to be called from WebCore's main thread.
   43385 
   43386         * UIProcess/API/mac/PageClientImpl.h:
   43387         * UIProcess/API/mac/PageClientImpl.mm:
   43388         (WebKit::nsStringFromWebCoreString):
   43389         (WebKit::PageClientImpl::toolTipChanged):
   43390         * UIProcess/API/mac/WKView.mm:
   43391         (-[WKView view:stringForToolTip:point:userData:]):
   43392 
   43393 2010-06-15  Sam Weinig  <sam (a] webkit.org>
   43394 
   43395         Reviewed by Anders Carlsson.
   43396 
   43397         Fix for https://bugs.webkit.org/show_bug.cgi?id=40630
   43398         WebKit2: Add mechanism to inject code into the WebProcess on startup
   43399 
   43400         Add initial InjectedBundle support.
   43401 
   43402         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
   43403         (WebProcessMessage::):
   43404         Add new LoadInjectedBundle message kind.
   43405 
   43406         * UIProcess/API/C/WKContext.cpp:
   43407         (toWK):
   43408         (WKContextCreate):
   43409         (WKContextCreateWithInjectedBundlePath):
   43410         * UIProcess/API/C/WKContext.h:
   43411         Rename WKContextCreateWithProcessModel to WKContextCreate and add
   43412         WKContextCreateWithInjectedBundlePath for creating a context with
   43413         a bundle.
   43414 
   43415         * UIProcess/WebContext.cpp:
   43416         (WebKit::WebContext::WebContext):
   43417         * UIProcess/WebContext.h:
   43418         (WebKit::WebContext::create):
   43419         (WebKit::WebContext::processModel):
   43420         (WebKit::WebContext::bundlePath):
   43421         * UIProcess/WebPageNamespace.cpp:
   43422         (WebKit::WebPageNamespace::ensureWebProcess):
   43423         (WebKit::WebPageNamespace::reviveIfNecessary):
   43424         * UIProcess/WebProcessManager.cpp:
   43425         (WebKit::WebProcessManager::getWebProcess):
   43426         * UIProcess/WebProcessManager.h:
   43427         * UIProcess/WebProcessProxy.cpp:
   43428         (WebKit::WebProcessProxy::create):
   43429         (WebKit::WebProcessProxy::WebProcessProxy):
   43430         * UIProcess/WebProcessProxy.h:
   43431         Thread the bundle path through process creation.
   43432 
   43433         * WebProcess/InjectedBundle: Added.
   43434         * WebProcess/InjectedBundle/API: Added.
   43435         * WebProcess/InjectedBundle/API/c: Added.
   43436         * WebProcess/InjectedBundle/API/c/WKBundle.cpp: Added.
   43437         (WKBundleSetClient):
   43438         * WebProcess/InjectedBundle/API/c/WKBundle.h: Added.
   43439         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h: Added.
   43440         (WebKit::):
   43441         (toWK):
   43442         (toRef):
   43443         * WebProcess/InjectedBundle/API/c/WKBundleBase.h: Added.
   43444         * WebProcess/InjectedBundle/API/c/WKBundleInitialize.h: Added.
   43445         * WebProcess/InjectedBundle/InjectedBundle.cpp: Added.
   43446         (WebKit::InjectedBundle::InjectedBundle):
   43447         (WebKit::InjectedBundle::~InjectedBundle):
   43448         (WebKit::InjectedBundle::initializeClient):
   43449         (WebKit::InjectedBundle::didCreatePage):
   43450         * WebProcess/InjectedBundle/InjectedBundle.h: Added.
   43451         (WebKit::InjectedBundle::create):
   43452         Add bundle boilerplate.
   43453 
   43454         * WebProcess/InjectedBundle/mac: Added.
   43455         * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp: Added.
   43456         (WebKit::InjectedBundle::load):
   43457         Load the InjectedBundle using CFBundle.
   43458 
   43459         * WebProcess/InjectedBundle/win: Added.
   43460         * WebProcess/InjectedBundle/win/InjectedBundleWin.cpp: Added.
   43461         (WebKit::pathGetFileName):
   43462         (WebKit::directoryName):
   43463         (WebKit::InjectedBundle::load):
   43464         Load the InjectedBundle using HMODULE.
   43465 
   43466         * WebProcess/WebPage/WebPage.cpp:
   43467         (WebKit::WebPage::WebPage):
   43468         Add initial bundle callback for page creation. More to come.
   43469 
   43470         * WebProcess/WebProcess.cpp:
   43471         (WebKit::WebProcess::loadInjectedBundle):
   43472         (WebKit::WebProcess::didReceiveMessage):
   43473         * WebProcess/WebProcess.h:
   43474         (WebKit::WebProcess::injectedBundle):
   43475         Load the InjectedBundle on LoadInjectedBundle message.
   43476 
   43477         * WebKit2.xcodeproj/project.pbxproj:
   43478         * mac/WebKit2.exp:
   43479         * win/WebKit2.vcproj:
   43480         * win/WebKit2Generated.make:
   43481         Add the new files.
   43482 
   43483 2010-06-15  Darin Adler  <darin (a] apple.com>
   43484 
   43485         Reviewed by Adam Barth.
   43486 
   43487         Move functions out of Frame class that were marked "move to Chrome"
   43488         https://bugs.webkit.org/show_bug.cgi?id=39636
   43489 
   43490         * WebProcess/WebPage/WebPage.cpp:
   43491         (WebKit::WebPage::tryClose): Call shouldClose on FrameLoader instead of
   43492         going through Frame.
   43493 
   43494 2010-06-14  Steve Falkenburg  <sfalken (a] apple.com>
   43495 
   43496         Windows build fix.
   43497         Reorder build event to fix cygwin path issue.
   43498 
   43499         * win/WebKit2Generated.vcproj:
   43500 
   43501 2010-06-14  Steve Falkenburg  <sfalken (a] apple.com>
   43502 
   43503         Windows build fix.
   43504         Add build failure stopping code.
   43505 
   43506         * win/WebKit2WebProcess.vcproj:
   43507 
   43508 2010-06-14  Steve Falkenburg  <sfalken (a] apple.com>
   43509 
   43510         Windows build fix.
   43511         Add build failure stopping code.
   43512 
   43513         * win/WebKit2Generated.vcproj:
   43514 
   43515 2010-06-14  Ada Chan  <adachan (a] apple.com>
   43516 
   43517         Rubber-stamped by Steve Falkenburg.
   43518 
   43519         - Fix the release configuration to use release.vsprops.
   43520         - Add Debug_Internal and Debug_All configurations to the WebKit2WebProcess project.
   43521         - Fix launchWebProcess() to get the right path to the WebKit2WebProcess executable.
   43522 
   43523         * UIProcess/Launcher/win/WebProcessLauncher.cpp:
   43524         (WebKit::launchWebProcess):
   43525         * win/WebKit2WebProcess.vcproj:
   43526 
   43527 2010-06-12  Ada Chan  <adachan (a] apple.com>
   43528 
   43529         Unreviewed fix for a linking error with WebKit2LocalizableStringsBundle for Windows release build.
   43530 
   43531         * WebProcess/win/WebLocalizableStrings.cpp:
   43532         (findCachedString):
   43533 
   43534 2010-06-11  Sam Weinig  <sam (a] webkit.org>
   43535 
   43536         Reviewed by Mark Rowe.
   43537 
   43538         Use -Os for optimized builds instead of -02. -02 wasn't giving the 
   43539         right trade off at this time.
   43540 
   43541         * Configurations/Base.xcconfig:
   43542 
   43543 2010-06-11  Sam Weinig  <sam (a] webkit.org>
   43544 
   43545         Reviewed by Anders Carlsson.
   43546 
   43547         Move WKRetain and WKRelease overloaded functions out of WKRetainPtr
   43548         and into the files of the type they overload (eg, WKRetain(WKFrameRef 
   43549         moves to WKFrame.h)).
   43550 
   43551         * UIProcess/API/C/WKBase.h:
   43552         * UIProcess/API/C/WKContext.h:
   43553         * UIProcess/API/C/WKFrame.h:
   43554         * UIProcess/API/C/WKFramePolicyListener.h:
   43555         * UIProcess/API/C/WKNavigationData.h:
   43556         * UIProcess/API/C/WKPage.h:
   43557         * UIProcess/API/C/WKPageNamespace.h:
   43558         * UIProcess/API/C/WKPreferences.h:
   43559         * UIProcess/API/C/WKString.h:
   43560         * UIProcess/API/C/WKURL.h:
   43561         * UIProcess/API/cpp/WKRetainPtr.h:
   43562         * UIProcess/API/win/WKView.h:
   43563 
   43564 2010-06-10  John Sullivan  <sullivan (a] apple.com>
   43565 
   43566         Reviewed by Dan Bernstein.
   43567 
   43568         * mac/WebKit2.exp:
   43569         Added another symbol needed by Mac clients.
   43570 
   43571 2010-06-09  Ilya Tikhonovsky  <loislo (a] chromium.org>
   43572 
   43573         Unreviewed build fix.
   43574 
   43575         * WebProcess/WebCoreSupport/WebInspectorClient.h:
   43576 
   43577 2010-06-09  Ilya Tikhonovsky  <loislo (a] chromium.org>
   43578 
   43579         Unreviewed build fix.
   43580 
   43581         WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc
   43582         data from inspected page to WebInspector as JSON string via http. The native
   43583         serialization to JSON string is supported by InspectorValue's classes. This patch
   43584         has the implementation of sendMessageToFrontend function. WebKit version of it still
   43585         uses ScriptFunctionCall and will be switched to another transport a little bit later.
   43586         https://bugs.webkit.org/show_bug.cgi?id=40134
   43587 
   43588         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
   43589         (WebKit::WebInspectorClient::sendMessageToFrontend):
   43590         * WebProcess/WebCoreSupport/WebInspectorClient.h:
   43591 
   43592 2010-06-08  Anders Carlsson  <andersca (a] apple.com>
   43593 
   43594         Reviewed by John Sullivan.
   43595 
   43596         <rdar://problem/8071268> WebKit2 URLs are displayed as 1-character strings in log statements
   43597 
   43598         Create a CFString from our WebCore string and then create the CFURL from the CFString.
   43599 
   43600         * UIProcess/API/C/cf/WKURLCF.cpp:
   43601         (WKURLCopyCFURL):
   43602 
   43603 2010-06-08  John Sullivan  <sullivan (a] apple.com>
   43604 
   43605         Rubber-stamped by Anders Carlsson.
   43606 
   43607         * mac/WebKit2.exp:
   43608         Added _WKPageGetEstimatedProgress and _WKFrameGetPage
   43609 
   43610 2010-06-08  Anders Carlsson  <andersca (a] apple.com>
   43611 
   43612         Reviewed by John Sullivan.
   43613 
   43614         Would like a way to query WKPageRef for the current progress value
   43615         https://bugs.webkit.org/show_bug.cgi?id=40310
   43616         <rdar://problem/8071299>
   43617 
   43618         Add WKPageGetEstimatedProgress. Remove the progress parameter from the didChangeProgress
   43619         loader client callback function.
   43620 
   43621         * UIProcess/API/C/WKPage.cpp:
   43622         (WKPageGetEstimatedProgress):
   43623         * UIProcess/API/C/WKPage.h:
   43624         * UIProcess/WebLoaderClient.cpp:
   43625         (WebKit::WebLoaderClient::didChangeProgress):
   43626         * UIProcess/WebLoaderClient.h:
   43627         * UIProcess/WebPageProxy.cpp:
   43628         (WebKit::WebPageProxy::WebPageProxy):
   43629         (WebKit::WebPageProxy::close):
   43630         (WebKit::WebPageProxy::didStartProgress):
   43631         (WebKit::WebPageProxy::didChangeProgress):
   43632         (WebKit::WebPageProxy::didFinishProgress):
   43633         (WebKit::WebPageProxy::processDidExit):
   43634         * UIProcess/WebPageProxy.h:
   43635         (WebKit::WebPageProxy::estimatedProgress):
   43636 
   43637 2010-06-08  Anders Carlsson  <andersca (a] apple.com>
   43638 
   43639         Reviewed by John Sullivan.
   43640 
   43641         Would like a way to tell which WKPageRef a WKFrameRef is part of
   43642         https://bugs.webkit.org/show_bug.cgi?id=40308
   43643         <rdar://problem/8071251>
   43644 
   43645         Add and implement WKFrameGetPage.
   43646 
   43647         * UIProcess/API/C/WKFrame.cpp:
   43648         (WKFrameGetPage):
   43649         * UIProcess/API/C/WKFrame.h:
   43650         * UIProcess/WebFrameProxy.h:
   43651         (WebKit::WebFrameProxy::page):
   43652 
   43653 2010-06-08  John Sullivan  <sullivan (a] apple.com>
   43654 
   43655         Rubber-stamped by Mark Rowe.
   43656 
   43657         * mac/WebKit2.exp:
   43658         Added a few more symbols needed by Mac clients.
   43659 
   43660 2010-06-08  MORITA Hajime  <morrita (a] google.com>
   43661 
   43662         Unreviewed. An attempt to fix test break.
   43663 
   43664         * Configurations/FeatureDefines.xcconfig:
   43665 
   43666 2010-06-06  MORITA Hajime  <morrita (a] google.com>
   43667 
   43668         Unreviewd, follow up to r60820
   43669 
   43670         https://bugs.webkit.org/show_bug.cgi?id=40219
   43671         [Mac] ENABLE_METER_TAG should be enabled
   43672         
   43673         * Configurations/FeatureDefines.xcconfig:
   43674 
   43675 2010-06-05  Mark Rowe  <mrowe (a] apple.com>
   43676 
   43677         Rubber-stamped by Dan Bernstein.
   43678 
   43679         <rdar://problem/8063622> Failure to launch WebProcess.app when framework is outside of the build directory
   43680 
   43681         * Configurations/WebProcess.xcconfig:
   43682 
   43683 2010-06-04  John Sullivan  <sullivan (a] apple.com>
   43684 
   43685         Rubber-stamped by Ada Chan.
   43686 
   43687         Added a couple of symbols needed to start using WKFrameRefs in Mac clients.
   43688 
   43689         * mac/WebKit2.exp:
   43690         Added _WKFrameRelease and _WKFrameRetain.
   43691 
   43692 2010-06-04  Ada Chan  <adachan (a] apple.com>
   43693 
   43694         Reviewed by Anders Carlsson.
   43695 
   43696         http://bugs.webkit.org/show_bug.cgi?id=40186
   43697         
   43698         Need to close WebPageProxy when the WebView is destroyed.
   43699         Also, WebPageProxy shouldn't hold an OwnPtr to the PageClient, which is the WebView on Windows.
   43700 
   43701         * UIProcess/WebPageProxy.cpp:
   43702         (WebKit::WebPageProxy::WebPageProxy):
   43703         (WebKit::WebPageProxy::setPageClient):
   43704         * UIProcess/WebPageProxy.h:
   43705         * UIProcess/win/WebView.cpp:
   43706         (WebKit::WebView::close):
   43707 
   43708 2010-06-03  Ada Chan  <adachan (a] apple.com>
   43709 
   43710         Reviewed by Adam Roben.
   43711 
   43712         https://bugs.webkit.org/show_bug.cgi?id=40152
   43713         
   43714         Need to remove the WebView from WindowMessageBroadcaster's listeners list when the WebView is destroyed.
   43715 
   43716         * UIProcess/API/win/WKView.cpp:
   43717         (WKViewSetHostWindow): Expose API to change the host window of a WKView.
   43718         (WKViewWindowAncestryDidChange): Expose API to allow clients to notify WebKit when a WKView's window ancestry has changed.
   43719         * UIProcess/API/win/WKView.h:
   43720         * UIProcess/win/WebView.cpp:
   43721         (WebKit::WebView::wndProc): Set the WebView's host window to 0 when it's destroyed.  setHostWindow() will call 
   43722         windowAncestryDidChange(), which will remove this WebView from the WindowMessageBroadcaster's listeners list.
   43723         (WebKit::WebView::WebView): Initialize m_isBeingDestroyed.
   43724         (WebKit::WebView::setHostWindow): Update the window's parent window and call windowAncestryDidChange().
   43725         (WebKit::WebView::close): Set the host window to 0.
   43726         * UIProcess/win/WebView.h:
   43727 
   43728 2010-06-04  Tony Gentilcore  <tonyg (a] chromium.org>
   43729 
   43730         Reviewed by Adam Barth.
   43731 
   43732         Utilize new takeFirst() method where appropriate.
   43733         https://bugs.webkit.org/show_bug.cgi?id=40089
   43734 
   43735         * Platform/CoreIPC/ArgumentDecoder.cpp:
   43736         (CoreIPC::ArgumentDecoder::removeAttachment):
   43737 
   43738 2010-06-03  Ada Chan  <adachan (a] apple.com>
   43739 
   43740         Reviewed by Anders Carlsson.
   43741 
   43742         Add UIProcess\API\cpp to the list of additional include directories.
   43743         Allow WKViewRef to work with WKRetainPtr on Windows.
   43744 
   43745         * UIProcess/API/cpp/WKRetainPtr.h:
   43746         * win/WebKit2.vcproj:
   43747 
   43748 2010-06-01  Alice Liu  <alice.liu (a] apple.com>
   43749 
   43750         Build fix. Not reviewed
   43751 
   43752         * win/WebKit2Generated.make: Added WKRetainPtr.h
   43753 
   43754 2010-06-01  John Sullivan  <sullivan (a] apple.com>
   43755 
   43756         Rubber-stamped by Anders Carlsson.
   43757 
   43758         Added _WKRetainPtr to .exp file, and added .exp file to Xcode project.
   43759 
   43760         * WebKit2.xcodeproj/project.pbxproj:
   43761         Added mac/WebKit2.exp.
   43762         
   43763         * mac/WebKit2.exp:
   43764         Added _WKRetainPtr.
   43765 
   43766 2010-06-01  John Sullivan  <sullivan (a] apple.com>
   43767 
   43768         Rubber-stamped by Anders Carlsson.
   43769 
   43770         Fixed typo/wordo that prevented a certain flavor of constructor from compiling.
   43771 
   43772         * UIProcess/API/cpp/WKRetainPtr.h:
   43773         (WebKit::WKRetainPtr::WKRetainPtr):
   43774         Changed the mysterious "retainWKPtr" to "WKRetain".
   43775 
   43776 2010-05-28  John Sullivan  <sullivan (a] apple.com>
   43777 
   43778         Rubber-stamped by Dan Bernstein.
   43779 
   43780         Add a using declaration for AdoptWK to match the one just added for WKRetainPtr.
   43781 
   43782         * UIProcess/API/cpp/WKRetainPtr.h:
   43783 
   43784 2010-05-28  Sam Weinig  <sam (a] webkit.org>
   43785 
   43786         Reviewed by Anders Carlsson.
   43787 
   43788         Add a using declaration for WKRetainPtr matching what we do for our
   43789         other smart pointers and fix the destructor.
   43790 
   43791         * UIProcess/API/cpp/WKRetainPtr.h:
   43792         (WebKit::WKRetainPtr::~WKRetainPtr):
   43793 
   43794 2010-05-25  Ada Chan  <adachan (a] apple.com>
   43795 
   43796         Reviewed by Darin Adler.
   43797 
   43798         https://bugs.webkit.org/show_bug.cgi?id=39686
   43799 
   43800         Fix the ProjectGUID of the WebKit2 project so it doesn't conflict with the one in WebKit.        
   43801 
   43802         * WebKit2.sln:
   43803         * win/WebKit2.vcproj:
   43804 
   43805 2010-05-24  Ada Chan  <adachan (a] apple.com>
   43806 
   43807         Rubber-stamped by Mark Rowe.
   43808         
   43809         Build fix for 32bit systems.
   43810 
   43811         * mac/WebKit2.exp:
   43812 
   43813 2010-05-21  Mark Rowe  <mrowe (a] apple.com>
   43814 
   43815         Reviewed by Oliver Hunt.
   43816 
   43817         Teach WebKit2 to build in the Production configuration.
   43818 
   43819         * Configurations/Base.xcconfig: Restrict WebKit2 to Intel, and disable the order file.
   43820         * Configurations/BaseTarget.xcconfig: Fix the path to the umbrella framework directory.
   43821         This path is used to locate WebCore.framework, so it needs to be relative to WebKit.framework
   43822         rather than WebKit2.framework.
   43823         * Configurations/WebKit2.xcconfig: Update the install path.  Add an exports file.
   43824         * Configurations/WebProcess.xcconfig: Update the install path.
   43825         * WebKit2.xcodeproj/project.pbxproj: Add a Production configuration.
   43826         * mac/WebKit2.exp: Added.
   43827 
   43828 2010-05-21  Steve Block  <steveblock (a] google.com>
   43829 
   43830         Unreviewed build fix for WebKit2
   43831 
   43832         Pass 0 to Page constructor for DeviceOrientationClient.
   43833         See http://trac.webkit.org/changeset/59935
   43834 
   43835         * WebProcess/WebPage/WebPage.cpp:
   43836         (WebKit::WebPage::WebPage):
   43837 
   43838 2010-05-11  Mark Rowe  <mrowe (a] apple.com>
   43839 
   43840         Fix the world.
   43841 
   43842         In r59162 a change was made to WebCore's FeatureDefines.xcconfig that enabled FILE_READER and FILE_WRITER.
   43843         The author and reviewer of that patch ignored the carefully-worded warning at the top of that file asking
   43844         that changes to the file be kept in sync across JavaScriptCore, WebCore and WebKit, as well as being kept
   43845         in sync with build-webkit.  This led to WebCore and WebKit having different views of Document's vtable
   43846         and results in crashes in Safari shortly after launch when virtual function calls resulted in the wrong
   43847         function in WebCore being called.
   43848 
   43849         We fix this by bringing the FeatureDefines.xcconfig files in to sync.  Based on the ChangeLog message and
   43850         other changes in r59162 it appears that enabling FILE_WRITER was unintentional so that particular change
   43851         has been reverted.
   43852 
   43853         * Configurations/FeatureDefines.xcconfig:
   43854 
   43855 2010-05-04  Anders Carlsson  <andersca (a] apple.com>
   43856 
   43857         Reviewed by Dan Bernstein.
   43858 
   43859         [WebKit2] The web process doesn't need to paint when the web view is hidden.
   43860         https://bugs.webkit.org/show_bug.cgi?id=38549
   43861 
   43862         * Shared/CoreIPCSupport/DrawingAreaMessageKinds.h:
   43863         (DrawingAreaMessage::):
   43864         Add SuspendPainting/ResumePainting messages.
   43865         
   43866         * UIProcess/DrawingAreaProxyUpdateChunk.cpp:
   43867         (WebKit::DrawingAreaProxyUpdateChunk::setPageIsVisible):
   43868         Suspend and resume painting accordingly.
   43869         
   43870         * WebProcess/WebPage/DrawingAreaUpdateChunk.cpp:
   43871         (WebKit::DrawingAreaUpdateChunk::DrawingAreaUpdateChunk):
   43872         Initialize m_shouldPaint to true.
   43873         
   43874         (WebKit::DrawingAreaUpdateChunk::display):
   43875         Return if m_shouldPaint is false.
   43876         
   43877         (WebKit::DrawingAreaUpdateChunk::scheduleDisplay):
   43878         Ditto.
   43879         
   43880         (WebKit::DrawingAreaUpdateChunk::setSize):
   43881         Assert that we should paint here.
   43882 
   43883         (WebKit::DrawingAreaUpdateChunk::suspendPainting):
   43884         Set m_shouldPaint to false and stop the timer.
   43885         
   43886         (WebKit::DrawingAreaUpdateChunk::resumePainting):
   43887         Set m_shouldPaint to true and paint if needed.
   43888 
   43889         (WebKit::DrawingAreaUpdateChunk::didReceiveMessage):
   43890         handle SuspendPainting/ResumePainting messages.
   43891 
   43892         * WebProcess/WebPage/DrawingAreaUpdateChunk.h:
   43893 
   43894 2010-05-03  Anders Carlsson  <andersca (a] apple.com>
   43895 
   43896         Reviewed by Jon Honeycutt.
   43897 
   43898         [WebKit2] WKView should respond to WM_SHOWWINDOW messages
   43899         https://bugs.webkit.org/show_bug.cgi?id=38496
   43900 
   43901         * UIProcess/win/WebView.cpp:
   43902         (WebKit::WebView::wndProc):
   43903         Add case for WM_SHOWWINDOW.
   43904 
   43905         (WebKit::WebView::onShowWindowEvent):
   43906         Update the page visibility accordingly.
   43907 
   43908         * UIProcess/win/WebView.h:
   43909 
   43910 2010-05-03  Anders Carlsson  <andersca (a] apple.com>
   43911 
   43912         Reviewed by Dan Bernstein.
   43913 
   43914         Get rid of PageClient::isPageVisible and pass visibility directly in setPageIsVisible
   43915         https://bugs.webkit.org/show_bug.cgi?id=38493
   43916 
   43917         * UIProcess/API/mac/PageClientImpl.h:
   43918         * UIProcess/API/mac/PageClientImpl.mm:
   43919         Remove isPageVisible.
   43920         
   43921         * UIProcess/API/mac/WKView.mm:
   43922         (isViewVisible):
   43923         New function (moved here from PageClientImpl).
   43924         
   43925         (-[WKView _updateVisibility]):
   43926         Call didChangeVisibility.
   43927         
   43928         (-[WKView viewDidMoveToWindow]):
   43929         (-[WKView viewDidHide]):
   43930         (-[WKView viewDidUnhide]):
   43931         Call _updateVisibility.
   43932         
   43933         * UIProcess/DrawingAreaProxy.h:
   43934         Rename didChangeVisibility to setPageIsVisible and add an isVisible parameter.
   43935         
   43936         * UIProcess/DrawingAreaProxyUpdateChunk.cpp:
   43937         (WebKit::DrawingAreaProxyUpdateChunk::setPageIsVisible):
   43938         Don't call WebPageProxy::isVisible.
   43939 
   43940         * UIProcess/DrawingAreaProxyUpdateChunk.h:
   43941         
   43942         * UIProcess/PageClient.h:
   43943         Remove isPageVisible.
   43944 
   43945         * UIProcess/WebPageProxy.cpp:
   43946         * UIProcess/WebPageProxy.h:
   43947         Remove isVisible.
   43948 
   43949 2010-05-03  Anders Carlsson  <andersca (a] apple.com>
   43950 
   43951         Reviewed by Adam Roben.
   43952 
   43953         Implement PageClient::isPageVisible on Windows.
   43954         https://bugs.webkit.org/show_bug.cgi?id=38483
   43955 
   43956         * UIProcess/PageClient.h:
   43957         * UIProcess/win/WebView.cpp:
   43958         (WebKit::WebView::isPageVisible):
   43959         * UIProcess/win/WebView.h:
   43960 
   43961 2010-05-03  Anders Carlsson  <andersca (a] apple.com>
   43962 
   43963         Fix Windows build.
   43964 
   43965         * Platform/CoreIPC/win/ConnectionWin.cpp:
   43966         (CoreIPC::Connection::sendOutgoingMessage):
   43967         * Shared/win/UpdateChunk.cpp:
   43968         (WebKit::UpdateChunk::UpdateChunk):
   43969         (WebKit::UpdateChunk::encode):
   43970         (WebKit::UpdateChunk::decode):
   43971         * Shared/win/UpdateChunk.h:
   43972         (WebKit::UpdateChunk::rect):
   43973         * UIProcess/DrawingAreaProxy.h:
   43974         * UIProcess/DrawingAreaProxyUpdateChunk.h:
   43975         * UIProcess/win/DrawingAreaProxyUpdateChunkWin.cpp:
   43976         (WebKit::DrawingAreaProxyUpdateChunk::drawUpdateChunkIntoBackingStore):
   43977         * WebProcess/WebPage/win/DrawingAreaUpdateChunkWin.cpp:
   43978         (WebKit::DrawingAreaUpdateChunk::paintIntoUpdateChunk):
   43979         * WebProcess/win/WebProcessMain.cpp:
   43980 
   43981 2010-04-30  Anders Carlsson  <andersca (a] apple.com>
   43982 
   43983         Reviewed by Sam Weinig.
   43984 
   43985         https://bugs.webkit.org/show_bug.cgi?id=38415
   43986         Have the WKView notify the DrawingAreaProxy when its visibility changes.
   43987 
   43988         * UIProcess/API/mac/PageClientImpl.h:
   43989         * UIProcess/API/mac/PageClientImpl.mm:
   43990         (WebKit::PageClientImpl::isPageVisible):
   43991         * UIProcess/API/mac/WKView.mm:
   43992         (-[WKView viewDidMoveToWindow]):
   43993         (-[WKView viewDidHide]):
   43994         (-[WKView viewDidUnhide]):
   43995         * UIProcess/DrawingAreaProxy.h:
   43996         * UIProcess/DrawingAreaProxyUpdateChunk.cpp:
   43997         (WebKit::DrawingAreaProxyUpdateChunk::DrawingAreaProxyUpdateChunk):
   43998         (WebKit::DrawingAreaProxyUpdateChunk::didChangeVisibility):
   43999         * UIProcess/DrawingAreaProxyUpdateChunk.h:
   44000         * UIProcess/PageClient.h:
   44001         * UIProcess/WebPageProxy.cpp:
   44002         (WebKit::WebPageProxy::isVisible):
   44003         * UIProcess/WebPageProxy.h:
   44004 
   44005 2010-05-03  Jens Alfke  <snej (a] chromium.org>
   44006 
   44007         Reviewed by Darin Fisher.
   44008 
   44009         [chromium] Add "willSendSubmitEvent" hook to WebFrameClient and FrameLoaderClient
   44010         https://bugs.webkit.org/show_bug.cgi?id=38397
   44011 
   44012         No tests (functionality is exposed only through native WebKit API.)
   44013 
   44014         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   44015         (WebKit::WebFrameLoaderClient::dispatchWillSendSubmitEvent):
   44016 
   44017 2010-05-01  Sam Weinig  <sam (a] webkit.org>
   44018 
   44019         Reviewed by Anders Carlsson.
   44020 
   44021         Fix for https://bugs.webkit.org/show_bug.cgi?id=38471
   44022         Add generic callback mechanism
   44023 
   44024         Added GenericCallback class replacing RenderTreeExternalRepresentationCallback
   44025         and ScriptReturnValueCallback.
   44026         
   44027         Also,
   44028         - Standardize C API callbacks to take the context last.
   44029         - Standardize C API callbacks to not have the _f suffix (now the block
   44030           variants have a _b suffix).
   44031         - Re-write toWK and toRef methods as a set of template functions using
   44032           the generic API->implementation mapping information.
   44033 
   44034         * UIProcess/API/C/WKAPICast.h:
   44035         * UIProcess/API/C/WKPage.cpp:
   44036         (WKPageRunJavaScriptInMainFrame):
   44037         (callRunJavaScriptBlockAndRelease):
   44038         (disposeRunJavaScriptBlock):
   44039         (WKPageRunJavaScriptInMainFrame_b):
   44040         (WKPageRenderTreeExternalRepresentation):
   44041         (WKPageRenderTreeExternalRepresentation_b):
   44042         * UIProcess/API/C/WKPage.h:
   44043         * UIProcess/API/C/WKPagePrivate.h:
   44044         * UIProcess/GenericCallback.h: Added.
   44045         (WebKit::GenericCallback::create):
   44046         (WebKit::GenericCallback::~GenericCallback):
   44047         (WebKit::GenericCallback::performCallbackWithReturnValue):
   44048         (WebKit::GenericCallback::invalidate):
   44049         (WebKit::GenericCallback::callbackID):
   44050         (WebKit::GenericCallback::generateCallbackID):
   44051         (WebKit::GenericCallback::GenericCallback):
   44052         * UIProcess/RenderTreeExternalRepresentationCallback.cpp: Removed.
   44053         * UIProcess/RenderTreeExternalRepresentationCallback.h: Removed.
   44054         * UIProcess/ScriptReturnValueCallback.cpp: Removed.
   44055         * UIProcess/ScriptReturnValueCallback.h: Removed.
   44056         * UIProcess/WebPageProxy.cpp:
   44057         (WebKit::WebPageProxy::didRunJavaScriptInMainFrame):
   44058         (WebKit::WebPageProxy::didGetRenderTreeExternalRepresentation):
   44059         * UIProcess/WebPageProxy.h:
   44060         * WebKit2.xcodeproj/project.pbxproj:
   44061         * win/WebKit2.vcproj:
   44062 
   44063 2010-04-30  Sam Weinig  <sam (a] webkit.org>
   44064 
   44065         Fix the build.
   44066 
   44067         * Platform/CoreIPC/mac/ConnectionMac.cpp: Add missing #include.
   44068 
   44069 2010-04-30  Sam Weinig  <sam (a] webkit.org>
   44070 
   44071         Reviewed by Anders Carlsson.
   44072 
   44073         https://bugs.webkit.org/show_bug.cgi?id=38413
   44074         Add callback based API to get the textual representation of the RenderTree.
   44075 
   44076         - Also ensures that any pending callbacks are invalidated if the WebPage
   44077           closes (expectedly or unexpectedly).
   44078         - A follow up patch will unify the callback mechanism with a common base
   44079           class.
   44080 
   44081         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
   44082         (WebPageMessage::):
   44083         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   44084         (WebPageProxyMessage::):
   44085         * UIProcess/API/C/WKPage.cpp:
   44086         (WKPageRunJavaScriptInMainFrame_f):
   44087         (WKPageRenderTreeExternalRepresentation_f):
   44088         (callRenderTreeExternalRepresentationBlockAndDispose):
   44089         (disposeRenderTreeExternalRepresentationBlock):
   44090         (WKPageRenderTreeExternalRepresentation):
   44091         * UIProcess/API/C/WKPagePrivate.h: Added.
   44092         * UIProcess/RenderTreeExternalRepresentationCallback.cpp: Added.
   44093         (WebKit::generateCallbackID):
   44094         (WebKit::RenderTreeExternalRepresentationCallback::RenderTreeExternalRepresentationCallback):
   44095         (WebKit::RenderTreeExternalRepresentationCallback::~RenderTreeExternalRepresentationCallback):
   44096         (WebKit::RenderTreeExternalRepresentationCallback::performCallbackWithReturnValue):
   44097         (WebKit::RenderTreeExternalRepresentationCallback::invalidate):
   44098         * UIProcess/RenderTreeExternalRepresentationCallback.h: Added.
   44099         (WebKit::RenderTreeExternalRepresentationCallback::create):
   44100         (WebKit::RenderTreeExternalRepresentationCallback::callbackID):
   44101         * UIProcess/ScriptReturnValueCallback.cpp:
   44102         (WebKit::ScriptReturnValueCallback::~ScriptReturnValueCallback):
   44103         (WebKit::ScriptReturnValueCallback::performCallbackWithReturnValue):
   44104         (WebKit::ScriptReturnValueCallback::invalidate):
   44105         * UIProcess/ScriptReturnValueCallback.h:
   44106         * UIProcess/WebPageProxy.cpp:
   44107         (WebKit::WebPageProxy::close):
   44108         (WebKit::WebPageProxy::getRenderTreeExternalRepresentation):
   44109         (WebKit::WebPageProxy::didReceiveMessage):
   44110         (WebKit::WebPageProxy::didRunJavaScriptInMainFrame):
   44111         (WebKit::WebPageProxy::didGetRenderTreeExternalRepresentation):
   44112         (WebKit::WebPageProxy::processDidExit):
   44113         * UIProcess/WebPageProxy.h:
   44114         * WebKit2.xcodeproj/project.pbxproj:
   44115         * WebProcess/WebPage/WebPage.cpp:
   44116         (WebKit::WebPage::getRenderTreeExternalRepresentation):
   44117         (WebKit::WebPage::didReceiveMessage):
   44118         * WebProcess/WebPage/WebPage.h:
   44119         * win/WebKit2.vcproj:
   44120 
   44121 2010-04-30  Sam Weinig  <sam (a] webkit.org>
   44122 
   44123         Reviewed by Anders Carlsson.
   44124 
   44125         Fix for https://bugs.webkit.org/show_bug.cgi?id=38406
   44126         Add support for sending messages with a size greater than 4096 bytes
   44127 
   44128         Adds support by putting message bodies that are larger than 4096 bytes
   44129         in OOL memory.
   44130 
   44131         * Platform/CoreIPC/Connection.cpp:
   44132         (CoreIPC::Connection::sendMessage):
   44133         (CoreIPC::Connection::waitForMessage):
   44134         (CoreIPC::Connection::sendSyncMessage):
   44135         (CoreIPC::Connection::dispatchMessages):
   44136         * Platform/CoreIPC/Connection.h:
   44137         (CoreIPC::Connection::OutgoingMessage::OutgoingMessage):
   44138         (CoreIPC::Connection::OutgoingMessage::messageID):
   44139         (CoreIPC::Connection::send):
   44140         (CoreIPC::Connection::sendSync):
   44141         * Platform/CoreIPC/MessageID.h:
   44142         (CoreIPC::MessageID::):
   44143         (CoreIPC::MessageID::MessageID):
   44144         (CoreIPC::MessageID::equalIgnoringFlags):
   44145         (CoreIPC::MessageID::copyAddingFlags):
   44146         (CoreIPC::MessageID::fromInt):
   44147         (CoreIPC::MessageID::toInt):
   44148         (CoreIPC::MessageID::isMessageBodyOOL):
   44149         * Platform/CoreIPC/mac/ConnectionMac.cpp:
   44150         (CoreIPC::Connection::sendOutgoingMessage):
   44151         (CoreIPC::createArgumentDecoder):
   44152 
   44153 2010-04-28  Mike Thole  <mthole (a] apple.com>
   44154 
   44155         Build fix, not reviewed.
   44156 
   44157         Fix WebKit2 build by stubbing out WebFrameLoaderClient::canAuthenticateAgainstProtectionSpace().
   44158 
   44159         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   44160         (WebKit::WebFrameLoaderClient::canAuthenticateAgainstProtectionSpace):
   44161         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   44162 
   44163 2010-04-28  Sam Weinig  <sam (a] webkit.org>
   44164 
   44165         Reviewed by Mark Rowe.
   44166 
   44167         Only build on SnowLeopard and later when using the Makefile.
   44168 
   44169         * Makefile:
   44170 
   44171 2010-04-27  Sam Weinig  <sam (a] webkit.org>
   44172 
   44173         Reviewed by Maciej Stachowiak.
   44174 
   44175         Fix for https://bugs.webkit.org/show_bug.cgi?id=38238
   44176         Allow both WebKit and WebKit2 to link to the same WebCore.framework
   44177 
   44178         * Configurations/WebKit2.xcconfig: Remove the OTHER_LDFLAGS. We don't
   44179         need to set WebCore as a sub_umbrella of WebKit2, since we are not
   44180         reexporting any of its symbols.
   44181 
   44182 2010-04-27  Sam Weinig  <sam (a] webkit.org>
   44183 
   44184         Reviewed by Geoffrey Garen.
   44185 
   44186         Add comment about not using StringImpl::createCFString in WKStringCopyCFString.
   44187 
   44188         * UIProcess/API/C/cf/WKStringCF.cpp:
   44189         (WKStringCopyCFString):
   44190 
   44191 2010-04-27  Sam Weinig  <sam (a] webkit.org>
   44192 
   44193         Reviewed by Geoffrey Garen.
   44194 
   44195         Remove call to StringImpl::createCFString and instead use CFStringCreateWithCharacters
   44196         directly. StringImpl::createCFString only an optimization when called
   44197         from the thread that WebCore is running on, which is never the case for
   44198         WKStringCopyCFString. We should revisit this later, perhaps adding a
   44199         threadspecific allocator. We also now honor the passed in allocator.
   44200 
   44201         * UIProcess/API/C/cf/WKStringCF.cpp:
   44202         (WKStringCopyCFString):
   44203 
   44204 2010-04-25  Sam Weinig  <sam (a] webkit.org>
   44205 
   44206         Reviewed by Maciej Stachowiak.
   44207 
   44208         Fix for https://bugs.webkit.org/show_bug.cgi?id=38097
   44209         Disentangle initializing the main thread from initializing threading
   44210 
   44211         * UIProcess/Launcher/mac/WebProcessLauncher.mm:
   44212         (WebKit::webThreadBody): Add call to initializeMainThread.
   44213         * UIProcess/Launcher/win/WebProcessLauncher.cpp:
   44214         (WebKit::webThreadBody): Ditto.
   44215         * WebProcess/Launching/mac/WebProcessMain.mm:
   44216         (main): Ditto.
   44217         * WebProcess/win/WebProcessMain.cpp:
   44218         (WebKit::WebProcessMain): Ditto.
   44219 
   44220 2010-04-23  Sam Weinig  <sam (a] webkit.org>
   44221 
   44222         Reviewed by Anders Carlsson.
   44223 
   44224         https://bugs.webkit.org/show_bug.cgi?id=38065
   44225         Merge mac and win DrawingAreaProxyUpdateChunk implementations.
   44226 
   44227         * UIProcess/API/mac/WKView.mm:
   44228         (-[WKView drawRect:]):
   44229         * UIProcess/DrawingAreaProxy.cpp: Copied from UIProcess/mac/DrawingAreaProxy.mm.
   44230         * UIProcess/DrawingAreaProxy.h: Copied from UIProcess/mac/DrawingAreaProxy.h.
   44231         * UIProcess/DrawingAreaProxyUpdateChunk.cpp: Copied from UIProcess/mac/DrawingAreaProxyUpdateChunk.mm.
   44232         (WebKit::DrawingAreaProxyUpdateChunk::DrawingAreaProxyUpdateChunk):
   44233         (WebKit::DrawingAreaProxyUpdateChunk::paint):
   44234         (WebKit::DrawingAreaProxyUpdateChunk::setSize):
   44235         (WebKit::DrawingAreaProxyUpdateChunk::didSetSize):
   44236         (WebKit::DrawingAreaProxyUpdateChunk::update):
   44237         (WebKit::DrawingAreaProxyUpdateChunk::didReceiveMessage):
   44238         * UIProcess/DrawingAreaProxyUpdateChunk.h: Copied from UIProcess/mac/DrawingAreaProxyUpdateChunk.h.
   44239         * UIProcess/mac/DrawingAreaProxy.h: Removed.
   44240         * UIProcess/mac/DrawingAreaProxy.mm: Removed.
   44241         * UIProcess/mac/DrawingAreaProxyUpdateChunk.h: Removed.
   44242         * UIProcess/mac/DrawingAreaProxyUpdateChunk.mm: Removed.
   44243         * UIProcess/mac/DrawingAreaProxyUpdateChunkMac.mm: Copied from UIProcess/mac/DrawingAreaProxyUpdateChunk.mm.
   44244         (WebKit::DrawingAreaProxyUpdateChunk::page):
   44245         (WebKit::DrawingAreaProxyUpdateChunk::invalidateBackingStore):
   44246         (WebKit::DrawingAreaProxyUpdateChunk::platformPaint):
   44247         (WebKit::DrawingAreaProxyUpdateChunk::drawUpdateChunkIntoBackingStore):
   44248         * UIProcess/win/DrawingAreaProxy.cpp: Removed.
   44249         * UIProcess/win/DrawingAreaProxy.h: Removed.
   44250         * UIProcess/win/DrawingAreaProxyUpdateChunkWin.cpp: Copied from UIProcess/win/DrawingAreaProxy.cpp.
   44251         (WebKit::DrawingAreaProxyUpdateChunk::page):
   44252         (WebKit::DrawingAreaProxyUpdateChunk::ensureBackingStore):
   44253         (WebKit::DrawingAreaProxyUpdateChunk::invalidateBackingStore):
   44254         (WebKit::DrawingAreaProxyUpdateChunk::platformPaint):
   44255         (WebKit::DrawingAreaProxyUpdateChunk::drawUpdateChunkIntoBackingStore):
   44256         * UIProcess/win/WebView.cpp:
   44257         (WebKit::WebView::WebView):
   44258         (WebKit::WebView::onPaintEvent):
   44259         * WebKit2.xcodeproj/project.pbxproj:
   44260         * win/WebKit2.vcproj:
   44261 
   44262 2010-04-23  Sam Weinig  <sam (a] webkit.org>
   44263 
   44264         Reviewed by Anders Carlsson.
   44265 
   44266         Fix for https://bugs.webkit.org/show_bug.cgi?id=38059
   44267         Merge mac and win DrawingAreaUpdateChunk implementations.
   44268 
   44269         * UIProcess/win/DrawingAreaProxy.cpp:
   44270         (WebKit::DrawingAreaProxy::didSetSize):
   44271         (WebKit::DrawingAreaProxy::didReceiveMessage):
   44272         * UIProcess/win/DrawingAreaProxy.h:
   44273         * WebKit2.xcodeproj/project.pbxproj:
   44274         * WebProcess/WebPage/DrawingAreaUpdateChunk.cpp: Copied from WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp.
   44275         (WebKit::DrawingAreaUpdateChunk::setSize):
   44276         * WebProcess/WebPage/DrawingAreaUpdateChunk.h: Copied from WebProcess/WebPage/mac/DrawingAreaUpdateChunk.h.
   44277         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp: Removed.
   44278         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.h: Removed.
   44279         * WebProcess/WebPage/mac/DrawingAreaUpdateChunkMac.cpp: Copied from WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp.
   44280         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp: Removed.
   44281         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.h: Removed.
   44282         * WebProcess/WebPage/win/DrawingAreaUpdateChunkWin.cpp: Copied from WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp.
   44283         (WebKit::DrawingAreaUpdateChunk::paintIntoUpdateChunk):
   44284         * win/WebKit2.vcproj:
   44285 
   44286 2010-04-23  Anders Carlsson  <andersca (a] apple.com>
   44287 
   44288         Reviewed by Sam Weinig.
   44289 
   44290         Remove an assert. (It's not valid when resizing).
   44291 
   44292         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp:
   44293         (WebKit::DrawingAreaUpdateChunk::didUpdate):
   44294 
   44295 2010-04-23  Anders Carlsson  <andersca (a] apple.com>
   44296 
   44297         Fix build.
   44298 
   44299         * UIProcess/win/DrawingAreaProxy.cpp:
   44300         (WebKit::DrawingAreaProxy::paint):
   44301         (WebKit::DrawingAreaProxy::setSize):
   44302         (WebKit::DrawingAreaProxy::didReceiveMessage):
   44303         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp:
   44304         (WebKit::DrawingAreaUpdateChunk::setSize):
   44305         (WebKit::DrawingAreaUpdateChunk::didReceiveMessage):
   44306 
   44307 2010-04-22  Anders Carlsson  <andersca (a] apple.com>
   44308 
   44309         Reviewed by Sam Weinig.
   44310 
   44311         Remove an assert. (It's not valid when resizing).
   44312 
   44313         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
   44314         (WebKit::DrawingAreaUpdateChunk::didUpdate):
   44315 
   44316 2010-04-22  Sam Weinig  <sam (a] webkit.org>
   44317 
   44318         Reviewed by Anders Carlsson.
   44319 
   44320         Merge the prefix headers.
   44321 
   44322         * Configurations/BaseTarget.xcconfig:
   44323         * WebKit2.xcodeproj/project.pbxproj:
   44324         * WebKit2Prefix.h:
   44325         * WebKit2_Prefix.pch: Removed.
   44326 
   44327 2010-04-22  Anders Carlsson  <andersca (a] apple.com>
   44328 
   44329         Reviewed by Sam Weinig.
   44330 
   44331         Don't pass the new size when calling didSetSize, it's possible to get
   44332         the size from the update chunk.
   44333 
   44334         * UIProcess/mac/DrawingAreaProxyUpdateChunk.h:
   44335         * UIProcess/mac/DrawingAreaProxyUpdateChunk.mm:
   44336         (WebKit::DrawingAreaProxyUpdateChunk::didSetSize):
   44337         (WebKit::DrawingAreaProxyUpdateChunk::didReceiveMessage):
   44338         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
   44339         (WebKit::DrawingAreaUpdateChunk::setSize):
   44340 
   44341 2010-04-22  Anders Carlsson  <andersca (a] apple.com>
   44342 
   44343         Reviewed by Sam Weinig.
   44344 
   44345         Rename SetFrame and DidSetFrame to SetSize and DidSetSize.
   44346 
   44347         * Shared/CoreIPCSupport/DrawingAreaMessageKinds.h:
   44348         (DrawingAreaMessage::):
   44349         * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h:
   44350         (DrawingAreaProxyMessage::):
   44351         * UIProcess/mac/DrawingAreaProxyUpdateChunk.mm:
   44352         (WebKit::DrawingAreaProxyUpdateChunk::drawRectIntoContext):
   44353         (WebKit::DrawingAreaProxyUpdateChunk::setSize):
   44354         (WebKit::DrawingAreaProxyUpdateChunk::didReceiveMessage):
   44355         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
   44356         (WebKit::DrawingAreaUpdateChunk::setSize):
   44357         (WebKit::DrawingAreaUpdateChunk::didReceiveMessage):
   44358 
   44359 2010-04-22  Sam Weinig  <sam (a] webkit.org>
   44360 
   44361         Reviewed by Anders Carlsson.
   44362 
   44363         Fix for https://bugs.webkit.org/show_bug.cgi?id=38002
   44364         Add rudimentary statistics gathering for WebKit2
   44365 
   44366         * UIProcess/API/C/WKContext.cpp:
   44367         (WKContextGetStatistics):
   44368         * UIProcess/API/C/WKContextPrivate.h: Copied from WebKit2/UIProcess/API/C/WKContext.h.
   44369         * UIProcess/API/C/WKPageNamespace.cpp:
   44370         (WKPageNamespaceGetContext):
   44371         * UIProcess/API/C/WKPageNamespace.h:
   44372         * UIProcess/WebContext.cpp:
   44373         (WebKit::WebContext::getStatistics):
   44374         * UIProcess/WebContext.h:
   44375         * UIProcess/WebPageNamespace.cpp:
   44376         (WebKit::WebPageNamespace::getStatistics):
   44377         * UIProcess/WebPageNamespace.h:
   44378         * UIProcess/WebPageProxy.cpp:
   44379         (WebKit::WebPageProxy::getStatistics):
   44380         * UIProcess/WebPageProxy.h:
   44381         * UIProcess/WebProcessProxy.cpp:
   44382         (WebKit::WebProcessProxy::numberOfPages):
   44383         * UIProcess/WebProcessProxy.h:
   44384         * WebKit2.xcodeproj/project.pbxproj:
   44385         * win/WebKit2.vcproj:
   44386 
   44387 2010-04-20  Anders Carlsson  <andersca (a] apple.com>
   44388 
   44389         Reviewed by Sam Weinig.
   44390 
   44391         Don't paint the web page before we've blit the last update chunk to the backing store.
   44392 
   44393         * UIProcess/win/DrawingAreaProxy.cpp:
   44394         (WebKit::DrawingAreaProxy::update):
   44395         (WebKit::DrawingAreaProxy::didReceiveMessage):
   44396         * UIProcess/win/DrawingAreaProxy.h:
   44397         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp:
   44398         (WebKit::DrawingAreaUpdateChunk::DrawingAreaUpdateChunk):
   44399         (WebKit::DrawingAreaUpdateChunk::display):
   44400         (WebKit::DrawingAreaUpdateChunk::scheduleDisplay):
   44401         (WebKit::DrawingAreaUpdateChunk::setSize):
   44402         (WebKit::DrawingAreaUpdateChunk::didUpdate):
   44403         (WebKit::DrawingAreaUpdateChunk::didReceiveMessage):
   44404         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.h:
   44405 
   44406 2010-04-20  Anders Carlsson  <andersca (a] apple.com>
   44407 
   44408         Fix build.
   44409 
   44410         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   44411         (WebKit::WebFrameLoaderClient::receivedData):
   44412 
   44413 2010-04-20  Anders Carlsson  <andersca (a] apple.com>
   44414 
   44415         Reviewed by Sam Weinig.
   44416 
   44417         Don't paint the web page before we've blit the last update chunk to the backing store
   44418         https://bugs.webkit.org/show_bug.cgi?id=37896
   44419 
   44420         * Shared/CoreIPCSupport/DrawingAreaMessageKinds.h:
   44421         (DrawingAreaMessage::):
   44422         * UIProcess/mac/DrawingAreaProxyUpdateChunk.h:
   44423         * UIProcess/mac/DrawingAreaProxyUpdateChunk.mm:
   44424         (WebKit::DrawingAreaProxyUpdateChunk::drawUpdateChunkIntoBackingStore):
   44425         (WebKit::DrawingAreaProxyUpdateChunk::update):
   44426         (WebKit::DrawingAreaProxyUpdateChunk::didReceiveMessage):
   44427         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
   44428         (WebKit::DrawingAreaUpdateChunk::DrawingAreaUpdateChunk):
   44429         (WebKit::DrawingAreaUpdateChunk::display):
   44430         (WebKit::DrawingAreaUpdateChunk::scheduleDisplay):
   44431         (WebKit::DrawingAreaUpdateChunk::setSize):
   44432         (WebKit::DrawingAreaUpdateChunk::didUpdate):
   44433         (WebKit::DrawingAreaUpdateChunk::didReceiveMessage):
   44434         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.h:
   44435 
   44436 2010-04-20  Anders Carlsson  <andersca (a] apple.com>
   44437 
   44438         Fix build.
   44439 
   44440         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   44441         (WebKit::WebChromeClient::chooseIconForFiles):
   44442         * WebProcess/WebCoreSupport/WebChromeClient.h:
   44443 
   44444 2010-04-19  Anders Carlsson  <andersca (a] apple.com>
   44445 
   44446         Fix build.
   44447 
   44448         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   44449         (WebKit::WebFrameLoaderClient::dispatchDidChangeIcons):
   44450         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
   44451 
   44452 2010-04-17  Sam Weinig  <weinig (a] apple.com>
   44453 
   44454         Reviewed by Jon "The Belly" Honeycutt.
   44455 
   44456         Remove the need for a .defs file! Define WK_EXPORT.
   44457 
   44458         * UIProcess/API/C/WKBase.h:
   44459         * WebProcess/win/WebProcessMain.h:
   44460         * win/WebKit2.def: Removed.
   44461         * win/WebKit2.vcproj:
   44462 
   44463 2010-04-17  Sam Weinig  <weinig (a] apple.com>
   44464 
   44465         Reviewed by Adam Roben.
   44466 
   44467         Teach windows MiniBrowser how to work with window.open()
   44468         and targeted links.
   44469 
   44470         Export WKPageSetPageUIClient.
   44471 
   44472         * win/WebKit2.def:
   44473 
   44474 2010-04-16  Sam Weinig  <sam (a] webkit.org>
   44475 
   44476         Reviewed by Anders Carlsson.
   44477 
   44478         Fix window.open() and targeted links.
   44479 
   44480         * UIProcess/WebPageProxy.cpp:
   44481         (WebKit::WebPageProxy::didReceiveSyncMessage): Pass in the new pageID
   44482         instead of 0.
   44483 
   44484         * WebProcess/WebProcess.cpp:
   44485         (WebKit::WebProcess::createWebPage): Allow for the page to have already
   44486         been created, as is the case with programmatic window opening from within
   44487         WebCore (e.g. window.open() or <a target="_blank">).
   44488 
   44489 2010-04-16  Sam Weinig  <sam (a] webkit.org>
   44490 
   44491         Reviewed by Mark Rowe.
   44492 
   44493         Don't optimize debug builds.
   44494 
   44495         * WebKit2.xcodeproj/project.pbxproj: Define GCC_OPTIMIZATION_LEVEL correctly.
   44496 
   44497 2010-04-16  Anders Carlsson  <andersca (a] apple.com>
   44498 
   44499         Fix build.
   44500 
   44501         * WebProcess/WebPage/WebPage.cpp:
   44502         (WebKit::WebPage::runJavaScriptInMainFrame):
   44503 
   44504 2010-04-16  Anders Carlsson  <andersca (a] apple.com>
   44505 
   44506         Reviewed by Sam Weinig.
   44507 
   44508         Fix windows build.
   44509 
   44510         * Platform/win/RunLoopWin.cpp:
   44511         (RunLoop::run):
   44512         * UIProcess/Launcher/win/WebProcessLauncher.cpp:
   44513         (WebKit::webThreadBody):
   44514         (WebKit::launchWebProcess):
   44515         * WebProcess/win/WebProcessMain.cpp:
   44516         (WebKit::WebProcessMain):
   44517 
   44518 2010-04-16  Sam Weinig  <weinig (a] apple.com>
   44519 
   44520         Reviewed by Anders Carlsson.
   44521 
   44522         Make resizing responsive on Windows.
   44523 
   44524         - Use the same waitFor logic as do for the Mac resizing
   44525           DrawingAreaUpdateChunk code.
   44526 
   44527         * Shared/win/UpdateChunk.cpp:
   44528         (WebKit::UpdateChunk::UpdateChunk):
   44529         * Shared/win/UpdateChunk.h:
   44530          Add a constructor that only takes an IntRect and allocates
   44531          the shared memory mapping for you.
   44532         * UIProcess/win/DrawingAreaProxy.cpp:
   44533         (WebKit::DrawingAreaProxy::DrawingAreaProxy):
   44534         (WebKit::DrawingAreaProxy::ensureBackingStore):
   44535         (WebKit::DrawingAreaProxy::paint):
   44536         (WebKit::DrawingAreaProxy::drawUpdateChunkIntoBackingStore):
   44537         (WebKit::DrawingAreaProxy::setSize):
   44538         (WebKit::DrawingAreaProxy::didSetSize):
   44539         (WebKit::DrawingAreaProxy::didReceiveMessage):
   44540         * UIProcess/win/DrawingAreaProxy.h:
   44541         Perform wait in paint as we do on the mac.
   44542 
   44543         * UIProcess/win/WebView.cpp:
   44544         (WebKit::WebView::onSizeEvent):
   44545         Change to use an IntSize.
   44546 
   44547         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp:
   44548         (WebKit::DrawingAreaUpdateChunk::paintIntoUpdateChunk):
   44549         (WebKit::DrawingAreaUpdateChunk::display):
   44550         (WebKit::DrawingAreaUpdateChunk::setSize):
   44551         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.h:
   44552         Specialize setSize() drawing and factor out painting
   44553         into a helper function.
   44554 
   44555 2010-04-16  Anders Carlsson  <andersca (a] apple.com>
   44556 
   44557         Reviewed by David Hyatt.
   44558 
   44559         Make run loops be allocated as thread specific data.
   44560         https://bugs.webkit.org/show_bug.cgi?id=37723
   44561 
   44562         * Platform/RunLoop.cpp:
   44563         (RunLoop::initializeMainRunLoop):
   44564         (RunLoop::current):
   44565         (RunLoop::main):
   44566         * Platform/RunLoop.h:
   44567         * Platform/mac/RunLoopMac.mm:
   44568         (RunLoop::run):
   44569         (RunLoop::stop):
   44570         * UIProcess/Launcher/mac/WebProcessLauncher.mm:
   44571         (WebKit::webThreadBody):
   44572         (WebKit::launchWebProcess):
   44573         * UIProcess/ResponsivenessTimer.cpp:
   44574         (WebKit::ResponsivenessTimer::ResponsivenessTimer):
   44575         * WebProcess/Launching/mac/WebProcessMain.mm:
   44576         (main):
   44577         * WebProcess/WebProcess.cpp:
   44578         (WebKit::WebProcess::isSeparateProcess):
   44579 
   44580 2010-04-16  Sam Weinig  <weinig (a] apple.com>
   44581 
   44582         Reviewed by Adam Roben.
   44583 
   44584         Use GDI text rendering on Windows by default.
   44585 
   44586         * WebProcess/WebPage/win/WebPageWin.cpp:
   44587         (WebKit::WebPage::platformInitialize): Use the AlternateRenderingMode
   44588         setting.
   44589 
   44590 2010-04-16  Sam Weinig  <weinig (a] apple.com>
   44591 
   44592         Reviewed by Adam Roben.
   44593 
   44594         Fix crash when trying to load an invalid URL.
   44595 
   44596         * WebProcess/WebPage/WebPage.cpp:
   44597         (WebKit::WebPage::loadURL): Use constructor for ResourceRequest
   44598         that takes a KURL instead of the one that takes a String. The one
   44599         that takes a string expects a valid URL.
   44600 
   44601 2010-04-16  Sam Weinig  <weinig (a] apple.com>
   44602 
   44603         Reviewed by Adam Roben.
   44604 
   44605         Make tooltips work. Thanks Adam!
   44606 
   44607         * UIProcess/win/WebView.cpp:
   44608         (WebKit::WebView::toolTipChanged): Pass the WebView's HWND, not the tooltip's.
   44609 
   44610 2010-04-15  Anders Carlsson  <andersca (a] apple.com>
   44611 
   44612         Reviewed by Adam Roben.
   44613 
   44614         Fix build dependencies.
   44615 
   44616         * WebKit2.sln:
   44617 
   44618 2010-04-15  Adam Roben  <aroben (a] apple.com>
   44619 
   44620         Fix Windows WebKit2 build.
   44621 
   44622         * UIProcess/WebPageProxy.cpp:
   44623         (WebKit::WebPageProxy::processDidExit):
   44624         * win/WebKit2Generated.make:
   44625 
   44626 2010-04-15  Sam Weinig  <sam (a] webkit.org>
   44627 
   44628         Reviewed by Anders Carlsson.
   44629 
   44630         Add WebHistoryClient support.
   44631         https://bugs.webkit.org/show_bug.cgi?id=37671
   44632 
   44633         Adds the following callbacks:
   44634             didNavigateWithNavigationData
   44635             didPerformClientRedirect
   44636             didPerformServerRedirect
   44637             didUpdateHistoryTitle
   44638 
   44639         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
   44640         (WebPageProxyMessage::):
   44641         * Shared/WebNavigationDataStore.h: Added.
   44642         * UIProcess/API/C/WKAPICast.h:
   44643         * UIProcess/API/C/WKBase.h:
   44644         * UIProcess/API/C/WKNavigationData.cpp: Added.
   44645         * UIProcess/API/C/WKNavigationData.h: Added.
   44646         * UIProcess/API/C/WKPage.cpp:
   44647         * UIProcess/API/C/WKPage.h:
   44648         * UIProcess/API/C/WebKit2.h:
   44649         * UIProcess/WebHistoryClient.cpp: Copied from UIProcess/WebUIClient.cpp.
   44650         * UIProcess/WebHistoryClient.h: Copied from UIProcess/WebUIClient.h.
   44651         * UIProcess/WebNavigationData.cpp: Added.
   44652         * UIProcess/WebNavigationData.h: Added.
   44653         * UIProcess/WebPageProxy.cpp:
   44654         * UIProcess/WebPageProxy.h:
   44655         * WebKit2.xcodeproj/project.pbxproj:
   44656         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   44657         * win/WebKit2.vcproj:
   44658 
   44659 2010-04-15  Sam Weinig  <sam (a] webkit.org>
   44660 
   44661         Reviewed by Adam Roben.
   44662 
   44663         Remove empty file configurations.
   44664 
   44665         * win/WebKit2.vcproj:
   44666 
   44667 2010-04-15  Sam Weinig  <sam (a] webkit.org>
   44668 
   44669         Reviewed by Anders Carlsson.
   44670 
   44671         Fix WebKit2s build. Don't return temporaries.
   44672 
   44673         * UIProcess/API/C/cf/WKStringCF.cpp:
   44674         (WKStringCreateWithCFString):
   44675         * UIProcess/API/C/cf/WKURLCF.cpp:
   44676         (WKURLCreateWithCFURL):
   44677         (WKURLCopyCFURL):
   44678 
   44679 2010-04-12  Geoffrey Garen  <ggaren (a] apple.com>
   44680 
   44681         Reviewed by Anders Carlsson.
   44682 
   44683         Fixed complexity and performance FIXME created by using KURL in the UI
   44684         process -- it turned out that everywhere we were using KURL, we could
   44685         have just used String instead. (That's how Windows WebKit works, too.)
   44686 
   44687         I kept WKURLRef and WKStringRef distinct opaque types in the API for now,
   44688         though, since there may be profit in changing their backing stores in the
   44689         future, and it's nice for the API to encode a difference between generic
   44690         strings and strings that are valid, canonical URLs.
   44691 
   44692         * Shared/KURLWrapper.h: Removed. Yay!
   44693 
   44694         * Shared/WebCoreTypeArgumentMarshalling.h: Nixed KURL marshalling functions.
   44695         Old callers marshal Strings now, instead. (This is what KURL was doing
   44696         under the covers, anyway.)
   44697 
   44698         * UIProcess/API/C/WKAPICast.h:
   44699         (toWK): Backed by StringImpl* now.
   44700         (toURLRef): Added a disambiguating function for specifying that you want
   44701         a WKURLRef, since StringImpl* converts to WKStringRef by default.
   44702 
   44703         * UIProcess/API/C/WKFrame.cpp:
   44704         (WKFrameGetProvisionalURL):
   44705         (WKFrameGetURL):
   44706         * UIProcess/API/C/WKPage.cpp:
   44707         (WKPageLoadURL):
   44708         * UIProcess/API/C/WKURL.cpp:
   44709         * UIProcess/API/C/cf/WKURLCF.cpp:
   44710         (WKURLCreateWithCFURL):
   44711         (WKURLCopyCFURL):
   44712         * UIProcess/WebFrameProxy.cpp:
   44713         (WebKit::WebFrameProxy::didStartProvisionalLoad):
   44714         (WebKit::WebFrameProxy::didCommitLoad):
   44715         * UIProcess/WebFrameProxy.h:
   44716         (WebKit::WebFrameProxy::url):
   44717         (WebKit::WebFrameProxy::provisionalURL):
   44718         * UIProcess/WebPageProxy.cpp:
   44719         (WebKit::WebPageProxy::loadURL):
   44720         (WebKit::WebPageProxy::didReceiveMessage):
   44721         (WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
   44722         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
   44723         (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
   44724         (WebKit::WebPageProxy::decidePolicyForMIMEType):
   44725         (WebKit::WebPageProxy::processDidExit):
   44726         * UIProcess/WebPageProxy.h:
   44727         (WebKit::WebPageProxy::urlAtProcessExit):
   44728         * UIProcess/WebPolicyClient.cpp:
   44729         (WebKit::WebPolicyClient::decidePolicyForNavigationAction):
   44730         (WebKit::WebPolicyClient::decidePolicyForNewWindowAction):
   44731         (WebKit::WebPolicyClient::decidePolicyForMIMEType):
   44732         * UIProcess/WebPolicyClient.h:
   44733         * WebKit2.xcodeproj/project.pbxproj:
   44734         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   44735         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
   44736         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
   44737         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
   44738         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
   44739         * WebProcess/WebPage/WebPage.cpp:
   44740         (WebKit::WebPage::loadURL):
   44741         (WebKit::WebPage::didReceiveMessage):
   44742         * WebProcess/WebPage/WebPage.h: Replaced KURL / KURLWrapper with String.
   44743 
   44744 2010-04-14  Anders Carlsson  <andersca (a] apple.com>
   44745 
   44746         Reviewed by Sam Weinig.
   44747 
   44748         Fix horizontal scrollbar repainting
   44749         https://bugs.webkit.org/show_bug.cgi?id=37626
   44750 
   44751         Make sure that the update chunk is flipped because that's what WebCore expects.
   44752         
   44753         * Shared/mac/UpdateChunk.cpp:
   44754         (WebKit::UpdateChunk::createImage):
   44755         * Shared/mac/UpdateChunk.h:
   44756         Add new createImage member function that creates a CGImageRef from the update chunk.
   44757         
   44758         * UIProcess/mac/DrawingAreaProxyUpdateChunk.mm:
   44759         (WebKit::DrawingAreaProxyUpdateChunk::drawUpdateChunkIntoBackingStore):
   44760         Pass the right rectangle here; CoreGraphics wants it in non-flipped coordinates.
   44761         
   44762         (WebKit::DrawingAreaProxyUpdateChunk::ensureBackingStore):
   44763         Create a flipped backing store.
   44764 
   44765         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
   44766         (WebKit::DrawingAreaUpdateChunk::paintIntoUpdateChunk):
   44767         Flip the update chunk.
   44768 
   44769 2010-04-14  Sam Weinig  <sam (a] webkit.org>
   44770 
   44771         Reviewed by Anders Carlsson.
   44772 
   44773         Add WKRetainPtr helper class as private header
   44774         https://bugs.webkit.org/show_bug.cgi?id=37603
   44775 
   44776         WKRetainPtr is just like RetainPtr, but works for WK types instead of
   44777         CF/NS types.
   44778 
   44779         * UIProcess/API/cpp: Added.
   44780         * UIProcess/API/cpp/WKRetainPtr.h: Added.
   44781         * WebKit2.xcodeproj/project.pbxproj: Add new file.
   44782         * win/WebKit2.vcproj: Ditto.
   44783 
   44784 2010-04-14  Sam Weinig  <sam (a] webkit.org>
   44785 
   44786         Reviewed by Anders Carlsson.
   44787 
   44788         Make the WebProcess a LSUIElement to suppress its icon from the Dock.
   44789 
   44790         * WebKit2.xcodeproj/project.pbxproj:
   44791         * WebProcess/Info.plist:
   44792 
   44793 2010-04-14  Anders Carlsson  <andersca (a] apple.com>
   44794 
   44795         Reviewed by Sam Weinig.
   44796 
   44797         Factor code to paint into an update chunk out into a separate function.
   44798         https://bugs.webkit.org/show_bug.cgi?id=37594
   44799 
   44800         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
   44801         (WebKit::DrawingAreaUpdateChunk::paintIntoUpdateChunk):
   44802         (WebKit::DrawingAreaUpdateChunk::display):
   44803         (WebKit::DrawingAreaUpdateChunk::setSize):
   44804         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.h:
   44805 
   44806 2010-04-13  Sam Weinig  <sam (a] webkit.org>
   44807 
   44808         Reviewed by Anders Carlsson.
   44809 
   44810         Fix reported leaks when quitting MiniBrowser with open pages.
   44811 
   44812         * WebProcess/WebPage/WebPage.h: Make close() public.
   44813         * WebProcess/WebProcess.cpp:
   44814         (WebKit::WebProcess::WebProcess):
   44815         (WebKit::WebProcess::removeWebPage):
   44816         (WebKit::WebProcess::didClose): If the UIProcess disappears, close
   44817         the live pages in an effort to not leak.
   44818         * WebProcess/WebProcess.h:
   44819 
   44820 2010-04-13  Sam Weinig  <sam (a] webkit.org>
   44821 
   44822         Reviewed by Anders Carlsson.
   44823 
   44824         Do a JS collection and clear the memory cache to improve leaks output
   44825         when exiting. Only do this in debug builds as it is slow.
   44826 
   44827         * UIProcess/API/mac/WKView.h:
   44828         * UIProcess/WebProcessProxy.cpp:
   44829         * WebProcess/WebPage/WebPage.cpp:
   44830         * WebProcess/WebProcess.cpp:
   44831         (WebKit::WebProcess::shutdown):
   44832         (WebKit::WebProcess::didClose):
   44833 
   44834 2010-04-13  Sam Weinig  <sam (a] webkit.org>
   44835 
   44836         Reviewed by Adele Peterson.
   44837 
   44838         Post a null event after calling [NSApp stop] to flush the run loop
   44839         and finish teardown.
   44840 
   44841         * Platform/mac/RunLoopMac.mm:
   44842         (RunLoop::stop):
   44843 
   44844 2010-04-12  Sam Weinig  <sam (a] webkit.org>
   44845 
   44846         Reviewed by Anders Carlsson.
   44847 
   44848         Add #ifdef so that WKView is not included on the mac if not
   44849         compiling objective-c.
   44850 
   44851         * UIProcess/API/C/WebKit2.h:
   44852 
   44853 2010-04-12  Anders Carlsson  <andersca (a] apple.com>
   44854 
   44855         Reviewed by Adam Roben.
   44856 
   44857         Add WebKit2 solution file.
   44858 
   44859         * WebKit2.sln: Added.
   44860 
   44861 2010-04-11  Sam Weinig  <sam (a] webkit.org>
   44862 
   44863         Reviewed by Darin Adler.
   44864 
   44865         Fix for https://bugs.webkit.org/show_bug.cgi?id=37417
   44866         Move duplicated internal CoreIPC message kinds to a
   44867         header.
   44868 
   44869         * Platform/CoreIPC/Connection.cpp:
   44870         (CoreIPC::Connection::processIncomingMessage):
   44871         * Platform/CoreIPC/CoreIPCMessageKinds.h: Added.
   44872         (CoreIPC::CoreIPCMessage::):
   44873         (CoreIPC::):
   44874         * Platform/CoreIPC/mac/ConnectionMac.cpp:
   44875         * WebKit2.xcodeproj/project.pbxproj:
   44876         * win/WebKit2.vcproj:
   44877 
   44878 2010-04-11  Sam Weinig  <sam (a] webkit.org>
   44879 
   44880         Rubber-stamped by Anders Carlsson.
   44881 
   44882         Disable not-implemented warnings by default for now.
   44883 
   44884         * Shared/NotImplemented.h:
   44885 
   44886 2010-04-10  Sam Weinig  <sam (a] webkit.org>
   44887 
   44888         Reviewed by Anders Carlsson.
   44889 
   44890         Fix for https://bugs.webkit.org/show_bug.cgi?id=37399
   44891         Remove use of STL data structures from CoreIPC code
   44892 
   44893         * Platform/CoreIPC/ArgumentDecoder.cpp:
   44894         (CoreIPC::ArgumentDecoder::ArgumentDecoder):
   44895         (CoreIPC::ArgumentDecoder::decodeBytes):
   44896         (CoreIPC::ArgumentDecoder::removeAttachment):
   44897         * Platform/CoreIPC/ArgumentDecoder.h:
   44898         Use WTF::Deque instead of std::queue and WTF::Vector
   44899         instead of std::vector. Replace use of malloc/free with 
   44900         fastMalloc/fastFree.
   44901 
   44902         * Platform/CoreIPC/ArgumentEncoder.cpp:
   44903         (CoreIPC::ArgumentEncoder::addAttachment):
   44904         (CoreIPC::ArgumentEncoder::releaseAttachments):
   44905         * Platform/CoreIPC/ArgumentEncoder.h:
   44906         Use WTF::Vector instead of std::list. Replace use of malloc/free
   44907         with fastMalloc/fastFree.
   44908 
   44909         * Platform/CoreIPC/Connection.cpp:
   44910         (CoreIPC::Connection::sendMessage):
   44911         (CoreIPC::Connection::waitForMessage):
   44912         (CoreIPC::Connection::processIncomingMessage):
   44913         (CoreIPC::Connection::sendOutgoingMessages):
   44914         (CoreIPC::Connection::dispatchMessages):
   44915         * Platform/CoreIPC/Connection.h:
   44916         * Platform/CoreIPC/mac/ConnectionMac.cpp:
   44917         (CoreIPC::Connection::sendOutgoingMessage):
   44918         (CoreIPC::createArgumentDecoder):
   44919         Use WTF::Vector instead of std::queue.
   44920 
   44921         * Platform/RunLoop.cpp:
   44922         (RunLoop::performWork):
   44923         (RunLoop::scheduleWork):
   44924         * Platform/RunLoop.h:
   44925         Ditto.
   44926 
   44927         * Platform/WorkQueue.h:
   44928         * Platform/win/WorkQueueWin.cpp:
   44929         (WorkQueue::scheduleWork):
   44930         (WorkQueue::performWork):
   44931         Ditto.
   44932 
   44933 2010-04-10  Mark Rowe  <mrowe (a] apple.com>
   44934 
   44935         Fix an obviously incorrect part of the Xcode configuration cleanup that resulted in debug builds
   44936         asserting shortly after launch.
   44937 
   44938         * WebKit2.xcodeproj/project.pbxproj: Fix the setting of DEBUG_DEFINES for the Debug configuration.
   44939 
   44940 2010-04-09  Mark Rowe  <mrowe (a] apple.com>
   44941 
   44942         Reviewed by Sam Weinig.
   44943 
   44944         Bring the WebKit2 Xcode configuration in to sync with recent changes to the WebKit Xcode configuration files.
   44945 
   44946         In particular, this updates the FEATURE_DEFINES to match those used in the other projects, and brings in
   44947         the changes to support building WebKit for older Mac OS X versions from the current Mac OS X version.
   44948 
   44949         * Configurations/Base.xcconfig:
   44950         * Configurations/DebugRelease.xcconfig:
   44951         * Configurations/FeatureDefines.xcconfig:
   44952         * Configurations/Version.xcconfig:
   44953 
   44954 2010-04-09  Mark Rowe  <mrowe (a] apple.com>
   44955 
   44956         Reviewed by Sam Weinig.
   44957 
   44958         Clean up the Xcode project configuration.
   44959 
   44960         Common target settings are pulled out in to BaseTarget.xcconfig.  The majority of setting overrides are
   44961         removed from the Xcode project itself.  Info.plist files are updated to match those used in other frameworks.
   44962 
   44963         * Configurations/BaseTarget.xcconfig: Copied from WebKit2/Configurations/WebKit2.xcconfig.
   44964         * Configurations/WebKit2.xcconfig:
   44965         * Configurations/WebProcess.xcconfig: Copied from WebKit2/Configurations/WebKit2.xcconfig.
   44966         * Info.plist:
   44967         * WebKit2.xcodeproj/project.pbxproj:
   44968         * WebProcess-Info.plist: Removed.
   44969         * WebProcess/Info.plist: Moved from WebProcess-Info.plist.
   44970 
   44971 2010-04-09  Mark Rowe  <mrowe (a] apple.com>
   44972 
   44973         Build fix.
   44974 
   44975         * WebProcess/WebCoreSupport/mac/WebSystemInterface.m:
   44976         (InitWebCoreSystemInterface): Update for recent WKSI changes.
   44977 
   44978 2010-04-09  Sam Weinig  <sam (a] webkit.org>
   44979 
   44980         Reviewed by Darin Adler.
   44981 
   44982         Fix for https://bugs.webkit.org/show_bug.cgi?id=37351
   44983         Cannot build with build-webkit --webkit2
   44984 
   44985         Add some headers that it seems others are not getting
   44986         already.
   44987 
   44988         * Platform/mac/WorkQueueMac.cpp: #inlude <mach/mach_port.h>
   44989         * Shared/mac/UpdateChunk.cpp: #inlude <mach/vm_map.h>
   44990 
   44991 2010-04-09  Anders Carlsson  <andersca (a] apple.com>
   44992 
   44993         More build fixes.
   44994         
   44995         * WebProcess/win/WebProcessMain.h:
   44996         Include windows.h here.
   44997         
   44998         * win/WebKit2.def:
   44999         Add new exports.
   45000 
   45001         * win/WebKit2.vcproj:
   45002         Add new files.
   45003 
   45004 2010-04-09  Sam Weinig  <sam (a] webkit.org>
   45005 
   45006         Reviewed by Anders Carlsson.
   45007 
   45008         Add new WKString.h and WKURL.h headers to top
   45009         level include.
   45010 
   45011         * UIProcess/API/C/WebKit2.h:
   45012 
   45013 2010-04-09  Anders Carlsson  <andersca (a] apple.com>
   45014 
   45015         More Windows build fixes.
   45016         
   45017         * Shared/NotImplemented.h:
   45018         * UIProcess/API/C/cf/WKURLCF.cpp:
   45019         Fix typo.
   45020         
   45021         (WKURLCreateWithCFURL):
   45022         * UIProcess/API/C/cf/WKURLCF.h:
   45023         Ditto.
   45024         
   45025         * win/WebKit2Generated.make:
   45026         Copy the new CF headers.
   45027 
   45028 2010-04-09  Sam Weinig  <sam (a] webkit.org>
   45029 
   45030         Reviewed by Anders Carlsson.
   45031 
   45032         Two more #include sorting issues.
   45033 
   45034         * Shared/NotImplemented.h:
   45035         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp:
   45036 
   45037 2010-04-09  Sam Weinig  <sam (a] webkit.org>
   45038 
   45039         Reviewed by Anders Carlsson.
   45040 
   45041         Fix minor style nits found by the style-script.
   45042 
   45043         * Platform/CoreIPC/ArgumentDecoder.h:
   45044         * Platform/CoreIPC/ArgumentEncoder.cpp:
   45045         * Platform/CoreIPC/Attachment.cpp:
   45046         * Platform/CoreIPC/Connection.cpp:
   45047         * Platform/CoreIPC/Connection.h:
   45048         * Platform/CoreIPC/mac/ConnectionMac.cpp:
   45049         * Platform/CoreIPC/win/ConnectionWin.cpp:
   45050         * Platform/WorkQueue.h:
   45051         * Platform/mac/WorkQueueMac.cpp:
   45052         * Platform/win/RunLoopWin.cpp:
   45053         * Shared/KURLWrapper.h:
   45054         * Shared/WebCoreTypeArgumentMarshalling.h:
   45055         * Shared/mac/UpdateChunk.cpp:
   45056         * UIProcess/API/C/WKPage.cpp:
   45057         * UIProcess/API/C/WKURL.cpp:
   45058         * UIProcess/Launcher/win/WebProcessLauncher.cpp:
   45059         * UIProcess/ResponsivenessTimer.cpp:
   45060         * UIProcess/WebLoaderClient.cpp:
   45061         * UIProcess/WebPageProxy.h:
   45062         * UIProcess/WebPolicyClient.cpp:
   45063         * UIProcess/WebUIClient.cpp:
   45064         * UIProcess/win/DrawingAreaProxy.cpp:
   45065         * UIProcess/win/WebView.cpp:
   45066         * WebProcess/Launching/win/WebProcessWinMain.cpp:
   45067         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
   45068         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   45069         * WebProcess/WebCoreSupport/mac/WebSystemInterface.h:
   45070         * WebProcess/WebCoreSupport/win/WebCoreLocalizedStrings.cpp:
   45071         * WebProcess/WebCoreSupport/win/WebErrorsWin.cpp:
   45072         * WebProcess/WebPage/WebFrame.h:
   45073         * WebProcess/WebPage/WebPage.cpp:
   45074         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
   45075         * WebProcess/WebProcess.h:
   45076         * WebProcess/win/WebLocalizableStrings.cpp:
   45077         * WebProcess/win/WebLocalizableStrings.h:
   45078         * WebProcess/win/WebProcessMain.cpp:
   45079 
   45080 2010-04-09  Anders Carlsson  <andersca (a] apple.com>
   45081 
   45082         Fix Windows build.
   45083 
   45084         * Shared/NotImplemented.h:
   45085         Include stdio.h.
   45086 
   45087 2010-04-09  Sam Weinig  <sam (a] webkit.org>
   45088 
   45089         Reviewed by Anders Carlsson.
   45090 
   45091         Fix for https://bugs.webkit.org/show_bug.cgi?id=37347
   45092         Don't use CF types in the new C API
   45093 
   45094         Replace all uses of CF types in the C API.
   45095         - Replace CFStringRef with WKStringRef.
   45096         - Replace CFURLRef with WKURLRef.
   45097 
   45098         * WebKit2.xcodeproj/project.pbxproj: Add new files.
   45099 
   45100         * Shared/KURLWrapper.h: Added. RefCounted wrapper around KURL.
   45101         * UIProcess/API/C/WKAPICast.h: Add new conversions.
   45102         * UIProcess/API/C/WKBase.h: Add new types.
   45103         * UIProcess/API/C/WKFrame.cpp:
   45104         * UIProcess/API/C/WKFrame.h: 
   45105         * UIProcess/API/C/WKPage.cpp:
   45106         * UIProcess/API/C/WKPage.h:
   45107         Replace uses of CF types with WK equivalents.
   45108 
   45109         * UIProcess/API/C/WKString.cpp: Added.
   45110         * UIProcess/API/C/WKString.h: Added.
   45111         Represents a WebCore::StringImpl*.
   45112 
   45113         * UIProcess/API/C/WKURL.cpp: Added.
   45114         * UIProcess/API/C/WKURL.h: Added.
   45115         Represents a WebKit::KURLWrapper*.
   45116 
   45117         * UIProcess/API/C/cf: Added.
   45118         * UIProcess/API/C/cf/WKStringCF.cpp: Added.
   45119         * UIProcess/API/C/cf/WKStringCF.h: Added.
   45120         * UIProcess/API/C/cf/WKURLCF.cpp: Added.
   45121         * UIProcess/API/C/cf/WKURLCF.h: Added.
   45122         CoreFoundation conversion files. Allows converting
   45123          WKStringRef <-> CFStringRef
   45124          WKURLRef <-> CFURLRef
   45125 
   45126         * UIProcess/ScriptReturnValueCallback.cpp:
   45127         (WebKit::ScriptReturnValueCallback::performCallbackWithReturnValue):
   45128         * UIProcess/ScriptReturnValueCallback.h:
   45129         * UIProcess/WebFrameProxy.cpp:
   45130         (WebKit::WebFrameProxy::didStartProvisionalLoad):
   45131         (WebKit::WebFrameProxy::didCommitLoad):
   45132         * UIProcess/WebFrameProxy.h:
   45133         (WebKit::WebFrameProxy::url):
   45134         (WebKit::WebFrameProxy::provisionalURL):
   45135         * UIProcess/WebLoaderClient.cpp:
   45136         (WebKit::WebLoaderClient::didReceiveTitleForFrame):
   45137         * UIProcess/WebLoaderClient.h:
   45138         * UIProcess/WebPageProxy.cpp:
   45139         (WebKit::WebPageProxy::close):
   45140         (WebKit::WebPageProxy::didReceiveTitleForFrame):
   45141         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
   45142         (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
   45143         (WebKit::WebPageProxy::decidePolicyForMIMEType):
   45144         (WebKit::WebPageProxy::runJavaScriptAlert):
   45145         (WebKit::WebPageProxy::didRunJavaScriptInMainFrame):
   45146         (WebKit::WebPageProxy::processDidExit):
   45147         * UIProcess/WebPageProxy.h:
   45148         (WebKit::WebPageProxy::pageTitle):
   45149         (WebKit::WebPageProxy::urlAtProcessExit):
   45150         * UIProcess/WebPolicyClient.cpp:
   45151         (WebKit::WebPolicyClient::decidePolicyForNavigationAction):
   45152         (WebKit::WebPolicyClient::decidePolicyForNewWindowAction):
   45153         (WebKit::WebPolicyClient::decidePolicyForMIMEType):
   45154         * UIProcess/WebPolicyClient.h:
   45155         * UIProcess/WebUIClient.cpp:
   45156         (WebKit::WebUIClient::runJavaScriptAlert):
   45157         * UIProcess/WebUIClient.h:
   45158         Don't use CF types internally at all.
   45159 
   45160         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
   45161         (WebKit::WebFrameLoaderClient::frameLoaderDestroyed):
   45162         Fix typo.
   45163 
   45164 2010-04-08  Sam Weinig  <sam (a] webkit.org>
   45165 
   45166         Reviewed by Anders Carlsson.
   45167 
   45168         Add build support for WebKit2.
   45169 
   45170         * Configurations: Added.
   45171         * Configurations/Base.xcconfig: Added.
   45172         * Configurations/DebugRelease.xcconfig: Added.
   45173         * Configurations/FeatureDefines.xcconfig: Added.
   45174         * Configurations/Version.xcconfig: Added.
   45175         * Configurations/WebKit2.xcconfig: Added.
   45176         * English.lproj: Added.
   45177         * English.lproj/InfoPlist.strings: Added.
   45178         * Info.plist: Added.
   45179         * Makefile: Added.
   45180         * WebKit2.xcodeproj: Added.
   45181         * WebKit2.xcodeproj/project.pbxproj: Added.
   45182         * WebKit2Prefix.cpp: Added.
   45183         * WebKit2Prefix.h: Added.
   45184         * WebKit2_Prefix.pch: Added.
   45185         * WebProcess-Info.plist: Added.
   45186         * version.plist: Added.
   45187         * win: Added.
   45188         * win/WebKit2.def: Added.
   45189         * win/WebKit2.vcproj: Added.
   45190         * win/WebKit2Generated.make: Added.
   45191         * win/WebKit2Generated.vcproj: Added.
   45192         * win/WebKit2WebProcess.vcproj: Added.
   45193 
   45194 2010-04-08  Anders Carlsson  <andersca (a] apple.com>
   45195 
   45196         Reviewed by Sam Weinig.
   45197 
   45198         https://bugs.webkit.org/show_bug.cgi?id=37301
   45199         Add WebKit2/UIProcess directory.
   45200 
   45201         * UIProcess: Added.
   45202         * UIProcess/API: Added.
   45203         * UIProcess/API/C: Added.
   45204         * UIProcess/API/C/WKAPICast.h: Added.
   45205         * UIProcess/API/C/WKBase.h: Added.
   45206         * UIProcess/API/C/WKContext.cpp: Added.
   45207         * UIProcess/API/C/WKContext.h: Added.
   45208         * UIProcess/API/C/WKFrame.cpp: Added.
   45209         * UIProcess/API/C/WKFrame.h: Added.
   45210         * UIProcess/API/C/WKFramePolicyListener.cpp: Added.
   45211         * UIProcess/API/C/WKFramePolicyListener.h: Added.
   45212         * UIProcess/API/C/WKPage.cpp: Added.
   45213         * UIProcess/API/C/WKPage.h: Added.
   45214         * UIProcess/API/C/WKPageNamespace.cpp: Added.
   45215         * UIProcess/API/C/WKPageNamespace.h: Added.
   45216         * UIProcess/API/C/WKPreferences.cpp: Added.
   45217         * UIProcess/API/C/WKPreferences.h: Added.
   45218         * UIProcess/API/C/WebKit2.h: Added.
   45219         * UIProcess/API/mac: Added.
   45220         * UIProcess/API/mac/PageClientImpl.h: Added.
   45221         * UIProcess/API/mac/PageClientImpl.mm: Added.
   45222         * UIProcess/API/mac/WKView.h: Added.
   45223         * UIProcess/API/mac/WKView.mm: Added.
   45224         * UIProcess/API/mac/WKViewInternal.h: Added.
   45225         * UIProcess/API/win: Added.
   45226         * UIProcess/API/win/WKAPICastWin.h: Added.
   45227         * UIProcess/API/win/WKBaseWin.h: Added.
   45228         * UIProcess/API/win/WKView.cpp: Added.
   45229         * UIProcess/API/win/WKView.h: Added.
   45230         * UIProcess/Launcher: Added.
   45231         * UIProcess/Launcher/WebProcessLauncher.h: Added.
   45232         * UIProcess/Launcher/mac: Added.
   45233         * UIProcess/Launcher/mac/WebProcessLauncher.mm: Added.
   45234         * UIProcess/Launcher/win: Added.
   45235         * UIProcess/Launcher/win/WebProcessLauncher.cpp: Added.
   45236         * UIProcess/PageClient.h: Added.
   45237         * UIProcess/ProcessModel.h: Added.
   45238         * UIProcess/ResponsivenessTimer.cpp: Added.
   45239         * UIProcess/ResponsivenessTimer.h: Added.
   45240         * UIProcess/ScriptReturnValueCallback.cpp: Added.
   45241         * UIProcess/ScriptReturnValueCallback.h: Added.
   45242         * UIProcess/WebContext.cpp: Added.
   45243         * UIProcess/WebContext.h: Added.
   45244         * UIProcess/WebFramePolicyListenerProxy.cpp: Added.
   45245         * UIProcess/WebFramePolicyListenerProxy.h: Added.
   45246         * UIProcess/WebFrameProxy.cpp: Added.
   45247         * UIProcess/WebFrameProxy.h: Added.
   45248         * UIProcess/WebLoaderClient.cpp: Added.
   45249         * UIProcess/WebLoaderClient.h: Added.
   45250         * UIProcess/WebPageNamespace.cpp: Added.
   45251         * UIProcess/WebPageNamespace.h: Added.
   45252         * UIProcess/WebPageProxy.cpp: Added.
   45253         * UIProcess/WebPageProxy.h: Added.
   45254         * UIProcess/WebPolicyClient.cpp: Added.
   45255         * UIProcess/WebPolicyClient.h: Added.
   45256         * UIProcess/WebPreferences.cpp: Added.
   45257         * UIProcess/WebPreferences.h: Added.
   45258         * UIProcess/WebProcessManager.cpp: Added.
   45259         * UIProcess/WebProcessManager.h: Added.
   45260         * UIProcess/WebProcessProxy.cpp: Added.
   45261         * UIProcess/WebProcessProxy.h: Added.
   45262         * UIProcess/WebUIClient.cpp: Added.
   45263         * UIProcess/WebUIClient.h: Added.
   45264         * UIProcess/mac: Added.
   45265         * UIProcess/mac/DrawingAreaProxy.h: Added.
   45266         * UIProcess/mac/DrawingAreaProxy.mm: Added.
   45267         * UIProcess/mac/DrawingAreaProxyUpdateChunk.h: Added.
   45268         * UIProcess/mac/DrawingAreaProxyUpdateChunk.mm: Added.
   45269         * UIProcess/win: Added.
   45270         * UIProcess/win/DrawingAreaProxy.cpp: Added.
   45271         * UIProcess/win/DrawingAreaProxy.h: Added.
   45272         * UIProcess/win/WebView.cpp: Added.
   45273         * UIProcess/win/WebView.h: Added.
   45274 
   45275 2010-04-08  Anders Carlsson  <andersca (a] apple.com>
   45276 
   45277         Reviewed by Sam Weinig and Oliver Hunt.
   45278 
   45279         https://bugs.webkit.org/show_bug.cgi?id=37300
   45280         Add WebKit2/WebProcess directory.
   45281 
   45282         * WebProcess: Added.
   45283         * WebProcess/Launching: Added.
   45284         * WebProcess/Launching/mac: Added.
   45285         * WebProcess/Launching/mac/WebProcessMain.mm: Added.
   45286         * WebProcess/Launching/win: Added.
   45287         * WebProcess/Launching/win/WebProcessWinMain.cpp: Added.
   45288         * WebProcess/WebCoreSupport: Added.
   45289         * WebProcess/WebCoreSupport/WebChromeClient.cpp: Added.
   45290         * WebProcess/WebCoreSupport/WebChromeClient.h: Added.
   45291         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp: Added.
   45292         * WebProcess/WebCoreSupport/WebContextMenuClient.h: Added.
   45293         * WebProcess/WebCoreSupport/WebDragClient.cpp: Added.
   45294         * WebProcess/WebCoreSupport/WebDragClient.h: Added.
   45295         * WebProcess/WebCoreSupport/WebEditorClient.cpp: Added.
   45296         * WebProcess/WebCoreSupport/WebEditorClient.h: Added.
   45297         * WebProcess/WebCoreSupport/WebErrors.h: Added.
   45298         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: Added.
   45299         * WebProcess/WebCoreSupport/WebInspectorClient.h: Added.
   45300         * WebProcess/WebCoreSupport/mac: Added.
   45301         * WebProcess/WebCoreSupport/mac/WebErrorsMac.mm: Added.
   45302         * WebProcess/WebCoreSupport/mac/WebSystemInterface.h: Added.
   45303         * WebProcess/WebCoreSupport/mac/WebSystemInterface.m: Added.
   45304         * WebProcess/WebCoreSupport/win: Added.
   45305         * WebProcess/WebCoreSupport/win/WebCoreLocalizedStrings.cpp: Added.
   45306         * WebProcess/WebCoreSupport/win/WebErrorsWin.cpp: Added.
   45307         * WebProcess/WebPage: Added.
   45308         * WebProcess/WebPage/DrawingArea.cpp: Added.
   45309         * WebProcess/WebPage/DrawingArea.h: Added.
   45310         * WebProcess/WebPage/WebFrame.cpp: Added.
   45311         * WebProcess/WebPage/WebFrame.h: Added.
   45312         * WebProcess/WebPage/WebPage.cpp: Added.
   45313         * WebProcess/WebPage/WebPage.h: Added.
   45314         * WebProcess/WebPage/mac: Added.
   45315         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp: Added.
   45316         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.h: Added.
   45317         * WebProcess/WebPage/mac/WebPageMac.mm: Added.
   45318         * WebProcess/WebPage/win: Added.
   45319         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp: Added.
   45320         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.h: Added.
   45321         * WebProcess/WebPage/win/WebPageWin.cpp: Added.
   45322         * WebProcess/WebProcess.cpp: Added.
   45323         * WebProcess/WebProcess.h: Added.
   45324         * WebProcess/win: Added.
   45325         * WebProcess/win/DllMain.cpp: Added.
   45326         * WebProcess/win/WebLocalizableStrings.cpp: Added.
   45327         * WebProcess/win/WebLocalizableStrings.h: Added.
   45328         * WebProcess/win/WebProcessMain.cpp: Added.
   45329         * WebProcess/win/WebProcessMain.h: Added.
   45330 
   45331 2010-04-08  Sam Weinig  <sam (a] webkit.org>
   45332 
   45333         Reviewed by Anders Carlsson.
   45334 
   45335         https://bugs.webkit.org/show_bug.cgi?id=37295
   45336         Add WebKit2/Shared directory.
   45337 
   45338         * Shared: Added.
   45339         * Shared/CoreIPCSupport: Added.
   45340         * Shared/CoreIPCSupport/DrawingAreaMessageKinds.h: Added.
   45341         * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h: Added.
   45342         * Shared/CoreIPCSupport/WebPageMessageKinds.h: Added.
   45343         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h: Added.
   45344         * Shared/CoreIPCSupport/WebProcessMessageKinds.h: Added.
   45345         * Shared/NotImplemented.h: Added.
   45346         * Shared/WebCoreTypeArgumentMarshalling.h: Added.
   45347         * Shared/WebEvent.h: Added.
   45348         * Shared/WebEventConversion.cpp: Added.
   45349         * Shared/WebEventConversion.h: Added.
   45350         * Shared/WebPreferencesStore.cpp: Added.
   45351         * Shared/WebPreferencesStore.h: Added.
   45352         * Shared/mac: Added.
   45353         * Shared/mac/UpdateChunk.cpp: Added.
   45354         * Shared/mac/UpdateChunk.h: Added.
   45355         * Shared/mac/WebEventFactory.h: Added.
   45356         * Shared/mac/WebEventFactory.mm: Added.
   45357         * Shared/win: Added.
   45358         * Shared/win/UpdateChunk.cpp: Added.
   45359         * Shared/win/UpdateChunk.h: Added.
   45360         * Shared/win/WebEventFactory.cpp: Added.
   45361         * Shared/win/WebEventFactory.h: Added.
   45362 
   45363 2010-04-08  Sam Weinig  <sam (a] webkit.org>
   45364 
   45365         Reviewed by Anders Carlsson.
   45366 
   45367         https://bugs.webkit.org/show_bug.cgi?id=37293
   45368         Add WebKit2/Platform directory.
   45369 
   45370         * Platform: Added.
   45371         * Platform/CoreIPC: Added.
   45372         * Platform/CoreIPC/ArgumentDecoder.cpp: Added.
   45373         * Platform/CoreIPC/ArgumentDecoder.h: Added.
   45374         * Platform/CoreIPC/ArgumentEncoder.cpp: Added.
   45375         * Platform/CoreIPC/ArgumentEncoder.h: Added.
   45376         * Platform/CoreIPC/Arguments.h: Added.
   45377         * Platform/CoreIPC/Attachment.cpp: Added.
   45378         * Platform/CoreIPC/Attachment.h: Added.
   45379         * Platform/CoreIPC/Connection.cpp: Added.
   45380         * Platform/CoreIPC/Connection.h: Added.
   45381         * Platform/CoreIPC/MessageID.h: Added.
   45382         * Platform/CoreIPC/mac: Added.
   45383         * Platform/CoreIPC/mac/ConnectionMac.cpp: Added.
   45384         * Platform/CoreIPC/mac/MachPort.h: Added.
   45385         * Platform/CoreIPC/win: Added.
   45386         * Platform/CoreIPC/win/ConnectionWin.cpp: Added.
   45387         * Platform/PlatformProcessIdentifier.h: Added.
   45388         * Platform/RunLoop.cpp: Added.
   45389         * Platform/RunLoop.h: Added.
   45390         * Platform/WorkItem.h: Added.
   45391         * Platform/WorkQueue.cpp: Added.
   45392         * Platform/WorkQueue.h: Added.
   45393         * Platform/mac: Added.
   45394         * Platform/mac/RunLoopMac.mm: Added.
   45395         * Platform/mac/WorkQueueMac.cpp: Added.
   45396         * Platform/win: Added.
   45397         * Platform/win/RunLoopWin.cpp: Added.
   45398 
   45399 2010-04-08  Sam Weinig  <sam (a] webkit.org>
   45400 
   45401         Rubber-stamped by Mark Rowe.
   45402 
   45403         Add WebKit2 directory.
   45404