12010-01-29 Mark Rowe <mrowe@apple.com> 2 3 Fix the Mac build. 4 5 Disable ENABLE_INDEXED_DATABASE since it is "completely non-functional". 6 7 As the comment in FeatureDefines.xcconfig notes, the list of feature defines 8 needs to be kept in sync across the various files. The default values also 9 need to be kept in sync between these files and build-webkit. 10 11 * Configurations/FeatureDefines.xcconfig: 12 132010-01-29 Alexey Proskuryakov <ap@apple.com> 14 15 Reviewed by Dan Bernstein. 16 17 <rdar://problem/7441982> REGRESSION (TOT): Adobe CS4: Installer alerts are displayed as 18 blank windows 19 20 * WebView/WebView.mm: 21 (shouldEnableLoadDeferring): Load deferring is enabled unless the application is Adobe 22 Installer. 23 (-[WebView _preferencesChangedNotification:]): Call setLoadDeferringEnabled(). 24 252010-01-28 Enrica Casucci <enrica@apple.com> 26 27 Reviewed by Maciej Stachowiak. 28 29 Huge plain text pastes are slow 30 <rdar://problem/5195056> 31 https://bugs.webkit.org/show_bug.cgi?id=34237 32 33 Mail is ignoring the fragment created from plain text or HTML that is 34 passed to the delegate function, that creates a new one. 35 This fix avoids creating the fragment twice. 36 37 * WebView/WebHTMLView.mm: 38 (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): 39 402010-01-25 Anders Carlsson <andersca@apple.com> 41 42 Featureless build fixes. 43 44 * Misc/WebCache.mm: 45 (+[WebCache empty]): 46 * WebCoreSupport/WebApplicationCache.mm: 47 * WebCoreSupport/WebChromeClient.h: 48 * WebView/WebDataSource.mm: 49 (-[WebDataSource _transferApplicationCache:]): 50 * WebView/WebFrame.mm: 51 (-[WebFrame _cacheabilityDictionary]): 52 * WebView/WebView.mm: 53 (WebKitInitializeApplicationCachePathIfNecessary): 54 (-[WebView _close]): 55 * WebView/WebViewData.mm: 56 (-[WebViewPrivate dealloc]): 57 (-[WebViewPrivate finalize]): 58 592010-01-25 Steve Falkenburg <sfalken@apple.com> 60 61 Reviewed by Simon Fraser. 62 63 A WebGeolocationControllerClient is leaked for every WebView 64 https://bugs.webkit.org/show_bug.cgi?id=34145 65 66 * WebCoreSupport/WebGeolocationControllerClient.h: 67 * WebCoreSupport/WebGeolocationControllerClient.mm: 68 (WebGeolocationControllerClient::geolocationDestroyed): 69 702010-01-22 Steve Falkenburg <sfalken@apple.com> 71 72 Reviewed by Darin Adler. 73 74 https://bugs.webkit.org/show_bug.cgi?id=34025 75 Enable client-based Geolocation abstraction for Mac, Windows AppleWebKit targets. 76 77 * Configurations/FeatureDefines.xcconfig: 78 792010-01-22 Brady Eidson <beidson@apple.com> 80 81 Reviewed by Adele Peterson. 82 83 [WebFrame loadRequest:] does not null check the WebCore::Frame 84 <rdar://problem/7416286> and https://bugs.webkit.org/show_bug.cgi?id=34021 85 86 * WebView/WebFrame.mm: 87 (-[WebFrame loadRequest:]): Null check the WebCore::Frame as it can disappear 88 out of underneath a WebFrame. 89 902010-01-22 Peter Kasting <pkasting@google.com> 91 92 Reviewed by David Hyatt. 93 94 When scrolling by page, hold back 1/8th of the visible size instead of 95 40 px. 96 https://bugs.webkit.org/show_bug.cgi?id=32595 97 98 * WebView/WebFrameView.mm: 99 (-[WebFrameView _verticalPageScrollDistance]): 100 (-[WebFrameView initWithFrame:]): 101 (-[WebFrameView _horizontalPageScrollDistance]): 102 1032010-01-20 Jian Li <jianli@chromium.org> 104 105 Reviewed by Dmitry Titov. 106 107 Implement File and Blob interfaces as defined in File API spec. 108 https://bugs.webkit.org/show_bug.cgi?id=32912 109 110 * MigrateHeaders.make: 111 1122010-01-19 Timothy Hatcher <timothy@apple.com> 113 114 Fix erroneous page scrolls when trying to select text or use form elements 115 with the Web Inspector docked. 116 117 http://webkit.org/b/24403 118 rdar://problem/6753925 119 120 Reviewed by John Sullivan and Darin Adler. 121 122 * WebCoreSupport/WebChromeClient.mm: 123 (WebChromeClient::scrollRectIntoView): The scrollRect.move() call was 124 incorrectly converting the rect under the assumption that the frame view 125 is the same size as the WebView. Using convertRect:fromView: instead 126 is enough to fix the bug, but that code isn't needed since WebCore 127 already takes care of scrolling the main frame's document view, so it 128 was redundant to do it here too. 129 1302010-01-20 Steve Falkenburg <sfalken@apple.com> 131 132 Reviewed by Darin Adler and Adam Roben. 133 134 Feature defines are difficult to maintain on Windows builds 135 https://bugs.webkit.org/show_bug.cgi?id=33883 136 137 * Configurations/FeatureDefines.xcconfig: Add comments about keeping feature definitions in sync. 138 1392010-01-20 Dan Bernstein <mitz@apple.com> 140 141 Reviewed by Simon Fraser. 142 143 <rdar://problem/7489504> Clicking on an overflow scrollbar when the window doesn't have 144 focus only focuses the window; it should start scrolling too 145 https://bugs.webkit.org/show_bug.cgi?id=33906 146 147 * Misc/WebElementDictionary.mm: 148 (+[WebElementDictionary initializeLookupTable]): Initialize WebElementIsInScrollBarKey. 149 (-[WebElementDictionary _isInScrollBar]): Added. Returns whether the HitTestResult contains 150 a scroll bar. 151 * WebView/WebHTMLView.mm: 152 (-[WebHTMLView _isScrollBarEvent:]): Added. Returns whether the event point is in a scroll 153 bar in this view. 154 (-[WebHTMLView acceptsFirstMouse:]): Accept scroll bar events. 155 * WebView/WebView.mm: Define WebElementIsInScrollBarKey. 156 * WebView/WebViewPrivate.h: Declare WebElementIsInScrollBarKey. 157 1582010-01-19 Dan Bernstein <mitz@apple.com> 159 160 Redo Tiger build fix without making WebTypesInternal.h a private header 161 162 * WebView/WebHTMLRepresentation.h: Define and use WebNSUInteger. 163 * WebView/WebHTMLRepresentation.mm: Import WebTypesInternal.h. 164 1652009-12-18 Anders Carlsson <andersca@apple.com> 166 167 Reviewed by Dan Bernstein. 168 169 <rdar://problem/7068584> Crash at NetscapePluginHostProxy::processRequests 170 171 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 172 (WebKit::NetscapePluginInstanceProxy::waitForReply): Wrapped with calls 173 to willCallPluginFunction/didCallPluginFunction. This prevents the plug-in 174 from being stopped while waiting for reply. 175 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 176 (WebKit::NetscapePluginInstanceProxy::createBindingsInstance): Protect the 177 instance proxy in case the plug-in host crashes while waiting for reply. 178 * Plugins/Hosted/ProxyInstance.h: 179 (WebKit::ProxyInstance::waitForReply): Added. Calls through to 180 NetscapePluginInstanceProxy::waitForReply(), but returns a null reply if the 181 proxy gets invalidated while waiting for the reply. 182 * Plugins/Hosted/ProxyInstance.mm: 183 (WebKit::ProxyInstance::invoke): Use ProxyInstance::waitForReply(). 184 (WebKit::ProxyInstance::supportsInvokeDefaultMethod): Ditto. 185 (WebKit::ProxyInstance::supportsConstruct): Ditto. 186 (WebKit::ProxyInstance::getPropertyNames): Ditto. 187 (WebKit::ProxyInstance::methodsNamed): Ditto. 188 (WebKit::ProxyInstance::fieldNamed): Ditto. 189 (WebKit::ProxyInstance::fieldValue): Ditto. 190 (WebKit::ProxyInstance::setFieldValue): Ditto. 191 1922010-01-19 John Sullivan <sullivan@apple.com> 193 194 Tiger build fix. 195 196 * WebView/WebHTMLRepresentation.h: 197 Added #import for WebTypesInternal.h so NSUInteger will be defined on Tiger. 198 1992010-01-19 Brian Weinstein <bweinstein@apple.com> 200 201 Reviewed by Tim Hatcher. 202 203 Part of <http://webkit.org/b/28622>. 204 Caught exceptions still pause the debugger. 205 206 Update WebScriptDebugger::exception to have the hasHandler parameter. 207 208 This just adds a new parameter, no behavior is changed. 209 210 * WebView/WebScriptDebugger.h: 211 * WebView/WebScriptDebugger.mm: 212 (WebScriptDebugger::exception): 213 2142010-01-19 Jon Honeycutt <jhoneycutt@apple.com> 215 216 MSAA: The child <option> elements of a non-multiple <select> are not 217 exposed 218 219 https://bugs.webkit.org/show_bug.cgi?id=33773 220 <rdar://problem/7550556> 221 222 * WebCoreSupport/WebViewFactory.mm: 223 (-[WebViewFactory AXMenuListPopupActionVerb]): 224 Stubbed. 225 (-[WebViewFactory AXMenuListActionVerb]): 226 Stubbed. 227 2282010-01-19 John Sullivan <sullivan@apple.com> 229 230 https://bugs.webkit.org/show_bug.cgi?id=33854 231 Would like a variant of WebHTMLRepresentation's searchForLabelsBeforeElement that returns 232 more info about where the result was found 233 234 Reviewed by Darin Adler 235 236 * WebView/WebHTMLRepresentation.h: 237 Declare -searchForLabels:beforeElement:resultDistance:resultIsInCellAbove. 238 239 * WebView/WebHTMLRepresentation.mm: 240 (-[WebHTMLRepresentation searchForLabels:beforeElement:]): 241 Now calls through to searchForLabels:beforeElement:resultDistance:resultIsInCellAbove. 242 (-[WebHTMLRepresentation searchForLabels:beforeElement:resultDistance:resultIsInCellAbove:]): 243 New method, calls through to WebCore. 244 2452010-01-19 Dave Hyatt <hyatt@apple.com> 246 247 Reviewed by Adam Roben. 248 249 Add an API to obtain the WebScriptWorld for a given JSGlobalContextRef. 250 251 * WebView/WebScriptWorld.h: 252 * WebView/WebScriptWorld.mm: 253 (+[WebScriptWorld scriptWorldForGlobalContext:]): 254 2552010-01-19 Steve Block <steveblock@google.com> 256 257 Unreviewed build fix. 258 259 Fixes Snow Leopard build due to http://trac.webkit.org/changeset/53464 260 261 * Plugins/Hosted/WebHostedNetscapePluginView.mm: Modified. Import <WebCore/Bridge.h> 262 2632010-01-19 Steve Block <steveblock@google.com> 264 265 Reviewed by Adam Barth. 266 267 Renames WebCore/bridge/runtime.[cpp|h] to WebCore/bridge/Bridge.[cpp|h] 268 https://bugs.webkit.org/show_bug.cgi?id=33801 269 270 * Plugins/Hosted/ProxyInstance.h: 271 2722010-01-18 Enrica Casucci <enrica@apple.com> 273 274 Reviewed by Darin Adler. 275 276 Script attributes are copied and pasted, making cross-domain attacks possible (30019) 277 <rdar://problem/6008809> 278 https://bugs.webkit.org/show_bug.cgi?id=30019 279 280 * WebView/WebFrame.mm: 281 (-[WebFrame _documentFragmentWithMarkupString:baseURLString:]): Modified the call to createMarkupString. 282 2832010-01-18 Steve Falkenburg <sfalken@apple.com> 284 285 Rubber-stamped by Sam Weinig. 286 287 Add missing export for Geolocation. 288 289 * WebKit.exp: 290 2912010-01-18 Adam Roben <aroben@apple.com> 292 293 Add +[WebView _setDomainRelaxationForbidden:forURLScheme:] 294 295 WebKit/mac part of fixing <http://webkit.org/b/33806> 296 <rdar://problem/7552837> Would like API to disallow setting of 297 document.domain for pages with certain URL schemes 298 299 Reviewed by Sam Weinig. 300 301 * WebView/WebView.mm: 302 (+[WebView _setDomainRelaxationForbidden:forURLScheme:]): 303 * WebView/WebViewPrivate.h: 304 Added. Calls through to SecurityOrigin. 305 3062010-01-16 Maciej Stachowiak <mjs@apple.com> 307 308 Reviewed by Oliver Hunt. 309 310 Cache JS string values made from DOM strings (Dromaeo speedup) 311 https://bugs.webkit.org/show_bug.cgi?id=33768 312 <rdar://problem/7353576> 313 314 * Plugins/Hosted/ProxyInstance.mm: 315 (WebKit::ProxyInstance::stringValue): Explicitly make a String, since char* 316 is now ambiguous. 317 3182010-01-13 Simon Fraser <simon.fraser@apple.com> 319 320 Reviewed by Darin Adler. 321 322 <rdar://problem/7532544> 323 324 Expose new method on WebKitSystemInterface, WKGetUserToBaseCTM(), which will 325 be used for a shadow drawing fix. 326 327 * WebCoreSupport/WebSystemInterface.m: 328 (InitWebCoreSystemInterface): 329 3302010-01-13 Kevin Decker <kdecker@apple.com> 331 332 Reviewed by Mark Rowe. 333 334 https://bugs.webkit.org/show_bug.cgi?id=33610 335 <rdar://problem/7288546> Silverlight full screen performance problem seen on Snow Leopard. 336 337 * Plugins/WebNetscapePluginView.mm: 338 (-[WebNetscapePluginView _workaroundSilverlightFullScreenBug:]): Added. Work around Silverlight full screen 339 performance issue by maintaining an accelerated GL pixel format. We can safely remove this at some point in 340 the future when both Microsoft releases a genuine fix for 7288546 and enough Silverlight users update to the 341 new Silverlight. For now, we'll distinguish older broken versions of Silverlight by asking the plug-in if it 342 resolved its full screen badness. 343 (-[WebNetscapePluginView _createPlugin]): Call _workaroundSilverlightFullScreenBug:YES if this is Silverlight. 344 (-[WebNetscapePluginView _destroyPlugin]): Call _workaroundSilverlightFullScreenBug:NO if this is Silverlight. 345 3462010-01-11 Mark Rowe <mrowe@apple.com> 347 348 Reviewed by Darin Adler. 349 350 <rdar://problem/7512726> Flash full-screen does not work correctly with Flash 10.1 beta 351 352 Explicitly track when the plug-in shows and hides a full-screen window to determine 353 whether a plug-in is currently full-screen, rather than relying on menu bar visibility. 354 This ensures that we activate the plug-in host process and client application as 355 appropriate when the plug-in enters or exits full-screen. 356 357 * Plugins/Hosted/NetscapePluginHostProxy.h: 358 (WebKit::NetscapePluginHostProxy::isFullScreenWindowShowing): 359 * Plugins/Hosted/NetscapePluginHostProxy.mm: 360 (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): 361 (WebKit::NetscapePluginHostProxy::setMenuBarVisible): 362 (WebKit::NetscapePluginHostProxy::didEnterFullScreen): 363 (WebKit::NetscapePluginHostProxy::didExitFullScreen): 364 (WebKit::NetscapePluginHostProxy::setFullScreenWindowIsShowing): 365 (WKPCSetMenuBarVisible): 366 (WKPCSetFullScreenWindowIsShowing): 367 * Plugins/Hosted/WebKitPluginClient.defs: 368 3692010-01-11 Simon Fraser <simon.fraser@apple.com> 370 371 Reviewed by Kevin Decker. 372 373 https://bugs.webkit.org/show_bug.cgi?id=33455 374 Allows plugins to participate in accelerated compositing 375 376 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 377 (-[WebHostedNetscapePluginView createPlugin]): 378 * Plugins/WebNetscapePluginView.mm: 379 (-[WebNetscapePluginView createPlugin]): If accelerated compositing is 380 available, don't use a layer-backed NSView for plugins. Instead, tickle the 381 accelerated compositing code via setNeedsStyleRecalc(SyntheticStyleChange), 382 which will parent the plugin's layer in the accelerated compositing layer 383 tree. 384 3852010-01-09 Adam Barth <abarth@webkit.org> 386 387 Reviewed by Darin Adler. 388 389 ScriptController::isEnabled needs to be renamed 390 https://bugs.webkit.org/show_bug.cgi?id=32063 391 392 Rename ScriptController::isEnabled to 393 ScriptController::canExecuteScripts. 394 395 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 396 (WebKit::NetscapePluginInstanceProxy::getWindowNPObject): 397 (WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray): 398 3992010-01-07 Daniel Bates <dbates@rim.com> 400 401 Reviewed by Eric Seidel. 402 403 https://bugs.webkit.org/show_bug.cgi?id=32987 404 405 Added ENABLE_XHTMLMP flag. Disabled by default. 406 407 * Configurations/FeatureDefines.xcconfig: 408 4092010-01-07 Alexey Proskuryakov <ap@apple.com> 410 411 More build fix. 412 413 * WebKitPrefix.h: Define JS_EXPORTCLASS here, as well (as empty). 414 4152010-01-07 Maciej Stachowiak <mjs@apple.com> 416 417 Reviewed by Simon Fraser. 418 419 REGRESSION (r48075): Clicking and dragging in a widget's text field doesn't create a selection; drags widget instead ( Translation, Weather, Ski Report ) 420 https://bugs.webkit.org/show_bug.cgi?id=33348 421 <rdar://problem/7310616> 422 423 * WebView/WebView.mm: 424 (-[WebView _preferencesChangedNotification:]): We only want to 425 handle file: URLs for the user stylesheet now, so special-case the 426 DashboardClient's funky user stylesheet URL by mapping it to the 427 equivalent file URL. 428 4292010-01-07 Kevin Decker <kdecker@apple.com> 430 431 Reviewed by Simon Fraser. 432 433 https://bugs.webkit.org/show_bug.cgi?id=33331 434 (WebHostedNetscapePluginView should pass acceleratedCompositingEnabled bool to NetscapePluginHostManager when instantiating plug-ins) 435 436 * Plugins/Hosted/NetscapePluginHostManager.h: Modify method signature for instantiatePlugin to include acceleratedCompositingEnabled bool. 437 * Plugins/Hosted/NetscapePluginHostManager.mm: 438 (WebKit::NetscapePluginHostManager::instantiatePlugin): 439 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 440 (-[WebHostedNetscapePluginView createPlugin]): Pass accelerated compositing status to NetscapePluginHostManage 441 4422010-01-06 Kevin Decker <kdecker@apple.com> 443 444 Reviewed by Simon Fraser. 445 446 Third step of: 447 <rdar://problem/6398111> Integrate hardware layers with out-of-process plug-ins layer hosting mechanism 448 449 * Plugins/WebNetscapePluginView.mm: 450 (-[WebNetscapePluginView getVariable:value:]): Add case for WKNVSupportsCompositingCoreAnimationPluginsBool. 451 4522010-01-06 Kevin Decker <kdecker@apple.com> 453 454 Reviewed by Simon Fraser. 455 456 Second step of: 457 <rdar://problem/6398111> Integrate hardware layers with out-of-process plug-ins layer hosting mechanism 458 459 * Plugins/Hosted/WebHostedNetscapePluginView.h: Expose the CALayer of the plugin by adding -pluginLayer method. 460 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 461 (-[WebHostedNetscapePluginView pluginLayer]): Added. 462 * Plugins/WebNetscapePluginView.h: Expose the CALayer of the plugin by adding -pluginLayer method. 463 * Plugins/WebNetscapePluginView.mm: 464 (-[WebNetscapePluginView pluginLayer]): Added. 465 4662010-01-06 Kevin Decker <kdecker@apple.com> 467 468 Reviewed by Eric Carlson. 469 470 First step toward: 471 <rdar://problem/6398111> Integrate hardware layers with out-of-process plug-ins layer hosting mechanism 472 473 Small refactoring moving the PluginWidget class from WebKit to WebCore. 474 475 * WebCoreSupport/WebFrameLoaderClient.mm: Use the WebCore version of PluginWidget. 476 4772010-01-05 Dan Bernstein <mitz@apple.com> 478 479 Reviewed by Mark Rowe. 480 481 Re-enable plug-in halting on Mac after r51953 482 483 * WebCoreSupport/WebPluginHalterClient.mm: 484 (WebPluginHalterClient::enabled): Test for the correct selector. 485 4862010-01-04 Dan Bernstein <mitz@apple.com> 487 488 Reviewed by Ada Chan and Mark Rowe. 489 490 Updated copyright string 491 492 * Info.plist: 493 4942009-12-27 Maciej Stachowiak <mjs@apple.com> 495 496 Reviewed by Alexey Proskuryakov. 497 498 plugins/get-url-with-iframe-target.html fails on SnowLeopard (64-bit) 499 https://bugs.webkit.org/show_bug.cgi?id=32982 500 501 This test has been failing on SnowLeopard since it was landed. 502 503 The problem is that we never delivered the notification for 504 NPN_GetURLNotify, in the frame-targeting case, for out-of-process 505 plugins on Mac. 506 507 I implemented support for this based on how in-process Mac plugins 508 do it. 509 510 * Plugins/Hosted/HostedNetscapePluginStream.h: 511 * Plugins/Hosted/HostedNetscapePluginStream.mm: 512 (WebKit::HostedNetscapePluginStream::reasonForError): 513 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 514 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 515 (WebKit::NetscapePluginInstanceProxy::PluginRequest::create): 516 (WebKit::NetscapePluginInstanceProxy::PluginRequest::PluginRequest): 517 (WebKit::NetscapePluginInstanceProxy::destroy): 518 (WebKit::NetscapePluginInstanceProxy::performRequest): 519 (WebKit::NetscapePluginInstanceProxy::webFrameDidFinishLoadWithReason): 520 (WebKit::NetscapePluginInstanceProxy::requestTimerFired): 521 (WebKit::NetscapePluginInstanceProxy::loadRequest): 522 * Plugins/Hosted/WebHostedNetscapePluginView.h: 523 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 524 (-[WebHostedNetscapePluginView webFrame:didFinishLoadWithReason:]): 525 (-[WebHostedNetscapePluginView webFrame:didFinishLoadWithError:]): 526 5272009-12-22 Darin Adler <darin@apple.com> 528 529 Reviewed by Mark Rowe. 530 531 Turn off datagrid by default, at least for all platforms Apple ships. 532 The datagrid implementation isn't ready for general web use yet. 533 534 * Configurations/FeatureDefines.xcconfig: Turn off datagrid by default. 535 5362009-12-21 Mark Rowe <mrowe@apple.com> 537 538 Reviewed by Sam Weinig. 539 540 Don't allocate a WebGeolocationControllerClient unless that compile-time setting is enabled. 541 542 * WebView/WebView.mm: 543 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): 544 5452009-12-18 Sam Weinig <sam@webkit.org> 546 547 Reviewed by Dan Bernstein. 548 549 Add Mac WebKit side of the client based geolocation provider. 550 551 * Misc/WebKitErrors.m: 552 (registerErrors): Add Geolocation errors. 553 * Misc/WebKitErrorsPrivate.h: 554 * WebCoreSupport/WebGeolocationControllerClient.h: Added. 555 (WebGeolocationControllerClient::webView): 556 * WebCoreSupport/WebGeolocationControllerClient.mm: Added. 557 (WebGeolocationControllerClient::WebGeolocationControllerClient): 558 (WebGeolocationControllerClient::startUpdating): 559 (WebGeolocationControllerClient::stopUpdating): 560 (WebGeolocationControllerClient::lastPosition): 561 Add implementation of the WebGeolocationControllerClient. 562 563 * WebView/WebGeolocationPosition.h: Added. 564 * WebView/WebGeolocationPosition.mm: Added. 565 (-[WebGeolocationPositionInternal initWithCoreGeolocationPosition:]): 566 (core): 567 (-[WebGeolocationPosition initWithTimestamp:latitude:longitude:accuracy:]): 568 * WebView/WebGeolocationPositionInternal.h: Added. 569 Add an Objective-C wrapper for GeolocationPosition. 570 571 * WebView/WebView.mm: 572 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): Set the GeolocationControllerClient. 573 (-[WebView _setGeolocationProvider:]): Set the GeolocationProvider 574 (-[WebView _geolocationProvider]): Return the GeolocationProvider. 575 (-[WebView _geolocationDidChangePosition:]): Notify WebCore that the position changed. 576 (-[WebView _geolocationDidFailWithError:]): Notify WebCore that an error occured. 577 * WebView/WebViewData.h: 578 * WebView/WebViewPrivate.h: 579 5802009-12-18 Eric Seidel <eric@webkit.org> 581 582 Reviewed by Adam Barth. 583 584 REGRESSION(52325) Chromium build broken due to link failure 585 https://bugs.webkit.org/show_bug.cgi?id=32753 586 587 * WebCoreSupport/WebSystemInterface.m: 588 - Chromium Mac builds use this file, but do not 589 enable Pre-compiled Header (PCH) files so that 590 Chromium build bots can take advantage of the faster 591 distcc 3. Eventually all mac builds will likely use 592 distcc, but for now we'll add Platform.h here and document 593 its usage so it's not removed by accident. 594 5952009-12-18 Sam Weinig <sam@webkit.org> 596 597 Reviewed by Anders Carlsson. 598 599 Fix preference key name. 600 601 * WebView/WebPreferenceKeysPrivate.h: 602 6032009-12-18 Anders Carlsson <andersca@apple.com> 604 605 Reviewed by Sam Weinig. 606 607 Pass preference to plug-in host. 608 609 * Plugins/Hosted/NetscapePluginHostManager.mm: 610 (WebKit::NetscapePluginHostManager::spawnPluginHost): 611 6122009-12-18 Anders Carlsson <andersca@apple.com> 613 614 Reviewed by Sam Weinig. 615 616 Add WKPCRunSyncOpenPanel implementation. 617 618 * Plugins/Hosted/NetscapePluginHostProxy.mm: 619 (WKPCRunSyncOpenPanel): 620 * Plugins/Hosted/WebKitPluginClient.defs: 621 * Plugins/Hosted/WebKitPluginHost.defs: 622 6232009-12-18 Anders Carlsson <andersca@apple.com> 624 625 Reviewed by Sam Weinig. 626 627 Add a useProxiedOpenPanel WebPreference and tunnel it through to the plug-in host. 628 629 * Plugins/Hosted/NetscapePluginHostManager.h: 630 * Plugins/Hosted/NetscapePluginHostManager.mm: 631 (WebKit::NetscapePluginHostManager::hostForPackage): 632 (WebKit::NetscapePluginHostManager::spawnPluginHost): 633 (WebKit::NetscapePluginHostManager::instantiatePlugin): 634 * WebView/WebPreferenceKeysPrivate.h: 635 * WebView/WebPreferences.mm: 636 (+[WebPreferences initialize]): 637 (-[WebPreferences usesProxiedOpenPanel]): 638 (-[WebPreferences setUsesProxiedOpenPanel:]): 639 * WebView/WebPreferencesPrivate.h: 640 6412009-12-18 Sam Weinig <sam@webkit.org> 642 643 Reviewed by Anders Carlsson. 644 645 Update WebKitSystemInterface for <rdar://problem/7237059>. 646 647 * WebCoreSupport/WebSystemInterface.m: 648 (InitWebCoreSystemInterface): 649 6502009-12-18 Adam Roben <aroben@apple.com> 651 652 Add #includes needed after WebCore clean-up 653 654 Rubber-stamped by Anders Carlsson. 655 656 Fixes <http://webkit.org/b/32718>. 657 658 * WebView/WebFrame.mm: 659 * WebView/WebFrameView.mm: 660 * WebView/WebView.mm: 661 6622009-12-17 Adam Roben <aroben@apple.com> 663 664 Mac build fix 665 666 * WebView/WebVideoFullscreenController.mm: Added now-needed #import. 667 6682009-12-13 Sam Weinig <sam@webkit.org> 669 670 Reviewed by Dan Bernstein. 671 672 Fix for https://bugs.webkit.org/show_bug.cgi?id=32499 673 Add client based Geolocation provider 674 675 Add first cut of a client based Geolocation provider. This is guarded by 676 ENABLE(CLIENT_BASED_GEOLOCATION) and is off by default for now. This adds a 677 GeolocationControllerClient interface that no-one currently implements, 678 but will in a subsequent patch. 679 680 * WebView/WebView.mm: 681 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): 682 6832009-12-10 Jon Honeycutt <jhoneycutt@apple.com> 684 685 Mac build fix. Unreviewed. 686 687 Re-adds code that was mistakenly removed from my last patch. 688 689 * WebCoreSupport/WebPluginHalterClient.mm: 690 Add necessary #import. 691 692 * WebView/WebDelegateImplementationCaching.h: 693 Declare a new overload of CallUIDelegateReturningBoolean. 694 695 * WebView/WebDelegateImplementationCaching.mm: 696 (CallDelegateReturningBoolean): 697 Add a new overload with different arguments. 698 (CallUIDelegateReturningBoolean): 699 Ditto. 700 7012009-12-10 Jon Honeycutt <jhoneycutt@apple.com> 702 703 Pass more information about a plug-in to the PluginHalterDelegate 704 705 Reviewed by Adam Roben. 706 707 * Plugins/WebBaseNetscapePluginView.mm: 708 (WebHaltablePlugin::isWindowed): 709 Return false - the Mac doesn't really have windowed plug-ins. 710 (WebHaltablePlugin::pluginName): 711 Return the name from the plug-in package. 712 713 * WebCoreSupport/WebPluginHalterClient.h: 714 Update for new parameters. 715 716 * WebCoreSupport/WebPluginHalterClient.mm: 717 (WebPluginHalterClient::shouldHaltPlugin): 718 Ditto; pass them when making the delegate call. 719 720 * WebView/WebUIDelegatePrivate.h: 721 Update for new parameters. 722 7232009-12-08 Simon Fraser <simon.fraser@apple.com> 724 725 Reviewed by Dan Bernstein. 726 727 <rdar://problem/7295070> WebKit video fullscreen keeps playing after closing the window 728 729 Fix a leak of the QTMovieView when exiting fullscreen video, and remove the 730 old workaround. 731 732 * WebView/WebVideoFullscreenController.mm: 733 (-[WebVideoFullscreenController windowDidLoad]): Set the movie view as the contentView directly. 734 (-[WebVideoFullscreenController setMediaElement:WebCore::]): Cast the contentView to a movie view. 735 (-[WebVideoFullscreenController windowDidExitFullscreen]): Remove the old workaround. 736 7372009-12-08 Dmitry Titov <dimich@chromium.org> 738 739 Rubber-stamped by David Levin. 740 741 Revert and reopen "Add asserts to RefCounted to make sure ref/deref happens on the right thread." 742 It may have caused massive increase of reported leaks on the bots. 743 https://bugs.webkit.org/show_bug.cgi?id=31639 744 745 * ForwardingHeaders/wtf/ThreadVerifier.h: Removed. 746 7472009-12-08 Dmitry Titov <dimich@chromium.org> 748 749 Reviewed by Darin Adler. 750 751 Add asserts to RefCounted to make sure ref/deref happens on the right thread. 752 https://bugs.webkit.org/show_bug.cgi?id=31639 753 754 * ForwardingHeaders/wtf/ThreadVerifier.h: Added. 755 7562009-12-07 Dmitry Titov <dimich@chromium.org> 757 758 Rubber-stamped by Darin Adler. 759 760 Remove ENABLE_SHARED_SCRIPT flags 761 https://bugs.webkit.org/show_bug.cgi?id=32245 762 This patch was obtained by "git revert" command and then un-reverting of ChangeLog files. 763 764 * Configurations/FeatureDefines.xcconfig: 765 7662009-12-07 Simon Fraser <simon.fraser@apple.com> 767 768 Reviewed by Darin Adler. 769 770 <rdar://problem/7450481> One compositing test keeps DRT in "compositing mode", breaks repaint tests 771 772 The counter that WebView used to keep track of the number of enclosed WebHTMLViews using 773 accelerated compositing was hard to manage, and maintained incorrectly in a number of cases. 774 This caused one compositing test make DumpRenderTree think that all subsequent tests 775 were compositing too. 776 777 Replace this counter with notifications, which are only fired if a client (DRT) requests them. The 778 notification informs the client that a WebHTMLView entered compositing mode (or an already- 779 compositing WebHTML was added); it does not say when a view becomes uncomposited, or all 780 compositing subviews were removed, since this is tricky to get right. 781 782 Change -[WebView _isUsingAcceleratedCompositing] to manually walk the frames, and 783 return YES if any document view is composited. 784 785 * WebKit.exp: 786 * WebView/WebHTMLView.mm: 787 (-[WebHTMLView close]): 788 (-[WebHTMLView viewDidMoveToSuperview]): 789 (-[WebHTMLView attachRootLayer:]): 790 (-[WebHTMLView detachRootLayer]): 791 * WebView/WebView.mm: 792 (+[WebView automaticallyNotifiesObserversForKey:]): 793 (-[WebView _postsAcceleratedCompositingNotifications]): 794 (-[WebView _setPostsAcceleratedCompositingNotifications:]): 795 (-[WebView _isUsingAcceleratedCompositing]): 796 * WebView/WebViewData.h: 797 * WebView/WebViewInternal.h: 798 * WebView/WebViewPrivate.h: 799 8002009-12-07 Gavin Barraclough <barraclough@apple.com> 801 802 Reviewed by Oliver Hunt. 803 804 https://bugs.webkit.org/show_bug.cgi?id=32184 805 Handle out-of-memory conditions with JSC Ropes with a JS exception, rather than crashing. 806 Switch from using fastMalloc to tryFastMalloc, pass an ExecState to record the exception on. 807 808 * WebView/WebView.mm: 809 (aeDescFromJSValue): 810 8112009-12-07 Nikolas Zimmermann <nzimmermann@rim.com> 812 813 Reviewed by Holger Hans Peter Freyther. 814 815 Turn on (SVG) Filters support, by default. 816 https://bugs.webkit.org/show_bug.cgi?id=32224 817 818 * Configurations/FeatureDefines.xcconfig: Enable FILTERS build flag. 819 8202009-12-03 Brady Eidson <beidson@apple.com> 821 822 Reviewed by Sam Weinig. 823 824 <rdar://problem/7214236> and http://webkit.org/b/32052 - Implement HTML5 state object history API 825 826 * WebCoreSupport/WebFrameLoaderClient.h: 827 * WebCoreSupport/WebFrameLoaderClient.mm: 828 (WebFrameLoaderClient::dispatchDidPushStateWithinPage): 829 (WebFrameLoaderClient::dispatchDidReplaceStateWithinPage): 830 (WebFrameLoaderClient::dispatchDidPopStateWithinPage): 831 * WebView/WebDelegateImplementationCaching.h: 832 * WebView/WebFrameLoadDelegatePrivate.h: 833 * WebView/WebView.mm: 834 (-[WebView _cacheFrameLoadDelegateImplementations]): 835 8362009-12-03 Pavel Feldman <pfeldman@dhcp-172-28-174-220.spb.corp.google.com> 837 838 Reviewed by Timothy Hatcher. 839 840 Web Inspector: Simplify the settings support in inspector controller. 841 842 https://bugs.webkit.org/show_bug.cgi?id=32076 843 844 * WebCoreSupport/WebInspectorClient.h: 845 * WebCoreSupport/WebInspectorClient.mm: 846 (-[WebInspectorWindowController showWindow:]): 847 (-[WebInspectorWindowController attach]): 848 (-[WebInspectorWindowController detach]): 849 8502009-12-03 Ben Murdoch <benm@google.com> 851 852 Reviewed by Brady Eidson. 853 854 [Android] notifyHistoryItemChanged() should pass a pointer to the HistoryItem that changed. 855 https://bugs.webkit.org/show_bug.cgi?id=31915 856 857 * History/WebHistoryItem.mm: 858 (WKNotifyHistoryItemChanged): Update WKNotifyHistoryItemChanged() to add the new HistoryItem parameter added in the WebCore portion of this patch. 859 * History/WebHistoryItemInternal.h: ditto. 860 8612009-12-03 Ben Murdoch <benm@google.com> 862 863 Reviewed by Brady Eidson. 864 865 [Android] The FrameLoaderClient is unaware of BackForwardList changes. 866 https://bugs.webkit.org/show_bug.cgi?id=31914 867 868 * WebCoreSupport/WebFrameLoaderClient.h: 869 * WebCoreSupport/WebFrameLoaderClient.mm: 870 (WebFrameLoaderClient::dispatchDidAddBackForwardItem): Add an empty implementation. Method added to FrameLoaderClient by Android (see bug). 871 (WebFrameLoaderClient::dispatchDidRemoveBackForwardItem): ditto. 872 (WebFrameLoaderClient::dispatchDidChangeBackForwardIndex): ditto. 873 8742009-12-02 Dan Bernstein <mitz@apple.com> 875 876 Reviewed by Mark Rowe. 877 878 Fix a mistake in the previous change 879 880 * WebView/WebView.mm: 881 (+[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:]): 882 Make sure to include the image types’ view and representation classes 883 even when plug-ins are not allowed. 884 8852009-12-02 Dan Bernstein <mitz@apple.com> 886 887 Reviewed by Anders Carlsson. 888 889 Fixed <rdar://problem/7254127> WebKit can load plug-ins even when 890 plug-ins are disabled 891 892 Ensure that the shared WebPluginDatabase is not instantiated if no 893 WebViews are used that have plug-ins enabled. 894 895 * DefaultDelegates/WebDefaultPolicyDelegate.m: 896 (-[WebDefaultPolicyDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:]): 897 Call -[WebView _canShowMIMEType:] on the WebView instead of calling the 898 class method. 899 900 * WebCoreSupport/WebFrameLoaderClient.mm: 901 (WebFrameLoaderClient::canShowMIMEType): Ditto. 902 (WebFrameLoaderClient::transitionToCommittedForNewPage): Call 903 -[WebFrameView _viewClassForMIMEType:] on the WebView instead of calling 904 the class method. 905 (WebFrameLoaderClient::objectContentType): Ditto. 906 907 * WebView/WebDataSource.mm: 908 (+[WebDataSource _representationClassForMIMEType:allowingPlugins:]): 909 Added the allowPlugins parameter, which is passed through to 910 +[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:]. 911 (-[WebDataSource _makeRepresentation]): Pass an allowPlugins value 912 based on the WebView’s preferences. 913 914 * WebView/WebFrameView.mm: 915 (-[WebFrameView _makeDocumentViewForDataSource:]): Call 916 -[WebFrameView _viewClassForMIMEType:] instead of calling the class 917 method. 918 (+[WebFrameView _viewClassForMIMEType:allowingPlugins:]): Added the 919 allowPlugins parameter, which is passed through to 920 +[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:]. 921 (-[WebFrameView _viewClassForMIMEType:]): Added. Passes an allowPlugins 922 value based on the WebView’s preferences. 923 924 * WebView/WebFrameViewInternal.h: 925 * WebView/WebView.mm: 926 (+[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:]): 927 Added the allowPlugins parameter. If false, skip the instantiation of 928 the shared WebPluginDatabase. 929 (-[WebView _viewClass:andRepresentationClass:forMIMEType:]): Pass an 930 allowPlugins value based on the WebView’s preferences. 931 (+[WebView _canShowMIMEType:allowingPlugins:]): Passes allowPlugins to 932 +_viewClass:andRepresentationClass:forMIMEType:allowingPlugins:. 933 (+[WebView canShowMIMEType:]): Changed to pass YES to 934 +_canShowMIMEType:allowingPlugins:. 935 (-[WebView _canShowMIMEType:]): Added. Passes an allowPlugins value 936 based on the WebView’s preferences. 937 (-[WebView _pluginForMIMEType:]): Return nil if plug-ins are disabled. 938 (-[WebView _pluginForExtension:]): Ditto. 939 (-[WebView _isMIMETypeRegisteredAsPlugin:]): Return NO if plug-ins are 940 disabled. 941 * WebView/WebViewInternal.h: 942 9432009-12-02 Timothy Hatcher <timothy@apple.com> 944 945 Fixes a crash when scrolling a frame that goes away mid-scroll. 946 947 <rdar://problem/7400263> 948 949 Reviewed by John Sullivan. 950 951 * WebView/WebDynamicScrollBarsView.mm: 952 (-[WebDynamicScrollBarsView scrollWheel:]): Retain self incase the last 953 reference is released when calling super. 954 9552009-11-13 Timothy Hatcher <timothy@apple.com> 956 957 Migrate DOMHTMLInputElementPrivate.h as a private header. 958 959 Reviewed by Darin Adler. 960 961 * MigrateHeaders.make: 962 9632009-12-01 Nikolas Zimmermann <nzimmermann@rim.com> 964 965 Reviewed by Simon Fraser. 966 967 Add SVG animation test framework with 'snapshot' functionality 968 https://bugs.webkit.org/show_bug.cgi?id=31897 969 970 Add API used by the new 'sampleSVGAnimationForElementAtTime' DRT method, 971 forwarding the call to SVGDocumentExtensions, if SVG is enabled. 972 973 Implemented just like the existing pauseAnimation* methods for CSS animations. 974 975 * WebView/WebFrame.mm: 976 (-[WebFrame _pauseSVGAnimation:onSMILNode:atTime:]): 977 * WebView/WebFramePrivate.h: 978 9792009-12-01 Sam Weinig <sam@webkit.org> 980 981 Reviewed by Mark Rowe. 982 983 Simplify [WebView userAgentForURL:]. No need to call into helper function. 984 985 * WebCoreSupport/WebFrameLoaderClient.mm: 986 (WebFrameLoaderClient::userAgent): 987 * WebView/WebView.mm: 988 (-[WebView userAgentForURL:]): 989 * WebView/WebViewInternal.h: 990 9912009-11-24 Gavin Barraclough <barraclough@apple.com> 992 993 Reviewed by Geoff Garen. 994 995 Bug 31859 - Make world selection for JSC IsolatedWorlds automagical. 996 997 WebCore presently has to explicitly specify the world before entering into JSC, 998 which is a little fragile (particularly since property access via a 999 getter/setter might invoke execution). Instead derive the current world from 1000 the lexical global object. 1001 1002 Since WebCore no longer needs to explicitly specify the world on entry to JSC DebuggerCallFrame::evaluate can be called directly. 1003 1004 * WebView/WebScriptDebugDelegate.mm: 1005 (-[WebScriptCallFrame evaluateWebScript:]): 1006 10072009-11-24 Dmitry Titov <dimich@chromium.org> 1008 1009 Reviewed by Eric Seidel. 1010 1011 Add ENABLE_SHARED_SCRIPT feature define and flag for build-webkit 1012 https://bugs.webkit.org/show_bug.cgi?id=31444 1013 1014 * Configurations/FeatureDefines.xcconfig: 1015 10162009-11-24 Alexey Proskuryakov <ap@apple.com> 1017 1018 Reviewed by Brady Eidson. 1019 1020 https://bugs.webkit.org/show_bug.cgi?id=31844 1021 SocketStreamHandleCFNet should support CONNECT proxy credentials 1022 1023 * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Add WKSI methods. 1024 10252009-11-23 Simon Fraser <simon.fraser@apple.com> 1026 1027 Reviewed by Dan Bernstein. 1028 1029 DocumentMarkers need to be educated about transforms 1030 https://bugs.webkit.org/show_bug.cgi?id=31751 1031 1032 Find highlight is incorrect with transforms 1033 <rdar://problem/6358394> 1034 1035 Allow callers to specify that Frame::selectionTextRects() takes transforms into account 1036 when computing the set of rects that encompass a selection. For transformed elemenets, the 1037 selection rect will be the bounding box of the selected content. 1038 1039 Fix DocumentMarkers to cache rects in absolute coordinates, rather than painting coordinates. 1040 1041 * WebView/WebHTMLView.mm: 1042 (-[WebHTMLView selectionTextRects]): 1043 Pass RespectTransforms to get a list of rects with transforms taken into account. 1044 10452009-11-23 Kevin Decker <kdecker@apple.com> 1046 1047 Reviewed by Adam Roben. 1048 1049 <rdar://problem/7401503> 1050 1051 Added a workaround for plug-ins not drawing immediately. 1052 1053 * Plugins/WebBaseNetscapePluginView.mm: Added new constant. 1054 (-[WebBaseNetscapePluginView _clearSubstituteImage]): Added. 1055 (-[WebBaseNetscapePluginView resumeFromHalt]): Call above new method. 1056 10572009-11-20 Dave Hyatt <hyatt@apple.com> 1058 1059 Reviewed by Darin Adler. 1060 1061 Make sure to export WebSerializedJSValue. 1062 1063 * WebKit.exp: 1064 10652009-11-20 Dave Hyatt <hyatt@apple.com> 1066 1067 Reviewed by Oliver Hunt and Jon Honeycutt. 1068 1069 Add support for WebSerializedJSValue to WebKit. This object wraps the SerializedScriptValue functionality in WebCore 1070 and exposes the ability to do JS value serialization/deserialization to WebKit clients. 1071 1072 * WebView/WebSerializedJSValue.h: Added. 1073 * WebView/WebSerializedJSValue.mm: Added. 1074 (-[WebSerializedJSValue initWithValue:context:]): 1075 (-[WebSerializedJSValue deserialize:]): 1076 (-[WebSerializedJSValue dealloc]): 1077 10782009-11-20 Chris Fleizach <cfleizach@apple.com> 1079 1080 Reviewed by Beth Dakin. 1081 1082 WAI-ARIA: add support for 'math' role 1083 https://bugs.webkit.org/show_bug.cgi?id=31706 1084 1085 * WebCoreSupport/WebViewFactory.mm: 1086 (-[WebViewFactory AXARIAContentGroupText:]): 1087 10882009-11-19 Eric Carlson <eric.carlson@apple.com> 1089 1090 Reviewed by Dan Bernstein. 1091 1092 <rdar://problem/7035231> 1093 Support closed caption in <video> element 1094 1095 * WebCoreSupport/WebSystemInterface.m: 1096 (InitWebCoreSystemInterface): 1097 Add QTMovieHasClosedCaptions and QTMovieSetShowClosedCaptions. 1098 1099 * WebCoreSupport/WebViewFactory.mm: 1100 (-[WebViewFactory localizedMediaControlElementString:]): 1101 (-[WebViewFactory localizedMediaControlElementHelpText:]): 1102 Add accessibility help strings for media controller closed caption button. 1103 11042009-11-18 Michelangelo De Simone <micdesim@gmail.com> 1105 1106 Reviewed by Darin Adler. 1107 1108 Fix for <https://bugs.webkit.org/show_bug.cgi?id=27959>. 1109 Support for validationMessage attribute, as per HTML5 specs. 1110 1111 * WebCoreSupport/WebViewFactory.mm: 1112 (-[WebViewFactory validationMessageValueMissingText]): 1113 (-[WebViewFactory validationMessageTypeMismatchText]): 1114 (-[WebViewFactory validationMessagePatternMismatchText]): 1115 (-[WebViewFactory validationMessageTooLongText]): 1116 (-[WebViewFactory validationMessageRangeUnderflowText]): 1117 (-[WebViewFactory validationMessageRangeOverflowText]): 1118 (-[WebViewFactory validationMessageStepMismatchText]): 1119 11202009-11-18 Sam Weinig <sam@webkit.org> 1121 1122 Reviewed by Anders Carlsson. 1123 1124 Make the Mac Geolocation API async. 1125 1126 * WebCoreSupport/WebChromeClient.mm: 1127 (WebChromeClient::requestGeolocationPermissionForFrame): 1128 (-[WebGeolocationPolicyListener initWithGeolocation:]): 1129 (-[WebGeolocationPolicyListener allow]): 1130 (-[WebGeolocationPolicyListener deny]): 1131 Add WebGeolocationPolicyListener implementation of the new WebGeolocationPolicyListener 1132 protocol and use if to implement requestGeolocationPermissionForFrame using the new async 1133 API. 1134 1135 * WebCoreSupport/WebGeolocation.mm: Removed. 1136 * WebCoreSupport/WebGeolocationInternal.h: Removed. 1137 * WebCoreSupport/WebGeolocationMock.mm: Remove bogus include. 1138 * WebCoreSupport/WebGeolocationPrivate.h: Removed. 1139 * WebView/WebUIDelegatePrivate.h: Remove requestGeolocationPermission and add 1140 WebGeolocationPolicyListener protocol and decidePolicyForGeolocationRequestFromOrigin delegate 1141 method. 1142 11432009-11-18 Chris Marrin <cmarrin@apple.com> 1144 1145 Reviewed by Simon Fraser. 1146 1147 Add Preferences for WebKitShowDebugBorders and WebKitShowRepaintCounter 1148 https://bugs.webkit.org/show_bug.cgi?id=31601 1149 1150 These are used to debug accelerated compositing layers 1151 1152 * WebView/WebPreferenceKeysPrivate.h: 1153 * WebView/WebPreferences.mm: 1154 (+[WebPreferences initialize]): 1155 (-[WebPreferences showDebugBorders]): 1156 (-[WebPreferences setShowDebugBorders:]): 1157 (-[WebPreferences showRepaintCounter]): 1158 (-[WebPreferences setShowRepaintCounter:]): 1159 * WebView/WebPreferencesPrivate.h: 1160 * WebView/WebView.mm: 1161 (-[WebView _preferencesChangedNotification:]): 1162 11632009-11-17 Pavel Feldman <pfeldman@chromium.org> 1164 1165 Reviewed by Timothy Hatcher. 1166 1167 Web Inspector: Make DRT show web inspector for tests in inspector/ folder. 1168 - Updated DRT to show/close inspector for all tests under /inspector 1169 - Introduced LayoutTestController::setTimelineProfilingEnabled and 1170 WebInspector::setTimelineProfilingEnabled beside setJavaScriptProfilingEnabled 1171 - Removed reload on each inspector test 1172 - Renamed fast/inspector to fast/inspector-support in order not to trigger 1173 inspector for those. 1174 - Reimplemented timeline tests in order to get rid of reload there. 1175 - Moved tests that don't require harness into the fast group. 1176 1177 https://bugs.webkit.org/show_bug.cgi?id=31472 1178 1179 * WebInspector/WebInspector.h: 1180 * WebInspector/WebInspector.mm: 1181 (-[WebInspector isTimelineProfilingEnabled]): 1182 (-[WebInspector setTimelineProfilingEnabled:]): 1183 11842009-11-14 Chris Fleizach <cfleizach@apple.com> 1185 1186 Reviewed by Darin Adler. 1187 1188 Need to implement ARIA role="directory" 1189 https://bugs.webkit.org/show_bug.cgi?id=31516 1190 1191 Fix a spelling error in the comment of a localized (accessibility) string. 1192 1193 * WebCoreSupport/WebViewFactory.mm: 1194 (-[WebViewFactory AXARIAContentGroupText:]): 1195 11962009-11-14 Eric Carlson <eric.carlson@apple.com> 1197 1198 Reviewed by Oliver Hunt. 1199 1200 <rdar://problem/7287487> 1201 Do not use QuickTime version to detect media controller theme 1202 1203 * WebCoreSupport/WebSystemInterface.m: 1204 (InitWebCoreSystemInterface): Initialize wkMediaControllerThemeAvailable. 1205 12062009-11-13 Adam Roben <aroben@apple.com> 1207 1208 Tell the WebFrameLoadDelegate when window objects in isolated worlds 1209 are cleared 1210 1211 Fixes <http://webkit.org/b/31124>. 1212 1213 Reviewed by Dave Hyatt. 1214 1215 * WebCoreSupport/WebFrameLoaderClient.h: 1216 * WebCoreSupport/WebFrameLoaderClient.mm: 1217 (WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld): 1218 Replaced windowObjectCleared with this function. If the delegate 1219 implements it, call 1220 -webView:didClearWindowObjectForFrame:inScriptWorld:. Otherwise, if 1221 the passed-in world is the mainThreadNormalWorld(), call 1222 -webView:didClearWindowObject:forFrame:. 1223 1224 * WebView/WebDelegateImplementationCaching.h: Added a new entry in the 1225 frame load delegate implementation cache for the new delegate method. 1226 1227 * WebView/WebFrameLoadDelegatePrivate.h: 1228 * WebView/WebScriptWorld.mm: 1229 (allWorlds): Added. Returns a HashMap of all the WebScriptWorlds in 1230 existence. 1231 (-[WebScriptWorld initWithWorld:]): Add ourselves to allWorlds(). 1232 (-[WebScriptWorld dealloc]): Remove ourselves from allWorlds(). 1233 (+[WebScriptWorld findOrCreateWorld:]): Returns the existing 1234 WebScriptWorld for this DOMWrapperWorld, or a new one if one doesn't 1235 already exist. 1236 1237 * WebView/WebScriptWorldInternal.h: Declared +findOrCreateWorld:. 1238 1239 * WebView/WebView.mm: 1240 (-[WebView _cacheFrameLoadDelegateImplementations]): Cache the 1241 implementation of the new frame load delegate method. 1242 12432009-11-13 Adam Roben <aroben@apple.com> 1244 1245 Finish replacing worldIDs with world objects 1246 1247 The only remaining use of worldIDs was in a method only used by DRT 1248 for the isolated worlds tests. 1249 1250 Fixes <http://webkit.org/b/31414> Replace worldIDs with world objects 1251 1252 Reviewed by Mark Rowe. 1253 1254 * WebView/WebFrame.mm: 1255 (-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]): 1256 * WebView/WebFramePrivate.h: 1257 Renamed from 1258 _stringByEvaluatingJavaScriptInIsolatedWorld:WithGobalObject:FromString:. 1259 Now takes a WebScriptWorld instead of a worldID, so we don't need to 1260 maintain a map of worldID -> world anymore. 1261 12622009-11-12 Dan Bernstein <mitz@apple.com> 1263 1264 Reviewed by Adele Peterson. 1265 1266 When exiting full-screen video, rather than resetting the system UI 1267 mode, restore it to what it was when full-screen mode was entered. 1268 1269 * WebView/WebVideoFullscreenController.h: Cleaned up style, removed 1270 unnecessary imports, and added _savedUIMode and _savedUIOptions ivars. 1271 * WebView/WebVideoFullscreenController.mm: 1272 (-[WebVideoFullscreenController delegate]): Cleaned up style. 1273 (-[WebVideoFullscreenController setDelegate:]): Ditto. 1274 (-[WebVideoFullscreenController windowDidExitFullscreen]): Restore the 1275 system UI mode. 1276 (-[WebVideoFullscreenController windowDidEnterFullscreen]): Save the 1277 system UI mode. 1278 * WebView/WebView.mm: Added now-necessary import. 1279 12802009-11-12 Shinichiro Hamaji <hamaji@chromium.org> 1281 1282 Reviewed by Darin Adler. 1283 1284 externalRepresentation should take Frame as the argument 1285 https://bugs.webkit.org/show_bug.cgi?id=31393 1286 1287 No new tests as this is just a refactoring. 1288 1289 * Misc/WebCoreStatistics.mm: 1290 (-[WebFrame renderTreeAsExternalRepresentation]): 1291 12922009-11-12 Adam Roben <aroben@apple.com> 1293 1294 Replace worldIDs with world objects 1295 1296 WebScriptWorld is the new object that represents a world. The only 1297 place worldID is still used is in -[WebFrame 1298 _stringByEvaluatingJavaScriptInIsolatedWorld:WithGlobalObject:FromString:], 1299 but that will change soon. 1300 1301 Part of <http://webkit.org/b/31414> Implement new SPI for dealing with 1302 user scripts/stylesheets and isolated worlds 1303 1304 Reviewed by Sam Weinig. 1305 1306 * WebKit.exp: Export WebScriptWorld. 1307 1308 * WebView/WebFrame.mm: 1309 (-[WebFrame _stringByEvaluatingJavaScriptInIsolatedWorld:WithGlobalObject:FromString:]): 1310 Moved the bizarre world caching/creation logic that DRT depends on 1311 here from the findWorld function in ScriptController.cpp. Updated to 1312 use ScriptController::executeScriptInWorld instead of 1313 ScriptController::executeScriptInIsolatedWorld. 1314 (-[WebFrame _contextForWorld:]): Renamed from contextForWorldID:. Now 1315 takes a WebScriptWorld. 1316 1317 * WebView/WebFramePrivate.h: Replaced contextForWorldID: with 1318 _contextForWorld:. 1319 1320 * WebView/WebScriptWorld.h: Added. 1321 * WebView/WebScriptWorld.mm: Added. 1322 (-[WebScriptWorld initWithWorld:]): Store the passed-in world in our 1323 _private member. 1324 (-[WebScriptWorld init]): Create a new DOMWrapperWorld and pass it to 1325 -initWithWorld:. 1326 (-[WebScriptWorld dealloc]): Release _private. 1327 (+[WebScriptWorld standardWorld]): Returns a shared instance that 1328 represents WebCore's mainThreadNormalWorld(). 1329 (+[WebScriptWorld world]): Returns a new instance. 1330 (core): Returns the DOMWrapperWorld for this WebScriptWorld. 1331 1332 * WebView/WebScriptWorldInternal.h: Added. 1333 1334 * WebView/WebView.mm: 1335 (+[WebView _addUserScriptToGroup:world:source:url:whitelist:blacklist:injectionTime:]): 1336 (+[WebView _addUserStyleSheetToGroup:world:source:url:whitelist:blacklist:]): 1337 (+[WebView _removeUserScriptFromGroup:world:url:]): 1338 (+[WebView _removeUserStyleSheetFromGroup:world:url:]): 1339 (+[WebView _removeUserScriptsFromGroup:world:]): 1340 (+[WebView _removeUserStyleSheetsFromGroup:world:]): 1341 * WebView/WebViewPrivate.h: 1342 Changed these functions to take a WebScriptWorld instead of a worldID. 1343 13442009-11-12 Chris Fleizach <cfleizach@apple.com> 1345 1346 Reviewed by Darin Adler. 1347 1348 ARIA: add alert type roles 1349 https://bugs.webkit.org/show_bug.cgi?id=31392 1350 1351 * WebCoreSupport/WebViewFactory.mm: 1352 (-[WebViewFactory AXARIAContentGroupText:]): 1353 13542009-11-10 Daniel Bates <dbates@webkit.org> 1355 1356 Reviewed by Oliver Hunt. 1357 1358 https://bugs.webkit.org/show_bug.cgi?id=30754 1359 1360 Removed method draggedImage:movedTo: 1361 1362 * WebView/WebFrame.mm: 1363 * WebView/WebFrameInternal.h: 1364 * WebView/WebHTMLView.mm: 1365 13662009-11-10 Beth Dakin <bdakin@apple.com> 1367 1368 Reviewed by Darin Adler. 1369 1370 Small WebKit part of: 1371 Fix for <rdar://problem/7059710> 1372 -and corresponding- 1373 https://bugs.webkit.org/show_bug.cgi?id=31196 Implement -webkit- 1374 color-correction for CSS colors 1375 1376 * Misc/WebKitNSStringExtras.mm: 1377 (-[NSString _web_drawAtPoint:font:textColor:]): setFillColor now 1378 requires callers to pass a ColorSpace. 1379 13802009-11-10 Dan Bernstein <mitz@apple.com> 1381 1382 Reviewed by Eric Carlson and Darin Adler. 1383 1384 WebKit part of making full-screen video pause during scrubbing. 1385 1386 * WebView/WebVideoFullscreenHUDWindowController.h: Added _isScrubbing 1387 ivar. 1388 * WebView/WebVideoFullscreenHUDWindowController.mm: 1389 (-[WebVideoFullscreenHUDWindowController dealloc]): Assert that 1390 _isScrubbing is NO. 1391 (-[WebVideoFullscreenHUDWindowController endScrubbing]): Call 1392 HTMLMediaElement::endScrubbing(). 1393 (-[WebVideoFullscreenHUDWindowController timelinePositionChanged:]): 1394 If scrubbing has just begun, call HTMLMediaElement::beginScrubbing() 1395 and schedule -endScrubbing to be called when mouse tracking ends. 1396 13972009-11-09 Mark Mentovai <mark@chromium.org> 1398 1399 Reviewed by Dan Bernstein. 1400 1401 Track "can have scrollbar" state within FrameView independently of the 1402 individual scrollbar states in ScrollView. 1403 1404 rdar://problem/7215132, https://bugs.webkit.org/show_bug.cgi?id=29167 1405 REGRESSION (r48064): mint.com loses scrollbars after coming out of 1406 edit mode. 1407 1408 rdar://problem/7314421, https://bugs.webkit.org/show_bug.cgi?id=30517 1409 REGRESSION (r48064): Extra scroll bars in GarageBand Lesson Store. 1410 1411 Test: fast/overflow/scrollbar-restored.html 1412 1413 * WebView/WebFrameView.mm: 1414 (-[WebFrameView _install]): 1415 14162009-11-08 Dan Bernstein <mitz@apple.com> 1417 1418 Reviewed by Eric Carlson. 1419 1420 Made the full-screen video HUD appear when playback stops, such as when 1421 the end of the video is reached. 1422 1423 * WebView/WebVideoFullscreenHUDWindowController.h: Cleaned up. 1424 * WebView/WebVideoFullscreenHUDWindowController.mm: 1425 (-[WebVideoFullscreenHUDWindowController scheduleTimeUpdate]): Updated 1426 for the renaming of -updateRate to -updatePlayButton. 1427 (-[WebVideoFullscreenHUDWindowController updatePlayButton]): Renamed 1428 -updateRate to this. 1429 (-[WebVideoFullscreenHUDWindowController updateRate]): This method now 1430 responds to changes to the playback rate by updating the play button 1431 and showing or hiding the HUD as necessary. 1432 (-[WebVideoFullscreenHUDWindowController togglePlaying:]): Now only 1433 toggles playing. UI updates are driven by -updateRate being called. 1434 (-[WebVideoFullscreenHUDWindowController playing]): Cleaned up. 1435 14362009-11-02 Eric Carlson <eric.carlson@apple.com> 1437 1438 Reviewed by John Sullivan and Mark Rowe. 1439 1440 <rdar://problem/7356733> Voiceover does not read correct media controller time values 1441 1442 * WebCoreSupport/WebViewFactory.mm: 1443 (-[WebViewFactory localizedMediaTimeDescription:]): 1444 14452009-11-02 Dan Bernstein <mitz@apple.com> 1446 1447 Reviewed by Anders Carlsson. 1448 1449 Made the remaining time display show negative zero at the end of the 1450 video. 1451 1452 Made other cleanup. 1453 1454 * WebView/WebVideoFullscreenHUDWindowController.h: Reverted the types of 1455 _timeline and _volumeSlider to the more generic NSControl. 1456 * WebView/WebVideoFullscreenHUDWindowController.mm: 1457 (-[WebVideoFullscreenHUDWindowController scheduleTimeUpdate]): Cleaned 1458 up style. 1459 (-[WebVideoFullscreenHUDWindowController windowDidLoad]): Added an 1460 assertion that the cast to NSButton * is legal. Removed casts. 1461 (-[WebVideoFullscreenHUDWindowController updateTime]): Use 1462 -setValue:forKey: instead of an NSSlider method. 1463 (timeToString): Changed to support only non-negative values and 1464 simplified. 1465 (-[WebVideoFullscreenHUDWindowController remainingTimeText]): Always 1466 prepend a “-” to the time. 1467 14682009-11-02 Dan Bernstein <mitz@apple.com> 1469 1470 Reviewed by John Sullivan. 1471 1472 WebKit part of making the appearance of the full-screen video HUD match 1473 QuickTime Player X’s HUD. 1474 1475 * WebView/WebVideoFullscreenHUDWindowController.h: Removed unnecessary 1476 #import statements, cleaned up style, and changed _timeline, 1477 _volumeSlider and _playButton to have more specific types. 1478 * WebView/WebVideoFullscreenHUDWindowController.mm: Updated #import 1479 statements. 1480 (webkit_CGFloor): Added this helper function. 1481 (-[WebVideoFullscreenHUDWindowController init]): Cleaned up style. 1482 (createTimeTextField): Changed to use the bold system font. 1483 (-[WebVideoFullscreenHUDWindowController windowDidLoad]): Changed the 1484 subviews’ metrics and the text fields’ text alignment. 1485 (-[WebVideoFullscreenHUDWindowController updateTime]): Avoid conversion 1486 from double to float. 1487 (stringToTimeTextAttributed): Removed this useless function that 1488 returned an NSAttributedString masquerading as an NSString. 1489 (-[WebVideoFullscreenHUDWindowController remainingTimeText]): Removed 1490 call to stringToTimeTextAttributed(). 1491 (-[WebVideoFullscreenHUDWindowController elapsedTimeText]): Ditto. 1492 14932009-11-02 Chris Fleizach <cfleizach@apple.com> 1494 1495 Reviewed by Beth Dakin. 1496 1497 Support ARIA "tab" roles 1498 https://bugs.webkit.org/show_bug.cgi?id=30842 1499 1500 * WebCoreSupport/WebViewFactory.mm: 1501 (-[WebViewFactory AXARIAContentGroupText:]): 1502 15032009-11-01 Dan Bernstein <mitz@apple.com> 1504 1505 Reviewed by Mark Rowe. 1506 1507 Made the space bar toggle playing state in full-screen video when 1508 modifier keys are down. Made it do so without highlighting the 1509 Play/Pause button. 1510 1511 * WebView/WebVideoFullscreenHUDWindowController.mm: 1512 (-[WebVideoFullscreenHUDWindowController keyDown:]): 1513 15142009-11-01 Dan Bernstein <mitz@apple.com> 1515 1516 Reviewed by Mark Rowe. 1517 1518 Made the full-screen video HUD respond to the up and down arrow keys by 1519 increasing and decreasing the volume by 1/10 of the range or, when 1520 combined with the Option key, all the way up or down. 1521 1522 Made the volume buttons in the full-screen video HUD match the behavior 1523 of their equivalents in the QuickTime Player HUD by turning the volume 1524 all the way up or down. 1525 1526 Made the volume slider update immediately when the keyboard or volume 1527 buttons are used to change the volume, rather than at the nearest 1/4 1528 second interval. 1529 1530 Made the elapsed and remaining time displays update immediately when the 1531 play head is dragged across the timeline, rather than at 1/4 second 1532 intervals. 1533 1534 * WebView/WebVideoFullscreenHUDWindowController.mm: 1535 (-[WebVideoFullscreenHUDWindowController keyDown:]): Handle the up and 1536 down arrow keys. 1537 (-[WebVideoFullscreenHUDWindowController windowDidLoad]): Changed the 1538 actions of the volume up and volume down buttons. 1539 (-[WebVideoFullscreenHUDWindowController setCurrentTime:]): Call 1540 -updateTime. 1541 (-[WebVideoFullscreenHUDWindowController setVolumeToZero:]): Added this 1542 action for the volume down button. 1543 (-[WebVideoFullscreenHUDWindowController setVolumeToMaximum:]): Added 1544 this action for the volume up button. 1545 (-[WebVideoFullscreenHUDWindowController decrementVolume]): No longer 1546 and action method. 1547 (-[WebVideoFullscreenHUDWindowController incrementVolume]): Ditto. 1548 (-[WebVideoFullscreenHUDWindowController setVolume:]): Call 1549 -updateVolume. 1550 15512009-10-30 Evan Stade <estade@chromium.org> 1552 1553 Reviewed by David Levin. 1554 1555 Notify the chrome when the focused node has changed. 1556 https://bugs.webkit.org/show_bug.cgi?id=30832 1557 1558 Added stub implementation for new ChromeClient function. 1559 1560 * WebCoreSupport/WebChromeClient.h: 1561 * WebCoreSupport/WebChromeClient.mm: 1562 (WebChromeClient::focusedNodeChanged): 1563 15642009-10-30 Roland Steiner <rolandsteiner@chromium.org> 1565 1566 Reviewed by Eric Seidel. 1567 1568 Remove ENABLE_RUBY guards as discussed with Dave Hyatt and Maciej Stachowiak. 1569 1570 Bug 28420 - Implement HTML5 <ruby> rendering 1571 (https://bugs.webkit.org/show_bug.cgi?id=28420) 1572 1573 No new tests (no functional change). 1574 1575 * Configurations/FeatureDefines.xcconfig: 1576 15772009-10-29 Mark Rowe <mrowe@apple.com> 1578 1579 Reviewed by Oliver Hunt. 1580 1581 Validate the stopSpeaking: selector so that is not always enabled when a WebView is first responder. 1582 1583 * WebView/WebHTMLView.mm: 1584 (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): 1585 15862009-10-29 Anders Carlsson <andersca@apple.com> 1587 1588 Reviewed by Sam Weinig. 1589 1590 https://bugs.webkit.org/show_bug.cgi?id=30932 1591 <rdar://problem/7350269> 1592 1593 REGRESSION: Crash when turning on Private Browsing on site with flash. 1594 1595 Null check setValue. 1596 1597 * Plugins/WebNetscapePluginView.mm: 1598 (-[WebNetscapePluginView privateBrowsingModeDidChange]): 1599 16002009-10-29 Eric Carlson <eric.carlson@apple.com> 1601 1602 Reviewed by Kevin Decker. 1603 1604 Refactor some duplicate plug-in clean up code into shared functions. 1605 1606 * Plugins/WebPluginController.mm: 1607 (-[WebPluginController stopOnePlugin:]): New, stop a plug-in. 1608 (-[WebPluginController destroyOnePlugin:]): New, destroy plug-in. 1609 (-[WebPluginController stopAllPlugins]): Call stopOnePlugin. 1610 (-[WebPluginController destroyPlugin:]): Call stopOnePlugin and destroyOnePlugin. 1611 (-[WebPluginController destroyAllPlugins]): Call destroyOnePlugin. 1612 16132009-10-28 Eric Carlson <eric.carlson@apple.com> 1614 1615 Reviewed by Simon Fraser. 1616 1617 <rdar://problem/7303145> 1618 Can't exit full screen mode or restart movie after pressing command -R. 1619 1620 * WebView/WebVideoFullscreenController.mm: 1621 (-[WebVideoFullscreenController _requestExit]): 1622 New, call media element's exitFullscreen method. 1623 (-[WebVideoFullscreenController requestExitFullscreenWithAnimation:]): 1624 Call mediaElement->exitFullscreen() after a delay as it turns around and calls 1625 WebVideoFullscreenController:exitFullscreen. 1626 1627 * WebView/WebVideoFullscreenHUDWindowController.h: 1628 * WebView/WebVideoFullscreenHUDWindowController.mm: 1629 (-[WebVideoFullscreenHUDWindow resignFirstResponder]): 1630 New, don't give up responder status. 1631 (-[WebVideoFullscreenHUDWindow performKeyEquivalent:]): 1632 New, block all command key events. 1633 (-[WebVideoFullscreenHUDWindowController exitFullscreen:]): 1634 Remember when we are in the process of exiting fullscreen, don't allow recursion. 1635 1636 * WebView/WebView.mm: 1637 (-[WebView _exitFullscreen]): 1638 Early return if fullscreen controller is nil. 1639 1640 * WebView/WebWindowAnimation.h: 1641 Correct comment about _window retain status. 1642 * WebView/WebWindowAnimation.m: 1643 (-[WebWindowScaleAnimation dealloc]): 1644 Don't release _window, we never reatained it. 1645 16462009-10-27 Shinichiro Hamaji <hamaji@chromium.org> 1647 1648 Reviewed by Darin Adler. 1649 1650 Provide a way to get counter values with layoutTestContoller 1651 https://bugs.webkit.org/show_bug.cgi?id=30555 1652 1653 Add counterValueForElement in WebFrame to call WebCore::counterValueForElement. 1654 1655 * Misc/WebCoreStatistics.h: 1656 * Misc/WebCoreStatistics.mm: 1657 (-[WebFrame counterValueForElement:]): 1658 16592009-10-27 Geoffrey Garen <ggaren@apple.com> 1660 1661 Reviewed by Sam Weinig. 1662 1663 Updated for refactoring in the date code. 1664 1665 * WebView/WebView.mm: 1666 (aeDescFromJSValue): Since we just want a number of milliseconds, do that 1667 instead of something more complicated. 1668 16692009-10-26 Sam Weinig <sam@webkit.org> 1670 1671 Reviewed by Anders Carlsson. 1672 1673 Move some WebView event handling code into its own file, WebViewEventHandling.mm 1674 1675 * WebView/WebView.mm: 1676 (-[WebView _close]): 1677 (-[WebView _selectedOrMainFrame]): 1678 * WebView/WebViewEventHandling.mm: Added. 1679 (-[WebView _closingEventHandling]): 1680 (-[WebView _setMouseDownEvent:]): 1681 (-[WebView mouseDown:]): 1682 (-[WebView mouseUp:]): 1683 (+[WebView _updateMouseoverWithEvent:]): 1684 (-[WebView _updateMouseoverWithFakeEvent]): 1685 (_updateMouseoverWithEvent:fakeEvent::if): 1686 (-[WebView _stopAutoscrollTimer]): 1687 (-[WebView _setToolTip:]): 1688 * WebView/WebViewInternal.h: 1689 16902009-10-26 Simon Fraser <simon.fraser@apple.com> 1691 1692 Reviewed by Sam Weinig. 1693 1694 <rdar://problem/6988966> Hardware layers do not show up in page snapshots 1695 1696 * WebView/WebHTMLViewPrivate.h: 1697 * WebView/WebHTMLView.mm: 1698 (-[WebHTMLView _compositingLayersHostingView]): 1699 Add a private method that returns the NSView used to host compositing layers. 1700 17012009-10-23 Mark Rowe <mrowe@apple.com> 1702 1703 Fix engineering builds in the mysterious future. 1704 1705 * Configurations/DebugRelease.xcconfig: 1706 17072009-10-23 Gavin Barraclough <barraclough@apple.com> 1708 1709 Reviewed by Geoff Garen. 1710 1711 https://bugs.webkit.org/show_bug.cgi?id=30729 1712 Provide private API to request the global context for a specific world. 1713 Used to initialize parameters on the global object. 1714 1715 * WebView/WebFramePrivate.h: 1716 * WebView/WebFrame.mm: 1717 (-[WebFrame contextForWorldID:]): 1718 17192009-10-22 Eric Carlson <eric.carlson@apple.com> 1720 1721 Reviewed by John Sullivan. 1722 1723 <rdar://problem/7322847> 1724 Pressing space bar key in full screen mode should pause movie but doesn't 1725 1726 * WebView/WebVideoFullscreenHUDWindowController.mm: 1727 (-[WebVideoFullscreenHUDWindowController keyDown:]): New, toggle playback on space key. 1728 (-[WebVideoFullscreenHUDWindowController windowDidLoad]): Play button action is now called togglePlaying. 1729 (-[WebVideoFullscreenHUDWindowController togglePlaying:]): Rename from playingChanged. 1730 17312009-10-22 Gavin Barraclough <barraclough@apple.com> 1732 1733 Reviewed by NOBODY (build fix). 1734 Build fix following bug #30696. 1735 1736 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 1737 (WebKit::NetscapePluginInstanceProxy::getWindowNPObject): 1738 (WebKit::NetscapePluginInstanceProxy::evaluate): 1739 (WebKit::NetscapePluginInstanceProxy::invoke): 1740 (WebKit::NetscapePluginInstanceProxy::invokeDefault): 1741 (WebKit::NetscapePluginInstanceProxy::construct): 1742 (WebKit::NetscapePluginInstanceProxy::getProperty): 1743 (WebKit::NetscapePluginInstanceProxy::setProperty): 1744 (WebKit::NetscapePluginInstanceProxy::removeProperty): 1745 (WebKit::NetscapePluginInstanceProxy::hasProperty): 1746 (WebKit::NetscapePluginInstanceProxy::hasMethod): 1747 (WebKit::NetscapePluginInstanceProxy::enumerate): 1748 17492009-10-16 Gavin Barraclough <barraclough@apple.com> 1750 1751 Reviewed by Sam Weinig & Geoff Garen. 1752 1753 https://bugs.webkit.org/show_bug.cgi?id=30696 1754 Update to incorporate support for IsolatedWorlds in JSC bindings. 1755 1756 * WebView/WebFrame.mm: 1757 (-[WebFrame _attachScriptDebugger]): 1758 (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): 1759 (-[WebFrame globalContext]): 1760 * WebView/WebScriptDebugDelegate.mm: 1761 (-[WebScriptCallFrame evaluateWebScript:]): 1762 * WebView/WebView.mm: 1763 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): 1764 17652009-10-22 Eric Carlson <eric.carlson@apple.com> 1766 1767 Reviewed by Dan Bernstein & Simon Fraser. 1768 1769 <rdar://problem/7297717> 1770 https://bugs.webkit.org/show_bug.cgi?id=30323 1771 Play/pause button in full-screen video controller does not reflect current state 1772 1773 * WebView/WebVideoFullscreenController.mm: 1774 (-[WebVideoFullscreenController setMediaElement:WebCore::]): Register for QTMovieRateDidChangeNotification 1775 (-[WebVideoFullscreenController rateChanged:]): Call HUD controller when rate changes. 1776 1777 * WebView/WebVideoFullscreenHUDWindowController.h: 1778 * WebView/WebVideoFullscreenHUDWindowController.mm: 1779 (-[WebVideoFullscreenHUDWindowController scheduleTimeUpdate]): Call updateRate so play button 1780 reflects playback state. 1781 (-[WebVideoFullscreenHUDWindowController updateRate]): New, set play button state according to 1782 movie state. 1783 (-[WebVideoFullscreenHUDWindowController playingChanged:]): Only call [self playing] once. 1784 17852009-10-21 John Sullivan <sullivan@apple.com> 1786 1787 Rubber-stamped by Dan Bernstein. 1788 1789 * WebView/WebDynamicScrollBarsView.h: 1790 Corrected a couple of long-obsolete comments regarding Safari's use of this class. 1791 17922009-10-20 Dan Bernstein <mitz@apple.com> 1793 1794 Rubber-stamped by Mark Rowe. 1795 1796 <rdar://problem/7319749> REGRESSION(r49806): Contextual Menu items missing 1797 https://bugs.webkit.org/show_bug.cgi?id=30568 1798 1799 Revert accidental change from r49806. 1800 1801 * WebCoreSupport/WebContextMenuClient.mm: 1802 (WebContextMenuClient::getCustomMenuFromDefaultItems): 1803 18042009-10-20 Fumitoshi Ukai <ukai@chromium.org> 1805 1806 Reviewed by David Levin. 1807 1808 Removed WebSocket runtime settings. 1809 https://bugs.webkit.org/show_bug.cgi?id=29896 1810 1811 WebSocket runtime configuration is supported by chromium/v8 only. 1812 1813 * WebView/WebPreferenceKeysPrivate.h: 1814 * WebView/WebPreferences.mm: 1815 (+[WebPreferences initialize]): 1816 * WebView/WebPreferencesPrivate.h: 1817 * WebView/WebView.mm: 1818 (-[WebView _preferencesChangedNotification:]): 1819 18202009-10-19 Nate Chapin <japhet@chromium.org> 1821 1822 Reviewed by Alexey Proskuryakov. 1823 1824 Update call to loadFrameRequest to match new parameters. 1825 1826 * WebView/WebPDFView.mm: 1827 (-[WebPDFView PDFViewWillClickOnLink:withURL:]): Update call to loadFrameRequest. 1828 18292009-10-19 David Kilzer <ddkilzer@apple.com> 1830 1831 Documentation fix for -[NSObject(WebResourceLoadDelegate) webView:resource:willSendRequest:redirectResponse:fromDataSource:] 1832 1833 Reviewed by Dan Bernstein. 1834 1835 * WebView/WebResourceLoadDelegate.h: Prepended "webView:" to the 1836 @method declaration of 1837 -webView:resource:willSendRequest:redirectResponse:fromDataSource: 1838 which was absent before r3953 and was missed during the great 1839 documentation clean up of r4269. 1840 18412009-10-19 Anders Carlsson <andersca@apple.com> 1842 1843 Fix build. 1844 1845 * Plugins/WebNetscapePluginView.mm: 1846 (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]): 1847 18482009-10-19 Dan Bernstein <mitz@apple.com> 1849 1850 Reviewed by Anders Carlsson. 1851 1852 Split assertions of conjunctions into separate statements or remove 1853 redundant assertions. 1854 1855 * Plugins/Hosted/NetscapePluginHostProxy.mm: 1856 (WebKit::NetscapePluginHostProxy::deadNameNotificationCallback): 1857 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 1858 (-[WebHostedNetscapePluginView setAttributeKeys:andValues:]): 1859 (-[WebHostedNetscapePluginView _webPluginContainerCancelCheckIfAllowedToLoadRequest:]): 1860 * Plugins/WebBaseNetscapePluginView.mm: 1861 (-[WebBaseNetscapePluginView halt]): 1862 (-[WebBaseNetscapePluginView resumeFromHalt]): 1863 * Plugins/WebNetscapePluginView.mm: 1864 (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]): 1865 (-[WebNetscapePluginView _webPluginContainerCancelCheckIfAllowedToLoadRequest:]): 1866 * WebCoreSupport/WebContextMenuClient.mm: 1867 (WebContextMenuClient::getCustomMenuFromDefaultItems): 1868 * WebCoreSupport/WebEditorClient.mm: 1869 (WebEditorClient::checkGrammarOfString): 1870 (WebEditorClient::checkTextOfParagraph): 1871 * WebView/WebTextCompletionController.mm: 1872 (-[WebTextCompletionController _reflectSelection]): 1873 18742009-10-18 Mark Rowe <mrowe@apple.com> 1875 1876 Reviewed by Dan Bernstein. 1877 1878 <rdar://problem/7309062> Crashes in WebCore::DocumentLoader::isStopping below WebKit::NetscapePluginInstanceProxy::loadRequest. 1879 1880 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 1881 (WebKit::NetscapePluginInstanceProxy::loadRequest): Null-check the DocumentLoader before deferencing it. 1882 18832009-10-16 Kevin Decker <kdecker@apple.com> 1884 1885 Reviewed by Jon Honeycutt. 1886 1887 <rdar://problem/7304575> 1888 1889 * Plugins/WebBaseNetscapePluginView.h: Added new boolean ivar and -hasBeenHalted instance method. 1890 * Plugins/WebBaseNetscapePluginView.mm: 1891 (-[WebBaseNetscapePluginView halt]):Update _hasBeenHalted. 1892 (-[WebBaseNetscapePluginView hasBeenHalted]): Added. 1893 * WebView/WebView.mm: 1894 (+[WebView _hasPluginForNodeBeenHalted:]): Checks to see if a plug-in node's been halted. 1895 * WebView/WebViewPrivate.h: Added -_hasPluginForNodeBeenHalted method. 1896 18972009-10-16 Kevin Decker <kdecker@apple.com> 1898 1899 Reviewed by Anders Carlson. 1900 1901 Small code cleanup 1902 1903 * Plugins/WebBaseNetscapePluginView.mm: 1904 (WebHaltablePlugin::halt): Just call -[WebBaseNetscapePluginView halt]. 1905 (WebHaltablePlugin::restart): Just call -[WebBaseNetscapePluginView resumeFromHalt] 1906 (-[WebBaseNetscapePluginView halt]): 1907 (-[WebBaseNetscapePluginView resumeFromHalt]): 1908 * WebView/WebView.mm: 1909 (_pluginViewForNode): Added a check if a render is a widget. This prevents a later assertion. 1910 19112009-10-16 Kevin Decker <kdecker@apple.com> 1912 1913 Reviewed by Anders Carlson. 1914 1915 Last part of: 1916 <rdar://problem/7273354> 1917 1918 * WebView/WebView.mm: 1919 (_pluginViewForNode): Added with code extracted from _isNodeHaltedPlugin 1920 (+[WebView _isNodeHaltedPlugin:]): Made this a class method. 1921 (+[WebView _restartHaltedPluginForNode:]): Added. Restarts a plug-in 1922 * WebView/WebViewPrivate.h: Added +_restartHaltedPluginForNode to header. 1923 19242009-10-16 Kevin Decker <kdecker@apple.com> 1925 1926 Reviewed by Anders. 1927 1928 <rdar://problem/7273354> 1929 1930 * Plugins/WebBaseNetscapePluginView.h: Added _isHalted ivar and three new methods: -halt, -resumeFromHalt, and -isHalted 1931 * Plugins/WebBaseNetscapePluginView.mm: 1932 (WebHaltablePlugin::halt): Call -halt instead of -stop. 1933 (WebHaltablePlugin::restart):Call -resumeFromHalt instead of -start. 1934 (-[WebBaseNetscapePluginView halt]): Added. Stop the plug-in, update _isHalted. 1935 (-[WebBaseNetscapePluginView resumeFromHalt]): Added. Start the plug-in, update _isHalted. 1936 (-[WebBaseNetscapePluginView isHalted]): Added. 1937 * WebView/WebView.mm: 1938 (-[WebView _isNodeHaltedPlugin:]): Added. Queries a DOMNode to determine if it's a halted plug-in. 1939 * WebView/WebViewPrivate.h: Added _isNodeHaltedPlugin. 1940 19412009-10-15 Eric Carlson <eric.carlson@apple.com> 1942 1943 Reviewed by Adele Peterson. 1944 1945 <rdar://problem/7306052> Fullscreen max/min volume buttons non-functional 1946 1947 * WebView/WebVideoFullscreenHUDWindowController.mm: 1948 (-[WebVideoFullscreenHUDWindowController windowDidLoad]): Set volume buttons target and action. 1949 (-[WebVideoFullscreenHUDWindowController decrementVolume:]): New, decrement the volume by 10%. 1950 (-[WebVideoFullscreenHUDWindowController incrementVolume:]): New, increment the volume by 10%. 1951 19522009-10-15 Eric Carlson <eric.carlson@apple.com> 1953 1954 Reviewed by Simon Fraser. 1955 1956 <rdar://problem/7295738> No way to mute/unmute a movie in full screen video mode 1957 1958 * WebView/WebVideoFullscreenHUDWindowController.mm: 1959 (-[WebVideoFullscreenHUDWindowController setVolume:]): Unmute movie before changing volume. 1960 19612009-10-14 Kevin Decker <kdecker@apple.com> 1962 1963 Unbreak the world. 1964 1965 * Plugins/WebBaseNetscapePluginView.mm: 1966 (WebHaltablePlugin::restart): 1967 19682009-10-14 Kevin Decker <kdecker@apple.com> 1969 1970 Reviewed by Anders Carlsson and Jon Honeycutt 1971 1972 <rdar://problem/7304295> snapshots of halted plug-ins are missing 1973 1974 * Plugins/WebBaseNetscapePluginView.mm: Move bodies of WebHaltablePlugin virtual functions from WebHaltablePlugin class definition. 1975 (WebHaltablePlugin::halt): Provide a substitute image to the RenderWidget for the plug-in view. 1976 (WebHaltablePlugin::restart): Clear the substitute image. 1977 19782009-10-13 Dave Hyatt <hyatt@apple.com> 1979 1980 Reviewed by Adam Roben. 1981 1982 Change the order of arguments on some methods. Split removal for user stylesheets and script into 1983 separate functions based off the type of object being removed. 1984 1985 * WebView/WebView.mm: 1986 (+[WebView _addUserScriptToGroup:worldID:source:url:whitelist:blacklist:injectionTime:]): 1987 (+[WebView _addUserStyleSheetToGroup:worldID:source:url:whitelist:blacklist:]): 1988 (+[WebView _removeUserScriptFromGroup:worldID:url:]): 1989 (+[WebView _removeUserStyleSheetFromGroup:worldID:url:]): 1990 (+[WebView _removeUserScriptsFromGroup:worldID:]): 1991 (+[WebView _removeUserStyleSheetsFromGroup:worldID:]): 1992 * WebView/WebViewPrivate.h: 1993 19942009-10-13 Anders Carlsson <andersca@apple.com> 1995 1996 Reviewed by Sam Weinig. 1997 1998 <rdar://problem/6660507> Add "privacy mode" to Netscape Plug-in API 1999 2000 Listen for WebPreferences notifications and update the _isPrivateBrowsingEnabled ivar 2001 when the value changes. Also call -[WebBaseNetscapePluginView privateBrowsingModeDidChange] when the 2002 value changes. In process this just calls NPP_SetValue, and OOP it sends a MIG message to the plug-in host. 2003 2004 * Plugins/Hosted/NetscapePluginHostManager.h: 2005 * Plugins/Hosted/NetscapePluginHostManager.mm: 2006 (WebKit::NetscapePluginHostManager::instantiatePlugin): 2007 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 2008 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 2009 (WebKit::NetscapePluginInstanceProxy::privateBrowsingModeDidChange): 2010 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 2011 (-[WebHostedNetscapePluginView createPlugin]): 2012 (-[WebHostedNetscapePluginView privateBrowsingModeDidChange]): 2013 * Plugins/Hosted/WebKitPluginHost.defs: 2014 * Plugins/WebBaseNetscapePluginView.h: 2015 * Plugins/WebBaseNetscapePluginView.mm: 2016 (-[WebBaseNetscapePluginView privateBrowsingModeDidChange]): 2017 (-[WebBaseNetscapePluginView viewDidMoveToWindow]): 2018 (-[WebBaseNetscapePluginView preferencesHaveChanged:]): 2019 * Plugins/WebNetscapePluginView.mm: 2020 (-[WebNetscapePluginView privateBrowsingModeDidChange]): 2021 (-[WebNetscapePluginView getVariable:value:]): 2022 20232009-10-12 Simon Fraser <simon.fraser@apple.com> 2024 2025 Reviewed by Darin Adler. 2026 2027 Video keeps playing after going fullscreen, then closing window 2028 https://bugs.webkit.org/show_bug.cgi?id=30164 2029 2030 Clear the QTMovie on the QTMovieView when coming out of fullscreen, 2031 to fix issue where the underlying movie keeps playing. 2032 2033 * WebView/WebVideoFullscreenController.mm: 2034 (-[WebVideoFullscreenController windowDidExitFullscreen]): 2035 20362009-10-11 Dan Bernstein <mitz@apple.com> 2037 2038 Reviewed by Darin Adler. 2039 2040 <rdar://problem/7294267> REGRESSION (r48492): Gmail voice and video chat 2041 doesn’t work 2042 https://bugs.webkit.org/show_bug.cgi?id=30295 2043 2044 Test: plugins/setProperty.html 2045 2046 * Plugins/Hosted/ProxyInstance.mm: 2047 (WebKit::ProxyInstance::setFieldValue): Fixed a typo. The function 2048 should return early if m_instanceProxy is null. 2049 20502009-10-09 Adam Barth <abarth@webkit.org> 2051 2052 Reviewed by Darin Adler. 2053 2054 Factor HistoryController out of FrameLoader 2055 https://bugs.webkit.org/show_bug.cgi?id=30246 2056 2057 Update API call. 2058 2059 * WebCoreSupport/WebFrameLoaderClient.mm: 2060 (WebFrameLoaderClient::restoreViewState): 2061 * WebView/WebView.mm: 2062 (-[WebView _loadBackForwardListFromOtherView:]): 2063 20642009-10-09 Mark Rowe <mrowe@apple.com> 2065 2066 Reviewed by Brady Eidson. 2067 2068 <rdar://problem/7290671> Crash after navigating away from a page with subframe containing plug-in 2069 2070 At the time that -stop is called on a WebBaseNetscapePluginView that is contained within a subframe 2071 the WebFrame's data source has been zeroed out. This was causing -[WebBaseNetscapePluginView webFrame] 2072 to return nil during -stop, preventing the plug-in view from unregistering itself from the PluginHalter. 2073 We fix this by having -webFrame retrieve the frame directly rather than retrieving it from the data source. 2074 2075 * Plugins/WebBaseNetscapePluginView.mm: 2076 (-[WebBaseNetscapePluginView dataSource]): Get the data source from the WebFrame. 2077 (-[WebBaseNetscapePluginView webFrame]): Get the Frame directly from the element's document rather 2078 than taking a windy route through the WebDataSource. 2079 20802009-10-09 Brady Eidson <beidson@apple.com> 2081 2082 Reviewed by Dan Bernstein. 2083 2084 Add SPI to specifically enable visited link tracking. 2085 2086 * History/WebHistory.mm: 2087 (+[WebHistory _setVisitedLinkTrackingEnabled:]): 2088 * History/WebHistoryPrivate.h: 2089 20902009-10-08 Jon Honeycutt <jhoneycutt@apple.com> 2091 2092 Remove the WebKitPluginHalterEnabledPreferenceKey in favor of checking 2093 for the existence of a PluginHalterDelegate. 2094 2095 Reviewed by Dan Bernstein. 2096 2097 * WebCoreSupport/WebPluginHalterClient.h: 2098 Add declaration for new function. 2099 2100 * WebCoreSupport/WebPluginHalterClient.mm: 2101 (WebPluginHalterClient::enabled): 2102 Check whether the UIDelegate responds to shouldHaltPlugin. 2103 2104 * WebView/WebPreferenceKeysPrivate.h: 2105 Remove the "enabled" preference key. 2106 2107 * WebView/WebPreferences.mm: 2108 (+[WebPreferences initialize]): 2109 Remove the initialization of the pref. 2110 2111 * WebView/WebPreferencesPrivate.h: 2112 Remove the getter/setter for this pref. 2113 2114 * WebView/WebView.mm: 2115 (-[WebView _preferencesChangedNotification:]): 2116 Remove propagation of the pref. 2117 21182009-10-08 Adam Barth <abarth@webkit.org> 2119 2120 Reviewed by Eric Seidel. 2121 2122 Move executeScript from FrameLoader to ScriptController 2123 https://bugs.webkit.org/show_bug.cgi?id=30200 2124 2125 Update API call. 2126 2127 * WebView/WebFrame.mm: 2128 (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): 2129 * WebView/WebView.mm: 2130 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): 2131 21322009-10-08 Brady Eidson <beidson@apple.com> 2133 2134 Reviewed by Dan Bernstein. 2135 2136 Ask the History Delegate to populate the visited links hash. 2137 <rdar://problem/7285293> and https://webkit.org/b/29904 2138 2139 * History/WebHistory.mm: 2140 (+[WebHistory _removeAllVisitedLinks]): 2141 * History/WebHistoryPrivate.h: 2142 * WebCoreSupport/WebChromeClient.mm: 2143 (WebChromeClient::populateVisitedLinks): 2144 * WebView/WebDelegateImplementationCaching.h: 2145 * WebView/WebDelegateImplementationCaching.mm: 2146 (CallHistoryDelegate): 2147 * WebView/WebHistoryDelegate.h: 2148 * WebView/WebView.mm: 2149 (-[WebView _cacheHistoryDelegateImplementations]): 2150 (-[WebView addVisitedLinks:]): 2151 * WebView/WebViewPrivate.h: 2152 21532009-10-08 Anders Carlsson <andersca@apple.com> 2154 2155 Reviewed by Sam Weinig. 2156 2157 Remove the shouldLoadMediaElementURL implementation. 2158 2159 * WebCoreSupport/WebFrameLoaderClient.h: 2160 * WebCoreSupport/WebFrameLoaderClient.mm: 2161 * WebView/WebPolicyDelegatePrivate.h: 2162 21632009-10-07 Simon Fraser <simon.fraser@apple.com> 2164 2165 Re-land 49269-49271 since reverting them did not fix the tests. 2166 2167 * WebView/WebHTMLView.mm: 2168 (-[WebHTMLView drawRect:]): 2169 21702009-10-07 Simon Fraser <simon.fraser@apple.com> 2171 2172 Revert 49269-49271 to see if it fixes test failures on SnowLeopard that do not 2173 reproduce locally. 2174 2175 * WebView/WebHTMLView.mm: 2176 (-[WebHTMLView drawRect:]): 2177 21782009-10-07 Adam Barth <abarth@webkit.org> 2179 2180 Reviewed by Darin Adler. 2181 2182 Factor PolicyChecker out of FrameLoader 2183 https://bugs.webkit.org/show_bug.cgi?id=30155 2184 2185 Move the policy callback to the policy object. 2186 2187 * WebCoreSupport/WebFrameLoaderClient.mm: 2188 (WebFrameLoaderClient::dispatchWillSubmitForm): 2189 (WebFrameLoaderClient::receivedPolicyDecison): 2190 21912009-10-07 Brady Eidson <beidson@apple.com> 2192 2193 Reviewed by Darin Adler. 2194 2195 Send title changes to the global history delegate. 2196 <rdar://problem/7285293> and https://webkit.org/b/29904 2197 2198 * WebCoreSupport/WebFrameLoaderClient.mm: 2199 (WebFrameLoaderClient::setTitle): 2200 * WebView/WebDelegateImplementationCaching.h: 2201 * WebView/WebHistoryDelegate.h: 2202 * WebView/WebView.mm: 2203 (-[WebView _cacheHistoryDelegateImplementations]): 2204 22052009-10-07 Darin Adler <darin@apple.com> 2206 2207 Reviewed by John Sullivan. 2208 2209 Make the setMetadataURL function foolproof by having it remove user info 2210 https://bugs.webkit.org/show_bug.cgi?id=30178 2211 rdar://problem/6544670 2212 2213 * Misc/WebNSFileManagerExtras.m: 2214 (-[NSFileManager _webkit_setMetadataURL:referrer:atPath:]): 2215 Call _web_URLByRemovingUserInfo on the passed in URL string after converting 2216 it to a URL, and then convert it back to a string. 2217 2218 * Misc/WebNSURLExtras.h: Added _web_URLByRemovingUserInfo. 2219 * Misc/WebNSURLExtras.mm: Removed unused WebKitURLComponents struct. 2220 (-[NSURL _web_URLByTruncatingOneCharacterBeforeComponent:]): Renamed to be 2221 clearer on what this does. 2222 (-[NSURL _webkit_URLByRemovingFragment]): Changed to call new name. 2223 (-[NSURL _webkit_URLByRemovingResourceSpecifier]): Ditto. 2224 (-[NSURL _web_URLByRemovingComponentAndSubsequentCharacter:]): Added. 2225 (-[NSURL _web_URLByRemovingUserInfo]): Added. 2226 22272009-10-07 Simon Fraser <simon.fraser@apple.com> 2228 2229 Make Dan Bernstein happy. 2230 2231 * WebView/WebHTMLView.mm: 2232 (-[WebHTMLView drawRect:]): 2233 22342009-10-07 Simon Fraser <simon.fraser@apple.com> 2235 2236 Reviewed by Dan Bernstein. 2237 2238 Avoid Obj-C message dispatch when possible by storing accessed objects 2239 in local variables. 2240 2241 * WebView/WebHTMLView.mm: 2242 (-[WebHTMLView drawRect:]): 2243 22442009-10-07 Simon Fraser <simon.fraser@apple.com> 2245 2246 Reviewed by Dan Bernstein. 2247 2248 Animation stalls for a few seconds partway through 2249 https://bugs.webkit.org/show_bug.cgi?id=30182 2250 2251 Make sure that we only call -disableScreenUpdatesUntilFlush when a window 2252 update is actually going to happen, otherwise screen updates are disabled 2253 for too long. 2254 2255 * WebView/WebHTMLView.mm: 2256 (-[WebHTMLView drawRect:]): 2257 22582009-10-06 Pavel Feldman <pfeldman@chromium.org> 2259 2260 Reviewed by Timothy Hatcher. 2261 2262 Web Inspector: default to an attached inspector window on Windows (as on Mac). 2263 2264 https://bugs.webkit.org/show_bug.cgi?id=30134 2265 2266 * WebCoreSupport/WebInspectorClient.mm: 2267 (-[WebInspectorWindowController showWindow:]): 2268 22692009-10-06 Adam Barth <abarth@webkit.org> 2270 2271 Reviewed by Eric Seidel. 2272 2273 Move FrameLoader::canLoad to SecurityOrigin 2274 https://bugs.webkit.org/show_bug.cgi?id=30111 2275 2276 * Plugins/Hosted/HostedNetscapePluginStream.mm: 2277 (WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream): 2278 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 2279 (WebKit::NetscapePluginInstanceProxy::loadRequest): 2280 * Plugins/WebBaseNetscapePluginStream.mm: 2281 (WebNetscapePluginStream::WebNetscapePluginStream): 2282 * Plugins/WebNetscapePluginView.mm: 2283 (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): 2284 * Plugins/WebPluginContainerCheck.mm: 2285 (-[WebPluginContainerCheck _isForbiddenFileLoad]): 2286 * WebView/WebFrame.mm: 2287 (-[WebFrame _allowsFollowingLink:]): 2288 22892009-10-06 Adam Barth <abarth@webkit.org> 2290 2291 Reviewed by Eric Seidel. 2292 2293 Move setLocalLoadPolicy and friends to SecurityOrigin 2294 https://bugs.webkit.org/show_bug.cgi?id=30110 2295 2296 Call the new API. 2297 2298 * WebView/WebView.mm: 2299 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): 2300 23012009-10-06 Simon Fraser <simon.fraser@apple.com> 2302 2303 Reviewed by Mark Rowe. 2304 2305 accessibility/media-element.html crashes (and has incorrect result) 2306 https://bugs.webkit.org/show_bug.cgi?id=30108 2307 2308 Fix up the accessibilty label for the newly added fullscreen button, 2309 and update the test result accordingly. 2310 2311 * WebCoreSupport/WebViewFactory.mm: 2312 (-[WebViewFactory localizedMediaControlElementString:]): 2313 Handle "ControlsPanel" which is just an empty container, to avoid 2314 asserting in debug builds. 2315 23162009-10-06 Daniel Bates <dbates@webkit.org> 2317 2318 Reviewed by Eric Seidel. 2319 2320 https://bugs.webkit.org/show_bug.cgi?id=30107 2321 2322 Fixes an issue where the Mac build does return the correct drop effect 2323 with respect to the HTML 5 specification when effectAllowed == "none". 2324 2325 Currently, when effectAllowed == "none" and dropEffect == "copy" or 2326 dropEffect == "move" the resulting drop effect is "copy" and "move", 2327 respectively. However, the HTML 5 specification states that regardless 2328 of the specified dropEffect, when effectAllowed == "none" the resulting 2329 drop effect should be "none". 2330 2331 * WebView/WebHTMLView.mm: 2332 (-[WebHTMLView draggingSourceOperationMaskForLocal:]): 2333 23342009-10-06 Pavel Feldman <pfeldman@chromium.org> 2335 2336 Reviewed by Timothy Hatcher. 2337 2338 Web Inspector: close inspector client view on 2339 InspectorController::close API call. 2340 2341 In order to run batch web inspector layout tests (and not affect 2342 subsequent tests) we should close inspector client's view upon 2343 InspectorController::close API call. 2344 2345 https://bugs.webkit.org/show_bug.cgi?id=30009 2346 2347 * WebCoreSupport/WebInspectorClient.mm: 2348 (WebInspectorClient::createPage): 2349 23502009-10-05 Dan Bernstein <mitz@apple.com> 2351 2352 Rubber-stamped by Mark Rowe. 2353 2354 Moved a WebPluginHalterClient out of the WebCore namesapce. 2355 2356 * WebCoreSupport/WebPluginHalterClient.h: 2357 23582009-10-05 Kevin Decker <kdecker@apple.com> 2359 2360 Reviewed by Dan Bernstein. 2361 2362 Added new PluginHalter client, delegate and few more WebPreferences keys. 2363 2364 * WebView/WebPreferenceKeysPrivate.h: Added two new keys. 2365 * WebView/WebPreferences.mm: 2366 (+[WebPreferences initialize]): Initialize newly added key. 2367 (-[WebPreferences pluginAllowedRunTime]): Added. 2368 (-[WebPreferences setPluginAllowedRunTime:]): Added. 2369 * WebView/WebPreferencesPrivate.h: Added above two methods. 2370 * WebView/WebUIDelegatePrivate.h: Added shouldHaltPlugin delegate. 2371 * WebView/WebView.mm: 2372 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): 2373 Setup a new WebPluginHalterClient. 2374 (-[WebView _preferencesChangedNotification:]): Update WebCore settings accordingly. 2375 * WebCoreSupport/WebPluginHalterClient.h: Added. 2376 * WebCoreSupport/WebPluginHalterClient.mm: Added. 2377 (WebPluginHalterClient::WebPluginHalterClient): 2378 (WebPluginHalterClient::shouldHaltPlugin): Added, invoke the delegate. 2379 23802009-10-05 Simon Fraser <simon.fraser@apple.com> 2381 2382 More build fixes for Tiger. 2383 2384 * WebView/WebVideoFullscreenController.mm: 2385 23862009-10-05 Simon Fraser <simon.fraser@apple.com> 2387 2388 More build fixes for Tiger. 2389 2390 * WebView/WebVideoFullscreenController.mm: 2391 (-[WebVideoFullscreenWindow animationDidEnd:]): 2392 * WebView/WebWindowAnimation.m: 2393 23942009-10-05 Simon Fraser <simon.fraser@apple.com> 2395 2396 More build fixes for Tiger. 2397 2398 * WebView/WebVideoFullscreenController.mm: 2399 * WebView/WebVideoFullscreenHUDWindowController.mm: 2400 (-[WebVideoFullscreenHUDWindow initWithContentRect:styleMask:backing:defer:]): 2401 (-[WebVideoFullscreenHUDWindowController scheduleTimeUpdate]): 2402 (-[WebVideoFullscreenHUDWindowController fadeWindowIn]): 2403 (-[WebVideoFullscreenHUDWindowController fadeWindowOut]): 2404 (-[WebVideoFullscreenHUDWindowController closeWindow]): 2405 24062009-10-05 Simon Fraser <simon.fraser@apple.com> 2407 2408 Build fixes for Tiger. 2409 2410 * WebView/WebVideoFullscreenHUDWindowController.h: 2411 * WebView/WebVideoFullscreenHUDWindowController.mm: 2412 (-[WebVideoFullscreenHUDWindow initWithContentRect:styleMask:backing:defer:]): 2413 (-[WebVideoFullscreenHUDWindowController dealloc]): 2414 (-[WebVideoFullscreenHUDWindowController closeWindow]): 2415 (-[WebVideoFullscreenHUDWindowController windowDidLoad]): 2416 24172009-10-05 Simon Fraser <simon.fraser@apple.com> 2418 2419 Build fix. If you call Node::hasTagName(), you also have to include Element.h. 2420 2421 * WebCoreSupport/WebChromeClient.mm: 2422 24232009-10-05 Pierre d'Herbemont <pdherbemont@webkit.org> 2424 2425 Reviewed by Simon Fraser 2426 2427 Support fullscreen in MediaPlayer (Mac) 2428 https://bugs.webkit.org/show_bug.cgi?id=26742 2429 2430 Add a fullscreen button to the <video> controller if the media engine, 2431 and the theme have support for fullscreen, and can show appropriate controls. 2432 Clicking the button calls through the ChromeClient to the WebVideoFullscreenController 2433 in WebKit to do a nice animation to fullscreen, with a custom controller. 2434 2435 * WebCoreSupport/WebChromeClient.h: 2436 * WebCoreSupport/WebChromeClient.mm: 2437 (WebChromeClient::supportsFullscreenForNode): 2438 (WebChromeClient::enterFullscreenForNode): 2439 (WebChromeClient::exitFullscreenForNode): 2440 New methods to ask whether fullscreen is possible for a given node, and 2441 notifications on enterying and exiting fullscreen. 2442 2443 * WebView/WebVideoFullscreenController.h: Added. 2444 * WebView/WebVideoFullscreenController.mm: Added. 2445 WebVideoFullscreenController is responsible for creating the fullscreen window, 2446 and coordinating the various animations when going fullscreen. 2447 2448 * WebView/WebVideoFullscreenHUDWindowController.h: Added. 2449 * WebView/WebVideoFullscreenHUDWindowController.mm: Added. 2450 This class manages the heads-up display (HUD) control bar. 2451 2452 * WebView/WebView.mm: 2453 (-[WebView _close]): 2454 Make sure we come out of fullscreen if the WebView is torn down (e.g. if 2455 you close a background window). 2456 2457 (-[WebView _enterFullscreenForNode:WebCore::]): 2458 Make a WebVideoFullscreenController and tell is to start to go fullscreen. 2459 2460 (-[WebView _exitFullscreen]): 2461 Tell the WebVideoFullscreenController to come out of fullscreen, and clean up. 2462 2463 * WebView/WebViewData.h: 2464 * WebView/WebViewData.mm: 2465 (-[WebViewPrivate dealloc]): 2466 (-[WebViewPrivate finalize]): 2467 * WebView/WebViewInternal.h: 2468 Keep a pointer to the WebVideoFullscreenController. 2469 2470 * WebView/WebWindowAnimation.h: Added. 2471 * WebView/WebWindowAnimation.m: Added. 2472 (WebWindowAnimationDurationFromDuration): 2473 (scaledRect): 2474 (squaredDistance): 2475 Handle the animations used during the transitition to fullscreen. 2476 24772009-10-05 Anders Carlsson <andersca@apple.com> 2478 2479 Reviewed by Kevin Decker. 2480 2481 WebKit side of <rdar://problem/7179166> 2482 2483 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 2484 Add an m_pluginIsWaitingForDraw member variable. 2485 2486 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 2487 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): 2488 Initialize m_pluginIsWaitingForDraw. 2489 2490 (WebKit::NetscapePluginInstanceProxy::invalidateRect): 2491 Set m_pluginIsWaitingForDraw to true. 2492 2493 (WebKit::NetscapePluginInstanceProxy::didDraw): 2494 If m_pluginIsWaitingForDraw is true, call _WKPHPluginInstanceDidDraw. 2495 2496 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 2497 (-[WebHostedNetscapePluginView drawRect:]): 2498 Call didDraw. 2499 2500 * Plugins/Hosted/WebKitPluginHost.defs: 2501 Add PHPluginInstanceDidDraw. 2502 25032009-10-02 Chris Marrin <cmarrin@apple.com> 2504 2505 Reviewed by Adele Peterson. 2506 2507 Add functionality to pause/throttle CSS transitions/animations in a WebView 2508 https://bugs.webkit.org/show_bug.cgi?id=29942 2509 2510 Added both a setter and getter function 2511 2512 * WebView/WebView.mm: 2513 (-[WebView cssAnimationsSuspended]): 2514 (-[WebView setCSSAnimationsSuspended:]): 2515 * WebView/WebViewData.h: 2516 * WebView/WebViewData.mm: 2517 (-[WebViewPrivate init]): 2518 * WebView/WebViewPrivate.h: 2519 25202009-10-04 Kevin Decker <kdecker@apple.com> 2521 2522 Reviewed by Sam Weinig. 2523 2524 <rdar://problem/7273363> Plug-ins should use PluginHalter 2525 2526 * Plugins/WebBaseNetscapePluginView.h: Add WebHaltablePlugin forward declare and _haltable ivar. 2527 * Plugins/WebBaseNetscapePluginView.mm: 2528 (WebHaltablePlugin::WebHaltablePlugin): Added. 2529 (WebHaltablePlugin::halt): New method that stops a plug-in. 2530 (WebHaltablePlugin::restart): New method that starts a plug-in. 2531 (WebHaltablePlugin::node): Added. Provides the DOMNode corresponding to the plug-in in WebBaseNetscapePluginView. 2532 (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:WebCore::]): 2533 Initialize new _haltable ivar. 2534 (-[WebBaseNetscapePluginView start]): Call the page's didStartPlugin() upon starting a plug-in. 2535 (-[WebBaseNetscapePluginView stop]): Call the page's didStopPlugin() upon stopping a plug-in. 2536 25372009-10-05 Pavel Feldman <pfeldman@chromium.org> 2538 2539 Reviewed by Timothy Hatcher. 2540 2541 Web Inspector: add testing harness for Web Inspector. 2542 2543 https://bugs.webkit.org/show_bug.cgi?id=30010 2544 2545 * WebInspector/WebInspector.mm: 2546 (-[WebInspector evaluateInFrontend:callId:script:]): 2547 * WebInspector/WebInspectorPrivate.h: Added. 2548 25492009-10-04 Kevin Decker <kdecker@apple.com> 2550 2551 Reviewed by Cameron Zwarich. 2552 2553 * WebView/WebPreferenceKeysPrivate.h: Added new key. 2554 * WebView/WebPreferences.mm: 2555 (+[WebPreferences initialize]): Leave plug-in halting disabled by default. 2556 (-[WebPreferences pluginHalterEnabled]): Added. 2557 (-[WebPreferences setPluginHalterEnabled:]): Ditto. 2558 * WebView/WebPreferencesPrivate.h: Added above new methods. 2559 25602009-10-02 Dave Hyatt <hyatt@apple.com> 2561 2562 Reviewed by Adam Roben. 2563 2564 Add support for blacklist patterns to user stylesheets and scripts in addition to whitelist patterns. 2565 2566 * WebView/WebView.mm: 2567 (toStringVector): 2568 (+[WebView _addUserScriptToGroup:source:url:worldID:whitelist:blacklist:injectionTime:]): 2569 (+[WebView _addUserStyleSheetToGroup:source:url:worldID:whitelist:blacklist:]): 2570 * WebView/WebViewPrivate.h: 2571 25722009-10-01 Mark Rowe <mrowe@apple.com> 2573 2574 Fix the Tiger build. Don't unconditionally enable 3D canvas as it is not supported on Tiger. 2575 2576 * Configurations/FeatureDefines.xcconfig: 2577 25782009-10-01 Chris Marrin <cmarrin@apple.com> 2579 2580 Reviewed by Oliver Hunt. 2581 2582 Turn on ENABLE_3D_CANVAS in TOT 2583 https://bugs.webkit.org/show_bug.cgi?id=29906 2584 2585 * Configurations/FeatureDefines.xcconfig: 2586 * WebView/WebPreferenceKeysPrivate.h: 2587 * WebView/WebPreferences.mm: 2588 (+[WebPreferences initialize]): 2589 (-[WebPreferences webGLEnabled]): 2590 (-[WebPreferences setWebGLEnabled:]): 2591 * WebView/WebPreferencesPrivate.h: 2592 * WebView/WebView.mm: 2593 (-[WebView _preferencesChangedNotification:]): 2594 25952009-09-30 Sam Weinig <sam@webkit.org> 2596 2597 Reviewed by Dan Bernstein. 2598 2599 Fix for <rdar://problem/7259706> 2600 Need WebKit API or SPI on Mac and Windows to test whether it's safe to load a page in a new tab/window 2601 2602 * WebView/WebFrame.mm: 2603 (-[WebFrame _allowsFollowingLink:]): 2604 * WebView/WebFramePrivate.h: 2605 26062009-09-30 Dave Hyatt <hyatt@apple.com> 2607 2608 Reviewed by Adam Roben. 2609 2610 Add the ability to remove user stylesheets and scripts by URL. 2611 2612 * WebView/WebView.mm: 2613 (+[WebView _removeUserContentFromGroup:url:worldID:]): 2614 * WebView/WebViewPrivate.h: 2615 26162009-09-29 Brady Eidson <beidson@apple.com> 2617 2618 Rubberstamped by Dan Bernstein. 2619 2620 Fix license and some sorting in new files. 2621 2622 * WebView/WebHistoryDelegate.h: 2623 * WebView/WebNavigationData.h: 2624 * WebView/WebNavigationData.mm: 2625 26262009-09-29 Brady Eidson <beidson@apple.com> 2627 2628 Reviewed by John Sullivan. 2629 2630 WebKit Mac API should provide a delegate interface for global history. 2631 <rdar://problem/7042773> and https://webkit.org/b/29904 2632 2633 * WebView/WebHistoryDelegate.h: Added. New interface for WebKit clients to implement to manage 2634 their own global history store. 2635 2636 Object to store all of the bits of data relevant to a page visit: 2637 * WebView/WebNavigationData.h: Added. 2638 * WebView/WebNavigationData.mm: Added. 2639 (-[WebNavigationDataPrivate dealloc]): 2640 (-[WebNavigationData initWithURLString:title:originalRequest:response:hasSubstituteData:clientRedirectSource:]): 2641 (-[WebNavigationData url]): 2642 (-[WebNavigationData title]): 2643 (-[WebNavigationData originalRequest]): 2644 (-[WebNavigationData response]): 2645 (-[WebNavigationData hasSubstituteData]): 2646 (-[WebNavigationData clientRedirectSource]): 2647 (-[WebNavigationData dealloc]): 2648 2649 * WebCoreSupport/WebFrameLoaderClient.mm: 2650 (WebFrameLoaderClient::updateGlobalHistory): If the delegate exists, don't use the built-in WebHistory. 2651 If the implementation for this method exists, call it. 2652 (WebFrameLoaderClient::updateGlobalHistoryRedirectLinks): Ditto 2653 2654 * WebView/WebDelegateImplementationCaching.h: 2655 * WebView/WebDelegateImplementationCaching.mm: 2656 (WebViewGetHistoryDelegateImplementations): 2657 (CallHistoryDelegate): 2658 2659 * WebView/WebView.mm: 2660 (-[WebView _cacheHistoryDelegateImplementations]): 2661 (-[WebView setHistoryDelegate:]): 2662 (-[WebView historyDelegate]): 2663 * WebView/WebViewData.h: 2664 * WebView/WebViewPrivate.h: 2665 26662009-09-29 Kenneth Russell <kbr@google.com> 2667 2668 Reviewed by Dimitri Glazkov. 2669 2670 Add support for run-time flag for 3D canvas 2671 https://bugs.webkit.org/show_bug.cgi?id=29826 2672 2673 * WebView/WebView.mm: 2674 (-[WebView _preferencesChangedNotification:]): Enable experimental 2675 WebGL flag when 3D_CANVAS is enabled in the build. 2676 26772009-09-28 Fumitoshi Ukai <ukai@chromium.org> 2678 2679 Reviewed by Eric Seidel. 2680 2681 Add experimentalWebSocketsEnabled in WebPreferences. 2682 https://bugs.webkit.org/show_bug.cgi?id=28941 2683 2684 * WebView/WebPreferenceKeysPrivate.h: 2685 * WebView/WebPreferences.mm: 2686 (+[WebPreferences initialize]): 2687 (-[WebPreferences experimentalWebSocketsEnabled]): 2688 (-[WebPreferences setExperimentalWebSocketsEnabled:]): 2689 * WebView/WebPreferencesPrivate.h: 2690 * WebView/WebView.mm: 2691 (-[WebView _preferencesChangedNotification:]): 2692 26932009-09-28 Dan Bernstein <mitz@apple.com> 2694 2695 Reviewed by Anders Carlsson. 2696 2697 <rdar://problem/7240911> REGRESSION (r48586): Crash occurs when loading 2698 a PDF 2699 2700 CGPDFObjectRef is not a CFTypeRef, and cannot be retained or released. 2701 Its lifetime is managed by its container. Just use a Vector to store 2702 CGPDFObjectRefs, relying on the CGPDFDocument to keep them alive. 2703 2704 * WebView/WebPDFDocumentExtras.mm: 2705 (appendValuesInPDFNameSubtreeToVector): 2706 (getAllValuesInPDFNameTree): 2707 (web_PDFDocumentAllScripts): 2708 27092009-09-24 Jon Honeycutt <jhoneycutt@apple.com> 2710 2711 Reviewed by Alice Liu. 2712 2713 * WebView/WebView.mm: 2714 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): 2715 Pass 0 for new Page constructor argument. 2716 27172009-09-14 John Gregg <johnnyg@google.com> 2718 2719 Reviewed by Eric Seidel. 2720 2721 isEnabled switch for notifications (experimental) in Page Settings 2722 https://bugs.webkit.org/show_bug.cgi?id=28930 2723 2724 Adds support for the experimentalNotificationsEnabled flag in Settings 2725 through WebPreferencesPrivate. 2726 2727 * WebView/WebPreferenceKeysPrivate.h: 2728 * WebView/WebPreferences.mm: 2729 (+[WebPreferences initialize]): 2730 (-[WebPreferences experimentalNotificationsEnabled]): 2731 (-[WebPreferences setExperimentalNotificationsEnabled:]): 2732 * WebView/WebPreferencesPrivate.h: 2733 * WebView/WebView.mm: 2734 (-[WebView _preferencesChangedNotification:]): 2735 27362009-09-23 Geoffrey Garen <ggaren@apple.com> 2737 2738 Reviewed by Sam Weinig. 2739 2740 Updated for a WebCore rename. 2741 2742 * WebView/WebFrame.mm: 2743 (-[WebFrame _cacheabilityDictionary]): 2744 27452009-09-23 Darin Adler <darin@apple.com> 2746 2747 Reviewed by Dan Bernstein. 2748 2749 Speed up access to history items by caching date computation. 2750 2751 * History/WebHistory.mm: 2752 (getDayBoundaries): Refactored from timeIntervalForBeginningOfDay. 2753 Returns the beginning of the day that the passed time is within and 2754 the beginning of the next day. 2755 (beginningOfDay): Added. Uses getDayBoundaries so it can be fast for 2756 multiple dates within the same day, which is the common case. 2757 (dateKey): Added. Calls beginningOfDay and converts to an integer. 2758 (-[WebHistoryPrivate findKey:forDay:]): Changed to call dateKey 2759 insetad of timeIntervalForBeginningOfDay. 2760 27612009-09-23 David Kilzer <ddkilzer@apple.com> 2762 2763 Move definition of USE(PLUGIN_HOST_PROCESS) from WebKitPrefix.h to Platform.h 2764 2765 Reviewed by Mark Rowe. 2766 2767 * WebKitPrefix.h: Removed definition of 2768 WTF_USE_PLUGIN_HOST_PROCESS. 2769 27702009-09-22 Timothy Hatcher <timothy@apple.com> 2771 2772 Prevent scrolling multiple frames during latched wheel events. 2773 2774 Reviewed by Anders Carlsson. 2775 2776 * WebView/WebDynamicScrollBarsView.h: 2777 * WebView/WebDynamicScrollBarsView.mm: 2778 (-[WebDynamicScrollBarsView scrollWheel:]): 2779 27802009-09-22 Dan Bernstein <mitz@apple.com> 2781 2782 Reviewed by John Sullivan. 2783 2784 <rdar://problem/7240911> REGRESSION (r48586): Crash occurs when loading 2785 a PDF 2786 2787 * WebView/WebPDFDocumentExtras.mm: 2788 (addWebPDFDocumentExtras): Made methodList static, because 2789 class_addMethods() doesn't copy it. 2790 27912009-09-21 Dan Bernstein <mitz@apple.com> 2792 2793 Attempt to fix the Tiger build 2794 2795 * WebView/WebPDFDocumentExtras.mm: 2796 (addWebPDFDocumentExtras): 2797 27982009-09-21 Dan Bernstein <mitz@apple.com> 2799 2800 Attempt to fix the Tiger build 2801 2802 * WebView/WebPDFDocumentExtras.mm: 2803 (web_PDFDocumentAllScripts): 2804 (addWebPDFDocumentExtras): 2805 28062009-09-21 Dan Bernstein <mitz@apple.com> 2807 2808 Attempt to fix the Tiger build 2809 2810 * WebView/WebPDFDocumentExtras.mm: 2811 * WebView/WebPDFRepresentation.mm: 2812 28132009-09-21 Dan Bernstein <mitz@apple.com> 2814 2815 Attempt to fix the Leopard and Tiger builds 2816 2817 * WebView/WebPDFDocumentExtras.mm: 2818 28192009-09-21 Dan Bernstein <mitz@apple.com> 2820 2821 Reviewed by Anders Carlsson. 2822 2823 <rdar://problem/4137135> iFrame with PDF not being handled correctly on 2824 usps.com 2825 https://bugs.webkit.org/show_bug.cgi?id=4151 2826 2827 * WebView/WebJSPDFDoc.h: Added. 2828 * WebView/WebJSPDFDoc.mm: Added. 2829 (jsPDFDocInitialize): Retains the WebDataSource. 2830 (jsPDFDocFinalize): Releases the WebDataSource. 2831 (jsPDFDocPrint): Call the WebUIDelegate method -webView:printFrameView: 2832 with the PDF document's view. 2833 (makeJSPDFDoc): Makes and returns a JavaScript Doc instance that wraps 2834 the WebDataSource. 2835 * WebView/WebPDFDocumentExtras.h: Added. 2836 * WebView/WebPDFDocumentExtras.mm: Added. 2837 (appendValuesInPDFNameSubtreeToArray): Traverses a subtree of a PDF name 2838 tree and adds all values in the subtree to an array. 2839 (allValuesInPDFNameTree): Returns an array with all of the values in a 2840 PDF name tree. 2841 (web_PDFDocumentAllScripts): This is the implementation of -[PDFDocument 2842 _web_allScripts]. It gets all values in the document-level "JavaScript" 2843 name tree, which are action dictionaries, and returns an array of the 2844 actions' scripts. 2845 (addWebPDFDocumentExtras): Adds the -_web_allScripts method to 2846 PDFDocument. 2847 * WebView/WebPDFRepresentation.h: 2848 * WebView/WebPDFRepresentation.m: Removed. 2849 * WebView/WebPDFRepresentation.mm: Copied from WebKit/mac/WebView/WebPDFRepresentation.m. 2850 (+[WebPDFRepresentation initialize]): Added. Calls 2851 addWebPDFDocumentExtras(). 2852 (-[WebPDFRepresentation finishedLoadingWithDataSource:]): Get the 2853 scripts from the PDF document, create a JavaScript Doc object for the 2854 document, and a JavaScript execution context, then execute every script 2855 in the context, with the Doc object as "this". 2856 28572009-09-17 Simon Fraser <simon.fraser@apple.com> 2858 2859 Reviewed by Dave Hyatt. 2860 2861 Compositing layers are incorrectly positioned after scrolling with position:fixed 2862 https://bugs.webkit.org/show_bug.cgi?id=29262 2863 2864 When scrolling a page with compositing layers inside a position:fixed element, 2865 we need to update the compositing layer positions when the scroll position changes. 2866 2867 * WebView/WebHTMLView.mm: 2868 (-[WebHTMLView _frameOrBoundsChanged]): 2869 Call the new FrameView::scrollPositionChanged() method rather than sending the 2870 scroll event directly. 2871 28722009-09-17 Kenneth Rohde Christiansen <kenneth@webkit.org> 2873 2874 Reviewed by Simon Hausmann. 2875 2876 Make PlatformWindow return something else than PlatformWidget 2877 https://bugs.webkit.org/show_bug.cgi?id=29085 2878 2879 Reflect the rename of platformWindow and it's return type. 2880 2881 * WebCoreSupport/WebChromeClient.h: 2882 * WebCoreSupport/WebChromeClient.mm: 2883 (WebChromeClient::platformPageClient): 2884 28852009-09-17 Anders Carlsson <andersca@apple.com> 2886 2887 Reviewed by Oliver Hunt. 2888 2889 <rdar://problem/7007541> 2890 CrashTracer: 4800+ crashes in Safari at com.apple.WebKit • WTF::HashTableIterator... 2891 2892 Add null checks for m_instanceProxy (It will be null when a plug-in has crashed). 2893 2894 * Plugins/Hosted/ProxyInstance.mm: 2895 (WebKit::ProxyInstance::invoke): 2896 (WebKit::ProxyInstance::supportsInvokeDefaultMethod): 2897 (WebKit::ProxyInstance::supportsConstruct): 2898 (WebKit::ProxyInstance::getPropertyNames): 2899 (WebKit::ProxyInstance::methodsNamed): 2900 (WebKit::ProxyInstance::fieldNamed): 2901 (WebKit::ProxyInstance::fieldValue): 2902 (WebKit::ProxyInstance::setFieldValue): 2903 (WebKit::ProxyInstance::invalidate): 2904 29052009-09-16 Simon Fraser <simon.fraser@apple.com> 2906 2907 Reviewed by Dan Bernstein. 2908 2909 Work around a bug in AppKit on Leopard which causes compositing layers to jitter, and 2910 become misplaced when the WebHTMLView is resized or scrolled sometimes. 2911 <rdar://problem/7071636> 2912 2913 The previous fix didn't fix the case where the layers jiggle when resizing the docked 2914 inspector when the view size is over 2048px tall, on Leopard. 2915 2916 * WebView/WebHTMLView.mm: 2917 (-[WebHTMLView _updateLayerHostingViewPosition]): 2918 29192009-09-16 Simon Fraser <simon.fraser@apple.com> 2920 2921 Reviewed by Oliver Hunt. 2922 2923 Work around a bug in AppKit on Leopard which causes compositing layers to jitter, and 2924 become misplaced when the WebHTMLView is resized or scrolled sometimes. 2925 <rdar://problem/7071636> 2926 2927 We call an internal AppKit method to make sure the layer geometry is updated correctly. 2928 2929 * WebView/WebHTMLView.mm: 2930 (-[WebHTMLView _updateLayerHostingViewPosition]): 2931 29322009-09-15 Simon Fraser <simon.fraser@apple.com> 2933 2934 Reviewed by Dan Bernstein. 2935 2936 Fixed position elements flash when CSS transforms are applied on page > 2048px tall 2937 https://bugs.webkit.org/show_bug.cgi?id=27272 2938 2939 Update the previous workaround for misplaced compositing layers, which used a 4096px 2940 threshold, to 2048px since that's the GPU max texture size on some older hardware. 2941 2942 * WebView/WebHTMLView.mm: 2943 (-[WebHTMLView _updateLayerHostingViewPosition]): 2944 29452009-09-15 Alex Milowski <alex@milowski.com> 2946 2947 Reviewed by Tor Arne Vestbø. 2948 2949 Added the ENABLE_MATHML to the feaure defines 2950 2951 * Configurations/FeatureDefines.xcconfig: 2952 29532009-09-15 Mark Rowe <mrowe@apple.com> 2954 2955 Reviewed by Anders Carlsson. 2956 2957 <rdar://problem/7224378> REGRESSION(r48360): Dragging a tab with a plug-in out of a window, the plug-in gets slow and confused 2958 2959 In r48360, the fix for <rdar://problem/7090444>, I neglected to consider the case where the plug-in had already been started and 2960 -start would do an early-return rather than calling -restartTimers and -addWindowObservers itself. 2961 2962 * Plugins/WebBaseNetscapePluginView.mm: 2963 (-[WebBaseNetscapePluginView viewDidMoveToWindow]): Reinstate the call to -restartTimers and -addWindowObservers, but guard them 2964 with a check that the view is still in the window. 2965 29662009-09-14 Brady Eidson <beidson@apple.com> 2967 2968 Reviewed by Alexey Proskuryakov. 2969 2970 Safari 4 cannot be used to update firmware on Linksys routers. 2971 <rdar://problem/7174050> and https://bugs.webkit.org/show_bug.cgi?id=29160 2972 2973 Adopt the new WebCore::CredentialStorage in WebKit/Mac. 2974 2975 * Misc/WebDownload.mm: 2976 (-[WebDownloadInternal download:didReceiveAuthenticationChallenge:]): 2977 * Plugins/WebBaseNetscapePluginView.mm: 2978 (WebKit::getAuthenticationInfo): 2979 29802009-09-12 Mark Rowe <mrowe@apple.com> 2981 2982 Reviewed by Anders Carlsson. 2983 2984 Fix <rdar://problem/7090444> Crashes in-[WebBaseNetscapePluginView stop] handling NSWindowWillCloseNotification. 2985 2986 It's not valid to call -addWindowObservers when the view is not in a window, but this can happen when -start 2987 initializes a plug-in and the plug-in removes itself from the document during initialization. -viewDidMoveToWindow 2988 calls -start and then calls -addWindowObservers without ensuring that the view is still in a window. 2989 2990 If -[WebBaseNetscapePluginView addWindowObservers] is incorrectly called when the view is not in a window, it will 2991 observe NSWindowWillCloseNotification on all windows. This unexpected observer registration is not balanced by an 2992 unregistration so the notification can be delivered after the view is deallocated, causing the crash seen in 2993 <rdar://problem/7090444>. 2994 2995 * Plugins/WebBaseNetscapePluginView.mm: 2996 (-[WebBaseNetscapePluginView start]): Only call -updateAndSetWindow if we still have a current window. 2997 (-[WebBaseNetscapePluginView viewDidMoveToWindow]): Remove unnecessary calls to -restartTimers and -addWindowObservers 2998 from -[WebBaseNetscapePluginView viewDidMoveToWindow]. They are already called from within -start with the extra benefit 2999 of ensuring that the view is still in a window when they are called. 3000 30012009-09-11 Mark Rowe <mrowe@apple.com> 3002 3003 Reviewed by Jon Honeycutt. 3004 3005 Fix <rdar://problem/7145242> Crashes inside WTF::HashTable below NetscapePluginInstanceProxy::disconnectStream 3006 3007 * Plugins/Hosted/HostedNetscapePluginStream.mm: 3008 (WebKit::HostedNetscapePluginStream::cancelLoad): Canceling the load can result in calling through to disconnectStream. 3009 If the plug-in instance holds the last reference to the plug-in stream this will result in the stream being deallocated. 3010 This leads to HostedNetscapePluginStream::cancelLoad's call to disconnectStream being passed a deallocated stream object. 3011 Since the stream was already disconnected by the call to cancel there's no need to call disconnectStream a second time. 3012 30132009-09-11 Eric Seidel <eric@webkit.org> 3014 3015 No review, rolling out r48229. 3016 http://trac.webkit.org/changeset/48229 3017 3018 * WebView/WebFrame.mm: 3019 (-[WebFrame _dragSourceMovedTo:]): 3020 30212009-09-10 Mark Rowe <mrowe@apple.com> 3022 3023 Rubber-stamped by Sam Weinig. 3024 3025 Update JavaScriptCore and WebKit's FeatureDefines.xcconfig so that they are in sync with WebCore as they need to be. 3026 3027 * Configurations/FeatureDefines.xcconfig: 3028 30292009-09-09 Jens Alfke <snej@chromium.org> 3030 3031 Reviewed by Eric Seidel. 3032 3033 Initialize DataTransfer's effectAllowed and dropEffect properties correctly 3034 according to HTML5 spec (sec. 7.9.2-7.9.3). 3035 https://bugs.webkit.org/show_bug.cgi?id=26700 3036 3037 * WebView/WebFrame.mm: 3038 (-[WebFrame _dragSourceMovedTo:]): 3039 Pass current drag operation (if known) to EventHandler::dragSourceMovedTo(). 3040 30412009-09-09 Dave Hyatt <hyatt@apple.com> 3042 3043 Reviewed by Adam Roben. 3044 3045 https://bugs.webkit.org/show_bug.cgi?id=29102, add support for user stylesheet injection. This is similar 3046 to user script injection but allows for user stylesheets to be added. The stylesheets are applied immediately 3047 to all Frames in the PageGroup. 3048 3049 Added userscripts/simple-stylesheet.html test case. 3050 3051 * WebView/WebView.mm: 3052 (+[WebView _addUserStyleSheetToGroup:source:url:worldID:patterns:]): 3053 * WebView/WebViewPrivate.h: 3054 30552009-09-07 Steve Block <steveblock@google.com> 3056 3057 Reviewed by Adam Barth. 3058 3059 Adds a mock Geolocation service. This will be used to provide predictable behavior of the 3060 Geolocation API for use in LayoutTests. Later changes will integrate the the mock 3061 Geolocation service with DumpRenderTree. 3062 https://bugs.webkit.org/show_bug.cgi?id=28264 3063 3064 * WebCoreSupport/WebGeolocationMockPrivate.h: Added. 3065 * WebCoreSupport/WebGeolocationMock.mm: Added. 3066 (+[WebGeolocationMock setError:code:]): Added. Used by DumpRender tree to configure the mock Geolocation service. 3067 (+[WebGeolocationMock setPosition:latitude:longitude:accuracy:]): Added. Used by DumpRender tree to configure the mock Geolocation service. 3068 * WebKit.exp: Modified. Exports WebGeolocationMock. 3069 30702009-09-07 Drew Wilson <atwilson@google.com> 3071 3072 Reviewed by David Levin. 3073 3074 Enable SHARED_WORKERS by default. 3075 https://bugs.webkit.org/show_bug.cgi?id=28959 3076 3077 * Configurations/FeatureDefines.xcconfig: 3078 30792009-09-06 Cameron McCormack <cam@mcc.id.au> 3080 3081 Reviewed by Eric Seidel. 3082 3083 Drop <definition-src> support 3084 https://bugs.webkit.org/show_bug.cgi?id=28991 3085 3086 * MigrateHeaders.make: Remove reference to ObjC definition-src 3087 binding class. 3088 30892009-09-04 Mark Mentovai <mark@chromium.org> 3090 3091 Reviewed by Dave Hyatt. 3092 3093 https://bugs.webkit.org/show_bug.cgi?id=28614 3094 3095 Account for scrollbar state changes that occur during layout. 3096 3097 * WebView/WebDynamicScrollBarsView.mm: 3098 (-[WebDynamicScrollBarsView updateScrollers]): 3099 3100 Perform a layout prior to checking whether the scrollbar modes are 3101 off, on, or automatic. The modes may change during layout. 3102 3103 * WebView/WebFrameView.mm: 3104 (-[WebFrameView _install]): 3105 3106 Eliminate duplicated (and incorrect) scrollbar mode tracking between 3107 FrameView and ScrollView. 3108 31092009-09-03 Dave Hyatt <hyatt@apple.com> 3110 3111 Reviewed by Adam Roben. 3112 3113 https://bugs.webkit.org/show_bug.cgi?id=28890, make simple user script injection work. 3114 3115 This patch adds new API for adding and removing user scripts from page groups. User scripts 3116 are bundled together in isolated worlds (you can have multiple scripts together in the same 3117 world). 3118 3119 Added userscripts/ directory for holding new tests (along with a simple test of script injection). 3120 3121 * WebView/WebView.mm: 3122 (+[WebView _addUserScriptToGroup:source:url:worldID:patterns:injectionTime:]): 3123 (+[WebView _removeUserContentFromGroup:worldID:]): 3124 (+[WebView _removeAllUserContentFromGroup:]): 3125 * WebView/WebViewPrivate.h: 3126 31272009-09-04 Adam Barth <abarth@webkit.org> 3128 3129 Reviewed by Eric Seidel. 3130 3131 https://bugs.webkit.org/show_bug.cgi?id=24696 3132 3133 Plumb mixed content notifications to WebFrameLoadDelegatePrivate. 3134 3135 * WebCoreSupport/WebFrameLoaderClient.mm: 3136 (WebFrameLoaderClient::didDisplayInsecureContent): 3137 (WebFrameLoaderClient::didRunInsecureContent): 3138 * WebView/WebDelegateImplementationCaching.h: 3139 * WebView/WebFrameLoadDelegatePrivate.h: Added. 3140 31412009-09-03 Adam Barth <abarth@webkit.org> 3142 3143 Unreviewed build fix. 3144 3145 Change notImplemented() to a FIXME. 3146 3147 * WebCoreSupport/WebFrameLoaderClient.mm: 3148 (WebFrameLoaderClient::didDisplayInsecureContent): 3149 (WebFrameLoaderClient::didRunInsecureContent): 3150 31512009-09-03 Adam Barth <abarth@webkit.org> 3152 3153 Reviewed by eric@webkit.org. 3154 3155 https://bugs.webkit.org/show_bug.cgi?id=24696 3156 3157 Plumb mixed content notifications to WebFrameLoadDelegatePrivate. 3158 3159 * WebCoreSupport/WebFrameLoaderClient.mm: 3160 (WebFrameLoaderClient::didDisplayInsecureContent): 3161 (WebFrameLoaderClient::didRunInsecureContent): 3162 * WebView/WebDelegateImplementationCaching.h: 3163 * WebView/WebFrameLoadDelegatePrivate.h: Added. 3164 31652009-09-03 Adam Barth <abarth@webkit.org> 3166 3167 Reviewed by Eric Seidel. 3168 3169 https://bugs.webkit.org/show_bug.cgi?id=24696 3170 3171 Stub implementations of mixed content methods of FrameLoaderClient. 3172 3173 * WebCoreSupport/WebFrameLoaderClient.h: 3174 * WebCoreSupport/WebFrameLoaderClient.mm: 3175 (WebFrameLoaderClient::didDisplayInsecureContent): 3176 (WebFrameLoaderClient::didRunInsecureContent): 3177 31782009-09-02 Brady Eidson <beidson@apple.com> 3179 3180 Reviewed by Darin Adler. 3181 3182 More partial work towards "Page Cache should support pages with Frames" 3183 https://bugs.webkit.org/show_bug.cgi?id=13631 3184 3185 * WebView/WebHTMLView.mm: 3186 (-[WebHTMLView _topHTMLView]): Rework the ASSERT in this method to reflect the 3187 reality of calling this method for pages currently in the PageCache. 3188 31892009-08-31 Dimitri Glazkov <dglazkov@chromium.org> 3190 3191 Reverting http://trac.webkit.org/changeset/47904, because it caused 3192 layout test failure. 3193 31942009-08-31 Alexey Proskuryakov <ap@webkit.org> 3195 3196 Reviewed by Darin Adler. 3197 3198 https://bugs.webkit.org/show_bug.cgi?id=28852 3199 Rename KURL single argument constructor to avoid confusion 3200 3201 * WebView/WebScriptDebugger.mm: (toNSURL): Adapt to the change. 3202 32032009-08-31 Mark Mentovai <mark@chromium.org> 3204 3205 Reviewed by Dave Hyatt. 3206 3207 https://bugs.webkit.org/show_bug.cgi?id=28614 3208 3209 Perform a layout prior to checking whether the scrollbar modes are 3210 off, on, or automatic. The modes may change during layout. 3211 3212 * WebView/WebDynamicScrollBarsView.mm: 3213 (-[WebDynamicScrollBarsView updateScrollers]): 3214 32152009-08-28 Chris Fleizach <cfleizach@apple.com> 3216 3217 Reviewed by John Sullivan. 3218 3219 update-webkit-localizable-strings script can no longer complete 3220 https://bugs.webkit.org/show_bug.cgi?id=28792 3221 3222 * WebCoreSupport/WebViewFactory.mm: 3223 (-[WebViewFactory AXARIAContentGroupText:]): 3224 32252009-08-28 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> 3226 3227 Reviewed by Holger Freyther. 3228 3229 https://bugs.webkit.org/show_bug.cgi?id=25889 3230 [GTK] scrollbar policy for main frame is not implementable 3231 3232 Add empty implementation for new ChromeClient method. 3233 3234 * WebCoreSupport/WebChromeClient.h: 3235 (WebChromeClient::scrollbarsModeDidChange): 3236 32372009-08-25 Eric Carlson <eric.carlson@apple.com> 3238 3239 Reviewed by Oliver Hunt. 3240 3241 <video> and <audio> controller should be accessible 3242 https://bugs.webkit.org/show_bug.cgi?id=28081 3243 3244 * WebCoreSupport/WebViewFactory.mm: 3245 (-[WebViewFactory localizedMediaControlElementString:]): 3246 (-[WebViewFactory localizedMediaControlElementHelpText:]): 3247 (-[WebViewFactory localizedMediaTimeDescription:]): 3248 New. 3249 32502009-08-24 Simon Fraser <simon.fraser@apple.com> 3251 3252 Reviewed by NOBODY (build fix) 3253 3254 Turn off ENABLE_3D_CANVAS in the xconfig files. 3255 3256 * Configurations/FeatureDefines.xcconfig: 3257 32582009-08-22 Adam Barth <abarth@webkit.org> 3259 3260 Revert 47684. We're going to do this later once clients have had a 3261 chance to opt into the setting they like. 3262 3263 * Misc/WebKitVersionChecks.h: 3264 * WebView/WebPreferences.mm: 3265 (+[WebPreferences initialize]): 3266 32672009-08-22 Adam Barth <abarth@webkit.org> 3268 3269 Reviewed by Eric Seidel. 3270 3271 Don't let local files access web URLs 3272 https://bugs.webkit.org/show_bug.cgi?id=28480 3273 3274 * Misc/WebKitVersionChecks.m: 3275 * WebView/WebPreferences.mm: 3276 (+[WebPreferences initialize]): 3277 32782009-08-21 Anders Carlsson <andersca@apple.com> 3279 3280 Reviewed by Darin Adler. 3281 3282 <rdar://problem/7162480> 3283 Sometimes WebKit does not layout correctly when a WebView is embedded in an HICocoaView 3284 3285 Add a null check for the current context when reflectScrolledClipView: is called from outside a 3286 draw operation. 3287 3288 * WebView/WebDynamicScrollBarsView.mm: 3289 (-[WebDynamicScrollBarsView reflectScrolledClipView:]): 3290 32912009-08-20 Chris Fleizach <cfleizach@apple.com> 3292 3293 Reviewed by Darin Adler. 3294 3295 Enable various "grouping" ARIA roles 3296 https://bugs.webkit.org/show_bug.cgi?id=28486 3297 3298 * WebCoreSupport/WebViewFactory.mm: 3299 (-[WebViewFactory AXARIAContentGroupText:]): 3300 33012009-08-19 Mark Rowe <mrowe@apple.com> 3302 3303 Reviewed by Dan Bernstein. 3304 3305 Fix <http://webkit.org/b/28484> Plug-in-related leaks seen on the build bot 3306 3307 When the plug-in data is being loaded manually there is a reference cycle between the 3308 NetscapePluginInstanceProxy and the HostedNetscapePluginStream. We need to explicitly 3309 break the reference cycle in NetscapePluginInstanceProxy::cleanup so that both objects 3310 will be destroyed. 3311 3312 Take the opportunity to add RefCountedLeakCounter support to HostedNetscapePluginStream 3313 and NetscapePluginInstanceProxy to simplify tracking down leaks of these objects in the future. 3314 3315 * Plugins/Hosted/HostedNetscapePluginStream.h: 3316 * Plugins/Hosted/HostedNetscapePluginStream.mm: 3317 (WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream): 3318 (WebKit::HostedNetscapePluginStream::~HostedNetscapePluginStream): 3319 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 3320 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): 3321 (WebKit::NetscapePluginInstanceProxy::~NetscapePluginInstanceProxy): 3322 (WebKit::NetscapePluginInstanceProxy::cleanup): Clear m_manualStream to break the reference 3323 cycle. 3324 33252009-08-19 Aaron Boodman <aa@chromium.org> 3326 3327 Reviewed by David Levin. 3328 3329 https://bugs.webkit.org/show_bug.cgi?id=24853: Provide a way for WebKit clients to 3330 specify a more granular policy for cross-origin XHR access. 3331 3332 * WebView/WebView.mm: Add SPI to manipulate origin access whitelists. 3333 (+[WebView _whiteListAccessFromOrigin:destinationProtocol:destinationHost:allowDestinationSubdomains:]): Ditto. 3334 (+[WebView _resetOriginAccessWhiteLists]): Ditto. 3335 * WebView/WebViewPrivate.h: Ditto. 3336 33372009-08-18 Anders Carlsson <andersca@apple.com> 3338 3339 Reviewed by Adele Peterson. 3340 3341 Mac specific part of 3342 3343 <rdar://problem/7135588> HTMLMediaElement should ask WebPolicyLoadDelegate before loading resource 3344 3345 * WebCoreSupport/WebFrameLoaderClient.h: 3346 * WebCoreSupport/WebFrameLoaderClient.mm: 3347 Implement shouldLoadMediaElementURL by asking the policy delegate. 3348 3349 * WebView/WebPolicyDelegatePrivate.h: 3350 Add new delegate method, remove some unused cruft. 3351 33522009-08-18 Drew Wilson <atwilson@google.com> 3353 3354 Reviewed by Eric Seidel. 3355 3356 Need to extend DumpRenderTree to expose number of worker threads. 3357 https://bugs.webkit.org/show_bug.cgi?id=28292 3358 3359 * WebKit.exp: 3360 Exported WebWorkersPrivate so DumpRenderTree can access it. 3361 * Workers/WebWorkersPrivate.h: Added. 3362 * Workers/WebWorkersPrivate.mm: Added. 3363 (+[WebWorkersPrivate workerThreadCount]): 3364 Added WebWorkersPrivate::workerThreadCount() API for DumpRenderTree. 3365 33662009-08-17 Darin Adler <darin@apple.com> 3367 3368 Reviewed by Sam Weinig. 3369 3370 Use a HashMap instead of a list of if statements for the command 3371 name exception map. 3372 3373 * WebView/WebHTMLView.mm: 3374 (createSelectorExceptionMap): Added. 3375 (commandNameForSelector): Use createSelectorExceptionMap. 3376 33772009-08-16 David Kilzer <ddkilzer@apple.com> 3378 3379 <http://webkit.org/b/28366> WebHTMLViewInternal.h: add @class CALayer declaration 3380 3381 Reviewed by Simon Fraser. 3382 3383 Without WebKitPrefix.h, the missing @class CALayer declaration 3384 causes a compile-time error. 3385 3386 * WebView/WebHTMLViewInternal.h: Added @class CALayer 3387 declaration with USE(ACCELERATED_COMPOSITING). 3388 33892009-08-16 David Kilzer <ddkilzer@apple.com> 3390 3391 <http://webkit.org/b/28355> Replace MAX()/MIN() macros with type-safe std::max()/min() templates 3392 3393 Reviewed by Dan Bernstein. 3394 3395 * Plugins/WebBaseNetscapePluginStream.mm: Added using std::min 3396 statement. 3397 (WebNetscapePluginStream::deliverData): Changed MIN() to min(). 3398 Changed C-style cast to a static_cast. 3399 * Plugins/WebNetscapePluginView.mm: Added using std::min 3400 statement. 3401 (-[WebNetscapePluginView _postURL:target:len:buf:file:notifyData:sendNotification:allowHeaders:]): 3402 Changed MIN() to min(). Changed C-style cast to a static_cast. 3403 * WebView/WebHTMLView.mm: Added using std::max statement. 3404 (-[WebHTMLView _dragImageForURL:withLabel:]): Changed MAX() to 3405 max(). 3406 (-[WebHTMLView _scaleFactorForPrintOperation:]): Ditto. 3407 * WebView/WebTextCompletionController.mm: Added using std::max 3408 and using std::min statements. 3409 (-[WebTextCompletionController _placePopupWindow:]): Changed 3410 type of maxWidth variable from float to CGFloat to prevent a 3411 type mismatch on x86_64. Changed MAX() to max() and MIN() to 3412 min(). Added static_cast for a constant value since CGFloat is 3413 defined as a float on i386 and as a double on x86_64. 3414 34152009-08-15 Adam Bergkvist <adam.bergkvist@ericsson.com> 3416 3417 Reviewed by Sam Weinig. 3418 3419 Added ENABLE_EVENTSOURCE flag. 3420 https://bugs.webkit.org/show_bug.cgi?id=14997 3421 3422 * Configurations/FeatureDefines.xcconfig: 3423 34242009-08-14 Mark Rowe <mrowe@apple.com> 3425 3426 Build fix. 3427 3428 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 3429 (WebKit::NetscapePluginInstanceProxy::enumerate): Add the necessary .get() calls. 3430 34312009-08-14 Brady Eidson <beidson@apple.com> 3432 3433 Reviewed by Anders Carlsson. 3434 3435 <rdar://problem/7091546> - Assertion failure in plugins/return-error-from-new-stream-doesnt-invoke-destroy-stream.html 3436 on 64-bit SnowLeopard 3437 3438 * Plugins/Hosted/HostedNetscapePluginStream.mm: 3439 (WebKit::HostedNetscapePluginStream::cancelLoad): Since this might be called while the FrameLoader is switching DocumentLoaders 3440 during the brief moment where there is no activeDocumentLoader(), accept and handle a validly null DocumentLoader. 3441 34422009-08-14 Mark Rowe <mrowe@apple.com> 3443 3444 Reviewed by Brady Eidson. 3445 3446 Fix leaks of NSNumber and NSMutableArray objects seen during layout tests. 3447 3448 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 3449 (WebKit::NetscapePluginInstanceProxy::enumerate): Don't leak an NSMutableArray that we allocate. 3450 34512009-08-14 Mark Rowe <mrowe@apple.com> 3452 3453 Reviewed by Anders Carlsson. 3454 3455 Fix leaks of HostedNetscapePluginStream and NetscapePlugInStreamLoader objects seen during layout tests. 3456 3457 * Plugins/Hosted/HostedNetscapePluginStream.mm: 3458 (WebKit::HostedNetscapePluginStream::didFail): Disconnect the stream from the plug-in instance proxy 3459 when the load fails. 3460 34612009-08-13 Darin Adler <darin@apple.com> 3462 3463 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: Updated includes. 3464 * WebView/WebScriptDebugger.mm: Ditto. 3465 34662009-08-12 Mark Rowe <mrowe@apple.com> 3467 3468 Reviewed by Kevin Decker. 3469 3470 <rdar://problem/6017913> Replace use of HISearchWindowShow in -[WebView _searchWithSpotlightFromMenu]. 3471 3472 * WebView/WebView.mm: 3473 (-[WebView _searchWithSpotlightFromMenu:]): Use -[NSWorkspace showSearchResultsForQueryString:] post-Leopard. 3474 34752009-08-12 Greg Bolsinga <bolsinga@apple.com> 3476 3477 Reviewed by Eric Seidel. 3478 3479 Add delegate methods about focus and blur and state change 3480 https://bugs.webkit.org/show_bug.cgi?id=27153 3481 3482 Have ObjC delegate methods match C++ method names in the ChromeClient. 3483 3484 * WebCoreSupport/WebChromeClient.mm: 3485 (WebChromeClient::formDidFocus): 3486 (WebChromeClient::formDidBlur): 3487 * WebView/WebUIDelegatePrivate.h: 3488 34892009-08-11 John Gregg <johnnyg@google.com> 3490 3491 Reviewed by Maciej Stachowiak. 3492 3493 Desktop Notifications API 3494 https://bugs.webkit.org/show_bug.cgi?id=25643 3495 3496 Adds ENABLE_NOTIFICATION flag. 3497 3498 * Configurations/FeatureDefines.xcconfig: 3499 35002009-08-11 Anders Carlsson <andersca@apple.com> 3501 3502 Reviewed by Sam Weinig. 3503 3504 Remove dead declarations. 3505 3506 * WebView/WebViewInternal.h: 3507 35082009-08-11 Dmitry Titov <dimich@chromium.org> 3509 3510 Reviewed by Adam Roben. 3511 3512 Originally implemented by Glenn Wilson <gwilson@chromium.org>. 3513 3514 Added new methods for overriding default WebPreference values 3515 and for resetting preferences to their defaults. 3516 See https://bugs.webkit.org/show_bug.cgi?id=20534 3517 3518 * WebView/WebPreferences.mm: 3519 (-[WebPreferences _setPreferenceForTestWithValue:withKey:]): added. 3520 * WebView/WebPreferencesPrivate.h: same. 3521 35222009-08-09 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com> 3523 3524 Reviewed by George Staikos. 3525 3526 [WML] Deck access control is completly broken 3527 https://bugs.webkit.org/show_bug.cgi?id=27721 3528 3529 Synchronize WebFrameLoadType with FrameLoadType enum. Append 'WebFrameLoadTypeBackWMLDeckNotAccessible'. 3530 3531 * WebView/WebFramePrivate.h: 3532 35332009-08-07 Simon Fraser <simon.fraser@apple.com> 3534 3535 Fix the build on 10.6. 3536 3537 * WebView/WebHTMLView.mm: 3538 (-[WebHTMLView attachRootLayer:]): 3539 35402009-08-07 Simon Fraser <simon.fraser@apple.com> 3541 3542 Fix a stylistic nit related to the location of the *, which, for some 3543 ridiculous reason, WebKit style dictates to be different between Objective-C and C++. 3544 3545 * WebView/WebDynamicScrollBarsView.mm: 3546 (-[WebDynamicScrollBarsView reflectScrolledClipView:]): 3547 35482009-08-07 Simon Fraser <simon.fraser@apple.com> 3549 3550 Reviewed by Dan Bernstein. 3551 3552 Work around an issue on Leopard where composited layers are misplaced and squished when the page 3553 gets over 4096px tall. 3554 https://bugs.webkit.org/show_bug.cgi?id=27272 3555 <rdar://problem/7067892> [Leopard] Composisted layers are misplaced and squished on on long pages 3556 <rdar://problem/7068252> [Leopard] When switching to a tab with HW layers, they fade in 3557 3558 * WebView/WebDynamicScrollBarsView.mm: 3559 (-[WebDynamicScrollBarsView reflectScrolledClipView:]): 3560 Call -_updateLayerHostingViewPosition after scrolling. 3561 3562 * WebView/WebHTMLView.mm: 3563 (-[WebHTMLView _frameOrBoundsChanged]): 3564 Call -_updateLayerHostingViewPosition after the view changes size. 3565 3566 (-[WebHTMLView attachRootLayer:]): 3567 Turn off default animations, to avoid animations of sublayer transform, and fading-in 3568 when tab switching. 3569 3570 * WebView/WebHTMLViewInternal.h: 3571 (-[WebHTMLView _updateLayerHostingViewPosition]): 3572 New method that constrains the height of the layer-hosting view to a max height 3573 of 4096px, and compensates for the height restriction by placing the layer-hosting 3574 view at the top of the visible part of the WebHTMLView, and adjusting the position 3575 of the hosted layers via sublayer transform. 3576 35772009-08-07 Anders Carlsson <andersca@apple.com> 3578 3579 Fix Tiger build. 3580 3581 * WebView/WebRenderNode.mm: 3582 (-[WebRenderNode _initWithCoreFrame:]): 3583 35842009-08-07 Anders Carlsson <andersca@apple.com> 3585 3586 Reviewed by Timothy Hatcher and Sam Weinig. 3587 3588 Change WebRenderNode to take a WebFrame instead of a WebFrameView. 3589 3590 * WebView/WebRenderNode.h: 3591 * WebView/WebRenderNode.mm: 3592 (-[WebRenderNode _initWithName:position:rect:coreFrame:children:]): 3593 (copyRenderNode): 3594 (-[WebRenderNode _initWithCoreFrame:]): 3595 (-[WebRenderNode initWithWebFrame:]): 3596 35972009-08-06 Anders Carlsson <andersca@apple.com> 3598 3599 Reviewed by Darin Adler and Dan Bernstein. 3600 3601 * WebCoreSupport/WebFrameLoaderClient.mm: 3602 (WebFrameLoaderClient::hasHTMLView): 3603 Always return true when we're in viewless mode. 3604 36052009-08-06 Anders Carlsson <andersca@apple.com> 3606 3607 Remove WebGraphicsExtras.h include. 3608 3609 * Plugins/WebNetscapePluginView.mm: 3610 36112009-08-06 Anders Carlsson <andersca@apple.com> 3612 3613 Reviewed by Sam Weinig. 3614 3615 Remove WebGraphicsExtras, it is no longer used. 3616 3617 * Misc/WebGraphicsExtras.c: Removed. 3618 * Misc/WebGraphicsExtras.h: Removed. 3619 36202009-08-06 Chris Marrin <cmarrin@apple.com> 3621 3622 Reviewed by David Hyatt. 3623 3624 Added ENABLE_3D_CANVAS flag to build, default to off 3625 3626 * Configurations/FeatureDefines.xcconfig: 3627 36282009-08-04 Michael Nordman <michaeln@google.com> 3629 3630 Reviewed by Alexey Proskuryakov. 3631 3632 https://bugs.webkit.org/show_bug.cgi?id=27821 3633 3634 Mods to keep up with ApplicationCacheHost refactoring. 3635 3636 * WebView/WebDataSource.mm: 3637 (-[WebDataSource _transferApplicationCache:]): 3638 36392009-07-30 Darin Adler <darin@apple.com> 3640 3641 Reviewed by David Levin. 3642 3643 Use checked casts for render tree 3644 https://bugs.webkit.org/show_bug.cgi?id=23522 3645 3646 * Misc/WebNSAttributedStringExtras.mm: 3647 (fileWrapperForElement): 3648 * Misc/WebNSPasteboardExtras.mm: 3649 (imageFromElement): 3650 (-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]): 3651 * WebView/WebFrame.mm: 3652 (-[WebFrame _computePageRectsWithPrintWidthScaleFactor:printHeight:]): 3653 (-[WebFrame _accessibilityTree]): 3654 * WebView/WebRenderNode.mm: 3655 (copyRenderNode): 3656 Use checked casts. 3657 36582009-07-31 Simon Fraser <simon.fraser@apple.com> 3659 3660 Reviewed by Anders Carlsson. 3661 3662 Accelerated animations stutter on pages with lots of animations and 3d transforms 3663 https://bugs.webkit.org/show_bug.cgi?id=27884 3664 3665 This patch changes the strategy for synchronizing painting view the view, 3666 and compositing layer updates. Previously the strategy was to disable screen 3667 updates between the time we updated the layer tree, and painted the view. That 3668 left screen updates disabled for too long (hundreds of milliseconds) in some 3669 cases, causing animation stutter. 3670 3671 The new strategy is to batch up changes to the CA layer tree, and commit them 3672 all at once just before painting happens (referred to as a "sync" in the code). 3673 GraphicsLayerCA now keeps a bitmask of changed properties, and then migrates 3674 the values stored in GraphicsLayer into the CA layer tree at commit time. 3675 3676 Compositing layers are then synced in FrameView::paintContents(). However, not 3677 all style/layout changes will result in painting; to deal with style changes that 3678 touch only compositing properties, we set up a runloop observer that takes care 3679 of comitting layer changes when no painting happens. 3680 3681 * WebCoreSupport/WebChromeClient.h: 3682 * WebCoreSupport/WebChromeClient.mm: 3683 (WebChromeClient::scheduleCompositingLayerSync): 3684 scheduleViewUpdate() renamed to syncCompositingStateRecursive() 3685 3686 * WebView/WebView.mm: 3687 (-[WebView _close]): 3688 (-[WebView _clearLayerSyncLoopObserver]): 3689 "viewUpdateRunLoopObserver" is now "layerSyncLoopObserver". 3690 3691 (-[WebView _syncCompositingChanges]): 3692 Helper method that calls syncCompositingStateRecursive() on the FrameView. 3693 3694 (layerSyncRunLoopObserverCallBack): 3695 (-[WebView _scheduleCompositingLayerSync]): 3696 This is all about layer sycning now. Also, the run loop observer is repeating, 3697 because it has to keep firing until syncCompositingStateRecursive() says that it 3698 has completed. 3699 3700 * WebView/WebViewData.h: 3701 "viewUpdateRunLoopObserver" is now "layerSyncLoopObserver". 3702 3703 * WebView/WebViewInternal.h: 3704 _scheduleViewUpdate is now _scheduleCompositingLayerSync 3705 37062009-07-30 Michael Nordman <michaeln@google.com> 3707 3708 Reviewed by Darin Fisher. 3709 3710 https://bugs.webkit.org/show_bug.cgi?id=27821 3711 3712 Mods to keep up with ApplicationCacheHost refactoring. 3713 3714 * WebView/WebDataSource.mm: 3715 (-[WebDataSource _transferApplicationCache:]): 3716 37172009-07-29 David Kilzer <ddkilzer@apple.com> 3718 3719 <http://webkit.org/b/27788> Don't export WebPluginController.h as a private header 3720 3721 Reviewed by Mark Rowe. 3722 3723 * Plugins/WebPluginController.h: Changed #import of 3724 WebPluginContainerCheck.h to use a framework-style include in 3725 case other platforms wish to export WebPluginController.h as a 3726 private header. 3727 37282009-07-29 Kevin McCullough <kmccullough@apple.com> 3729 3730 Reviewed by Darin Adler. 3731 3732 Added foundation work to allow a testing infrastructure for the Web 3733 Inspector. 3734 3735 * WebCoreSupport/WebInspectorClient.h: 3736 * WebCoreSupport/WebInspectorClient.mm: 3737 (WebInspectorClient::inspectorWindowObjectCleared): Send the delegate 3738 callback. 3739 * WebView/WebDelegateImplementationCaching.h: 3740 * WebView/WebView.mm: 3741 (-[WebView _cacheFrameLoadDelegateImplementations]): 3742 * WebView/WebViewPrivate.h: The delegate SPI. 3743 37442009-07-27 Mark Rowe <mrowe@apple.com> 3745 3746 Reviewed by Darin Adler. 3747 3748 <rdar://problem/7091036> REGRESSION: Microsoft Messenger crashes during file send/receive due to use of WebKit on non-main thread 3749 3750 In some situations Microsoft Messenger can attempt to manipulate the DOM from a secondary thread while 3751 updating its file transfer progress bar. This results in corruption of WebCore data structures that is 3752 quickly followed by a crash. We can work around this by having -[WebFrame DOMDocument] return nil when 3753 called from a secondary thread by Microsoft Messenger, which has the effect of turning its attempts at 3754 DOM manipulation in to no-ops. 3755 3756 * WebView/WebFrame.mm: 3757 (needsMicrosoftMessengerDOMDocumentWorkaround): 3758 (-[WebFrame DOMDocument]): 3759 37602009-07-27 Alexey Proskuryakov <ap@webkit.org> 3761 3762 Reviewed by Darin Adler. 3763 3764 https://bugs.webkit.org/show_bug.cgi?id=27735 3765 Give a helpful name to JSLock constructor argument 3766 3767 * Misc/WebCoreStatistics.mm: 3768 (+[WebCoreStatistics javaScriptObjectsCount]): 3769 (+[WebCoreStatistics javaScriptGlobalObjectsCount]): 3770 (+[WebCoreStatistics javaScriptProtectedObjectsCount]): 3771 (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]): 3772 (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]): 3773 (+[WebCoreStatistics shouldPrintExceptions]): 3774 (+[WebCoreStatistics setShouldPrintExceptions:]): 3775 (+[WebCoreStatistics memoryStatistics]): 3776 (+[WebCoreStatistics javaScriptReferencedObjectsCount]): 3777 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 3778 (WebKit::NetscapePluginInstanceProxy::evaluate): 3779 (WebKit::NetscapePluginInstanceProxy::invoke): 3780 (WebKit::NetscapePluginInstanceProxy::invokeDefault): 3781 (WebKit::NetscapePluginInstanceProxy::construct): 3782 (WebKit::NetscapePluginInstanceProxy::getProperty): 3783 (WebKit::NetscapePluginInstanceProxy::setProperty): 3784 (WebKit::NetscapePluginInstanceProxy::removeProperty): 3785 (WebKit::NetscapePluginInstanceProxy::hasMethod): 3786 (WebKit::NetscapePluginInstanceProxy::enumerate): 3787 (WebKit::NetscapePluginInstanceProxy::addValueToArray): 3788 * Plugins/WebBaseNetscapePluginStream.mm: 3789 (WebNetscapePluginStream::wantsAllStreams): 3790 * Plugins/WebNetscapePluginView.mm: 3791 (-[WebNetscapePluginView sendEvent:isDrawRect:]): 3792 (-[WebNetscapePluginView setWindowIfNecessary]): 3793 (-[WebNetscapePluginView createPluginScriptableObject]): 3794 (-[WebNetscapePluginView evaluateJavaScriptPluginRequest:]): 3795 (-[WebNetscapePluginView webFrame:didFinishLoadWithReason:]): 3796 (-[WebNetscapePluginView loadPluginRequest:]): 3797 (-[WebNetscapePluginView _printedPluginBitmap]): 3798 * Plugins/WebPluginController.mm: 3799 (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]): 3800 (-[WebPluginController startAllPlugins]): 3801 (-[WebPluginController stopAllPlugins]): 3802 (-[WebPluginController addPlugin:]): 3803 (-[WebPluginController destroyPlugin:]): 3804 (-[WebPluginController destroyAllPlugins]): 3805 * WebView/WebFrame.mm: 3806 (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): 3807 * WebView/WebScriptDebugDelegate.mm: 3808 (-[WebScriptCallFrame scopeChain]): 3809 (-[WebScriptCallFrame evaluateWebScript:]): 3810 * WebView/WebView.mm: 3811 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): 3812 38132009-07-24 Darin Adler <darin@apple.com> 3814 3815 Reviewed by Mark Rowe. 3816 3817 REGRESSION (r46298): Exception after clicking on Bookmarks button in the Bookmarks Bar 3818 https://bugs.webkit.org/show_bug.cgi?id=27667 3819 3820 * WebCoreSupport/WebFrameLoaderClient.mm: 3821 (WebFrameLoaderClient::transitionToCommittedForNewPage): Moved the code to set the 3822 title here. This is late enough that both the view and representation exist. 3823 3824 * WebView/WebDataSource.mm: 3825 (-[WebDataSource _makeRepresentation]): Removed the code to set the title from here. 3826 It's a bit too early. 3827 38282009-07-24 Andrei Popescu <andreip@google.com> 3829 3830 Reviewed by Anders Carlsson. 3831 3832 ApplicationCache should have size limit 3833 https://bugs.webkit.org/show_bug.cgi?id=22700 3834 3835 Adds the WebApplicationCache class that is 3836 used by the DumpRenderTree test application to 3837 configure the Application Cache maximum size. 3838 3839 * WebCoreSupport/WebApplicationCache.h: Added. 3840 * WebCoreSupport/WebApplicationCache.mm: Added. 3841 * WebCoreSupport/WebChromeClient.h: 3842 * WebCoreSupport/WebChromeClient.mm: 3843 (WebChromeClient::reachedMaxAppCacheSize): 3844 Adds empty implementation of the reachedMaxAppCacheSize callback. 3845 * WebKit.exp: 3846 38472009-07-23 Darin Adler <darin@apple.com> 3848 3849 * WebView/WebDataSource.mm: 3850 (-[WebDataSource _makeRepresentation]): Landed a comment I forgot last time. 3851 38522009-07-23 Darin Adler <darin@apple.com> 3853 3854 Reviewed by Brady Eidson. 3855 3856 URL appears in back/forward button menu instead of title for items with custom representation 3857 https://bugs.webkit.org/show_bug.cgi?id=27586 3858 rdar://problem/5060337 3859 3860 The problem is that DocumentLoader expects to store a title, but for custom representations 3861 it is never passed to the document loader. 3862 3863 * WebView/WebDataSource.mm: 3864 (-[WebDataSource _makeRepresentation]): Added a call to DocumentLoader::setTitle. 3865 Works as long as the title does not change during the document's lifetime, which 3866 is good enough for the simple cases in Safari. 3867 38682009-07-20 Darin Adler <darin@apple.com> 3869 3870 Reviewed by Dan Bernstein. 3871 3872 REGRESSION (r39185): Safari adds ".jpeg" extension to images that already have ".JPG" extension 3873 https://bugs.webkit.org/show_bug.cgi?id=27472 3874 3875 * WebView/WebHTMLView.mm: 3876 (matchesExtensionOrEquivalent): Changed category method into a C function. 3877 Made it require the leading dot when checking for the extension and do it 3878 in a non-case-sensitive way. 3879 (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Changed to call 3880 the function. 3881 38822009-07-21 Roland Steiner <rolandsteiner@google.com> 3883 3884 Reviewed by David Levin. 3885 3886 Add ENABLE_RUBY to list of build options 3887 https://bugs.webkit.org/show_bug.cgi?id=27324 3888 3889 * Configurations/FeatureDefines.xcconfig: Added flag ENABLE_RUBY. 3890 38912009-07-17 Brian Weinstein <bweinstein@apple.com> 3892 3893 Reviewed by Adam Roben. 3894 3895 Fix of <rdar://problem/5712795> Win: Cannot change the height of the docked Web Inspector (14272) 3896 https://bugs.webkit.org/show_bug.cgi?id=14272 3897 3898 Removed size calculation code from [WebInspectorWindowController setInitialAttachedHeight] into 3899 InspectorController.cpp to make it cross platform, and use InspectorController to store the 3900 user's preferred size for an attached window, instead of NSUserDefaults. 3901 3902 * WebCoreSupport/WebInspectorClient.mm: 3903 (-[WebInspectorWindowController showWindow:]): 3904 (-[WebInspectorWindowController setAttachedWindowHeight:]): 3905 39062009-07-16 Fumitoshi Ukai <ukai@chromium.org> 3907 3908 Reviewed by David Levin. 3909 3910 Add --web-sockets flag and ENABLE_WEB_SOCKETS define. 3911 https://bugs.webkit.org/show_bug.cgi?id=27206 3912 3913 Add ENABLE_WEB_SOCKETS 3914 3915 * Configurations/FeatureDefines.xcconfig: add ENABLE_WEB_SOCKETS 3916 39172009-07-16 Xiaomei Ji <xji@chromium.org> 3918 3919 Reviewed by Darin Adler. 3920 3921 Fix tooltip does not get its directionality from its element's directionality. 3922 https://bugs.webkit.org/show_bug.cgi?id=24187 3923 3924 Per mitz's suggestion in comment #6, while getting the plain-text 3925 title, we also get the directionality of the title. How to handle 3926 the directionality is up to clients. Clients could ignore it, 3927 or use attribute or unicode control characters to display the title 3928 as what they want. 3929 3930 * Misc/WebElementDictionary.mm: 3931 (-[WebElementDictionary _spellingToolTip]): Change spellingToolTip caller due to signature change. 3932 (-[WebElementDictionary _title]): Change title caller due to signature change. 3933 * WebCoreSupport/WebChromeClient.h: Add directionality as 2nd parameter to setToolTip(). 3934 * WebCoreSupport/WebChromeClient.mm: 3935 (WebChromeClient::setToolTip): Add directionality as 2nd parameter to setToopTip() (without handling it yet). 3936 39372009-07-15 Darin Adler <darin@apple.com> 3938 3939 Reviewed by Sam Weinig. 3940 3941 Renamed parseURL to deprecatedParseURL. 3942 3943 * DOM/WebDOMOperations.mm: 3944 (-[DOMDocument URLWithAttributeString:]): Renamed. 3945 * WebCoreSupport/WebFrameLoaderClient.mm: 3946 (WebFrameLoaderClient::createPlugin): Renamed. 3947 39482009-07-15 Brady Eidson <beidson@apple.com> 3949 3950 Reviewed by Dan Bernstein. 3951 3952 https://bugs.webkit.org/show_bug.cgi?id=27304 3953 WebKit should provide usage and eligibility information about the page cache. 3954 3955 * Misc/WebCoreStatistics.h: 3956 * Misc/WebCoreStatistics.mm: 3957 (+[WebCoreStatistics numberCachedPages]): 3958 (+[WebCoreStatistics numberCachedFrames]): 3959 (+[WebCoreStatistics numberAutoreleasedPages]): 3960 * WebKit.exp: 3961 3962 * WebView/WebFrame.mm: 3963 (-[WebFrame _cacheabilityDictionary]): Returns a dictionary with all the data about 3964 why the frame is not cacheable. If the frame *is* cacheable, the dictionary is 3965 empty. 3966 * WebView/WebFramePrivate.h: 3967 39682009-07-13 Simon Fraser <simon.fraser@apple.com> 3969 3970 Reviewed by Dan Bernstein, Adam Roben. 3971 3972 "Unrecognized selector" console log when the Safari 4 Welcome page navigates to Top Sites. 3973 <rdar://problem/6994893 3974 3975 attachRootGraphicsLayer() should not assume that the frameView's documentView 3976 is a WebHTMLView. 3977 3978 * WebCoreSupport/WebChromeClient.mm: 3979 (WebChromeClient::attachRootGraphicsLayer): 3980 39812009-07-13 Anders Carlsson <andersca@apple.com> 3982 3983 Reviewed by Darin Adler and Kevin Decker. 3984 3985 <rdar://problem/7053687> Core Animation plug-ins continue to grow larger and larger when opening new tabs (32 bit-only) 3986 3987 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 3988 (-[WebHostedNetscapePluginView setLayer:]): 3989 Add a FIXME. 3990 3991 * Plugins/WebNetscapePluginView.mm: 3992 (-[WebNetscapePluginView setLayer:]): 3993 Make sure to set the size of the layer before changing the autoresizing mask so it won't grow everytime it's inserted 3994 into the layer tree. 3995 39962009-07-13 Greg Bolsinga <bolsinga@apple.com> 3997 3998 Reviewed by Simon Fraser. 3999 4000 Correct these delegate methods' declarations by adding parameter names. 4001 4002 * WebView/WebUIDelegatePrivate.h: 4003 40042009-07-13 Drew Wilson <atwilson@google.com> 4005 4006 Reviewed by David Levin. 4007 4008 Add ENABLE(SHARED_WORKERS) flag and define SharedWorker APIs 4009 https://bugs.webkit.org/show_bug.cgi?id=26932 4010 4011 Added ENABLE(SHARED_WORKERS) flag (disabled by default). 4012 4013 * Configurations/FeatureDefines.xcconfig: 4014 40152009-07-12 Keishi Hattori <casey.hattori@gmail.com> 4016 4017 Reviewed by Timothy Hatcher. 4018 4019 Refactor ConsoleMessage to add MessageType attribute. 4020 https://bugs.webkit.org/show_bug.cgi?id=20625 4021 4022 * WebCoreSupport/WebChromeClient.h: 4023 * WebCoreSupport/WebChromeClient.mm: 4024 (WebChromeClient::addMessageToConsole): 4025 40262009-07-11 Simon Fraser <simon.fraser@apple.com> 4027 4028 Enable support for accelerated compositing and 3d transforms on Leopard. 4029 <https://bugs.webkit.org/show_bug.cgi?id=20166> 4030 <rdar://problem/6120614> 4031 4032 Reviewed by Oliver Hunt. 4033 4034 * Configurations/FeatureDefines.xcconfig: 4035 40362009-07-10 David Kilzer <ddkilzer@apple.com> 4037 4038 Bug 27007: Build fixes when ICONDATABASE is disabled 4039 4040 <https://bugs.webkit.org/show_bug.cgi?id=27007> 4041 4042 Reviewed by Sam Weinig. 4043 4044 * Misc/WebIconDatabase.mm: 4045 (defaultClient): Return 0 if ICONDATABASE is disabled. 4046 * WebCoreSupport/WebFrameLoaderClient.mm: 4047 (WebFrameLoaderClient::dispatchDidReceiveIcon): Commented out 4048 the body of the method if ICONDATABASE is disabled. 4049 (WebFrameLoaderClient::registerForIconNotification): Ditto. 4050 * WebCoreSupport/WebIconDatabaseClient.mm: Added #if 4051 ENABLE(ICONDATABASE)/#endif guard to source. 4052 * WebView/WebView.mm: 4053 (-[WebView setFrameLoadDelegate:]): Wrapped code that starts the 4054 icon database machinery in #if ENABLE(ICONDATABASE)/#endif. 4055 (-[WebView _registerForIconNotification:]): Wrapped method in 4056 #if ENABLE(ICONDATABASE)/#endif guard. 4057 (-[WebView _dispatchDidReceiveIconFromWebFrame:]): Ditto. 4058 * WebView/WebViewInternal.h: Wrapped methods in #if 4059 ENABLE(ICONDATABASE)/#endif guard. 4060 (-[WebView _registerForIconNotification:]): 4061 (-[WebView _dispatchDidReceiveIconFromWebFrame:]): 4062 40632009-07-10 Simon Fraser <simon.fraser@apple.com> 4064 4065 Reviewed by John Sullivan. 4066 4067 Flashing as hardware layers are created and destroyed in some content 4068 <rdar://problem/7032246> 4069 4070 There's a window of time between the end of one runloop cycle, after CA layers changes 4071 have been committed, and the window display at the start of the next cycle when 4072 CA may push updates to the screen before AppKit has drawn the view contents. If 4073 we know that we need to do drawing synchronization (which we do when content moves 4074 between a layer and the view), then we need to call -disableScreenUpdatesUntilFlush 4075 from the existing runloop observer that is set up when layers need repainting to 4076 ensure that layer updates don't reach the screen before view-based painting does. 4077 4078 * WebView/WebHTMLView.mm: 4079 (-[WebHTMLView drawRect:]): 4080 Tweak the comments 4081 4082 * WebView/WebView.mm: 4083 (viewUpdateRunLoopObserverCallBack): 4084 (-[WebView _scheduleViewUpdate]): 4085 Add a big comment to explain the timing of things. 4086 Call -disableScreenUpdatesUntilFlush when the view _needsOneShotDrawingSynchronization. 4087 4088 2009-07-09 Brian Weinstein <bweinstein@apple.com> 4089 4090 Reviewed by Tim Hatcher. 40912009-07-10 Adam Barth <abarth@webkit.org> 4092 4093 Reviewed by Sam Weinig with the power of Grayskull. 4094 4095 Enable XSSAuditor by default. 4096 4097 * WebView/WebPreferences.mm: 4098 (+[WebPreferences initialize]): 4099 41002009-07-10 Greg Bolsinga <bolsinga@apple.com> 4101 4102 Reviewed by Antti Koivisto. 4103 4104 Add delegate methods about focus and blur and state change 4105 https://bugs.webkit.org/show_bug.cgi?id=27153 4106 4107 Call the appropriate private delegate methods from the ChromeClient. 4108 4109 * WebCoreSupport/WebChromeClient.h: 4110 * WebCoreSupport/WebChromeClient.mm: 4111 (WebChromeClient::formStateDidChange): 4112 (WebChromeClient::formDidFocus): 4113 (WebChromeClient::formDidBlur): 4114 * WebView/WebUIDelegatePrivate.h: 4115 41162009-07-09 Brian Weinstein <bweinstein@apple.com> 4117 4118 Reviewed by Tim Hatcher. 4119 4120 https://bugs.webkit.org/show_bug.cgi?id=27141 4121 4122 Updated WebInspectorClient to use Web Inspector Preferences to remember whether or not it should be 4123 docked or a free window instead of NSUserDefaults it used to have. 4124 4125 * WebCoreSupport/WebInspectorClient.mm: 4126 (-[WebInspectorWindowController init]): 4127 (-[WebInspectorWindowController showWindow:]): 4128 (-[WebInspectorWindowController attach]): 4129 (-[WebInspectorWindowController detach]): 4130 41312009-07-09 Drew Wilson <atwilson@google.com> 4132 4133 Reviewed by Alexey Proskuryakov. 4134 4135 https://bugs.webkit.org/show_bug.cgi?id=26903 4136 4137 Turned on CHANNEL_MESSAGING by default because the MessageChannel API 4138 can now be implemented for Web Workers and is reasonably stable. 4139 4140 * Configurations/FeatureDefines.xcconfig: 4141 41422009-07-09 Darin Adler <darin@apple.com> 4143 4144 Reviewed by Adele Peterson and Dan Bernstein. 4145 4146 <rdar://problem/7024972> Cannot set font to Helvetica Neue Light in Mail compose window 4147 4148 No regression test because this only affects the font panel. 4149 4150 * WebView/WebHTMLView.mm: 4151 (-[WebHTMLView _addToStyle:fontA:fontB:]): Fix code that detects whether the font would 4152 survive a round trip by using the weight corresponding to "bold" or "normal" rather than 4153 the actual weight number. 4154 41552009-07-09 Beth Dakin and Jon Honeycutt <bdakin@apple.com> 4156 4157 Reviewed by Dave Hyatt. 4158 4159 Make Widget RefCounted to fix: 4160 4161 <rdar://problem/7038831> REGRESSION (TOT): In Mail, a crash occurs 4162 at WebCore::Widget::afterMouseDown() after clicking To Do's close 4163 box 4164 <rdar://problem/6978804> WER #16: Repro Access Violation in 4165 WebCore::PluginView::bindingInstance (1310178023) 4166 -and- 4167 <rdar://problem/6991251> WER #13: Crash in WebKit! 4168 WebCore::PluginView::performRequest+203 (1311461169) 4169 4170 * WebCoreSupport/WebFrameLoaderClient.h: 4171 * WebCoreSupport/WebFrameLoaderClient.mm: 4172 (WebFrameLoaderClient::createPlugin): 4173 41742009-07-09 Sam Weinig <sam@webkit.org> 4175 4176 Reviewed by Steve Falkenburg. 4177 4178 Roll out r43848. The quirk is no longer necessary. 4179 4180 * WebView/WebView.mm: 4181 (-[WebView WebCore::_userAgentForURL:WebCore::]): 4182 41832009-07-09 Alexey Proskuryakov <ap@webkit.org> 4184 4185 Reviewed by Geoff Garen. 4186 4187 <rdar://problem/6921671> Visit count shouldn't be incremented by redirects. 4188 4189 * WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::updateGlobalHistory): 4190 Do not increase visit count if there is a redirect source. As a result, only pages that were 4191 explicitly visited by the user (by typing a URL, choosing one from bookmarks, or clicking 4192 a link) will be counted. 4193 4194 * History/WebHistory.mm: 4195 (-[WebHistoryPrivate visitedURL:withTitle:increaseVisitCount:]): 4196 (-[WebHistory _visitedURL:withTitle:method:wasFailure:increaseVisitCount:]): 4197 * History/WebHistoryInternal.h: 4198 * History/WebHistoryItem.mm: 4199 (-[WebHistoryItem _visitedWithTitle:increaseVisitCount:]): 4200 * History/WebHistoryItemInternal.h: 4201 Marshal this new argument all the way down to WebCore. 4202 42032009-07-08 Greg Bolsinga <bolsinga@apple.com> 4204 4205 Reviewed by Darin Adler. 4206 4207 Add -[WebView _isProcessingUserGesture] 4208 https://bugs.webkit.org/show_bug.cgi?id=27084 4209 4210 Add -_isProcessingUserGesture that calls into WebCore::FrameLoader::isProcessingUserGesture() 4211 so that WebView code can determine if a user gesture is in progress. 4212 4213 * WebView/WebView.mm: 4214 (-[WebView _isProcessingUserGesture]): 4215 * WebView/WebViewPrivate.h: 4216 42172009-07-07 Anders Carlsson <andersca@apple.com> 4218 4219 Reviewed by Sam Weinig. 4220 4221 - Fix <rdar://problem/6544693>. 4222 4223 For Flash, don't cache which methods or fields in an object are missing, since they can 4224 be added at any time. 4225 4226 * Plugins/Hosted/NetscapePluginHostManager.mm: 4227 (WebKit::NetscapePluginHostManager::hostForPackage): 4228 * Plugins/Hosted/NetscapePluginHostProxy.h: 4229 (WebKit::NetscapePluginHostProxy::shouldCacheMissingPropertiesAndMethods): 4230 * Plugins/Hosted/NetscapePluginHostProxy.mm: 4231 (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): 4232 * Plugins/Hosted/ProxyInstance.mm: 4233 (WebKit::ProxyInstance::methodsNamed): 4234 (WebKit::ProxyInstance::fieldNamed): 4235 42362009-07-06 David Kilzer <ddkilzer@apple.com> 4237 4238 Bug 27006: Build fix when MAC_JAVA_BRIDGE is disabled 4239 4240 <https://bugs.webkit.org/show_bug.cgi?id=27006> 4241 4242 Reviewed by Darin Adler. 4243 4244 * WebCoreSupport/WebFrameLoaderClient.mm: 4245 (WebFrameLoaderClient::createJavaAppletWidget): Wrap contents of 4246 the method in #if ENABLE(MAC_JAVA_BRIDGE)/#endif and return 0 4247 when this feature is disabled. 4248 42492009-07-06 David Kilzer <ddkilzer@apple.com> 4250 4251 Bug 27005: Build fixes when NETSCAPE_PLUGIN_API is disabled 4252 4253 <https://bugs.webkit.org/show_bug.cgi?id=27005> 4254 4255 Reviewed by Geoff Garen. 4256 4257 * Plugins/WebPluginController.mm: 4258 (-[WebPluginController destroyPlugin:]): Wrap call to 4259 ScriptController::cleanupScriptObjectsForPlugin() in 4260 #if ENABLE(NETSCAPE_PLUGIN_API)/#endif macro. 4261 (-[WebPluginController destroyAllPlugins]): Ditto. 4262 * Plugins/WebPluginDatabase.mm: 4263 (-[WebPluginDatabase removePluginInstanceViewsFor:]): Wrap 4264 WebBaseNetscapePluginView class checks in 4265 #if ENABLE(NETSCAPE_PLUGIN_API)/#endif macro. 4266 (-[WebPluginDatabase destroyAllPluginInstanceViews]): Ditto. 4267 42682009-07-06 David Kilzer <ddkilzer@apple.com> 4269 4270 BUILD FIX: Use ENABLE(NETSCAPE_PLUGIN_API) instead of USE(PLUGIN_HOST_PROCESS) 4271 4272 In r45579, #if/#endif macros for USE(PLUGIN_HOST_PROCESS) were 4273 used, but ENABLE(NETSCAPE_PLUGIN_API) should have been used 4274 instead. 4275 4276 * Plugins/WebNetscapeContainerCheckContextInfo.h: 4277 * Plugins/WebNetscapeContainerCheckContextInfo.mm: 4278 * Plugins/WebNetscapeContainerCheckPrivate.mm: 4279 42802009-07-06 David Kilzer <ddkilzer@apple.com> 4281 4282 Bug 27004: Build fix for ENABLE(PLUGIN_PROXY_FOR_VIDEO) after r42618 4283 4284 <https://bugs.webkit.org/show_bug.cgi?id=27004> 4285 4286 Reviewed by Geoff Garen. 4287 4288 * Plugins/WebPluginController.mm: 4289 (mediaProxyClient): Use core() method to convert from 4290 DOMElement to WebCore::Element. 4291 42922009-07-06 David Kilzer <ddkilzer@apple.com> 4293 4294 Bug 27003: Build fix when USE(PLUGIN_HOST_PROCESS) is disabled 4295 4296 <https://bugs.webkit.org/show_bug.cgi?id=27003> 4297 4298 Reviewed by Geoff Garen. 4299 4300 * Plugins/WebNetscapeContainerCheckContextInfo.h: Added #if 4301 USE(PLUGIN_HOST_PROCESS)/#endif guards. 4302 * Plugins/WebNetscapeContainerCheckContextInfo.mm: Ditto. 4303 * Plugins/WebNetscapeContainerCheckPrivate.mm: Ditto. 4304 43052009-07-06 Anders Carlsson <andersca@apple.com> 4306 4307 Reviewed by Adele Peterson. 4308 4309 Initialize wkIsLatchingWheelEvent. 4310 4311 * WebCoreSupport/WebSystemInterface.m: 4312 (InitWebCoreSystemInterface): 4313 43142009-07-03 Dan Bernstein <mitz@apple.com> 4315 4316 Reviewed by Simon Fraser. 4317 4318 - fix <rdar://problem/6964278> REGRESSION (r42118): Scrolling redraw 4319 problem in FileMaker Pro 4320 4321 * WebView/WebHTMLView.mm: 4322 (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]): 4323 Perform layout if needed, even on Mac OS X versions that have 4324 -viewWillDraw. This prevents attempts to draw without layout in case 4325 -viewWillDraw was not called due to NSView issues or the client 4326 did something during the display operation that re-invalidated the 4327 layout. 4328 43292009-07-02 Anders Carlsson <andersca@apple.com> 4330 4331 Reviewed by Dan Bernstein. 4332 4333 <rdar://problem/6978783> 4334 Software-rendered plug-in does not update correctly when inside a hardware layer 4335 4336 Replace calls to setNeedsDisplay: and setNeedsDisplayInRect: with a call to the new method 4337 invalidatePluginContentRect:. This new method will ask WebCore to do the repainting, taking 4338 transforms into account. 4339 4340 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 4341 (WebKit::NetscapePluginInstanceProxy::invalidateRect): 4342 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 4343 (-[WebHostedNetscapePluginView pluginHostDied]): 4344 * Plugins/WebBaseNetscapePluginView.h: 4345 * Plugins/WebBaseNetscapePluginView.mm: 4346 (-[WebBaseNetscapePluginView windowBecameKey:]): 4347 (-[WebBaseNetscapePluginView windowResignedKey:]): 4348 (-[WebBaseNetscapePluginView preferencesHaveChanged:]): 4349 (-[WebBaseNetscapePluginView invalidatePluginContentRect:]): 4350 * Plugins/WebNetscapePluginView.mm: 4351 (-[WebNetscapePluginView invalidateRect:]): 4352 (-[WebNetscapePluginView invalidateRegion:]): 4353 (-[WebNetscapePluginView forceRedraw]): 4354 43552009-07-02 Adam Roben <aroben@apple.com> 4356 4357 Fix warnings from update-webkit-localizable-strings 4358 4359 Rubber-stamped by Eric Carlson. 4360 4361 * WebCoreSupport/WebViewFactory.mm: 4362 (-[WebViewFactory mediaElementLoadingStateText]): 4363 (-[WebViewFactory mediaElementLiveBroadcastStateText]): 4364 Changed the localization comments to match the comments in the Windows 4365 version of this file, to avoid warnings about different comments for 4366 the same localized string. 4367 43682009-07-02 Simon Fraser <simon.fraser@apple.com> 4369 4370 Reviewed by Dan Bernstein. 4371 4372 Compositing-related preference methods are not public API; should move to WebPreferencesPrivate.h 4373 <rdar://problem/7027363> 4374 4375 Move accelerated-compositing pref to WebPreferencesPrivate.h 4376 4377 * WebView/WebPreferences.h: 4378 * WebView/WebPreferences.mm: 4379 (-[WebPreferences acceleratedCompositingEnabled]): 4380 (-[WebPreferences setAcceleratedCompositingEnabled:]): 4381 * WebView/WebPreferencesPrivate.h: 4382 43832009-07-02 Pierre d'Herbemont <pdherbemont@apple.com> 4384 4385 Reviewed by Simon Fraser. 4386 4387 <rdar://problem/6518119> 4388 4389 Add localized strings for media controller status messages. 4390 4391 * WebCoreSupport/WebViewFactory.mm: Add new localized text. 4392 (-[WebViewFactory mediaElementLoadingStateText]): 4393 (-[WebViewFactory mediaElementLiveBroadcastStateText]): 4394 43952009-07-01 Brady Eidson <beidson@apple.com> 4396 4397 Reviewed by Sam Weinig. 4398 4399 Add a preference/setting to toggle whether content sniffing is enabled for file URLs. 4400 4401 * WebView/WebPreferenceKeysPrivate.h: 4402 4403 * WebView/WebPreferences.mm: 4404 (+[WebPreferences initialize]): 4405 (-[WebPreferences localFileContentSniffingEnabled]): 4406 (-[WebPreferences setLocalFileContentSniffingEnabled:]): 4407 * WebView/WebPreferencesPrivate.h: 4408 4409 * WebView/WebView.mm: 4410 (-[WebView _preferencesChangedNotification:]): 4411 44122009-07-01 David Hyatt <hyatt@apple.com> 4413 4414 Reviewed by Tim Hatcher. 4415 4416 <rdar://problem/6998524> REGRESSION (r44474): Form text field has focus ring, looks focused, 4417 even though the field is not actually focused for keyboard input 4418 4419 Add the concept of whether or not the Page is focused by adding a boolean to the focusController. This allows the 4420 focused frame and focused node to both be cached and changed programmatically without causing errors when the Page doesn't 4421 have focus. 4422 4423 * WebView/WebHTMLView.mm: 4424 (-[WebHTMLView becomeFirstResponder]): 4425 (-[WebHTMLView resignFirstResponder]): 4426 44272009-06-30 Adele Peterson <adele@apple.com> 4428 4429 Reviewed by Dan Bernstein. 4430 4431 Fix for <rdar://problem/7014389> REGRESSION(4-TOT): Hyperlinks have no tooltips in Mail unless you first click in the message body 4432 4433 Updated these new methods (added as part of the viewless WebKit effort) that call through to WebHTMLView to use _selectedOrMainFrame, 4434 instead of just selectedFrame. When the selection changes, I don't think there is a situation where there's no selected frame, but 4435 it seems better to keep these two uses the same, since if there is a case, this will be more like the old behavior, before there was 4436 a version of _selectionChanged in WebView. 4437 4438 * WebView/WebView.mm: 4439 (-[WebView _setToolTip:]): 4440 (-[WebView _selectionChanged]): 4441 44422009-06-30 Mark Rowe <mrowe@apple.com> 4443 4444 Reviewed by Timothy Hatcher. 4445 4446 <rdar://problem/7006959> 'Save as…’ does not work in Mail 4447 4448 * WebView/WebFrameView.mm: 4449 (-[WebFrameView initWithFrame:]): Call _needMailThreadWorkaroundIfCalledOffMainThread rather than 4450 needMailThreadWorkaround, as the latter is intended to be used at the point which a workaround would 4451 be applied and thus contains a main thread check. Since -initWithFrame: is called on the main thread, 4452 this was causing us to not switch from exception-throwing to logging for the thread violation behavior. 4453 44542009-06-30 Dan Bernstein <mitz@apple.com> 4455 4456 Reviewed by Dave Hyatt. 4457 4458 - fix <rdar://problem/6946611> REGRESSION (r30673): Shade10:" D_Snap 4459 to Grid" window is clipping 4460 4461 * Misc/WebKitVersionChecks.h: Added 4462 WEBKIT_FIRST_VERSION_WITHOUT_SHADE10_QUIRK 4463 * WebView/WebView.mm: 4464 (-[WebView _needsLinkElementTextCSSQuirk]): Added. Returns YES if the 4465 client app is a version of Shade 10 earlier than 10.6 and it was 4466 linked against a version of WebKit earlier than 531.2. 4467 (-[WebView _preferencesChangedNotification:]): Added a call to 4468 Settings::setTreatsAnyTextCSSLinkAsStylesheet(). 4469 44702009-06-29 Eric Carlson <eric.carlson@apple.com> 4471 4472 Reviewed by Simon Fraser. 4473 4474 <rdar://problem/7014813> Ask media engine if a movie is streamed or downloaded. 4475 4476 * WebCoreSupport/WebSystemInterface.m: 4477 (InitWebCoreSystemInterface): 4478 Add QTMovieGetType. 4479 44802009-06-29 David Hyatt <hyatt@apple.com> 4481 4482 Reviewed by Adam Roben. 4483 4484 Put datagrid behind an #ifdef. 4485 4486 * Configurations/FeatureDefines.xcconfig: 4487 44882009-06-26 John Sullivan <sullivan@apple.com> 4489 4490 Added support for disabling Stop Speaking when there is no speaking to stop. 4491 Also fixed Stop Speaking so that it works (formerly it would throw an exception, and 4492 selecting it from the menu would perform a web search instead (!)). 4493 4494 Reviewed by Tim Hatcher. 4495 4496 * WebCoreSupport/WebContextMenuClient.h: 4497 declare isSpeaking() 4498 4499 * WebCoreSupport/WebContextMenuClient.mm: 4500 (WebContextMenuClient::isSpeaking): 4501 implement by calling through to NSApplication 4502 (WebContextMenuClient::stopSpeaking): 4503 fixed implementation by correcting the signature of the NSApplication method 4504 45052009-06-26 Chris Marrin <cmarrin@apple.com> 4506 4507 Reviewed by Simon Fraser <simon.fraser@apple.com>. 4508 4509 Additional fix for https://bugs.webkit.org/show_bug.cgi?id=26651 4510 4511 The flag should always default to true to avoid it getting set 4512 to false in a build with accelerated compositing turned off 4513 and then disabling accelerated compositing when subsequently 4514 running a build with it turned on. 4515 4516 * WebView/WebPreferences.mm: 4517 (+[WebPreferences initialize]): 4518 45192009-06-26 Brady Eidson <beidson@apple.com> 4520 4521 Fix SnowLeopard build. 4522 4523 * Plugins/Hosted/HostedNetscapePluginStream.mm: 4524 (WebKit::HostedNetscapePluginStream::didReceiveResponse): 4525 45262009-06-26 Brady Eidson <beidson@apple.com> 4527 4528 Reviewed by Sam Weinig 4529 4530 <rdar://problem/6961578> REGRESSION (r43511): Opening .fdf files from Acrobat Professional fails 4531 4532 Replace all usage of the now obsolete [NSURLResponse _webcore_MIMEType]. 4533 4534 * Plugins/WebBaseNetscapePluginStream.mm: 4535 (WebNetscapePluginStream::didReceiveResponse): 4536 * Plugins/WebNetscapePluginView.mm: 4537 (-[WebNetscapePluginView pluginView:receivedData:]): 4538 * Plugins/WebPluginController.mm: 4539 (-[WebPluginController pluginView:receivedResponse:]): 4540 * WebView/WebDataSource.mm: 4541 (-[WebDataSource _responseMIMEType]): 4542 * WebView/WebResource.mm: 4543 (-[WebResource _initWithData:URL:response:]): 4544 45452009-06-26 Alexey Proskuryakov <ap@webkit.org> 4546 4547 Reviewed by Sam Weinig. 4548 4549 <rdar://problem/6651201> Update lookalike character list. 4550 4551 * Misc/WebNSURLExtras.mm: (isLookalikeCharacter): Added more characters to the list. 4552 45532009-06-25 Anders Carlsson <andersca@apple.com> 4554 4555 Reviewed by Oliver Hunt. 4556 4557 <rdar://problem/6989017> 4558 REGRESSION (SnowLeopard): RealPlayer content replays when opening a new tab or switching back to the RealPlayer tab 4559 4560 If a plug-in fails in NPP_New, we would try to recreate it whenever the preferences for a web view would change. 4561 4562 Fix this by setting a flag when we fail to instantiate the plug-in, so we only try once. 4563 4564 * Plugins/WebBaseNetscapePluginView.h: 4565 * Plugins/WebBaseNetscapePluginView.mm: 4566 (-[WebBaseNetscapePluginView start]): 4567 45682009-06-25 Chris Marrin <cmarrin@apple.com> 4569 4570 Reviewed by Simon Fraser <simon.fraser@apple.com>. 4571 4572 https://bugs.webkit.org/show_bug.cgi?id=26651 4573 4574 Preference is named "WebKitAcceleratedCompositingEnabled" 4575 and is a boolean value. When false, prevents compositing layers from 4576 being created, which prevents hardware animation from running. 4577 Also forces video to do software rendering. Added a cache for 4578 the flag in RenderLayerCompositing and made it all work 4579 on-the-fly when the flag is changed while a page is loaded. 4580 4581 * WebView/WebPreferenceKeysPrivate.h: 4582 * WebView/WebPreferences.h: 4583 * WebView/WebPreferences.mm: 4584 (+[WebPreferences initialize]): 4585 (-[WebPreferences acceleratedCompositingEnabled]): 4586 (-[WebPreferences setAcceleratedCompositingEnabled:]): 4587 * WebView/WebView.mm: 4588 (-[WebView _preferencesChangedNotification:]): 4589 45902009-06-24 Dan Bernstein <mitz@apple.com> 4591 4592 Reviewed by Anders Carlsson. 4593 4594 Fix the most recently seen kind of crash in <rdar://problem/5983224> 4595 4596 * WebView/WebHTMLView.mm: 4597 (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Null-check the 4598 Frame. 4599 46002009-06-24 Jeff Johnson <opendarwin@lapcatsoftware.com> 4601 4602 Reviewed by Darin Adler. 4603 4604 https://bugs.webkit.org/show_bug.cgi?id=26638 WebKitErrors.m: _initWithPluginErrorCode: does not set localizedDescription 4605 4606 Add localized descriptions for plugin errors. 4607 The localized strings already existed but were unused; now NSLocalizedDescriptionKey is added to the NSError userInfo. 4608 4609 * Misc/WebKitErrors.m: 4610 (-[NSError _initWithPluginErrorCode:contentURL:pluginPageURL:pluginName:MIMEType:]): 4611 46122009-06-23 Brady Eidson <beidson@apple.com> 4613 4614 Reviewed by Darin Adler. 4615 4616 <rdar://problem/6950660> REGRESSION: iSale 5.5.3 crashes after I click a template to load 4617 4618 Due to some subtle WebKit changes - presumably some delegate callback behavior - a latent bug in 4619 iSale was uncovered where they aren't properly retaining their FrameLoadDelegate, and we ended up 4620 calling back to a dealloc'ed object. 4621 4622 * WebView/WebView.mm: 4623 (-[WebView _needsAdobeFrameReloadingQuirk]): Use more intelligent C++-style initialization. 4624 (-[WebView _needsKeyboardEventDisambiguationQuirks]): Ditto. 4625 (-[WebView _needsFrameLoadDelegateRetainQuirk]): YES for iSale versions under 5.6 4626 (-[WebView dealloc]): Release the delegate if the quirk is in effect. 4627 (-[WebView setFrameLoadDelegate:]): Retain the new delegate if the quirk is in effect. 4628 46292009-06-23 Anders Carlsson <andersca@apple.com> 4630 4631 Reviewed by Darin Adler. 4632 4633 - Fix <rdar://problem/6965672> 4634 4635 Defer calls to WKPCInvalidateRect, so we don't try to invalidate while waiting for a reply, since 4636 that is too early. 4637 4638 * Plugins/Hosted/NetscapePluginHostProxy.h: 4639 (WebKit::NetscapePluginHostProxy::isProcessingRequests): 4640 * Plugins/Hosted/NetscapePluginHostProxy.mm: 4641 (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): 4642 (WebKit::NetscapePluginHostProxy::processRequests): 4643 (WKPCInvalidateRect): 4644 46452009-06-22 Timothy Hatcher <timothy@apple.com> 4646 4647 Add Mail on Tiger and Leopard to the list of applications that need the WebView init thread workaround. 4648 4649 <rdar://problem/6929524> Console shows WebKit Threading Violations from Mail 4650 4651 Reviewed by Anders Carlsson. 4652 4653 * WebView/WebView.mm: 4654 (clientNeedsWebViewInitThreadWorkaround): Return true for com.apple.Mail. 4655 46562009-06-22 Dan Bernstein <mitz@apple.com> 4657 4658 Reviewed by Anders Carlsson. 4659 4660 - speculative fix for <rdar://problem/6889082> 4661 Crash at -[WebHTMLView(WebPrivate) _updateMouseoverWithEvent:] 4662 4663 The crash seems to happen because lastHitView points to a deleted 4664 object. Since -close calls -_clearLastHitViewIfSelf, I speculate that 4665 lastHitView has been set to an already-closed view. 4666 4667 * WebView/WebHTMLView.mm: 4668 (-[WebHTMLView hitTest:]): Return nil if the view is closed. 4669 46702009-06-22 Alexey Proskuryakov <ap@webkit.org> 4671 4672 Reviewed by John Sullivan. 4673 4674 <rdar://problem/6956606> REGRESSION (S4Beta -> Final): After the password is input, 4675 Japanese can't be input. 4676 4677 * WebView/WebHTMLView.mm: (-[WebHTMLView _updateSelectionForInputManager]): Removed an 4678 unnecessary check - the function has an early return for null frame. 4679 46802009-06-22 Dan Bernstein <mitz@apple.com> 4681 4682 Reviewed by Dave Hyatt. 4683 4684 - fix <rdar://problem/6990938> REGRESSION (r42787): After showing and 4685 hiding the Find banner, the WebHTMLView's height is not restored 4686 4687 * WebView/WebFrameView.mm: 4688 (-[WebFrameView setFrameSize:]): Mark the FrameView for layout when the 4689 WebFrameView's size changes. 4690 * WebView/WebView.mm: 4691 (-[WebView setFrameSize:]): Left the resize logic here, but only for 4692 the single view model. 4693 46942009-06-20 Darin Adler <darin@apple.com> 4695 4696 Reviewed by Sam Weinig. 4697 4698 <rdar://problem/6964221> Need more processing of pluginspage. 4699 4700 * WebCoreSupport/WebFrameLoaderClient.mm: 4701 (WebFrameLoaderClient::createPlugin): Check protocolInHTTPFamily. 4702 47032009-06-18 Adam Barth <abarth@webkit.org> 4704 4705 Reviewed by Sam Weinig. 4706 4707 https://bugs.webkit.org/show_bug.cgi?id=26199 4708 4709 Added preference to enable the XSSAuditor. 4710 4711 * WebView/WebPreferenceKeysPrivate.h: 4712 * WebView/WebPreferences.mm: 4713 (+[WebPreferences initialize]): 4714 (-[WebPreferences isXSSAuditorEnabled]): 4715 (-[WebPreferences setXSSAuditorEnabled:]): 4716 * WebView/WebPreferencesPrivate.h: 4717 * WebView/WebView.mm: 4718 (-[WebView _preferencesChangedNotification:]): 4719 47202009-06-18 Anders Carlsson <andersca@apple.com> 4721 4722 Reviewed by Sam Weinig. 4723 4724 <rdar://problem/6926859> 4725 NPN_ConvertPoint doesn't give the right value when converting to/from NPCoordinateSpaceFlippedScreen 4726 4727 When inverting Y, use the height of the first screen instead of the screen the window is on. 4728 4729 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 4730 (WebKit::NetscapePluginInstanceProxy::windowFrameChanged): 4731 (WebKit::NetscapePluginInstanceProxy::mouseEvent): 4732 * Plugins/WebBaseNetscapePluginView.mm: 4733 (-[WebBaseNetscapePluginView convertFromX:andY:space:toX:andY:space:]): 4734 47352009-06-16 Simon Fraser <simon.fraser@apple.com> 4736 4737 Reviewed by Dan Bernstein 4738 4739 <rdar://problem/6976766> Control-click on pages with accelerated compositing 4740 content does not work. 4741 4742 Part deux. #ifdef the use of _private->layerHostingView with 4743 USE(ACCELERATED_COMPOSITING) 4744 4745 * WebView/WebHTMLView.mm: 4746 (-[WebHTMLView hitTest:]): 4747 47482009-06-16 Simon Fraser <simon.fraser@apple.com> 4749 4750 Reviewed by Dan Bernstein 4751 4752 <rdar://problem/6976766> Control-click on pages with accelerated compositing 4753 content does not work. 4754 4755 Remove the WebLayerHostingView subclass of NSView, with its attempts to 4756 forward events to the WebHTMLView, and just fix -[WebHTMLView hitTest:] 4757 to ignore the layerHostingView. 4758 4759 * WebView/WebHTMLView.mm: 4760 (-[WebHTMLView hitTest:]): 4761 (-[WebHTMLView attachRootLayer:]): 4762 47632009-06-15 Simon Fraser <simon.fraser@apple.com> 4764 4765 Reviewed by Mark Rowe. 4766 4767 <rdar://problem/6974857> 4768 4769 Define ENABLE_3D_RENDERING when building on 10.6, and move ENABLE_3D_RENDERING 4770 switch from config.h to wtf/Platform.h. 4771 4772 * Configurations/FeatureDefines.xcconfig: 4773 * WebKitPrefix.h: 4774 47752009-06-15 Anders Carlsson <andersca@apple.com> 4776 4777 Reviewed by Dan Bernstein. 4778 4779 <rdar://problem/6967569> 4780 CrashTracer: 15 crashes in Safari at com.apple.WebKit • WebKit::NetscapePluginHostManager::didCreateWindow + 85 4781 4782 Make sure to remove the entry from the plug-in host map so we won't end up with an entry that has a null value. 4783 4784 * Plugins/Hosted/NetscapePluginHostManager.mm: 4785 (WebKit::NetscapePluginHostManager::hostForPackage): 4786 47872009-06-15 Dan Bernstein <mitz@apple.com> 4788 4789 Reviewed by Tim Hatcher. 4790 4791 - make the source code font in the Web Inspector match Mac defaults 4792 4793 * WebCoreSupport/WebInspectorClient.mm: 4794 (-[WebInspectorWindowController init]): Set the default monospace font 4795 to 11px Menlo, except on Leopard and Tiger where it is 10px Monaco. 4796 47972009-06-09 Justin Garcia <justin.garcia@apple.com> 4798 4799 Reviewed by Eric Seidel. Landed by Adam Barth. 4800 4801 https://bugs.webkit.org/show_bug.cgi?id=26281 4802 4803 REGRESSION: Copying from TextEdit/OmniGraffle and pasting into editable 4804 region loses images 4805 4806 Prefer RTFD (RTF with inline images) over RTF. In 4807 http://trac.webkit.org/changeset/19745 I accidently reversed their 4808 order. 4809 4810 * WebView/WebHTMLView.mm: 4811 (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]): 4812 48132009-06-13 Adam Barth <abarth@webkit.org> 4814 4815 Reviewed by Darin Fisher. 4816 4817 https://bugs.webkit.org/show_bug.cgi?id=24492 4818 4819 Move registerURLSchemeAsLocal from FrameLoader to SecurityOrigin 4820 4821 * WebView/WebView.mm: 4822 (+[WebView registerURLSchemeAsLocal:]): 4823 48242009-06-12 Peter Kasting <pkasting@google.com> 4825 4826 Reviewed by Eric Seidel. 4827 4828 * ChangeLog-2007-10-14: Change pseudonym "Don Gibson" to me (was used while Google Chrome was not public); update my email address. 4829 48302009-06-08 Dan Bernstein <mitz@apple.com> 4831 4832 Rubber-stamped by Mark Rowe. 4833 4834 - gave Objective-C++ files the .mm extension 4835 4836 * Carbon/HIWebView.m: Removed. 4837 * Carbon/HIWebView.mm: Copied from WebKit/mac/Carbon/HIWebView.m. 4838 * Misc/WebKitNSStringExtras.m: Removed. 4839 * Misc/WebKitNSStringExtras.mm: Copied from WebKit/mac/Misc/WebKitNSStringExtras.m. 4840 * Misc/WebStringTruncator.m: Removed. 4841 * Misc/WebStringTruncator.mm: Copied from WebKit/mac/Misc/WebStringTruncator.m. 4842 * WebInspector/WebNodeHighlight.m: Removed. 4843 * WebInspector/WebNodeHighlight.mm: Copied from WebKit/mac/WebInspector/WebNodeHighlight.m. 4844 * WebInspector/WebNodeHighlightView.m: Removed. 4845 * WebInspector/WebNodeHighlightView.mm: Copied from WebKit/mac/WebInspector/WebNodeHighlightView.m. 4846 * WebView/WebDynamicScrollBarsView.m: Removed. 4847 * WebView/WebDynamicScrollBarsView.mm: Copied from WebKit/mac/WebView/WebDynamicScrollBarsView.m. 4848 48492009-06-05 David Hyatt <hyatt@apple.com> 4850 4851 Reviewed by Mark Rowe. 4852 4853 https://bugs.webkit.org/show_bug.cgi?id=26220 4854 4855 Update a WebView's active state when it moves to a different window. 4856 4857 * WebView/WebView.mm: 4858 (-[WebView viewDidMoveToWindow]): 4859 48602009-06-04 Sam Weinig <sam@webkit.org> 4861 4862 Reviewed by Alice Liu. 4863 4864 Move WebView internal data into WebViewData.h/mm. 4865 4866 * WebView/WebDelegateImplementationCaching.mm: 4867 * WebView/WebView.mm: 4868 * WebView/WebViewData.h: Copied from mac/WebView/WebViewInternal.h. 4869 * WebView/WebViewData.mm: Copied from mac/WebView/WebViewInternal.mm. 4870 * WebView/WebViewInternal.h: 4871 * WebView/WebViewInternal.mm: Removed. 4872 48732009-06-04 David Hyatt <hyatt@apple.com> 4874 4875 Reviewed by Sam Weinig. 4876 4877 Remove _updateFocusedStateForFrame, since it's actually not even necessary now that I made 4878 setFocusedFrame get called explicitly from become/ResignFirstResponder. setFocusedFrame does 4879 the work of focusing the selection already. 4880 4881 * WebCoreSupport/WebFrameLoaderClient.mm: 4882 (WebFrameLoaderClient::transitionToCommittedForNewPage): 4883 * WebView/WebHTMLView.mm: 4884 (-[WebHTMLView becomeFirstResponder]): 4885 (-[WebHTMLView resignFirstResponder]): 4886 * WebView/WebView.mm: 4887 * WebView/WebViewInternal.h: 4888 48892009-06-04 Dan Bernstein <mitz@apple.com> 4890 4891 - build fix 4892 4893 * WebView/WebViewInternal.mm: 4894 48952009-06-03 David Hyatt <hyatt@apple.com> 4896 4897 Reviewed by Sam Weinig. 4898 4899 Reworking of focus and active state updating for WebHTMLViews so that it actually works instead of reporting wrong answers. 4900 4901 * WebCoreSupport/WebFrameLoaderClient.mm: 4902 (WebFrameLoaderClient::transitionToCommittedForNewPage): 4903 WebHTMLViews become first responders before they are able to reach their Frames/Pages. This happens because the NSClipView 4904 becomes first responder when the WebHTMLView gets destroyed, and then we transfer the responder state back to the new WebHTMLView 4905 when it is first connected. Once we have transitioned to a new page and have the Frame/Page available, go ahead and explicitly 4906 focus the frame in WebCore and update our focused state. This change allows us to remove the updateFocusedActive timer and the 4907 code from viewDidMoveToWindow. 4908 4909 * WebView/WebHTMLView.mm: 4910 (-[WebHTMLView close]): 4911 (-[WebHTMLView addWindowObservers]): 4912 (-[WebHTMLView viewWillMoveToWindow:]): 4913 (-[WebHTMLView viewDidMoveToWindow]): 4914 (-[WebHTMLView _removeWindowObservers]): 4915 Remove all the updateFocusedActiveState timer code, since it no longer exists. 4916 4917 (-[WebHTMLView windowDidBecomeKey:]): 4918 (-[WebHTMLView windowDidResignKey:]): 4919 Active state updating is no longer done by WebHTMLViews. It is handled by the WebView instead. 4920 4921 (-[WebHTMLView becomeFirstResponder]): 4922 (-[WebHTMLView resignFirstResponder]): 4923 Reworking of WebHTMLView's code for gaining/losing responder status. No longer update active state here, since the active state 4924 can never change just because of responder changes. Make sure that the focused frame gets updated properly (and most importantly 4925 actually cleared when a WebHTMLView resigns responder status). 4926 4927 * WebView/WebHTMLViewInternal.h: 4928 * WebView/WebHTMLViewPrivate.h: 4929 State updating for focused and active states has been made independent. 4930 4931 * WebView/WebView.mm: 4932 (-[WebView _updateActiveState]): 4933 WebView now handles updating of active state in _updateActiveState. It is now purely based off whether the window is key and nothing 4934 else. 4935 4936 (-[WebView addWindowObserversForWindow:]): 4937 (-[WebView removeWindowObservers]): 4938 Start listening for the window becoming/losing key even in the usesDocumentViews case. 4939 4940 (-[WebView _updateFocusedStateForFrame:]): 4941 Focused state updating is split into its own method now and called when WebHTMLViews gain and lose responder status. 4942 4943 (-[WebView _windowDidBecomeKey:]): 4944 (-[WebView _windowDidResignKey:]): 4945 Make sure to call _updateActiveState as the window gains/loses key. 4946 4947 (-[WebView _windowWillOrderOnScreen:]): 4948 Run this code now that WebHTMLView no longer does it. 4949 4950 * WebView/WebViewInternal.h: 4951 * WebView/WebViewPrivate.h: 4952 Updating for the split of focused and active state updating into separate methods. 4953 49542009-06-04 Mark Rowe <mrowe@apple.com> 4955 4956 Speculative Tiger build fix. 4957 4958 * WebView/WebDelegateImplementationCaching.h: 4959 49602009-06-03 Sam Weinig <sam@webkit.org> 4961 4962 Reviewed by Mark Rowe. 4963 4964 Move delegate implementation caching logic into its own files. 4965 4966 * WebView/WebDelegateImplementationCaching.h: Copied from mac/WebView/WebViewInternal.h. 4967 * WebView/WebDelegateImplementationCaching.mm: Copied from mac/WebView/WebView.mm. 4968 (WebViewGetResourceLoadDelegateImplementations): 4969 (WebViewGetFrameLoadDelegateImplementations): 4970 (WebViewGetScriptDebugDelegateImplementations): 4971 * WebView/WebView.mm: 4972 * WebView/WebViewInternal.h: 4973 49742009-06-03 Sam Weinig <sam@webkit.org> 4975 4976 Reviewed by Mark Rowe. 4977 4978 Move WebViewPrivate structure to WebViewInternal.h/mm. 4979 4980 * WebView/WebView.mm: 4981 * WebView/WebViewInternal.h: 4982 * WebView/WebViewInternal.mm: Added. 4983 (+[WebViewPrivate initialize]): 4984 (-[WebViewPrivate init]): 4985 (-[WebViewPrivate dealloc]): 4986 (-[WebViewPrivate finalize]): 4987 49882009-06-03 Sam Weinig <sam@webkit.org> 4989 4990 Reviewed by Darin Adler. 4991 4992 Small cleanup in WebView. 4993 - Move global data initialization to WebView's initialization method. 4994 - Move _clearViewUpdateRunLoopObserver from WebViewPrivate to WebView (FileInternal) 4995 4996 * WebView/WebView.mm: 4997 (-[WebViewPrivate init]): Remove global initializers. 4998 (-[WebViewPrivate dealloc]): Cleanup whitespace. 4999 (-[WebViewPrivate finalize]): Ditto. 5000 (-[WebView _close]): Call [self _clearViewUpdateRunLoopObserver] instead of 5001 [_private _clearViewUpdateRunLoopObserver] 5002 (+[WebView initialize]): Move global initializers here. 5003 (-[WebView _clearViewUpdateRunLoopObserver]): Moved from WebViewPrivate. 5004 (viewUpdateRunLoopObserverCallBack): Call [self _clearViewUpdateRunLoopObserver] 5005 instead of [_private _clearViewUpdateRunLoopObserver] 5006 50072009-06-03 Dan Bernstein <mitz@apple.com> 5008 5009 Reviewed by Anders Carlsson. 5010 5011 - WebKit part of eliminating WebCoreTextRenderer 5012 5013 * Misc/WebKitNSStringExtras.m: 5014 (webkit_CGCeiling): Added. 5015 (-[NSString _web_drawAtPoint:font:textColor:]): Replaced the malloc()ed 5016 string buffer with a Vector. Moved code from 5017 WebCoreDrawTextAtPoint() to here. 5018 (-[NSString _web_drawDoubledAtPoint:withTopColor:bottomColor:font:]): 5019 (-[NSString _web_widthWithFont:]): Replaced the malloc()ed string buffer 5020 with a Vector. Moved code from WebCoreTextFloatWidth() to here. 5021 * WebView/WebHTMLView.mm: 5022 (-[WebHTMLView _addToStyle:fontA:fontB:]): Replaced call to 5023 WebCoreFindFont() with use of 5024 +[WebFontCache fontWithFamily:traits:weight:size:]. 5025 * WebView/WebView.mm: 5026 (+[WebView _setAlwaysUsesComplexTextCodePath:]): Changed to call 5027 Font::setCodePath() directly. 5028 (+[WebView _setShouldUseFontSmoothing:]): Changed to call 5029 Font::setShouldUseSmoothing(). 5030 (+[WebView _shouldUseFontSmoothing]): Changed to call 5031 Font::shouldUseSmoothing(). 5032 50332009-06-03 Dan Bernstein <mitz@apple.com> 5034 5035 Rubber-stamped by Mark Rowe. 5036 5037 - remove a private method that was used only by Safari 3.0. 5038 5039 * WebView/WebView.mm: Removed +_minimumRequiredSafariBuildNumber. 5040 * WebView/WebViewPrivate.h: Ditto. 5041 50422009-06-03 Dan Bernstein <mitz@apple.com> 5043 5044 - build fix 5045 5046 * WebView/WebHTMLView.mm: 5047 50482009-06-03 Dan Bernstein <mitz@apple.com> 5049 5050 Reviewed by Anders Carlsson. 5051 5052 - build fix 5053 5054 * WebView/WebHTMLView.mm: 5055 * WebView/WebView.mm: 5056 50572009-06-02 Darin Adler <darin@apple.com> 5058 5059 Reviewed by David Hyatt. 5060 5061 Bug 26112: viewless WebKit -- make events work 5062 https://bugs.webkit.org/show_bug.cgi?id=26112 5063 5064 One change here is to make the -[WebFrame frameView] function assert if ever called 5065 in viewless mode, and fix many callers that would trip that assertion. 5066 5067 A major change is to put some methods and data in WebView that are currently in 5068 WebHTMLView, used only in viewless mode. A next step will be to use the WebView 5069 methods whenever possible, even when not in the viewless mode. 5070 5071 Also fix FrameView to do normal reference counting instead of a strange model with 5072 an explicit deref near creation time. 5073 5074 * WebCoreSupport/WebChromeClient.mm: 5075 (WebChromeClient::scrollRectIntoView): Add code to start in the appropriate place 5076 when dealing with viewless mode. This gets triggered when visiting the Google home page. 5077 (WebChromeClient::setToolTip): Changed to call WebView instead of WebHTMLView. 5078 (WebChromeClient::print): Changed to use a new selector that doesn't require a 5079 WebFrameView if present. Also don't even try to use the old selector in viewless mode. 5080 5081 * WebCoreSupport/WebEditorClient.mm: 5082 (WebEditorClient::respondToChangedSelection): Changed to call WebView instead of WebHTMLView. 5083 5084 * WebCoreSupport/WebFrameLoaderClient.mm: 5085 (WebFrameLoaderClient::transitionToCommittedForNewPage): Added more code paths for 5086 viewless mode to skip things we can't do in that mode, with appropriate FIXME. 5087 Use Frame::create and RefPtr and eliminate the strange reference counting of FrameView. 5088 5089 * WebView/WebDataSource.mm: 5090 (-[WebDataSource _receivedData:]): Added a _usesDocumentViews guard around code that's 5091 specific to document views. 5092 5093 * WebView/WebFrame.mm: 5094 (-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]): Added a _usesDocumentViews 5095 guard around code that's specific to document views. 5096 (-[WebFrame _hasSelection]): Added an implementation for viewless mode. 5097 (-[WebFrame _clearSelection]): Assert we're not in viewless mode; it doesn't really 5098 make sense to clear the selection in only one frame in viewless mode. Later we can 5099 decide what to do. 5100 (-[WebFrame _dragSourceMovedTo:]): Assert we're not in viewless mode; the dragging 5101 code for viewless mode shouldn't have to involve the WebFrame object at all. 5102 (-[WebFrame _dragSourceEndedAt:operation:]): Ditto. 5103 (-[WebFrame frameView]): Assert we're not in viewless mode. This assertion fires 5104 often, but it's a great pointer to code that needs to be changed. 5105 5106 * WebView/WebHTMLView.mm: 5107 (-[WebHTMLView hitTest:]): Tweaked a comment. 5108 (-[WebHTMLView _updateMouseoverWithEvent:]): Fixed a bug where the fake event for 5109 moving the mouse out of the old view ended up overwriting the event for moving 5110 the mouse within the new view. 5111 (-[WebHTMLView mouseDown:]): Got rid of explicit conversion of event to 5112 PlatformMouseEvent in call to sendContextMenuEvent; that's no longer possible 5113 without passing another argument, and it's now handled in EventHandler. 5114 5115 * WebView/WebTextCompletionController.h: Copied from WebKit/mac/WebView/WebHTMLView.mm. 5116 Removed everything except for the WebTextCompletionController class. 5117 * WebView/WebTextCompletionController.mm: Copied from WebKit/mac/WebView/WebHTMLView.mm. 5118 Ditto. 5119 5120 * WebView/WebUIDelegatePrivate.h: Added webView:printFrame: method. 5121 5122 * WebView/WebView.mm: Moved includes and fields in from WebHTMLView. 5123 (-[WebView _usesDocumentViews]): Updated for name change from useDocumentViews 5124 to usesDocumentViews. 5125 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): Ditto. 5126 (-[WebView drawSingleRect:]): Ditto. 5127 (-[WebView isFlipped]): Ditto. 5128 (-[WebView setFrameSize:]): Ditto. Also changed to use _mainCoreFrame method. 5129 (-[WebView _viewWillDrawInternal]): Ditto. 5130 (-[WebView viewWillDraw]): Ditto. 5131 (-[WebView drawRect:]): Ditto. 5132 (-[WebView _close]): Added code to nil out the lastMouseoverView global. 5133 (-[WebView _dashboardRegions]): Use _mainCoreFrame. 5134 (-[WebView setProhibitsMainFrameScrolling:]): Ditto. 5135 (-[WebView _setInViewSourceMode:]): Ditto. 5136 (-[WebView _inViewSourceMode]): Ditto. 5137 (-[WebView _attachScriptDebuggerToAllFrames]): Ditto. 5138 (-[WebView _detachScriptDebuggerFromAllFrames]): Ditto. 5139 (-[WebView textIteratorForRect:]): Ditto. 5140 (-[WebView _executeCoreCommandByName:value:]): Ditto. 5141 (-[WebView addWindowObserversForWindow:]): Ditto. 5142 (-[WebView removeWindowObservers]): Ditto. 5143 (-[WebView _updateFocusedAndActiveState]): Ditto. 5144 (-[WebView _updateFocusedAndActiveStateForFrame:]): Turned into a class method. 5145 Added code to handle the viewless case without calling frameView. 5146 (-[WebView _windowDidBecomeKey:]): Updated for name change from useDocumentViews 5147 to usesDocumentViews. 5148 (-[WebView _windowDidResignKey:]): Ditto. 5149 (-[WebView _windowWillOrderOnScreen:]): Ditto. 5150 (-[WebView mainFrame]): Tweaked. 5151 (-[WebView selectedFrame]): Added a conditional to avoid trying to get at the 5152 frame view in viewless case. 5153 (-[WebView _setZoomMultiplier:isTextOnly:]): Use _mainCoreFrame. 5154 (-[WebView setCustomTextEncodingName:]): Ditto. 5155 (-[WebView windowScriptObject]): Ditto. 5156 (-[WebView setHostWindow:]): Ditto. Also put some code that's needed only for 5157 document views inside _private->usesDocumentViews. 5158 (-[WebView _hitTest:dragTypes:]): Tweaked. 5159 (-[WebView acceptsFirstResponder]): Added case for viewless mode along with a 5160 FIXME, since it's not complete. 5161 (-[WebView becomeFirstResponder]): Ditto. 5162 (-[WebView _webcore_effectiveFirstResponder]): Put the body of this inside 5163 a usesDocumentView check, because we don't need the first responder forwarding 5164 in viewless mode. 5165 (-[WebView setNextKeyView:]): Ditto. 5166 (-[WebView mouseDown:]): Added. Copied from WebHTMLView. FIXME in here suggests 5167 that we make WebHTMLView share this one soon, which I think is practical. 5168 (-[WebView mouseUp:]): Ditto. 5169 (-[WebView setHoverFeedbackSuspended:]): Added a code path for viewless mode. 5170 (-[WebView shouldClose]): Use _mainCoreFrame. 5171 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Ditto. 5172 (-[WebView setEditable:]): Ditto. 5173 (-[WebView _frameViewAtWindowPoint:]): Added an assertion that we're not in 5174 viewless mode since this method makes no sense in that mode. 5175 (-[WebView _setMouseDownEvent:]): Added. Copied from WebHTMLView. I plan to 5176 eliminate the one in WebHTMLView soon. 5177 (-[WebView _cancelUpdateMouseoverTimer]): Ditto. 5178 (-[WebView _stopAutoscrollTimer]): Ditto. 5179 (+[WebView _updateMouseoverWithEvent:]): Ditto. 5180 (-[WebView _updateMouseoverWithFakeEvent]): Ditto. 5181 (-[WebView _setToolTip:]): Added. Calls through to the WebHTMLView version. 5182 (-[WebView _selectionChanged]): Ditto. 5183 (-[WebView _mainCoreFrame]): Added. 5184 (-[WebView _needsOneShotDrawingSynchronization]): Moved into the WebInternal 5185 category. 5186 (-[WebView _setNeedsOneShotDrawingSynchronization:]): Ditto. 5187 (-[WebView _startedAcceleratedCompositingForFrame:]): Ditto. 5188 (-[WebView _stoppedAcceleratedCompositingForFrame:]): Ditto. 5189 (viewUpdateRunLoopObserverCallBack): Ditto. 5190 (-[WebView _scheduleViewUpdate]): Ditto. 5191 5192 * WebView/WebViewInternal.h: Made most of the file not compile at all when 5193 included from non-C++ source files, elminating some excess declarations and 5194 typedefs. Moved more methods into the real internal category. Added new 5195 methods _setMouseDownEvent, _cancelUpdateMouseoverTimer, _stopAutoscrollTimer, 5196 _updateMouseoverWithFakeEvent, _selectionChanged, and _setToolTip:. 5197 51982009-06-02 Mark Rowe <mrowe@apple.com> 5199 5200 Reviewed by Anders Carlsson. 5201 5202 Remove workaround that was added to address <rdar://problem/5488678> as it no longer affects our Tiger builds. 5203 5204 * Configurations/Base.xcconfig: 5205 52062009-06-01 Darin Adler <darin@apple.com> 5207 5208 * WebView/WebTextCompletionController.mm: Fix Tiger build by adding import 5209 of WebTypesInternal.h. 5210 52112009-06-01 Darin Adler <darin@apple.com> 5212 5213 Reviewed by Maciej Stachowiak. 5214 5215 Bug 26113: break WebTextCompletionController out into its own source file 5216 https://bugs.webkit.org/show_bug.cgi?id=26113 5217 5218 * WebView/WebHTMLView.mm: 5219 (-[WebHTMLViewPrivate dealloc]): Updated for new name. 5220 (-[WebHTMLViewPrivate clear]): Ditto. 5221 (-[WebHTMLView _frameOrBoundsChanged]): Ditto. 5222 (-[WebHTMLView menuForEvent:]): Ditto. 5223 (-[WebHTMLView windowDidResignKey:]): Ditto. 5224 (-[WebHTMLView windowWillClose:]): Ditto. 5225 (-[WebHTMLView mouseDown:]): Ditto. 5226 (-[WebHTMLView resignFirstResponder]): Ditto. 5227 (-[WebHTMLView keyDown:]): Ditto. 5228 (-[WebHTMLView complete:]): Ditto. Also pass WebView to init method. 5229 (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): Ditto. 5230 5231 * WebView/WebTextCompletionController.h: Copied from mac/WebView/WebHTMLView.mm. 5232 * WebView/WebTextCompletionController.mm: Copied from mac/WebView/WebHTMLView.mm. 5233 Changed initializer to pass in a spearate WebView and WebHTMLView, to smooth the 5234 way for handling viewless mode properly in the future. 5235 52362009-05-30 David Kilzer <ddkilzer@apple.com> 5237 5238 Add JSLock to -[WebScriptCallFrame scopeChain] 5239 5240 Reviewed by Darin Adler. 5241 5242 In Debug builds of WebKit, Dashcode launching MobileSafari could 5243 cause the ASSERT(JSLock::lockCount() > 0) assertion to fire in 5244 JSC::Heap::heapAllocate() because the JSLock wasn't taken. 5245 5246 * WebView/WebScriptDebugDelegate.mm: 5247 (-[WebScriptCallFrame scopeChain]): Take JSLock before calling 5248 into JavaScriptCore. 5249 52502009-05-28 Mark Rowe <mrowe@apple.com> 5251 5252 Rubber-stamped by Dan Bernstein. 5253 5254 Build fix. Move off a deprecated NSFileManager method. 5255 5256 * Misc/WebNSFileManagerExtras.h: 5257 * Misc/WebNSFileManagerExtras.m: 5258 (-[NSFileManager destinationOfSymbolicLinkAtPath:error:]): Implement a new-in-Leopard method for Tiger to use. 5259 (-[NSFileManager attributesOfItemAtPath:error:]): Ditto. 5260 * Plugins/WebNetscapePluginPackage.mm: 5261 (-[WebNetscapePluginPackage _initWithPath:]): Use the new non-deprecated methods. 5262 52632009-05-28 Dirk Schulze <krit@webkit.org> 5264 5265 Reviewed by Nikolas Zimmermann. 5266 5267 Added new build flag --filters. More details in WebCore/ChangeLog. 5268 5269 * Configurations/FeatureDefines.xcconfig: 5270 52712009-05-27 Alexey Proskuryakov <ap@webkit.org> 5272 5273 Reviewed by Darin Adler. 5274 5275 https://bugs.webkit.org/show_bug.cgi?id=26009 5276 <rdar://problem/6925656> REGRESSION (r43973): Problems While Working With OpenVanilla 5277 5278 * WebView/WebHTMLView.mm: 5279 (-[WebHTMLView _updateSelectionForInputManager]): Don't call updateWindows if the selection 5280 is None. This routinely happens during editing, and it doesn't mean that we left an editable 5281 area (in which case the selection changes to a non-editable one). 5282 52832009-05-26 Sam Weinig <sam@webkit.org> 5284 5285 Reviewed by Brady Eidson. 5286 5287 Fix for <rdar://problem/6916371> 5288 iWeb 'Announce' button does nothing after publishing to MobileMe 5289 5290 Add linked-on-or-after check to allow older WebKit apps to use the 5291 old behavior of sniffing everything (including file: urls) 5292 5293 * Misc/WebKitVersionChecks.h: 5294 * WebView/WebView.mm: 5295 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): 5296 52972009-05-26 Stephanie Lewis <slewis@apple.com> 5298 5299 Reviewed by Ada Chan and Oliver Hunt. 5300 5301 Remove WebView observers in during fast teardown. 5302 <rdar://problem/6922619> REGRESSION (Tiger-only?): After restoring windows from the previous session, a crash occurs while attempting to quit Safari 5303 5304 * WebView/WebView.mm: 5305 (-[WebView _closeWithFastTeardown]): 5306 53072009-05-26 Anders Carlsson <andersca@apple.com> 5308 5309 Reviewed by Dan Bernstein. 5310 5311 <rdar://problem/6901751> 5312 REGRESSION (r35515): Tiger crash painting the selection on registration page of car2go.com 5313 5314 Remove WKCGContextIsSafeToClip. 5315 5316 * WebCoreSupport/WebSystemInterface.m: 5317 (InitWebCoreSystemInterface): 5318 53192009-05-26 Dan Bernstein <mitz@apple.com> 5320 5321 Reviewed by Darin Adler. 5322 5323 - fix <rdar://problem/6922371> REGRESSION (r43973): Can't type first 5324 character with an umlaut, circumflex, or accent in Mail or in a wiki 5325 5326 * WebView/WebHTMLView.mm: 5327 (isTextInput): Moved here. 5328 (isInPasswordField): Moved here. 5329 (-[WebHTMLView becomeFirstResponder]): Update the exposeInputContext 5330 flag and let NSApplication update the input manager with the new input 5331 context if necessary. 5332 (-[WebHTMLView _updateSelectionForInputManager]): Changed to use the 5333 NSApp global instead of +[NSApplication sharedApplication]. 5334 53352009-05-26 Mark Rowe <mrowe@apple.com> 5336 5337 Fix the Tiger build. 5338 5339 * Misc/WebNSObjectExtras.mm: 5340 (-[NSInvocation _webkit_invokeAndHandleException:]): Rename the local variable so that 5341 it doesn't conflict with a member variable on Tiger. 5342 53432009-05-26 Darin Adler <darin@apple.com> 5344 5345 Reviewed by Mark Rowe. 5346 5347 <rdar://problem/6921835> REGRESSION (r44115): Crash in Leopard Mail viewing message 5348 5349 Fix case where we autorelease an object on the main thread that we are returning 5350 to another thread when using our _webkit_invokeOnMainThread method. 5351 5352 * Misc/WebNSObjectExtras.mm: 5353 (returnTypeIsObject): Added. 5354 (-[WebMainThreadInvoker forwardInvocation:]): Autorelease the object on the calling 5355 thread, balancing a retain done on the main thread. 5356 (-[NSInvocation _webkit_invokeAndHandleException:]): Retain the object on the main 5357 thread. 5358 53592009-05-26 David Hyatt <hyatt@apple.com> 5360 5361 Back out the workaround for Mail crashing. Darin is working on the real fix. 5362 5363 * Misc/WebNSObjectExtras.mm: 5364 (-[WebMainThreadInvoker forwardInvocation:]): 5365 53662009-05-26 David Hyatt <hyatt@apple.com> 5367 5368 Reviewed by Darin Adler. 5369 5370 Fix for https://bugs.webkit.org/show_bug.cgi?id=25969. 5371 5372 Stop using notifications for boundsChanged, since the notifications are being sent too late. 5373 Since subviews get resized before parents do, the notification comes in telling the WebHTMLView 5374 that its size has changed *before* we've done setNeedsLayout in the WebView size change callback. 5375 5376 Become more like the Windows platform and just do the bounds changed immediately as our size is 5377 being altered by subclassing setFrameSize in WebView. 5378 5379 Also patch WebDynamicScrollbarsView to detect the case where neither axis is really spilling out 5380 past the viewport, so that in shrinking situations we figure out that we don't need scrollbars 5381 any more. 5382 5383 * WebView/WebDynamicScrollBarsView.m: 5384 (-[WebDynamicScrollBarsView updateScrollers]): 5385 * WebView/WebView.mm: 5386 (-[WebView _boundsChangedToNewSize:]): 5387 (-[WebView setFrameSize:]): 5388 (-[WebView viewWillMoveToWindow:]): 5389 (-[WebView viewDidMoveToWindow]): 5390 53912009-05-25 Anders Carlsson <andersca@apple.com> 5392 5393 Reviewed by Sam Weinig. 5394 5395 - WebKit side of <rdar://problem/6914001>. 5396 5397 * Plugins/Hosted/NetscapePluginHostManager.h: 5398 * Plugins/Hosted/NetscapePluginHostManager.mm: 5399 (WebKit::NetscapePluginHostManager::didCreateWindow): 5400 Iterate over all plug-in hosts. If one is in full-screen mode, make sure to activate the 5401 WebKit app instead. 5402 5403 * Plugins/Hosted/NetscapePluginHostProxy.h: 5404 (WebKit::NetscapePluginHostProxy::isMenuBarVisible): 5405 Add getter. 5406 5407 * Plugins/Hosted/NetscapePluginHostProxy.mm: 5408 (WKPCEvaluate): 5409 Add allowPopups flag. 5410 5411 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 5412 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 5413 (WebKit::NetscapePluginInstanceProxy::PluginRequest::PluginRequest): 5414 (WebKit::NetscapePluginInstanceProxy::PluginRequest::allowPopups): 5415 (WebKit::NetscapePluginInstanceProxy::loadURL): 5416 (WebKit::NetscapePluginInstanceProxy::evaluateJavaScript): 5417 (WebKit::NetscapePluginInstanceProxy::loadRequest): 5418 (WebKit::NetscapePluginInstanceProxy::evaluate): 5419 Use "allowPopups" instead of "userGesture". 5420 5421 * Plugins/Hosted/WebKitPluginClient.defs: 5422 Add allowPopups argument to Evaluate. 5423 5424 * Plugins/Hosted/WebKitPluginHostTypes.h: 5425 Use "allowPopups" instead of "userGesture". 5426 5427 * WebCoreSupport/WebChromeClient.mm: 5428 (WebChromeClient::createWindow): 5429 Call didCreateWindow here. 5430 5431 * WebCoreSupport/WebFrameLoaderClient.mm: 5432 (WebFrameLoaderClient::dispatchCreatePage): 5433 Ditto. 5434 54352009-05-25 Anders Carlsson <andersca@apple.com> 5436 5437 Reviewed by Sam Weinig. 5438 5439 - Fix <rdar://problem/6915849>. 5440 5441 Release the placeholder window after -[NSApplication runModalForWindow] returns. 5442 5443 * Plugins/Hosted/NetscapePluginHostProxy.mm: 5444 (WebKit::NetscapePluginHostProxy::beginModal): 5445 (WebKit::NetscapePluginHostProxy::endModal): 5446 54472009-05-24 Dan Bernstein <mitz@apple.com> 5448 5449 - revert an accidental change from r43964. 5450 5451 * WebView/WebView.mm: 5452 (+[WebView _setShouldUseFontSmoothing:]): 5453 54542009-05-24 Darin Adler <darin@apple.com> 5455 5456 Reviewed by Dan Bernstein and Tim Hatcher. 5457 5458 <rdar://problem/6913045> New console message spewed by automator CLI after installing JetstreamLeo40B21a 5459 5460 * Misc/WebNSObjectExtras.mm: 5461 (-[WebMainThreadInvoker initWithTarget:]): Tweaked argument name. 5462 (-[WebMainThreadInvoker forwardInvocation:]): Removed call to retainArguments. 5463 This was unneeded and in the case of a newly created but not yet fully initialized 5464 NSView object it caused the abovementioned bug. 5465 (-[WebMainThreadInvoker handleException:]): Tweaked argument name. Added assertion. 5466 (-[NSInvocation _webkit_invokeAndHandleException:]): Tweaked name of local variable 5467 that holds the exception. 5468 54692009-05-23 David Kilzer <ddkilzer@apple.com> 5470 5471 Part 2 of 2: Bug 25495: Implement PassOwnPtr and replace uses of std::auto_ptr 5472 5473 <https://bugs.webkit.org/show_bug.cgi?id=25495> 5474 5475 Reviewed by Oliver Hunt. 5476 5477 * History/WebHistory.mm: 5478 (-[WebHistory _visitedURL:withTitle:method:wasFailure:]): Return 5479 0 instead of an empty auto_ptr<>. 5480 * History/WebHistoryItem.mm: 5481 (-[WebHistoryItem initFromDictionaryRepresentation:]): Use 5482 OwnPtr<> instead of auto_ptr<> for stack variable. 5483 * WebCoreSupport/WebChromeClient.h: 5484 (WebChromeClient::createHTMLParserQuirks): Return a PassOwnPtr<> 5485 instead of a raw HTMLParserQuirks pointer. 5486 54872009-05-23 David Kilzer <ddkilzer@apple.com> 5488 5489 Part 1 of 2: Bug 25495: Implement PassOwnPtr and replace uses of std::auto_ptr 5490 5491 <https://bugs.webkit.org/show_bug.cgi?id=25495> 5492 5493 Reviewed by Oliver Hunt. 5494 5495 * ForwardingHeaders/wtf/OwnPtrCommon.h: Added. 5496 * ForwardingHeaders/wtf/PassOwnPtr.h: Added. 5497 54982009-05-22 Darin Adler <darin@apple.com> 5499 5500 Reviewed by Dan Bernstein. 5501 5502 - Fix <rdar://problem/6913765> REGRESSION (r42331-r42334): Extra scroll 5503 bars appearing on Welcome panels of iLife '09 apps 5504 5505 * WebView/WebView.mm: 5506 (needsUnwantedScrollBarWorkaround): Added. Checks if this is a panel 5507 where scroll bars are unwanted. For safety, limited to only Apple applications. 5508 (-[WebView viewDidMoveToWindow]): If the workaround is needed, disallow 5509 scrolling the main frame. This prevents scroll bars from appearing. 5510 55112009-05-22 Adam Barth <abarth@webkit.org> 5512 5513 Reviewed by Maciej Stachowiak. 5514 5515 https://bugs.webkit.org/show_bug.cgi?id=25955 5516 5517 Remove the policyBaseURL parameter from setCookie. This parameter is 5518 redudant with the document parameter. 5519 5520 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 5521 (WebKit::NetscapePluginInstanceProxy::setCookies): 5522 * Plugins/WebNetscapePluginView.mm: 5523 (-[WebNetscapePluginView setVariable:forURL:value:length:]): 5524 55252009-05-21 Darin Fisher <darin@chromium.org> 5526 5527 Fix-up coding style. 5528 5529 * WebCoreSupport/WebEditorClient.mm: 5530 (WebEditorClient::getAutoCorrectSuggestionForMisspelledWord): 5531 55322009-05-20 Siddhartha Chattopadhyaya <sidchat@google.com> 5533 5534 Reviewed by Justin Garcia. 5535 5536 Add automatic spell correction support in WebKit 5537 5538 https://bugs.webkit.org/show_bug.cgi?id=24953 5539 5540 * WebCoreSupport/WebEditorClient.h: 5541 * WebCoreSupport/WebEditorClient.mm: 5542 (WebEditorClient::getAutoCorrectSuggestionForMisspelledWord): 5543 55442009-05-21 Alexey Proskuryakov <ap@webkit.org> 5545 5546 Reviewed by Darin Adler. 5547 5548 <rdar://problem/6907542> REGRESSION (r43143): Hang in RenderLineBoxList::dirtyLinesFromChangedChild 5549 when clicking link to load Flash animation (http://www.roambi.com) 5550 5551 * WebCoreSupport/WebEditorClient.mm: (WebEditorClient::respondToChangedSelection): 5552 Don't call -[NSApplication updateWindows] here, WebHTMLView can take care of this. 5553 5554 * WebView/WebHTMLView.mm: 5555 (-[WebHTMLView inputContext]): Use a precomputed boolean stored in WebHTMLViewPrivate, as 5556 calling isTextInput() is not always safe. 5557 (-[WebHTMLView textStorage]): Ditto. 5558 (-[WebHTMLView _updateSelectionForInputManager]): Update _private->exposeInputContext when 5559 selection changes, and let AppKit update its cache if necessary. 5560 55612009-05-21 Alexey Proskuryakov <ap@webkit.org> 5562 5563 Reviewed by Darin Adler. 5564 5565 <rdar://problem/5579292> REGRESSION (2-3): "Default default" encoding for Korean changed 5566 from Korean (Windows, DOS) to Korean (ISO 2022-KR), which breaks some sites 5567 5568 * WebView/WebPreferences.mm: 5569 (+[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]): Update the existing fix 5570 for the changed result of CFStringConvertEncodingToIANACharSetName(). 5571 55722009-05-21 Alexey Proskuryakov <ap@webkit.org> 5573 5574 Reviewed by Darin Adler. 5575 5576 <rdar://problem/6883758> REGRESSION (r43143): First character typed with input method does 5577 not go into inline hole (seen with Chinese & Kotoeri on top Chinese website www.baidu.com) 5578 5579 * WebCoreSupport/WebEditorClient.mm: (WebEditorClient::respondToChangedSelection): 5580 Call -[NSApplication updateWindows] to make AppKit re-fetch the input context when selection 5581 changes. Since we use SelectionController to check whether the view is editable, it is 5582 important not to re-fetch the context too early, e.g. from a focus changed notification. 5583 55842009-05-21 Eric Seidel <eric@webkit.org> 5585 5586 Reviewed by Alexey Proskuryakov. 5587 5588 Rename DragController::dragOperation() to sourceDragOperation() for clarity 5589 5590 * WebView/WebHTMLView.mm: 5591 (-[WebHTMLView draggingSourceOperationMaskForLocal:]): 5592 55932009-05-21 Dan Bernstein <mitz@apple.com> 5594 5595 Reviewed by Anders Carlsson. 5596 5597 - WebKit part of <rdar://problem/6901751> REGRESSION (r35515): Tiger 5598 crash painting the selection on registration page of car2go.com 5599 5600 * WebCoreSupport/WebSystemInterface.m: 5601 (InitWebCoreSystemInterface): Added CGContextIsSafeToClip. 5602 56032009-05-20 Stephanie Lewis <slewis@apple.com> 5604 5605 Update the order files. <rdar://problem/6881750> Generate new order files. 5606 5607 * WebKit.order: 5608 56092009-05-20 Brady Eidson <beidson@apple.com> 5610 5611 Reviewed by Darin Adler. 5612 5613 <rdar://problem/6905336> REGRESSION: "Clear History" does not save empty history to disk 5614 5615 * History/WebHistory.mm: 5616 (-[WebHistoryPrivate data]): If there are no entries, return an empty NSData instead of nil. 5617 56182009-05-20 Anders Carlsson <andersca@apple.com> 5619 5620 Reviewed by Darin Adler and Kevin Decker. 5621 5622 WebKit side of <rdar://problem/6895072> 5623 5624 Pass the localization as a launch property. 5625 5626 * Plugins/Hosted/NetscapePluginHostManager.mm: 5627 (WebKit::NetscapePluginHostManager::spawnPluginHost): 5628 56292009-05-20 Dan Bernstein <mitz@apple.com> 5630 5631 - fix the build after r43918 5632 5633 * WebCoreSupport/WebChromeClient.h: 5634 (WebChromeClient::setCursor): 5635 56362009-05-20 Darin Adler <darin@apple.com> 5637 5638 Reviewed by John Sullivan. 5639 5640 <rdar://problem/4023899> Shift-Tab skips key views in toolbar in Safari, although Tab 5641 iterates through them properly 5642 5643 * WebView/WebView.mm: 5644 (-[WebView previousValidKeyView]): Work around a bug in -[NSView previousValidKeyView]. 5645 56462009-05-19 Timothy Hatcher <timothy@apple.com> 5647 5648 Add a new private API method that will dispatch pending loads that have been scheduled 5649 because of recent DOM additions or style changes. 5650 5651 <rdar://problem/6889218> REGRESSION: Some iChat transcript resources are not 5652 loaded because willSendRequest doesn't happen immediately 5653 5654 Reviewed by Antti Koivisto. 5655 5656 * WebView/WebView.mm: 5657 (-[WebView _dispatchPendingLoadRequests]): Call Loader::servePendingRequests(). 5658 * WebView/WebViewPrivate.h: Added _dispatchPendingLoadRequests. 5659 56602009-05-18 Sam Weinig <sam@webkit.org> 5661 5662 <rdar://problem/6899044> Can't see Apple ad on nytimes.com unless I spoof the user agent 5663 5664 Add user agent hack for pointroll.com. 5665 5666 Reviewed by Steve Falkenburg. 5667 5668 * WebView/WebView.mm: 5669 (-[WebView WebCore::_userAgentForURL:WebCore::]): 5670 56712009-05-16 Anders Carlsson <andersca@apple.com> 5672 5673 Reviewed by Sam Weinig and Dan Bernstein. 5674 5675 Fix <rdar://problem/6889644> 5676 5677 * Plugins/Hosted/NetscapePluginHostManager.mm: 5678 (WebKit::NetscapePluginHostManager::spawnPluginHost): 5679 56802009-05-16 Dan Bernstein <mitz@apple.com> 5681 5682 - revert an accidental change from r43802. 5683 5684 * WebInspector/WebInspector.mm: 5685 56862009-05-16 Anders Carlsson <andersca@apple.com> 5687 5688 Reviewed by Dan Bernstein. 5689 5690 <rdar://problem/6895347> Mouse wheeling in the QuickTime plug-in (incorrectly) scrolls the page 5691 5692 Fix logic. The plug-in returns true if it handled the event. 5693 5694 * Plugins/WebNetscapePluginView.mm: 5695 (-[WebNetscapePluginView sendEvent:isDrawRect:]): 5696 56972009-05-16 Dan Bernstein <mitz@apple.com> 5698 5699 Reviewed by Alexey Proskuryakov. 5700 5701 - fix <rdar://problem/6873305> Two distinct characters are not displayed 5702 correctly with 2 of the font selections from the stickies widget 5703 5704 * WebView/WebHTMLView.mm: 5705 (-[WebHTMLView _plainTextFromPasteboard:]): Return precomposed text. 5706 This is consistent with 5707 -_documentFragmentFromPasteboard:forType:inContext:subresources:. 5708 57092009-05-15 Anders Carlsson <andersca@apple.com> 5710 5711 Reviewed by Dan Bernstein. 5712 5713 Fix <rdar://problem/6875398>. 5714 5715 * Plugins/Hosted/NetscapePluginHostManager.mm: 5716 (WebKit::NetscapePluginHostManager::instantiatePlugin): 5717 If we failed to instantiate the plug-in, call cleanup() so that any streams created by the plug-in from its 5718 NPP_New callback are destroyed. 5719 5720 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 5721 Make cleanup() public. 5722 57232009-05-15 Darin Adler <darin@apple.com> 5724 5725 Reviewed by Anders Carlsson. 5726 5727 <rdar://problem/6889823> hash table iterator used after hash table modified in 5728 ProxyInstance::fieldNamed() when viewing movie trailer 5729 5730 * Plugins/Hosted/ProxyInstance.mm: 5731 (WebKit::ProxyInstance::methodsNamed): Move add call after the waitForReply call. 5732 Anders says that by the time we return someone else might have done the same add 5733 for us. 5734 (WebKit::ProxyInstance::fieldNamed): Ditto. 5735 57362009-05-15 Anders Carlsson <andersca@apple.com> 5737 5738 Reviewed by Darin Adler. 5739 5740 <rdar://problem/6892055> 5741 Replace WKN_GetLocation with WKN_ResolveURL (WKN_GetLocation was confusing and did not take the base URL into account) 5742 5743 * Plugins/Hosted/NetscapePluginHostProxy.mm: 5744 (WKPCResolveURL): 5745 New MIG callback. 5746 5747 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 5748 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 5749 (WebKit::NetscapePluginInstanceProxy::resolveURL): 5750 Use FrameLoader::complete URL here. 5751 5752 * Plugins/Hosted/WebKitPluginClient.defs: 5753 Add new MIG definition. 5754 5755 * Plugins/WebBaseNetscapePluginView.h: 5756 * Plugins/WebBaseNetscapePluginView.mm: 5757 (-[WebBaseNetscapePluginView resolvedURLStringForURL:target:]): 5758 * Plugins/WebNetscapeContainerCheckPrivate.h: 5759 * Plugins/WebNetscapeContainerCheckPrivate.mm: 5760 (browserContainerCheckFuncs): 5761 * Plugins/WebNetscapePluginView.h: 5762 * Plugins/WebNetscapePluginView.mm: 5763 (-[WebNetscapePluginView resolveURL:forTarget:]): 5764 * Plugins/npapi.mm: 5765 (WKN_ResolveURL): 5766 57672009-05-15 Dan Bernstein <mitz@apple.com> 5768 5769 Reviewed by Darin Adler. 5770 5771 - fix <rdar://problem/6892052> WebTextIterator should not “emit 5772 characters between all visible positions” 5773 5774 * WebView/WebTextIterator.mm: 5775 (-[WebTextIterator initWithRange:]): Changed to construct a TextIterator 5776 with emitCharactersBetweenAllVisiblePositions set to false. 5777 57782009-05-15 Mark Rowe <mrowe@apple.com> 5779 5780 Reviewed by Dave Kilzer. 5781 5782 Look for libWebKitSystemInterface.a in a more reasonable location. 5783 5784 * Configurations/DebugRelease.xcconfig: 5785 57862009-05-14 David Hyatt <hyatt@apple.com> 5787 5788 Reviewed by Tim Hatcher. 5789 5790 Fix for <rdar://problem/6886217> REGRESSION (S4 beta-ToT): Adium chat window contents no longer resize. 5791 5792 Technically this is a bug in Adium. It appears that Adium has subclassed the WebView and implemented 5793 viewDidMoveToWindow in its subclass improperly. It doesn't call up to the base class WebView like it 5794 should and so our boundsChanged notification never gets added. 5795 5796 Reduce the dependence on viewDidMoveToWindow by moving the registration of observers into 5797 viewWillMoveToWindow instead. 5798 5799 * WebView/WebView.mm: 5800 (-[WebView addSizeObserversForWindow:]): 5801 (-[WebView removeWindowObservers]): 5802 (-[WebView addWindowObserversForWindow:]): 5803 (-[WebView viewWillMoveToWindow:]): 5804 (-[WebView viewDidMoveToWindow]): 5805 (-[WebView viewDidMoveToSuperview]): 5806 58072009-05-14 David Levin <levin@chromium.org> 5808 5809 Reviewed by Eric Seidel. 5810 5811 https://bugs.webkit.org/show_bug.cgi?id=24704 5812 5813 Allow the local cache directory to be set using a defaults key. 5814 5815 * Misc/WebKitNSStringExtras.h: 5816 * Misc/WebKitNSStringExtras.m: 5817 (+[NSString _webkit_localCacheDirectoryWithBundleIdentifier:]): 5818 * WebKit.exp: 5819 58202009-05-14 Darin Adler <darin@apple.com> 5821 5822 Reviewed by Adam Roben. 5823 5824 <rdar://problem/6879999> Automator actions that use WebKit on a background thread fail when run outside of Automator 5825 5826 * WebView/WebView.mm: 5827 (clientNeedsWebViewInitThreadWorkaround): Added. Contains new broader rule. 5828 (needsWebViewInitThreadWorkaround): Changed to call clientNeedsWebViewInitThreadWorkaround. 5829 58302009-05-14 Darin Adler <darin@apple.com> 5831 5832 Reviewed by John Sullivan. 5833 5834 Bug 24049: Second right-click crashes safari when alert invoked 5835 https://bugs.webkit.org/show_bug.cgi?id=24049 5836 rdar://problem/6878977 5837 5838 * WebView/WebHTMLView.mm: 5839 (-[WebHTMLView rightMouseUp:]): Added a retain/autorelease of the event. 5840 (-[WebHTMLView menuForEvent:]): Ditto. Also cleaned up the logic here and 5841 eliminated some use of pointers that might be invalid after calling through 5842 to WebCore. 5843 (-[WebHTMLView scrollWheel:]): Ditto. 5844 (-[WebHTMLView acceptsFirstMouse:]): Ditto. 5845 (-[WebHTMLView shouldDelayWindowOrderingForEvent:]): Ditto. 5846 (-[WebHTMLView mouseDown:]): Ditto. 5847 (-[WebHTMLView mouseDragged:]): Ditto. 5848 (-[WebHTMLView mouseUp:]): Ditto. 5849 (-[WebHTMLView keyDown:]): Ditto. 5850 (-[WebHTMLView keyUp:]): Ditto. 5851 (-[WebHTMLView flagsChanged:]): Ditto. 5852 (-[WebHTMLView performKeyEquivalent:]): Ditto. 5853 58542009-05-14 Mark Rowe <mrowe@apple.com> 5855 5856 Rubber-stamped by Darin Adler. 5857 5858 <rdar://problem/6681868> When building with Xcode 3.1.3 should be using gcc 4.2 5859 5860 The meaning of XCODE_VERSION_ACTUAL is more sensible in newer versions of Xcode. 5861 Update our logic to select the compiler version to use the more appropriate XCODE_VERSION_MINOR 5862 if the version of Xcode supports it, and fall back to XCODE_VERSION_ACTUAL if not. 5863 5864 * Configurations/Base.xcconfig: 5865 58662009-05-13 Anders Carlsson <andersca@apple.com> 5867 5868 Reviewed by Sam Weinig. 5869 5870 WebKit side of <rdar://problem/6884476>. 5871 5872 * Plugins/Hosted/NetscapePluginHostProxy.mm: 5873 (WKPCGetLocation): 5874 Forward this to the plug-in instance proxy. 5875 5876 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 5877 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 5878 (WebKit::NetscapePluginInstanceProxy::getLocation): 5879 Ask the plug-in view for the location. 5880 5881 * Plugins/Hosted/WebKitPluginClient.defs: 5882 Add MIG definition. 5883 5884 * Plugins/WebBaseNetscapePluginView.h: 5885 * Plugins/WebBaseNetscapePluginView.mm: 5886 (-[WebBaseNetscapePluginView locationStringForTarget:]): 5887 Return the URL for a given frame. 5888 5889 * Plugins/WebNetscapeContainerCheckPrivate.h: 5890 Bump version. Add new declaration to the vtable. 5891 5892 * Plugins/WebNetscapeContainerCheckPrivate.mm: 5893 (browserContainerCheckFuncs): 5894 Add new declaration to the vtable. 5895 5896 * Plugins/WebNetscapePluginView.h: 5897 * Plugins/WebNetscapePluginView.mm: 5898 (-[WebNetscapePluginView locationForTarget:]): 5899 Call the base class method. 5900 5901 * Plugins/npapi.mm: 5902 (WKN_GetLocation): 5903 Forward this to the plug-in view. 5904 59052009-05-13 Douglas R. Davidson <ddavidso@apple.com> 5906 5907 Reviewed by Darin Adler. 5908 5909 <rdar://problem/6871587> Smart Copy/Paste setting should persist as continuous 5910 spell checking setting does 5911 5912 * WebView/WebPreferenceKeysPrivate.h: Added WebSmartInsertDeleteEnabled. 5913 5914 * WebView/WebView.mm: 5915 (-[WebViewPrivate init]): Initialize based on WebSmartInsertDeleteEnabled 5916 default. 5917 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): 5918 Removed code that initialized here. 5919 (-[WebView setSmartInsertDeleteEnabled:]): Set default here was with 5920 continuous spell checking setting. 5921 59222009-05-13 Darin Adler <darin@apple.com> 5923 5924 Revert the parser arena change. It was a slowdown, not a speedup. 5925 Better luck next time (I'll break it up into pieces). 5926 59272009-05-13 Darin Adler <darin@apple.com> 5928 5929 Reviewed by Cameron Zwarich. 5930 5931 Bug 25674: syntax tree nodes should use arena allocation 5932 https://bugs.webkit.org/show_bug.cgi?id=25674 5933 5934 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: Updated includes. 5935 New ones needed due to reducing includes of JSDOMBinding.h. 5936 * WebView/WebScriptDebugger.mm: Ditto. 5937 59382009-05-13 Douglas R. Davidson <ddavidso@apple.com> 5939 5940 Reviewed by Darin Adler. 5941 5942 <rdar://problem/6879145> 5943 Generate a contextual menu item allowing autocorrections to 5944 easily be changed back. Refrain from re-correcting items 5945 that have already been autocorrected once. 5946 5947 * WebCoreSupport/WebViewFactory.mm: 5948 (-[WebViewFactory contextMenuItemTagChangeBack:]): 5949 * WebView/WebUIDelegatePrivate.h: 5950 59512009-05-12 Anders Carlsson <andersca@apple.com> 5952 5953 Reviewed by Dan Bernstein. 5954 5955 Fix <rdar://problem/6878105>. 5956 5957 When instantiating the QT plug-in under Dashboard, force "kiosk mode". 5958 5959 * Plugins/WebBaseNetscapePluginView.mm: 5960 (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:WebCore::]): 5961 59622009-05-12 Dan Bernstein <mitz@apple.com> 5963 5964 Reviewed by Darin Adler. 5965 5966 - declare a forgotten method 5967 5968 * DOM/WebDOMOperationsPrivate.h: Declare -[DOMNode markupString] in the 5969 WebDOMNodeOperationsPendingPublic category. 5970 59712009-05-10 Alexey Proskuryakov <ap@webkit.org> 5972 5973 Reviewed by Dan Bernstein. 5974 5975 <rdar://problem/6870383> Have to enter credentials twice when downloading from a protected page 5976 5977 * Misc/WebDownload.m: Removed. 5978 * Misc/WebDownload.mm: Copied from WebKit/mac/Misc/WebDownload.m. 5979 (-[WebDownloadInternal download:didReceiveAuthenticationChallenge:]): Try to use 5980 credentials from WebCore storage. 5981 59822009-05-08 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com> 5983 5984 Not reviewed. Fix clean builds, forgot to land name() -> formControlName() rename patch in WebKit. Only landed the WebCore side. 5985 5986 * WebView/WebHTMLRepresentation.mm: 5987 (-[WebHTMLRepresentation elementWithName:inForm:]): 5988 59892009-05-08 Anders Carlsson <andersca@apple.com> 5990 5991 Reviewed by Kevin Decker. 5992 5993 - Fix <rdar://problem/6866712>. 5994 5995 Instead of just caching whether a plug-in object _has_ a field or method, also add an entry to the cache 5996 if it _doesn't_ have a certain field or method. This way we have to make fewer calls to the plug-in host. 5997 5998 * Plugins/Hosted/ProxyInstance.mm: 5999 (WebKit::ProxyInstance::methodsNamed): 6000 (WebKit::ProxyInstance::fieldNamed): 6001 60022009-05-08 Douglas R. Davidson <ddavidso@apple.com> 6003 6004 Reviewed by Darin Adler. 6005 6006 Fixes for <rdar://problem/6852771>. 6007 Disable text checking menu items if view is not editable. 6008 6009 * WebView/WebHTMLView.mm: 6010 (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): 6011 (-[WebHTMLView smartInsertDeleteEnabled]): 6012 (-[WebHTMLView setSmartInsertDeleteEnabled:]): 6013 (-[WebHTMLView toggleSmartInsertDelete:]): 6014 * WebView/WebHTMLViewInternal.h: 6015 60162009-05-08 Alexey Proskuryakov <ap@webkit.org> 6017 6018 Reviewed by Maciej Stachowiak. 6019 6020 <rdar://problem/6868773> NPN_GetAuthenticationInfo does not work with non-permanent credentials 6021 6022 * Plugins/WebBaseNetscapePluginView.mm: (WebKit::getAuthenticationInfo): Ask WebCore for 6023 credentials first (but also ask NSURLCredentialStorage, because WebCore won't know about 6024 permanent credentials). 6025 60262009-05-05 Ben Murdoch <benm@google.com> 6027 6028 Reviewed by Eric Seidel. 6029 6030 Add #if ENABLE(DATABASE) guards around database code so toggling ENABLE_DATABASE off does not break builds. 6031 https://bugs.webkit.org/show_bug.cgi?id=24776 6032 6033 * Storage/WebDatabaseManager.mm: 6034 * Storage/WebDatabaseManagerInternal.h: 6035 * Storage/WebDatabaseManagerPrivate.h: 6036 * Storage/WebDatabaseTrackerClient.h: 6037 * Storage/WebDatabaseTrackerClient.mm: 6038 * Storage/WebSecurityOrigin.mm: 6039 (-[WebSecurityOrigin usage]): 6040 (-[WebSecurityOrigin quota]): 6041 (-[WebSecurityOrigin setQuota:]): 6042 * Storage/WebSecurityOriginPrivate.h: 6043 * WebCoreSupport/WebChromeClient.h: 6044 * WebCoreSupport/WebChromeClient.mm: 6045 * WebView/WebView.mm: 6046 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): 6047 60482009-05-04 Anders Carlsson <andersca@apple.com> 6049 6050 Reviewed by Kevin Decker. 6051 6052 Fix <rdar://problem/6797644>. 6053 6054 Make sure to send a reply even when an instance proxy can't be found. 6055 6056 * Plugins/Hosted/NetscapePluginHostProxy.mm: 6057 (WKPCEvaluate): 6058 (WKPCInvoke): 6059 (WKPCInvokeDefault): 6060 (WKPCGetProperty): 6061 (WKPCHasProperty): 6062 (WKPCHasMethod): 6063 (WKPCEnumerate): 6064 60652009-05-04 Darin Adler <darin@apple.com> 6066 6067 Reviewed by Eric Seidel. 6068 6069 Bug 24924: remove Document.h include of Attr.h and HTMLCollection.h, 6070 and NamedMappedAttrMap.h include of MappedAttribute.h 6071 https://bugs.webkit.org/show_bug.cgi?id=24924 6072 6073 * WebView/WebFrame.mm: Added include of CSSMutableStyleDeclaration.h 6074 and ScriptValue.h. 6075 60762009-05-02 Geoffrey Garen <ggaren@apple.com> 6077 6078 Reviewed by Sam Weinig. 6079 6080 Simplified null-ish JSValues. 6081 6082 Replaced calls to noValue() with calls to JSValue() (which is what 6083 noValue() returned). Removed noValue(). 6084 6085 Removed "JSValue()" initialiazers, since default construction happens... 6086 by default. 6087 6088 * WebView/WebScriptDebugDelegate.mm: 6089 (-[WebScriptCallFrame evaluateWebScript:]): 6090 60912009-05-02 Alexey Proskuryakov <ap@webkit.org> 6092 6093 Reviewed by Dan Bernstein. 6094 6095 <rdar://problem/6741615> REGRESSION (r38629): Shortcut "Flag/Junk" in MobileMe does not work 6096 when Kotoeri is used. 6097 6098 * WebView/WebHTMLView.mm: (-[WebHTMLView inputContext]): Return a nil input context when 6099 focus is not in editable content. 6100 61012009-05-01 Geoffrey Garen <ggaren@apple.com> 6102 6103 Rubber Stamped by Sam Weinig. 6104 6105 Renamed JSValuePtr => JSValue. 6106 6107 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 6108 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 6109 (WebKit::NetscapePluginInstanceProxy::evaluate): 6110 (WebKit::NetscapePluginInstanceProxy::invoke): 6111 (WebKit::NetscapePluginInstanceProxy::invokeDefault): 6112 (WebKit::NetscapePluginInstanceProxy::construct): 6113 (WebKit::NetscapePluginInstanceProxy::getProperty): 6114 (WebKit::NetscapePluginInstanceProxy::setProperty): 6115 (WebKit::NetscapePluginInstanceProxy::hasMethod): 6116 (WebKit::NetscapePluginInstanceProxy::addValueToArray): 6117 (WebKit::NetscapePluginInstanceProxy::marshalValue): 6118 (WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray): 6119 (WebKit::NetscapePluginInstanceProxy::demarshalValue): 6120 (WebKit::NetscapePluginInstanceProxy::demarshalValues): 6121 * Plugins/Hosted/ProxyInstance.h: 6122 * Plugins/Hosted/ProxyInstance.mm: 6123 (WebKit::ProxyField::valueFromInstance): 6124 (WebKit::ProxyField::setValueToInstance): 6125 (WebKit::ProxyInstance::invoke): 6126 (WebKit::ProxyInstance::invokeMethod): 6127 (WebKit::ProxyInstance::invokeDefaultMethod): 6128 (WebKit::ProxyInstance::invokeConstruct): 6129 (WebKit::ProxyInstance::defaultValue): 6130 (WebKit::ProxyInstance::stringValue): 6131 (WebKit::ProxyInstance::numberValue): 6132 (WebKit::ProxyInstance::booleanValue): 6133 (WebKit::ProxyInstance::valueOf): 6134 (WebKit::ProxyInstance::fieldValue): 6135 (WebKit::ProxyInstance::setFieldValue): 6136 * WebView/WebFrame.mm: 6137 (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): 6138 * WebView/WebScriptDebugDelegate.mm: 6139 (-[WebScriptCallFrame _convertValueToObjcValue:]): 6140 (-[WebScriptCallFrame exception]): 6141 (-[WebScriptCallFrame evaluateWebScript:]): 6142 * WebView/WebView.mm: 6143 (aeDescFromJSValue): 6144 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): 6145 61462009-05-01 Pavel Feldman <pfeldman@chromium.org> 6147 6148 Reviewed by Timothy Hatcher. 6149 6150 Add a FrameLoaderClient callback for the ResourceRetrievedByXMLHttpRequest. 6151 6152 https://bugs.webkit.org/show_bug.cgi?id=25347 6153 6154 * WebCoreSupport/WebFrameLoaderClient.h: 6155 * WebCoreSupport/WebFrameLoaderClient.mm: 6156 (WebFrameLoaderClient::dispatchDidLoadResourceByXMLHttpRequest): 6157 61582009-04-30 David Kilzer <ddkilzer@apple.com> 6159 6160 Provide a mechanism to create a quirks delegate for HTMLParser 6161 6162 Reviewed by David Hyatt. 6163 6164 * WebCoreSupport/WebChromeClient.h: 6165 (WebChromeClient::createHTMLParserQuirks): Added. The default 6166 implementation of this factory method returns 0. 6167 61682009-04-30 Dimitri Glazkov <dglazkov@chromium.org> 6169 6170 Reviewed by Timothy Hatcher. 6171 6172 https://bugs.webkit.org/show_bug.cgi?id=25470 6173 Extend the cover of ENABLE_JAVASCRIPT_DEBUGGER to profiler. 6174 6175 * Configurations/FeatureDefines.xcconfig: Added ENABLE_JAVASCRIPT_DEBUGGER define. 6176 61772009-04-30 Kevin Decker <kdecker@apple.com> 6178 6179 Reviewed by Anders Carlson. 6180 6181 <rdar://problem/6823049> 6182 6183 Fix an issue where some plug-ins would cause the application icon to constantly bounce 6184 up and down in the Dock. 6185 6186 * Plugins/Hosted/NetscapePluginHostProxy.h: Change m_placeholderWindow ivar to be 6187 a subclass of NSWindow, WebPlaceholderModalWindow. 6188 * Plugins/Hosted/NetscapePluginHostProxy.mm: Added WebPlaceholderModalWindow NSWindow subclass. 6189 (-[WebPlaceholderModalWindow _wantsUserAttention]): Prevent NSApp from calling requestUserAttention: 6190 when the window is shown modally, even if the app is inactive. 6191 (WebKit::NetscapePluginHostProxy::beginModal): NSWindow -> WebPlaceholderModalWindow. 6192 61932009-04-30 Pavel Feldman <pfeldman@chromium.org> 6194 6195 Reviewed by Dimitri Glazkov. 6196 6197 https://bugs.webkit.org/show_bug.cgi?id=25342 6198 Add MessageSource and MessageLevel parameters to the ChromeClient::addMessageToConsole. 6199 6200 * WebCoreSupport/WebChromeClient.h: 6201 * WebCoreSupport/WebChromeClient.mm: 6202 (WebChromeClient::addMessageToConsole): 6203 62042009-04-29 Mark Rowe <mrowe@apple.com> 6205 6206 More build fixing after r43037. 6207 6208 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 6209 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 6210 (WebKit::NetscapePluginInstanceProxy::invoke): 6211 (WebKit::NetscapePluginInstanceProxy::invokeDefault): 6212 (WebKit::NetscapePluginInstanceProxy::construct): 6213 (WebKit::NetscapePluginInstanceProxy::demarshalValues): 6214 62152009-04-29 Dan Bernstein <mitz@apple.com> 6216 6217 Reviewed by Simon Fraser. 6218 6219 - WebKit part of <rdar://problem/6609509> Select All and then Delete 6220 should put Mail editing back into the same state as a new message 6221 6222 * WebView/WebView.mm: 6223 (-[WebView _selectionIsCaret]): Added. 6224 (-[WebView _selectionIsAll]): Added. Returns whether the selection 6225 encompasses the entire document. 6226 * WebView/WebViewPrivate.h: 6227 62282009-04-29 Douglas Davidson <ddavidso@apple.com> 6229 6230 Reviewed by Justin Garcia. 6231 6232 <rdar://problem/6836921> Mail exhibits issues with text checking, e.g. menu items not always validated correctly 6233 6234 * WebView/WebHTMLView.mm: 6235 (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): 6236 (-[WebHTMLView orderFrontSubstitutionsPanel:]): 6237 * WebView/WebView.mm: 6238 (-[WebView validateUserInterfaceItemWithoutDelegate:]): 6239 62402009-04-29 David Hyatt <hyatt@apple.com> 6241 6242 Reviewed by Dan Bernstein. 6243 6244 Fix a bug in the bounds checking for setNeedsLayout dirtying when a WebView's size changes. The superview 6245 of the WebView was being incorrectly checked instead of the WebView itself. 6246 6247 * WebView/WebView.mm: 6248 (-[WebView _boundsChanged]): 6249 62502009-04-29 Kevin Decker <kdecker@apple.com> 6251 6252 Reviewed by Anders Carlson. 6253 6254 Allow WKN_CheckIfAllowedToLoadURL() to take an optional void* context parameter. 6255 6256 * Plugins/WebNetscapeContainerCheckContextInfo.h: 6257 * Plugins/WebNetscapeContainerCheckContextInfo.mm: 6258 (-[WebNetscapeContainerCheckContextInfo initWithCheckRequestID:callbackFunc:context:]): 6259 (-[WebNetscapeContainerCheckContextInfo callback]): 6260 (-[WebNetscapeContainerCheckContextInfo context]): 6261 * Plugins/WebNetscapeContainerCheckPrivate.h: 6262 * Plugins/WebNetscapeContainerCheckPrivate.mm: 6263 (browserContainerCheckFuncs): 6264 * Plugins/WebNetscapePluginView.h: 6265 * Plugins/WebNetscapePluginView.mm: 6266 (-[WebNetscapePluginView checkIfAllowedToLoadURL:frame:callbackFunc:context:]): 6267 (-[WebNetscapePluginView _containerCheckResult:contextInfo:]): 6268 * Plugins/npapi.mm: 6269 (WKN_CheckIfAllowedToLoadURL): 6270 62712009-04-29 David Hyatt <hyatt@apple.com> 6272 6273 Reviewed by John Sullivan. 6274 6275 Fix for <rdar://problem/6835573>, Find Banner turns invisible when WebView is resized. Make sure 6276 not to resize the interior views of a WebView in response to its bounds changing when not using 6277 viewless WebKit. Auto-resizing rules were already in place to handle size adjustments for us. 6278 Just mark as needing layout and do nothing else. 6279 6280 This does mean viewless WebKit is broken with the Find Banner, and that will likely require a 6281 Safari change (using a new API that will enable clients to define the edges of the content area as offsets 6282 from the sides of the WebView). 6283 6284 * WebView/WebView.mm: 6285 (-[WebView _boundsChanged]): 6286 62872009-04-28 Geoffrey Garen <ggaren@apple.com> 6288 6289 Rubber stamped by Beth Dakin. 6290 6291 Removed scaffolding supporting dynamically converting between 32bit and 6292 64bit value representations. 6293 6294 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 6295 (WebKit::NetscapePluginInstanceProxy::marshalValues): 6296 62972009-04-28 Anders Carlsson <andersca@apple.com> 6298 6299 Reviewed by Kevin Decker and Darin Adler. 6300 6301 Fix <rdar://problem/6836132>. 6302 6303 * Plugins/Hosted/NetscapePluginHostProxy.mm: 6304 (WKPCCheckIfAllowedToLoadURL): 6305 Call the instance proxy. 6306 6307 (WKPCCancelCheckIfAllowedToLoadURL): 6308 Ditto. 6309 6310 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 6311 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 6312 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): 6313 Initialize the check ID counter. 6314 6315 (WebKit::NetscapePluginInstanceProxy::checkIfAllowedToLoadURL): 6316 Create a WebPluginContainerCheck, add it to the map, and start it. 6317 6318 (WebKit::NetscapePluginInstanceProxy::cancelCheckIfAllowedToLoadURL): 6319 Remove the check from the map. 6320 6321 (WebKit::NetscapePluginInstanceProxy::checkIfAllowedToLoadURLResult): 6322 Call the WKPH MIG callback. 6323 6324 * Plugins/Hosted/WebHostedNetscapePluginView.h: 6325 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 6326 (-[WebHostedNetscapePluginView _webPluginContainerCancelCheckIfAllowedToLoadRequest:]): 6327 Call the instance proxy. 6328 6329 (-[WebHostedNetscapePluginView _containerCheckResult:contextInfo:]): 6330 Ditto. 6331 6332 * Plugins/Hosted/WebKitPluginClient.defs: 6333 * Plugins/Hosted/WebKitPluginHost.defs: 6334 Add MIG declarations. 6335 63362009-04-28 Dan Bernstein <mitz@apple.com> 6337 6338 Reviewed by John Sullivan. 6339 6340 - fix <rdar://problem/6786360> Make PDF an insertable pasteboard type 6341 6342 * WebCoreSupport/WebPasteboardHelper.mm: 6343 (WebPasteboardHelper::insertablePasteboardTypes): 6344 * WebView/WebHTMLView.mm: 6345 (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]): 6346 (+[WebHTMLView _insertablePasteboardTypes]): 6347 (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]): 6348 63492009-04-27 Douglas R. Davidson <ddavidso@apple.com> 6350 6351 Add the various switches and context menu items needed for 6352 <rdar://problem/6724106> WebViews need to implement text checking 6353 and adopt updatePanels in place of old SPI _updateGrammar. 6354 6355 Reviewed by Justin Garcia. 6356 6357 * WebCoreSupport/WebContextMenuClient.mm: 6358 (fixMenusReceivedFromOldClients): 6359 * WebCoreSupport/WebEditorClient.h: 6360 * WebCoreSupport/WebEditorClient.mm: 6361 (WebEditorClient::uppercaseWord): 6362 (WebEditorClient::lowercaseWord): 6363 (WebEditorClient::capitalizeWord): 6364 (WebEditorClient::showSubstitutionsPanel): 6365 (WebEditorClient::substitutionsPanelIsShowing): 6366 (WebEditorClient::toggleSmartInsertDelete): 6367 (WebEditorClient::isAutomaticQuoteSubstitutionEnabled): 6368 (WebEditorClient::toggleAutomaticQuoteSubstitution): 6369 (WebEditorClient::isAutomaticLinkDetectionEnabled): 6370 (WebEditorClient::toggleAutomaticLinkDetection): 6371 (WebEditorClient::isAutomaticDashSubstitutionEnabled): 6372 (WebEditorClient::toggleAutomaticDashSubstitution): 6373 (WebEditorClient::isAutomaticTextReplacementEnabled): 6374 (WebEditorClient::toggleAutomaticTextReplacement): 6375 (WebEditorClient::isAutomaticSpellingCorrectionEnabled): 6376 (WebEditorClient::toggleAutomaticSpellingCorrection): 6377 (WebEditorClient::checkTextOfParagraph): 6378 * WebCoreSupport/WebViewFactory.mm: 6379 (-[WebViewFactory contextMenuItemTagShowColors]): 6380 (-[WebViewFactory contextMenuItemTagCorrectSpellingAutomatically]): 6381 (-[WebViewFactory contextMenuItemTagSubstitutionsMenu]): 6382 (-[WebViewFactory contextMenuItemTagShowSubstitutions:]): 6383 (-[WebViewFactory contextMenuItemTagSmartCopyPaste]): 6384 (-[WebViewFactory contextMenuItemTagSmartQuotes]): 6385 (-[WebViewFactory contextMenuItemTagSmartDashes]): 6386 (-[WebViewFactory contextMenuItemTagSmartLinks]): 6387 (-[WebViewFactory contextMenuItemTagTextReplacement]): 6388 (-[WebViewFactory contextMenuItemTagTransformationsMenu]): 6389 (-[WebViewFactory contextMenuItemTagMakeUpperCase]): 6390 (-[WebViewFactory contextMenuItemTagMakeLowerCase]): 6391 (-[WebViewFactory contextMenuItemTagCapitalize]): 6392 * WebView/WebHTMLView.mm: 6393 (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): 6394 (-[WebHTMLView isAutomaticQuoteSubstitutionEnabled]): 6395 (-[WebHTMLView setAutomaticQuoteSubstitutionEnabled:]): 6396 (-[WebHTMLView toggleAutomaticQuoteSubstitution:]): 6397 (-[WebHTMLView isAutomaticLinkDetectionEnabled]): 6398 (-[WebHTMLView setAutomaticLinkDetectionEnabled:]): 6399 (-[WebHTMLView toggleAutomaticLinkDetection:]): 6400 (-[WebHTMLView isAutomaticDashSubstitutionEnabled]): 6401 (-[WebHTMLView setAutomaticDashSubstitutionEnabled:]): 6402 (-[WebHTMLView toggleAutomaticDashSubstitution:]): 6403 (-[WebHTMLView isAutomaticTextReplacementEnabled]): 6404 (-[WebHTMLView setAutomaticTextReplacementEnabled:]): 6405 (-[WebHTMLView toggleAutomaticTextReplacement:]): 6406 (-[WebHTMLView isAutomaticSpellingCorrectionEnabled]): 6407 (-[WebHTMLView setAutomaticSpellingCorrectionEnabled:]): 6408 (-[WebHTMLView toggleAutomaticSpellingCorrection:]): 6409 * WebView/WebHTMLViewInternal.h: 6410 * WebView/WebPreferenceKeysPrivate.h: 6411 * WebView/WebUIDelegatePrivate.h: 6412 * WebView/WebView.mm: 6413 (-[WebViewPrivate init]): 6414 (-[WebView validateUserInterfaceItemWithoutDelegate:]): 6415 (-[WebView setGrammarCheckingEnabled:]): 6416 (-[WebView isAutomaticQuoteSubstitutionEnabled]): 6417 (-[WebView isAutomaticLinkDetectionEnabled]): 6418 (-[WebView isAutomaticDashSubstitutionEnabled]): 6419 (-[WebView isAutomaticTextReplacementEnabled]): 6420 (-[WebView isAutomaticSpellingCorrectionEnabled]): 6421 (-[WebView setAutomaticQuoteSubstitutionEnabled:]): 6422 (-[WebView toggleAutomaticQuoteSubstitution:]): 6423 (-[WebView setAutomaticLinkDetectionEnabled:]): 6424 (-[WebView toggleAutomaticLinkDetection:]): 6425 (-[WebView setAutomaticDashSubstitutionEnabled:]): 6426 (-[WebView toggleAutomaticDashSubstitution:]): 6427 (-[WebView setAutomaticTextReplacementEnabled:]): 6428 (-[WebView toggleAutomaticTextReplacement:]): 6429 (-[WebView setAutomaticSpellingCorrectionEnabled:]): 6430 (-[WebView toggleAutomaticSpellingCorrection:]): 6431 * WebView/WebViewPrivate.h: 6432 64332009-04-27 David Kilzer <ddkilzer@apple.com> 6434 6435 Consolidate runtime application checks for Apple Mail and Safari 6436 6437 Reviewed by Mark Rowe and Darin Adler. 6438 6439 * WebCoreSupport/WebContextMenuClient.mm: 6440 (isAppleMail): Removed. 6441 (fixMenusToSendToOldClients): Switched to use 6442 applicationIsAppleMail(). 6443 * WebView/WebFrame.mm: 6444 (-[WebFrame reload]): Switched to use applicationIsSafari(). 6445 * WebView/WebPDFView.mm: 6446 (-[WebPDFView menuForEvent:]): Ditto. 6447 * WebView/WebResource.mm: 6448 (+[WebResource _needMailThreadWorkaroundIfCalledOffMainThread]): 6449 Switched to use applicationIsAppleMail(). 6450 * WebView/WebView.mm: 6451 (runningLeopardMail): Ditto. 6452 (runningTigerMail): Ditto. 6453 (-[WebView _needsKeyboardEventDisambiguationQuirks]): Switched 6454 to use applicationIsSafari(). 6455 64562009-04-27 Kevin Decker <kdecker@apple.com> 6457 6458 Fix the Tiger build. 6459 6460 * Plugins/WebNetscapePluginView.mm: The base class of WebNetscapePluginView.mm, WebBaseNetscapePluginView, already implemented 6461 the two methods below. But the Tiger compiler didn't know that. 6462 (-[WebNetscapePluginView webView]): 6463 (-[WebNetscapePluginView webFrame]): 6464 64652009-04-27 Kevin Decker <kdecker@apple.com> 6466 6467 Reviewed by Anders Carlsson. 6468 6469 <rdar://problem/6352982> 6470 6471 * Plugins/WebBaseNetscapePluginView.mm: Removed checkIfAllowedToLoadURL:frame:callbackFunc, cancelCheckIfAllowedToLoadURL, and 6472 _webPluginContainerCancelCheckIfAllowedToLoadRequest from the base class. These methods now exist in the subclass WebNetscapePluginView. 6473 6474 Added WebNetscapeContainerCheckContextInfo, which is used as a "contextInfo" object in 6475 -[WebNetscapePluginView checkIfAllowedToLoadURL:frame:callbackFunc:] 6476 * Plugins/WebNetscapeContainerCheckContextInfo.h: Added. 6477 * Plugins/WebNetscapeContainerCheckContextInfo.mm: Added. 6478 (-[WebNetscapeContainerCheckContextInfo initWithCheckRequestID:callbackFunc:]): Added desiginated initializer. 6479 (-[WebNetscapeContainerCheckContextInfo checkRequestID]): Added. Returns the checkRequestID. 6480 (-[WebNetscapeContainerCheckContextInfo callback]): Added. Returns the callback. 6481 6482 * Plugins/WebNetscapePluginView.h: Added two new ivars: _containerChecksInProgress and _currentContainerCheckRequestID. 6483 * Plugins/WebNetscapePluginView.mm: #import both WebPluginContainerCheck.h and WebNetscapeContainerCheckContextInfo.h 6484 6485 (-[WebNetscapePluginView checkIfAllowedToLoadURL:frame:callbackFunc:]): Added. This is the implementation of WKN_CheckIfAllowedToLoadURL. 6486 Here, we increment the request ID and start the container check. 6487 6488 (-[WebNetscapePluginView _containerCheckResult:contextInfo:]): Added. This is a callback method for WebPluginContainerCheck. 6489 It's where we actually call into the plug-in and provide the allow-or-deny result. 6490 6491 (-[WebNetscapePluginView cancelCheckIfAllowedToLoadURL:]): Added. This is the implementation of WKN_CancelCheckIfAllowedToLoadURL. 6492 Here we lookup the check, cancel it, and remove it from _containerChecksInProgress. 6493 6494 (-[WebNetscapePluginView _webPluginContainerCancelCheckIfAllowedToLoadRequest:]): Added. WebPluginContainerCheck automatically calls 6495 this method after invoking our _containerCheckResult: selector. It works this way because calling -[WebPluginContainerCheck cancel] allows 6496 it to do it's teardown process. 6497 6498 (-[WebNetscapePluginView fini]): Release _containerChecksInProgress ivar. 6499 6500 * Plugins/WebPluginContainerCheck.h: Removed initWithRequest: method from header; no client was using this method directly. 6501 * Plugins/WebPluginContainerCheck.mm: 6502 (+[WebPluginContainerCheck checkWithRequest:target:resultObject:selector:controller:contextInfo:]): Added optional contextInfo parameter. 6503 (-[WebPluginContainerCheck _continueWithPolicy:]): If there's a contextInfo object, pass it as a parameter to resultSelector. 6504 (-[WebPluginContainerCheck cancel]): Release _contextInfo ivar. 6505 (-[WebPluginContainerCheck contextInfo]): Added new method. Returns the contextInfo object, if one so exists. 6506 * Plugins/WebPluginController.mm: 6507 (-[WebPluginController _webPluginContainerCheckIfAllowedToLoadRequest:inFrame:resultObject:selector:]): Pass nil for contextInfo. WebKit-style 6508 plug-ins do not need additional context information. 6509 65102009-04-25 Brady Eidson <beidson@apple.com> 6511 6512 Reviewed by Sam Weinig 6513 6514 Some *obvious* style cleanup in my last patch. 6515 6516 * History/WebBackForwardList.mm: 6517 (bumperCarBackForwardHackNeeded): 6518 65192009-04-25 Brady Eidson <beidson@apple.com> 6520 6521 Reviewed by Oliver Hunt 6522 6523 <rdar://problem/6817607> BumperCar 2.2 crashes going back (invalid WebHistoryItem) 6524 6525 BumperCar was holding a pointer to a WebHistoryItem they never retain, then later 6526 tried to go to it. In some cases it would be dealloc'ed first. 6527 When WebHistoryItems were pure Objective-C they probably got away with this more often. 6528 With the WebCore/Obj-C mixed WebHistoryItems it's more likely to crash. 6529 6530 * History/WebBackForwardList.mm: 6531 (bumperCarBackForwardHackNeeded): 6532 (-[WebBackForwardList backListWithLimit:]): If this is BumperCar, hang on to the 6533 NSArray of WebHistoryItems until the next time this method is called. 6534 (-[WebBackForwardList forwardListWithLimit:]): Ditto. 6535 6536 * Misc/WebKitVersionChecks.h: Added WEBKIT_FIRST_VERSION_WITHOUT_BUMPERCAR_BACK_FORWARD_QUIRK. 6537 65382009-04-24 Anders Carlsson <andersca@apple.com> 6539 6540 Reviewed by Darin Adler. 6541 6542 Fix <rdar://problem/6761635>. 6543 6544 Make sure to keep an extra reference to the instance proxy in case the plug-in host crashes while 6545 we're waiting for a reply. 6546 6547 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 6548 (WebKit::NetscapePluginInstanceProxy::destroy): 6549 65502009-04-24 Brady Eidson <beidson@apple.com> 6551 6552 Reviewed by Dan Bernstein 6553 6554 Currently working on a bug where a WebHistoryItem was being used after being dealloc'ed. 6555 I added this assertion to help catch the case as soon as it happens instead of random 6556 issues downstream. Figured it's worth checking in by itself. 6557 6558 * History/WebHistoryItem.mm: 6559 (core): ASSERT that the WebCore::HistoryItem inside this WebHistoryItem is supposed to have 6560 this WebHistoryItem as a wrapper. 6561 65622009-04-23 Beth Dakin <bdakin@apple.com> 6563 6564 Reviewed by Darin Adler. 6565 6566 Fix for <rdar://problem/6333461> REGRESSION (r36864-r36869): 6567 Dragging stocks widget scrollbar drags the whole widget 6568 6569 Look for our new WebCore scrollbars in the WebHTMLView and add 6570 proper Dashboard regions for them. 6571 6572 * WebView/WebView.mm: 6573 (-[WebView _addScrollerDashboardRegionsForFrameView:dashboardRegions:]): 6574 (-[WebView _addScrollerDashboardRegions:from:]): 6575 65762009-04-23 John Sullivan <sullivan@apple.com> 6577 6578 fixed <rdar://problem/6822479> Assertion failure after Reset Safari in new history-writing code 6579 6580 Reviewed by Oliver Hunt 6581 6582 * History/WebHistory.mm: 6583 (-[WebHistoryPrivate data]): 6584 Return nil immediately if there are no entries; this matches a recent Windows-platform fix. 6585 65862009-04-23 Dimitri Glazkov <dglazkov@chromium.org> 6587 6588 Reviewed by Darin Adler. 6589 6590 https://bugs.webkit.org/show_bug.cgi?id=25313 6591 Missing scroll bars in GMail. 6592 6593 * WebView/WebDynamicScrollBarsView.m: 6594 (-[WebDynamicScrollBarsView updateScrollers]): Added check for the ScrollbarAlwaysOn 6595 scroll mode. 6596 65972009-04-23 Kevin Decker <kdecker@apple.com> 6598 6599 * Plugins/WebPluginContainerCheck.h: Fix the Tiger build. 6600 66012009-04-23 Anders Carlsson <andersca@apple.com> 6602 6603 Reviewed by Geoffrey Garen. 6604 6605 Fix <rdar://problem/6821992> 6606 6607 Add a new m_inDestroy member variable. Set it to true when in destroy, and have all NPRuntime functions return false 6608 when m_inDestroy is true. 6609 6610 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 6611 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 6612 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): 6613 (WebKit::NetscapePluginInstanceProxy::destroy): 6614 (WebKit::NetscapePluginInstanceProxy::invoke): 6615 (WebKit::NetscapePluginInstanceProxy::invokeDefault): 6616 (WebKit::NetscapePluginInstanceProxy::construct): 6617 (WebKit::NetscapePluginInstanceProxy::getProperty): 6618 (WebKit::NetscapePluginInstanceProxy::setProperty): 6619 (WebKit::NetscapePluginInstanceProxy::removeProperty): 6620 (WebKit::NetscapePluginInstanceProxy::hasProperty): 6621 (WebKit::NetscapePluginInstanceProxy::hasMethod): 6622 (WebKit::NetscapePluginInstanceProxy::enumerate): 6623 66242009-04-23 David Hyatt <hyatt@apple.com> 6625 6626 Reviewed by Maciej. 6627 6628 Fix for <rdar://problem/6789879> REGRESSION (42464): Hitting assertion when loading message in Mail + TOT WebKit 6629 6630 Make the Mac platform the same as all the other platforms. Instead of (incorrectly) marking a FrameView for layout 6631 when its underlying document view changes, just mark the outermost frame view for layout when the WebView's size changes. 6632 6633 * WebView/WebHTMLView.mm: 6634 (-[WebHTMLView _frameOrBoundsChanged]): 6635 (-[WebHTMLView addSuperviewObservers]): 6636 * WebView/WebView.mm: 6637 (-[WebView _boundsChanged]): 6638 (-[WebView removeSizeObservers]): 6639 (-[WebView addSizeObservers]): 6640 66412009-04-23 Kevin Decker <kdecker@apple.com> 6642 6643 Reviewed by Tim Hatcher. 6644 6645 Second part of the fix for <rdar://problem/6352982> 6646 6647 * Plugins/WebBaseNetscapePluginView.h: Make this class conform to WebPluginContainerCheckController 6648 * Plugins/WebBaseNetscapePluginView.mm: Likewise. 6649 (-[WebBaseNetscapePluginView _webPluginContainerCancelCheckIfAllowedToLoadRequest:]): Added skeleton method. 6650 * Plugins/WebPluginContainerCheck.h: Added protocol for <WebPluginContainerCheckController> 6651 * Plugins/WebPluginContainerCheck.mm: 6652 (-[WebPluginContainerCheck initWithRequest:target:resultObject:selector:controller:]): 6653 * Plugins/WebPluginController.h: Make this class conform to WebPluginContainerCheckController 6654 66552009-04-23 Kevin Decker <kdecker@apple.com> 6656 6657 Reviewed by Anders Carlsson. 6658 6659 First part of <rdar://problem/6352982> 6660 6661 * Plugins/WebBaseNetscapePluginView.h: Imported #WebNetscapeContainerCheckPrivate.h; Added two new method: 6662 checkIfAllowedToLoadURL:url:frame:callbackFunc: and cancelCheckIfAllowedToLoadURL: 6663 * Plugins/WebBaseNetscapePluginView.mm: 6664 (-[WebBaseNetscapePluginView checkIfAllowedToLoadURL:frame:callbackFunc:]): Added skeleton method, does nothing interesting 6665 yet. 6666 (-[WebBaseNetscapePluginView cancelCheckIfAllowedToLoadURL:]): Likewise. 6667 * Plugins/WebNetscapeContainerCheckPrivate.h: Added. 6668 * Plugins/WebNetscapeContainerCheckPrivate.mm: Added. 6669 (browserContainerCheckFuncs): Added. 6670 * Plugins/WebNetscapePluginView.h: Imported #WebNetscapeContainerCheckPrivate.h; 6671 * Plugins/WebNetscapePluginView.mm: Imported #WebNetscapeContainerCheckPrivate.h; added WKN_CheckIfAllowedToLoadURL 6672 and WKN_CancelCheckIfAllowedToLoadURL functions. 6673 (-[WebNetscapePluginView getVariable:value:]): Return vtable for container check functions. 6674 * Plugins/npapi.mm: 6675 (WKN_CheckIfAllowedToLoadURL): Added new private function. 6676 (WKN_CancelCheckIfAllowedToLoadURL): Ditto. 6677 66782009-04-22 Oliver Hunt <oliver@apple.com> 6679 6680 Reviewed by Darin Adler. 6681 6682 <rdar://problem/6757346> SAP: Prevent default on mouseDown does not stop iframe from capturing subsequent mouse moves 6683 6684 Make mouseUP forward to the root view as we do for mouseMoves and mouseDragged:. 6685 6686 * WebView/WebHTMLView.mm: 6687 (-[WebHTMLView mouseUp:]): 6688 66892009-04-22 Oliver Hunt <oliver@apple.com> 6690 6691 Reviewed by Darin Adler. 6692 6693 <rdar://problem/6757346> SAP: Prevent default on mouseDown does not stop iframe from capturing subsequent mouse moves 6694 6695 Make mouseDragged forward to the root view as we do for mouseMoves. 6696 6697 * WebView/WebHTMLView.mm: 6698 (-[WebHTMLView mouseDragged:]): 6699 67002009-04-22 Anders Carlsson <andersca@apple.com> 6701 6702 Reviewed by Oliver Hunt. 6703 6704 Fix <rdar://problem/6792694> 6705 6706 When we're trying to instantiate a plug-in and the plug-in host has died, we need to invalidate the 6707 instance so that it doesn't stick around and do bad things. 6708 6709 * Plugins/Hosted/NetscapePluginHostManager.mm: 6710 (WebKit::NetscapePluginHostManager::instantiatePlugin): 6711 67122009-04-22 Sam Weinig <sam@webkit.org> 6713 6714 Rubber-stamped by Darin Adler. 6715 6716 Fix for <rdar://problem/6816957> 6717 Turn off Geolocation by default 6718 6719 * Configurations/FeatureDefines.xcconfig: 6720 67212009-04-21 Dan Bernstein <mitz@apple.com> 6722 6723 Reviewed by Jon Honeycutt. 6724 6725 - Mac part of fixing for <rdar://problem/6755137> Action dictionary for 6726 policy decision is missing keys when full-page zoom is used 6727 6728 * WebCoreSupport/WebFrameLoaderClient.mm: 6729 (WebFrameLoaderClient::actionDictionary): Use absoluteLocation() instead 6730 of pageX() and pageY(), which are adjusted for zoom. 6731 67322009-04-21 Anders Carlsson <andersca@apple.com> 6733 6734 Reviewed by Darin Adler and Kevin Decker. 6735 6736 WebKit side of <rdar://problem/6781642>. 6737 6738 When we call resize with an actual changed size, block until the plug-in host is done. 6739 6740 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 6741 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 6742 (WebKit::NetscapePluginInstanceProxy::resize): 6743 * Plugins/Hosted/WebHostedNetscapePluginView.h: 6744 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 6745 (-[WebHostedNetscapePluginView updateAndSetWindow]): 6746 * Plugins/Hosted/WebKitPluginHost.defs: 6747 67482009-04-17 Timothy Hatcher <timothy@apple.com> 6749 6750 Change how sudden termination works with WebView teardown. 6751 6752 <rdar://problem/6383352&6383379&6383940> 6753 6754 Reviewed by Darin Adler. 6755 6756 * WebCoreSupport/WebChromeClient.h: Remove disableSuddenTermination/enableSuddenTermination. 6757 * WebCoreSupport/WebChromeClient.mm: Ditto. 6758 * WebView/WebFrame.mm: 6759 (-[WebFrame _pendingFrameUnloadEventCount]): Ask the DOMWindow. 6760 * WebView/WebView.mm: 6761 (+[WebView canCloseAllWebViews]): Call DOMWindow::dispatchAllPendingBeforeUnloadEvents. 6762 (+[WebView closeAllWebViews]): Call DOMWindow::dispatchAllPendingUnloadEvents and 6763 call close on all the WebViews. 6764 (-[WebView _closeWithFastTeardown]): Remove code for unload event dispatch. 6765 (-[WebView _close]): Correct a comment. 6766 (+[WebView _applicationWillTerminate]): Call closeAllWebViews. 6767 * WebView/WebViewPrivate.h: Add canCloseAllWebViews and closeAllWebViews. 6768 67692009-04-21 Geoffrey Garen <ggaren@apple.com> 6770 6771 Reviewed by Mark Rowe. 6772 6773 Tiger crash fix: Put VM tags in their own header file, and fixed up the 6774 #ifdefs so they're not used on Tiger. 6775 6776 * ForwardingHeaders/wtf/VMTags.h: Copied from ForwardingHeaders/wtf/HashTraits.h. 6777 67782009-04-17 Anders Carlsson <andersca@apple.com> 6779 6780 Reviewed by Sam Weinig. 6781 6782 <rdar://problem/6722845> 6783 In the Cocoa event model, NPWindow's window field should be null 6784 6785 * Plugins/Hosted/NetscapePluginHostProxy.mm: 6786 (WKPCConvertPoint): 6787 Get the instance proxy and call it's convertPoint function. 6788 6789 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 6790 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 6791 (WebKit::NetscapePluginInstanceProxy::convertPoint): 6792 Call convertPoint on the plug-in view. 6793 6794 * Plugins/Hosted/WebKitPluginClient.defs: 6795 Add PCConvertPoint. 6796 6797 * Plugins/WebBaseNetscapePluginView.h: 6798 Add a declaration for convertFromX:andY:space:toX:andY:space:. 6799 6800 * Plugins/WebBaseNetscapePluginView.mm: 6801 (-[WebBaseNetscapePluginView convertFromX:andY:space:toX:andY:space:]): 6802 Convert a point from one coordinate system to another. 6803 6804 * Plugins/WebNetscapePluginEventHandler.h: 6805 * Plugins/WebNetscapePluginEventHandlerCarbon.h: 6806 * Plugins/WebNetscapePluginEventHandlerCarbon.mm: 6807 (WebNetscapePluginEventHandlerCarbon::drawRect): 6808 * Plugins/WebNetscapePluginEventHandlerCocoa.h: 6809 Add CGContextRef to drawRect. 6810 6811 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 6812 (WebNetscapePluginEventHandlerCocoa::drawRect): 6813 Set the passed in context. 6814 6815 * Plugins/WebNetscapePluginPackage.mm: 6816 (-[WebNetscapePluginPackage _tryLoad]): 6817 Add NPN_ConvertPoint to the browserFuncs vtable. 6818 6819 * Plugins/WebNetscapePluginView.mm: 6820 (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]): 6821 Only set the window for the Carbon event model. 6822 6823 (-[WebNetscapePluginView restorePortState:]): 6824 It's OK for the window context to be null. 6825 6826 (-[WebNetscapePluginView sendDrawRectEvent:]): 6827 Pass the CGContextRef to drawRect. 6828 6829 * Plugins/npapi.mm: 6830 (NPN_ConvertPoint): 6831 Call the plug-in view method. 6832 68332009-04-20 Sam Weinig <sam@webkit.org> 6834 6835 Rubber-stamped by Tim Hatcher. 6836 6837 Add licenses for xcconfig files. 6838 6839 * Configurations/Base.xcconfig: 6840 * Configurations/DebugRelease.xcconfig: 6841 * Configurations/FeatureDefines.xcconfig: 6842 * Configurations/Version.xcconfig: 6843 * Configurations/WebKit.xcconfig: 6844 68452009-04-20 Anders Carlsson <andersca@apple.com> 6846 6847 Reviewed by Dan Bernstein. 6848 6849 WebKit side of <rdar://problem/6781302> 6850 6851 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 6852 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 6853 (WebKit::NetscapePluginInstanceProxy::keyEvent): 6854 Pass the event keyChar. 6855 6856 (WebKit::NetscapePluginInstanceProxy::syntheticKeyDownWithCommandModifier): 6857 Ditto. 6858 6859 (WebKit::NetscapePluginInstanceProxy::flagsChanged): 6860 Pass a 0 keyChar. 6861 6862 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 6863 (-[WebHostedNetscapePluginView flagsChanged:]): 6864 Call NetscapePluginInstanceProxy::flagsChanged. 6865 6866 * Plugins/Hosted/WebKitPluginHost.defs: 6867 Add a keyChar argument. 6868 68692009-04-19 Adele Peterson <adele@apple.com> 6870 6871 Reviewed by Darin Adler. 6872 6873 Fix for <rdar://problem/6804809> REGRESSION: In Mail, Home and End do not scroll message 6874 6875 If no scrolling occurs, call tryToPerform on the next responder. Then our WebResponderChainSink 6876 will correctly detect if no responders handle the selector. 6877 6878 * WebView/WebFrameView.mm: 6879 (-[WebFrameView _scrollToBeginningOfDocument]): 6880 (-[WebFrameView _scrollToEndOfDocument]): 6881 (-[WebFrameView scrollToBeginningOfDocument:]): 6882 (-[WebFrameView scrollToEndOfDocument:]): 6883 (-[WebFrameView scrollLineUp:]): 6884 (-[WebFrameView scrollLineDown:]): 6885 68862009-04-19 David Kilzer <ddkilzer@apple.com> 6887 6888 Make FEATURE_DEFINES completely dynamic 6889 6890 Reviewed by Darin Adler. 6891 6892 Make FEATURE_DEFINES depend on individual ENABLE_FEATURE_NAME 6893 variables for each feature, making it possible to remove all 6894 knowledge of FEATURE_DEFINES from build-webkit. 6895 6896 * Configurations/FeatureDefines.xcconfig: Extract a variable 6897 from FEATURE_DEFINES for each feature setting. 6898 68992009-04-18 Pierre d'Herbemont <pdherbemont@apple.com> 6900 6901 Reviewed by Mark Rowe. 6902 6903 <rdar://problem/6781295> video.buffered and video.seekable are not 6904 the same. video.buffered should return only what is buffered and 6905 not what is seekable 6906 6907 * WebCoreSupport/WebSystemInterface.m: 6908 (InitWebCoreSystemInterface): Add wkQTMovieMaxTimeSeekable. 6909 69102009-04-18 Pierre d'Herbemont <pdherbemont@apple.com> 6911 6912 Reviewed by Adele Peterson. 6913 6914 <rdar://problem/6747241> work around QTKit no longer reaching 6915 QTMovieLoadStateComplete 6916 6917 * WebCoreSupport/WebSystemInterface.m: 6918 (InitWebCoreSystemInterface): Init the new WKSI exported symbol. 6919 69202009-04-17 Anders Carlsson <andersca@apple.com> 6921 6922 Reviewed by Dan Bernstein. 6923 6924 <rdar://problem/6714488> 6925 REGRESSION (Safari 3-4): Edit menu commands (cut/copy/paste/select all) do not work on Flash content 6926 6927 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 6928 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 6929 (WebKit::NetscapePluginInstanceProxy::syntheticKeyDownWithCommandModifier): 6930 Send a keyDown event to the plug-in host. 6931 6932 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 6933 (-[WebHostedNetscapePluginView sendModifierEventWithKeyCode:character:]): 6934 Call the plug-in instance proxy. 6935 6936 * Plugins/WebBaseNetscapePluginView.mm: 6937 (-[WebBaseNetscapePluginView sendModifierEventWithKeyCode:character:]): 6938 Add this. Subclasses are required to override it. 6939 6940 (-[WebBaseNetscapePluginView cut:]): 6941 (-[WebBaseNetscapePluginView copy:]): 6942 (-[WebBaseNetscapePluginView paste:]): 6943 (-[WebBaseNetscapePluginView selectAll:]): 6944 Call sendModifierEventWithKeyCode. 6945 6946 * Plugins/WebNetscapePluginEventHandler.h: 6947 Add syntheticKeyDownWithCommandModifier. 6948 6949 * Plugins/WebNetscapePluginEventHandlerCarbon.h: 6950 * Plugins/WebNetscapePluginEventHandlerCarbon.mm: 6951 (WebNetscapePluginEventHandlerCarbon::syntheticKeyDownWithCommandModifier): 6952 Send the synthetic event. 6953 6954 * Plugins/WebNetscapePluginEventHandlerCocoa.h: 6955 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 6956 (WebNetscapePluginEventHandlerCocoa::syntheticKeyDownWithCommandModifier): 6957 Send the synthetic event. 6958 6959 * Plugins/WebNetscapePluginView.mm: 6960 (-[WebNetscapePluginView sendModifierEventWithKeyCode:character:]): 6961 Call the event handler. 6962 69632009-04-17 David Kilzer <ddkilzer@apple.com> 6964 6965 Simplify FEATURE_DEFINES definition 6966 6967 Reviewed by Darin Adler. 6968 6969 This moves FEATURE_DEFINES and its related ENABLE_FEATURE_NAME 6970 variables to their own FeatureDefines.xcconfig file. It also 6971 extracts a new ENABLE_GEOLOCATION variable so that 6972 FEATURE_DEFINES only needs to be defined once. 6973 6974 * Configurations/FeatureDefines.xcconfig: Added. 6975 * Configurations/WebKit.xcconfig: Removed definition of 6976 ENABLE_SVG_DOM_OBJC_BINDINGS and FEATURE_DEFINES. Added include 6977 of FeatureDefines.xcconfig. 6978 69792009-04-17 Anders Carlsson <andersca@apple.com> 6980 6981 Reviewed by Darin Adler. 6982 6983 Fix crashes seen in regression tests with hosted plug-ins. 6984 6985 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 6986 (WebKit::NetscapePluginInstanceProxy::cancelStreamLoad): Check the stream for 0, 6987 not the stream ID. 6988 69892009-04-17 Darin Adler <darin@apple.com> 6990 6991 Reviewed by Antti Koivisto. 6992 6993 Bug 25210: don't use ObjC methods to wrap/unwrap DOM objects with ObjC 6994 https://bugs.webkit.org/show_bug.cgi?id=25210 6995 6996 * DOM/WebDOMOperations.mm: 6997 (-[DOMNode markupString]): Use the core function instead of an Objective-C method. 6998 (-[DOMNode _subresourceURLs]): Ditto. 6999 (-[DOMDocument _focusableNodes]): Ditto. 7000 (-[DOMRange webArchive]): Ditto. 7001 (-[DOMRange markupString]): Ditto. 7002 7003 * Misc/WebElementDictionary.mm: Added now-needed include since the core and kit 7004 functions now come from the internal headers from DOM bindings. 7005 * Misc/WebNSPasteboardExtras.mm: Ditto. 7006 * Plugins/WebNullPluginView.mm: Ditto. 7007 * Plugins/WebPluginController.mm: Ditto. 7008 * WebCoreSupport/WebChromeClient.mm: Ditto. 7009 * WebCoreSupport/WebInspectorClient.mm: Ditto. 7010 * WebCoreSupport/WebPasteboardHelper.mm: Ditto. 7011 * WebView/WebHTMLView.mm: Ditto. 7012 7013 * WebCoreSupport/WebEditorClient.mm: Made kit function have internal linkage 7014 since it's only used in this file. Someone had instead added a declaration to 7015 suppress the warning you would otherwise get. Removed the core function. 7016 (WebEditorClient::textFieldDidBeginEditing): Added correct type checking. 7017 Previously the function would check only that something was an HTMLElement, 7018 but then cast it to HTMLInputElement. Also call kit instead of old wrap method. 7019 (WebEditorClient::textFieldDidEndEditing): Ditto. 7020 (WebEditorClient::textDidChangeInTextField): Ditto. 7021 (WebEditorClient::doTextFieldCommandFromEvent): Ditto. 7022 (WebEditorClient::textWillBeDeletedInTextField): Ditto. 7023 (WebEditorClient::textDidChangeInTextArea): Ditto, but for HTMLTextAreaElement. 7024 7025 * WebView/WebFrame.mm: Removed the core and kit functions here which are no longer 7026 needed since they're automatically generated now. 7027 (-[WebFrame _nodesFromList:]): Use kit. 7028 (-[WebFrame _markupStringFromRange:nodes:]): Use core. 7029 (-[WebFrame _stringForRange:]): More of the same. 7030 (-[WebFrame _caretRectAtNode:offset:affinity:]): Ditto. 7031 (-[WebFrame _firstRectForDOMRange:]): Ditto. 7032 (-[WebFrame _scrollDOMRangeToVisible:]): Ditto. 7033 (-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]): 7034 Ditto. 7035 (-[WebFrame _convertNSRangeToDOMRange:]): Ditto. 7036 (-[WebFrame _convertDOMRangeToNSRange:]): Ditto. 7037 (-[WebFrame _markDOMRange]): Ditto. 7038 (-[WebFrame _smartDeleteRangeForProposedRange:]): Ditto. 7039 (-[WebFrame _smartInsertForString:replacingRange:beforeString:afterString:]): Ditto. 7040 (-[WebFrame _documentFragmentWithMarkupString:baseURLString:]): Ditto. 7041 (-[WebFrame _documentFragmentWithNodesAsParagraphs:]): Ditto. 7042 (-[WebFrame _replaceSelectionWithNode:selectReplacement:smartReplace:matchStyle:]): Ditto. 7043 (-[WebFrame _characterRangeAtPoint:]): Ditto. 7044 (-[WebFrame _typingStyle]): Ditto. 7045 (-[WebFrame _setTypingStyle:withUndoAction:]): Ditto. 7046 (-[WebFrame _pauseAnimation:onNode:atTime:]): Ditto. 7047 (-[WebFrame _pauseTransitionOfProperty:onNode:atTime:]): Ditto. 7048 (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]): Ditto. 7049 7050 * WebView/WebFrameInternal.h: Removed the core and kit functions here which are no longer 7051 needed since they're automatically generated now. 7052 7053 * WebView/WebHTMLRepresentation.mm: 7054 (-[WebHTMLRepresentation attributedStringFrom:startOffset:to:endOffset:]): Use core. 7055 (formElementFromDOMElement): Ditto. 7056 (inputElementFromDOMElement): Ditto. 7057 * WebView/WebTextIterator.mm: 7058 (-[WebTextIterator initWithRange:]): Ditto. 7059 (-[WebTextIterator currentRange]): Ditto. 7060 (-[WebTextIterator currentNode]): Ditto. 7061 * WebView/WebView.mm: 7062 (-[WebView textIteratorForRect:]): Ditto. 7063 (-[WebView setSelectedDOMRange:affinity:]): Ditto. 7064 70652009-04-17 Anders Carlsson <andersca@apple.com> 7066 7067 Reviewed by Sam Weinig. 7068 7069 WebKit side of <rdar://problem/6449642>. 7070 7071 * Plugins/Hosted/HostedNetscapePluginStream.h: 7072 (WebKit::HostedNetscapePluginStream::create): 7073 New function that creates a stream from a frame loader. 7074 7075 * Plugins/Hosted/HostedNetscapePluginStream.mm: 7076 (WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream): 7077 Add the constructor that takes a frame loader. 7078 7079 * Plugins/Hosted/NetscapePluginHostManager.h: 7080 * Plugins/Hosted/NetscapePluginHostManager.mm: 7081 (WebKit::NetscapePluginHostManager::instantiatePlugin): 7082 Pass "fullFrame" to the plug-in host. 7083 7084 * Plugins/Hosted/NetscapePluginHostProxy.mm: 7085 (WKPCCancelLoadURL): 7086 Call NetscapePluginInstanceProxy::cancelStreamLoad. 7087 7088 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 7089 (WebKit::NetscapePluginInstanceProxy::create): 7090 Pass "fullFrame" to the constructor. 7091 7092 (WebKit::NetscapePluginInstanceProxy::manualStream): 7093 New getter for the manual stream. 7094 7095 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 7096 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): 7097 Take the implicit request into account if we have a full frame plug-in. 7098 7099 (WebKit::NetscapePluginInstanceProxy::setManualStream): 7100 Setter for the manual stream. 7101 7102 (WebKit::NetscapePluginInstanceProxy::cancelStreamLoad): 7103 Cancel the manual stream if necessary. 7104 7105 * Plugins/Hosted/WebHostedNetscapePluginView.h: 7106 WebHostedNetscapePluginView now conforms to the WebPluginManualLoader protocol. 7107 7108 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 7109 (-[WebHostedNetscapePluginView createPlugin]): 7110 Pass "fullFrame" to instantiatePlugin. 7111 7112 (-[WebHostedNetscapePluginView pluginView:receivedResponse:]): 7113 (-[WebHostedNetscapePluginView pluginView:receivedData:]): 7114 (-[WebHostedNetscapePluginView pluginView:receivedError:]): 7115 (-[WebHostedNetscapePluginView pluginViewFinishedLoading:]): 7116 Call the equivalent manual stream functions. 7117 7118 * WebCoreSupport/WebFrameLoaderClient.mm: 7119 (WebFrameLoaderClient::createPlugin): 7120 Use a macro for getting the plug-in view type. 7121 71222009-04-14 Simon Fraser <simon.fraser@apple.com> 7123 7124 Reviewed by Dan Bernstein 7125 7126 https://bugs.webkit.org/show_bug.cgi?id=25157 7127 7128 Move the run loop observer cleanup from -close 7129 to -_close. 7130 7131 * WebView/WebView.mm: 7132 (-[WebView _close]): 7133 (-[WebView close]): 7134 71352009-04-14 Anders Carlsson <andersca@apple.com> 7136 7137 Reviewed by Sam Weinig. 7138 7139 - Speculative fix for <rdar://problem/6781422> 7140 7141 Protect the plug-in instance proxy in case it's deleted while waiting for a reply. 7142 7143 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 7144 (WebKit::NetscapePluginInstanceProxy::wheelEvent): 7145 71462009-04-14 Adele Peterson <adele@apple.com> 7147 7148 Reviewed by Darin. 7149 7150 Initialize WebKitSystemInterface in class methods that could get called before a WebView/WebFrame is set up. This was causing Mail to crash on launch. 7151 7152 * Misc/WebCache.mm: (+[WebCache initialize]): 7153 * WebView/WebView.mm: (+[WebView initialize]): 7154 71552009-04-13 Kevin Decker <kdecker@apple.com> 7156 7157 Reviewed by Darin. 7158 7159 <rdar://problem/6784955> REGRESSION: closing a tab containing a PDF causes world leaks 7160 7161 Simplify the _trackFirstResponder method by just caching the value instead of retaining 7162 a Cocoa object. 7163 7164 * WebView/WebPDFView.h: Eliminated trackedFirstResponder object and replaced it with 7165 a firstResponderIsPDFDocumentView boolean. 7166 * WebView/WebPDFView.mm: 7167 (-[WebPDFView dealloc]): Removed no longer necessary ASSERT. 7168 (-[WebPDFView viewWillMoveToWindow:]): Removed call to release and nil-out trackedFirstResponder, 7169 which no longer exists. In the new code all we do now is set firstResponderIsPDFDocumentView to NO. 7170 (-[WebPDFView _trackFirstResponder]): Rewrote this method to just cache the value instead 7171 of retaining an object. 7172 71732009-04-13 David Hyatt <hyatt@apple.com> 7174 7175 Reviewed by Sam Weinig. 7176 7177 Fix for https://bugs.webkit.org/show_bug.cgi?id=25125. Rework scrolling so that a layout happens first when 7178 it's already needed so that the code doesn't end up making bad decisions based off invalid document sizes. 7179 7180 This patch also eliminates WebHTMLView's separate notion of needing a layout and just consolidates it with 7181 WebCore's notion of needing layout. 7182 7183 * WebView/WebDynamicScrollBarsView.m: 7184 (-[WebDynamicScrollBarsView updateScrollers]): 7185 * WebView/WebHTMLView.mm: 7186 (-[WebHTMLView _frameOrBoundsChanged]): 7187 (-[WebHTMLView initWithFrame:]): 7188 (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): 7189 (-[WebHTMLView setNeedsLayout:]): 7190 (-[WebHTMLView _layoutIfNeeded]): 7191 (-[WebHTMLView _needsLayout]): 7192 * WebView/WebHTMLViewInternal.h: 7193 71942009-04-13 Darin Adler <darin@apple.com> 7195 7196 * WebView/WebViewPrivate.h: Updated comments. 7197 71982009-04-13 Antti Koivisto <antti@apple.com> 7199 7200 Reviewed by Darin Adler. 7201 7202 <rdar://problem/6740294> Increase the connection count per host 7203 7204 * WebCoreSupport/WebSystemInterface.m: 7205 (InitWebCoreSystemInterface): 7206 72072009-04-13 Brady Eidson <beidson@apple.com> 7208 7209 Reviewed by Tim Hatcher 7210 7211 Tweak my last check-in, moving the thread violation check up to the API-level calls so the logging is more 7212 useful to developers/users. 7213 7214 * WebView/WebFrame.mm: 7215 (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): If not on the main thread, only 7216 perform the "call on main thead" workaround, as the log/exception raising is now up at the API level. 7217 (-[WebFrame loadData:MIMEType:textEncodingName:baseURL:]): Perform a thread violation check here so logging 7218 is more meaningful. 7219 (-[WebFrame loadHTMLString:baseURL:]): Ditto. 7220 (-[WebFrame loadAlternateHTMLString:baseURL:forUnreachableURL:]): Ditto. 7221 72222009-04-13 Brady Eidson <beidson@apple.com> 7223 7224 Reviewed by Kevin Decker 7225 7226 <rdar://problem/6712063> Garmin WebUpdater crashes 7227 7228 * WebView/WebFrame.mm: 7229 (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): If not called on the main thread, 7230 add a ThreadViolationCheckRoundTwo() call to either log or raise an exception. In the case where it's 7231 only a log, reschedule the _loadData call to occur on the main thread. 7232 72332009-04-10 Dan Bernstein <mitz@apple.com> 7234 7235 Reviewed by Jon Honeycutt. 7236 7237 - fix <rdar://problem/6752340> Light blue-green background in content 7238 area in Mail 7239 7240 * WebView/WebView.mm: 7241 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): 7242 Use device white, rather than calibrated white, as the default 7243 background color. 7244 72452009-04-10 Darin Adler <darin@apple.com> 7246 7247 Reviewed by Brady Eidson. 7248 7249 <rdar://problem/6773515> crash in push_heap inside WebCore when printing 7250 7251 The crash was due to manipulating a timer on a different thread than the one it was created on. 7252 7253 * History/WebHistoryItem.mm: 7254 (-[WebWindowWatcher windowWillClose:]): Call later on main thread, if called on non-main thread. 7255 * WebView/WebHTMLView.mm: 7256 (-[WebHTMLView windowDidBecomeKey:]): Ditto. 7257 (-[WebHTMLView windowDidResignKey:]): Ditto. 7258 (-[WebHTMLView windowWillClose:]): Ditto. 7259 (-[WebHTMLView _updateControlTints]): Added. Factored out the non-thread-safe part of 7260 our override of _windowChangedKeyState. 7261 (-[WebHTMLView _windowChangedKeyState]): Call _updateControlTints later on main thread, if 7262 called on non-main thread. 7263 * WebView/WebPreferences.mm: 7264 (-[WebPreferences _postPreferencesChangesNotification]): Call later on main thread, if called 7265 on non-main thread 7266 72672009-04-10 Timothy Hatcher <timothy@apple.com> 7268 7269 Remove DOMDocumentPrivate.h now that <rdar://problem/6730996> is fixed. 7270 7271 Rubber-stamped by Mark Rowe. 7272 7273 * Misc/DOMDocumentPrivate.h: Removed. 7274 72752009-04-10 Pierre d'Herbemont <pdherbemont@apple.com> 7276 7277 Reviewed by Adele Peterson. 7278 7279 <rdar://problem/6646998> Avoid starting QTKitServer if possible 7280 Add the requires symbol in the WebSystemInterface. It is used by 7281 WebCore. 7282 7283 * WebCoreSupport/WebSystemInterface.m: 7284 (InitWebCoreSystemInterface): Add wkQTIncludeOnlyModernMediaFileTypes. 7285 72862009-04-09 Kevin Decker <kdecker@apple.com> 7287 7288 Reviewed by Hyatt. 7289 7290 <rdar://problem/4680397> tearing seen because deferred updates are disabled 7291 7292 * WebView/WebFrameView.mm: 7293 (-[WebFrameView initWithFrame:]): Don't call WKDisableCGDeferredUpdates on post-Leopard if 7294 NSAppKitVersionNumberWithDeferredWindowDisplaySupport is defined. 7295 72962009-04-09 John Sullivan <sullivan@apple.com> 7297 7298 <rdar://problem/6775682> WebKit's support for SnowLeopard sudden termination for 7299 downloads is broken and should be removed 7300 7301 Reviewed by Darin Adler 7302 7303 * Misc/WebDownload.m: 7304 (-[WebDownloadInternal downloadDidBegin:]): 7305 remove disableSuddenTermination call 7306 (-[WebDownloadInternal downloadDidFinish:]): 7307 remove enableSuddenTermination call 7308 (-[WebDownloadInternal download:didFailWithError:]): 7309 remove enableSuddenTermination call 7310 73112009-04-09 Darin Adler <darin@apple.com> 7312 7313 Reviewed by Anders Carlsson and Sam Weinig. 7314 7315 Part of <rdar://problem/5438063> Saving history containing 100,000 entries causes pauses of 2s while browsing 7316 7317 Longer term solution is to change the design so Safari doesn't read and write all of history. 7318 This patch is step one: Do the serializing, which is done on the main thread, much faster. 7319 7320 * History/WebHistory.mm: 7321 (-[WebHistoryPrivate data]): Added. Returns the NSData object containing serialized history. 7322 For creating new SPI so you can get the data in memory instead of on disk. Uses WebHistoryWriter. 7323 (-[WebHistoryPrivate saveToURL:error:]): Changed to call [self data 7324 (-[WebHistory _data]): Added. 7325 (WebHistoryWriter::WebHistoryWriter): Added. 7326 (WebHistoryWriter::writeHistoryItems): Added. 7327 7328 * History/WebHistoryPrivate.h: Added a new _data method. 7329 73302009-04-09 Mike Thole <mthole@apple.com> 7331 7332 Rubber-stamped by Mark Rowe. 7333 7334 Fix 64-bit build 7335 7336 * Panels/WebAuthenticationPanel.h: 7337 Declare the 'separateRealmLabel' IBOutlet as an NSTextField instead of 'id'. 7338 This fixes a duplicate method warning (setAutoresizingMask: on NSView and CALayer) 7339 73402009-04-09 Mike Thole <mthole@apple.com> 7341 7342 Reviewed by Ada Chan. 7343 7344 <rdar://problem/5697111> Basic authentication dialog spoofing vulnerability 7345 7346 * Panels/WebAuthenticationPanel.h: 7347 Added IBOutlet for separateRealmLabel 7348 * Panels/WebAuthenticationPanel.m: 7349 (-[WebAuthenticationPanel setUpForChallenge:]): 7350 In the realm case, decide if it is a simple or complex realm name. A realm name 7351 is considered complex if it has any whitespace or newline characters. Present 7352 alternative text and layout for the complex case, where the realm name isn't inline 7353 with the rest of the sheet's text. 7354 7355 * Panels/English.lproj/WebAuthenticationPanel.nib/designable.nib: 7356 * Panels/English.lproj/WebAuthenticationPanel.nib/keyedobjects.nib: 7357 Updated the nib with a new 'separateRealmLabel' outlet. 7358 Updated the File's Owner to correctly be WebAuthenticationPanel. 7359 Fixed springs on the sheet's icon to keep it from moving during a resize. 7360 73612009-04-09 David Kilzer <ddkilzer@apple.com> 7362 7363 Reinstating <rdar://problem/6718589> Option to turn off SVG DOM Objective-C bindings 7364 7365 Rolled r42345 back in. The build failure was caused by an 7366 internal script which had not been updated the same way that 7367 build-webkit was updated. 7368 7369 * Configurations/WebKit.xcconfig: 7370 * DOM/WebDOMOperations.mm: 7371 * MigrateHeaders.make: 7372 73732009-04-09 Alexey Proskuryakov <ap@webkit.org> 7374 7375 Reverting <rdar://problem/6718589> Option to turn off SVG DOM Objective-C bindings. 7376 It broke Mac build, and I don't know how to fix it. 7377 7378 * Configurations/WebKit.xcconfig: 7379 * DOM/WebDOMOperations.mm: 7380 * MigrateHeaders.make: 7381 73822009-04-08 David Kilzer <ddkilzer@apple.com> 7383 7384 <rdar://problem/6718589> Option to turn off SVG DOM Objective-C bindings 7385 7386 Reviewed by Darin Adler and Maciej Stachowiak. 7387 7388 Introduce the ENABLE_SVG_DOM_OBJC_BINDINGS feature define so 7389 that SVG DOM Objective-C bindings may be optionally disabled. 7390 7391 * Configurations/WebKit.xcconfig: Added 7392 ENABLE_SVG_DOM_OBJC_BINDINGS variable and use it in 7393 FEATURE_DEFINES. 7394 * DOM/WebDOMOperations.mm: Removed unused header. 7395 * MigrateHeaders.make: Switched from using ENABLE_SVG to using 7396 ENABLE_SVG_DOM_OBJC_BINDINGS. 7397 73982009-04-08 David Hyatt <hyatt@apple.com> 7399 7400 Reviewed by Adam Roben and Darin Adler 7401 7402 Fix for https://bugs.webkit.org/show_bug.cgi?id=12440, fixed positioned elements end up in 7403 inconsistent positions. Rewrite updateScrollers to improve the correctness. 7404 7405 * WebView/WebDynamicScrollBarsView.h: 7406 * WebView/WebDynamicScrollBarsView.m: 7407 (-[WebDynamicScrollBarsView updateScrollers]): 7408 74092009-04-07 Anders Carlsson <andersca@apple.com> 7410 7411 Fix Tiger build for real this time. 7412 7413 * Plugins/WebNetscapePluginView.h: 7414 * Plugins/WebNetscapePluginView.mm: 7415 (-[WebNetscapePluginView getVariable:forURL:value:length:]): 7416 (-[WebNetscapePluginView setVariable:forURL:value:length:]): 7417 (-[WebNetscapePluginView getAuthenticationInfoWithProtocol:host:port:scheme:realm:username:usernameLength:password:passwordLength:]): 7418 * Plugins/npapi.mm: 7419 (NPN_GetValueForURL): 7420 (NPN_SetValueForURL): 7421 74222009-04-07 David Hyatt <hyatt@apple.com> 7423 7424 Reviewed by Adam Roben 7425 7426 Mac portion of fix to make DumpRenderTree always produce accurate scrollbar results. Change 7427 updateScrollers to call minimumContentsSize when a WebHTMLView is inside the WebDynamicScrollbarsView. 7428 7429 * WebView/WebDynamicScrollBarsView.m: 7430 (-[WebDynamicScrollBarsView updateScrollers]): 7431 74322009-04-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> 7433 7434 Reviewed by Anders Carlsson. 7435 7436 Trying to fix Tiger build. 7437 7438 * Plugins/WebNetscapePluginView.h: 7439 * Plugins/WebNetscapePluginView.mm: 7440 (-[WebNetscapePluginView getAuthenticationInfoWithProtocol:host:port:scheme:realm:username:usernameLength:password:passwordLength:]): 7441 74422009-04-07 Anders Carlsson <andersca@apple.com> 7443 7444 Try to fix the Leopard build once more. 7445 7446 * Plugins/WebBaseNetscapePluginView.h: 7447 * Plugins/WebBaseNetscapePluginView.mm: 7448 * Plugins/WebNetscapePluginView.mm: 7449 (-[WebNetscapePluginView getVariable:forURL:value:length:]): 7450 74512009-04-07 Anders Carlsson <andersca@apple.com> 7452 7453 ...and try to fix the Leopard build. 7454 7455 * Plugins/npapi.mm: 7456 (NPN_GetAuthenticationInfo): 7457 74582009-04-07 Anders Carlsson <andersca@apple.com> 7459 7460 Try to fix the Tiger build. 7461 7462 * Plugins/WebBaseNetscapePluginView.mm: 7463 74642009-04-07 Anders Carlsson <andersca@apple.com> 7465 7466 Reviewed by Sam Weinig. 7467 7468 <rdar://problem/6667001> 7469 NPAPI: need NPN_Get/SetValueForURL() and NPN_GetAuthenticationInfo() 7470 7471 * Plugins/Hosted/NetscapePluginHostProxy.mm: 7472 (WKPCGetCookies): 7473 (WKPCGetProxy): 7474 (WKPCSetCookies): 7475 (WKPCGetAuthenticationInfo): 7476 New MIG functions to be used by the plug-in host. 7477 7478 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 7479 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 7480 (WebKit::NetscapePluginInstanceProxy::getCookies): 7481 (WebKit::NetscapePluginInstanceProxy::setCookies): 7482 (WebKit::NetscapePluginInstanceProxy::getProxy): 7483 (WebKit::NetscapePluginInstanceProxy::getAuthenticationInfo): 7484 Implement these. 7485 7486 * Plugins/Hosted/WebKitPluginClient.defs: 7487 Add callbacks. 7488 7489 * Plugins/WebBaseNetscapePluginView.h: 7490 * Plugins/WebBaseNetscapePluginView.mm: 7491 (-[WebBaseNetscapePluginView URLWithCString:]): 7492 Factor this out of URLWithCString. 7493 7494 (-[WebBaseNetscapePluginView requestWithURLCString:]): 7495 Call URLWithCString. 7496 7497 (WebKit::proxiesForURL): 7498 Return a string representation of proxies for a given URL. 7499 7500 (WebKit::getAuthenticationInfo): 7501 Get the authentication info for a given host/protocol/scheme/realm/port combination. 7502 7503 * Plugins/WebNetscapePluginPackage.mm: 7504 (-[WebNetscapePluginPackage _tryLoad]): 7505 Initialize the new vtable functions. 7506 7507 * Plugins/WebNetscapePluginView.h: 7508 * Plugins/WebNetscapePluginView.mm: 7509 (-[WebNetscapePluginView getVariable:forURL:value:length:]): 7510 (-[WebNetscapePluginView setVariable:forURL:value:length:]): 7511 (-[WebNetscapePluginView getAuthenticationInfoWithProtocol:host:port:scheme:realm:username:usernameLength:password:passwordLength:]): 7512 Implement these. 7513 7514 * Plugins/npapi.mm: 7515 (NPN_GetValueForURL): 7516 (NPN_SetValueForURL): 7517 (NPN_GetAuthenticationInfo): 7518 Call the plug-in view functions. 7519 75202009-04-03 Kevin Decker <kdecker@apple.com> 7521 7522 Reviewed by Anders Carlsson. 7523 7524 <rdar://problem/6756512> 7525 7526 * Plugins/Hosted/NetscapePluginHostManager.mm: 7527 (WebKit::NetscapePluginHostManager::spawnPluginHost): Tweaked the visibleName property. 7528 75292009-04-03 John Sullivan <sullivan@apple.com> 7530 7531 Reviewed by Ada Chan 7532 7533 <rdar://problem/6755838> Removing all icons can delete other items from disk. 7534 7535 * Misc/WebIconDatabase.mm: 7536 (importToWebCoreFormat): 7537 When snooping around in various directories looking for a directory full of Safari-2-style 7538 icon database information to convert and delete, bail out without doing the delete part if 7539 we didn't actually find any Safari-2-style icon database information. 7540 75412009-04-03 John Sullivan <sullivan@apple.com> 7542 7543 fixed <rdar://problem/6355573> [WebView _setCacheModel:] leaks the result of _CFURLCacheCopyCacheDirectory 7544 7545 Reviewed by Adam Roben 7546 7547 * WebView/WebView.mm: 7548 (+[WebView _setCacheModel:]): 7549 use WebCFAutorelease rather than autorelease on result of method that returns CFStringRef 7550 75512009-04-03 Chris Marrin <cmarrin@apple.com> 7552 7553 Reviewed by David Hyatt. 7554 7555 Fixed https://bugs.webkit.org/show_bug.cgi?id=24941 7556 7557 This fix essentially does a -viewWillDraw call for layout. It adds 7558 a CFRunLoopObserver which performs layout just before drawing on the 7559 Mac platform. This makes sure layout is complete before rendering and 7560 avoids a flash. 7561 7562 * WebCoreSupport/WebChromeClient.h: 7563 * WebCoreSupport/WebChromeClient.mm: 7564 (WebChromeClient::attachRootGraphicsLayer): 7565 (WebChromeClient::setNeedsOneShotDrawingSynchronization): 7566 (WebChromeClient::scheduleViewUpdate): 7567 * WebView/WebView.mm: 7568 (-[WebViewPrivate _clearViewUpdateRunLoopObserver]): 7569 (-[WebView _viewWillDrawInternal]): 7570 (-[WebView viewWillDraw]): 7571 (-[WebView close]): 7572 (viewUpdateRunLoopObserverCallBack): 7573 (-[WebView _scheduleViewUpdate]): 7574 * WebView/WebViewInternal.h: 7575 75762009-04-03 Anders Carlsson <andersca@apple.com> 7577 7578 Reviewed by Kevin Decker. 7579 7580 WebKit side of <rdar://problem/6752953>. 7581 7582 Pass the clip rect to the plug-in host. 7583 7584 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 7585 (WebKit::NetscapePluginInstanceProxy::resize): 7586 * Plugins/Hosted/WebKitPluginHost.defs: 7587 75882009-04-02 Mark Rowe <mrowe@apple.com> 7589 7590 Reviewed by Dan Bernstein and Timothy Hatcher. 7591 7592 <rdar://problem/6684745> Crash in -[WebView removeSizeObservers] when loading NIB file 7593 7594 The implementation of -[NSView initWithCoder:] can result in -viewWillMoveToSuperview:/-viewDidMoveToSuperview: being sent to 7595 our view before we've had a chance to initialize _private, so we need to ensure it is non-nil before dereferencing it in those 7596 methods. 7597 7598 * WebView/WebView.mm: 7599 (-[WebView removeSizeObservers]): Nil-check _private before dereferencing it. 7600 (-[WebView addSizeObservers]): Ditto. 7601 76022009-04-02 Adele Peterson <adele@apple.com> 7603 7604 Reviewed by Darin Adler. 7605 7606 Add a way to get a list of focusable nodes. 7607 7608 * DOM/WebDOMOperations.mm: 7609 (-[DOMDocument _focusableNodes]): 7610 * DOM/WebDOMOperationsInternal.h: Added. 7611 * DOM/WebDOMOperationsPrivate.h: Make this a private header. 7612 Move old methods to WebDOMOperationsInternal.h 7613 * WebView/WebHTMLView.mm: Use methods from WebDOMOperationsInternal.h 7614 76152009-04-01 Darin Adler <darin@apple.com> 7616 7617 Reviewed by Geoff Garen. 7618 7619 Bug 22378: Crash submitting a form when parsing an XHTML document 7620 https://bugs.webkit.org/show_bug.cgi?id=22378 7621 rdar://problem/6388377 7622 7623 * History/WebHistoryItem.mm: 7624 (-[WebHistoryItem targetItem]): Call targetItem directly instead of callling 7625 isTargetItem, hasChildren, and recurseToFindTargetItem. 7626 7627 * WebCoreSupport/WebFrameLoaderClient.mm: 7628 (WebFrameLoaderClient::dispatchWillSubmitForm): Updated for the new 7629 textFieldValues function in FormState. 7630 7631 * WebView/WebPDFView.mm: 7632 (-[WebPDFView PDFViewWillClickOnLink:withURL:]): Updated for name and 7633 argument change of loadFrameRequest. 7634 76352009-04-01 Greg Bolsinga <bolsinga@apple.com> 7636 7637 Reviewed by Mark Rowe. 7638 7639 https://bugs.webkit.org/show_bug.cgi?id=24990 7640 Put SECTORDER_FLAGS into xcconfig files. 7641 7642 * Configurations/Base.xcconfig: 7643 * Configurations/DebugRelease.xcconfig: 7644 76452009-03-31 Anders Carlsson <andersca@apple.com> 7646 7647 Reviewed by Adam Roben. 7648 7649 WebKit side of <rdar://problem/6500266>. 7650 7651 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 7652 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 7653 (WebKit::NetscapePluginInstanceProxy::wheelEvent): 7654 Send the event. 7655 7656 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 7657 (-[WebHostedNetscapePluginView scrollWheel:]): 7658 Call NetscapePluginInstanceProxy::wheelEvent. If the plug-in processed the event, don't 7659 call super. 7660 7661 * Plugins/Hosted/WebKitPluginHost.defs: 7662 Add definition. 7663 76642009-03-31 Darin Adler <darin@apple.com> 7665 7666 Reviewed by Adele Peterson. 7667 7668 <rdar://problem/6740581> REGRESSION (r41793): Page Down and Page Up don’t work in Leopard Mail 7669 7670 * WebView/WebHTMLView.mm: 7671 (-[WebResponderChainSink tryToPerform:with:]): Added. Without this we would think we had 7672 handled an event when we actually hadn't. Specifically, when -[WebFrameView scrollPageDown:] 7673 calls tryToPerform on the next responder. 7674 76752009-03-30 Greg Bolsinga <bolsinga@apple.com> 7676 7677 Reviewed by Simon Fraser. 7678 7679 https://bugs.webkit.org/show_bug.cgi?id=24938 7680 7681 Build fixes when building --no-svg 7682 7683 DOMHTMLFrameElementPrivate.h and DOMHTMLIFrameElementPrivate.h are only available with ENABLE_SVG. 7684 7685 * MigrateHeaders.make: 7686 76872009-03-29 Darin Adler <darin@apple.com> 7688 7689 Reviewed by Cameron Zwarich. 7690 7691 * Plugins/WebNullPluginView.mm: Added now-needed includes. 7692 * WebView/WebHTMLRepresentation.mm: Ditto. 7693 * WebView/WebHTMLView.mm: Ditto. 7694 76952009-03-27 Timothy Hatcher <timothy@apple.com> 7696 7697 * MigrateHeaders.make: Remove DOMHTMLBodyElementPrivate.h since it 7698 is not generated anymore. 7699 77002009-03-27 Adam Roben <aroben@apple.com> 7701 7702 Don't include substitute data URLs in global history redirect chains 7703 7704 <rdar://6690169> 7705 7706 Reviewed by Darin Adler. 7707 7708 * WebCoreSupport/WebFrameLoaderClient.mm: 7709 (WebFrameLoaderClient::updateGlobalHistory): Don't call 7710 updateGlobalHistoryRedirectLinks. FrameLoader calls this for us now. 7711 (WebFrameLoaderClient::updateGlobalHistoryRedirectLinks): 7712 Added an assertion to help catch cases where we might be adding a 7713 substitute data URL into a redirect chain. 7714 77152009-03-27 Darin Adler <darin@apple.com> 7716 7717 Reviewed by Adam Roben. 7718 7719 <rdar://problem/6541923> REGRESSION (r38629): Tab cycle in empty tab is broken 7720 7721 * WebView/WebHTMLView.mm: 7722 (-[WebHTMLView _wantsKeyDownForEvent:]): Only return YES when we have a Frame. 7723 77242009-03-27 Darin Adler <darin@apple.com> 7725 7726 Reviewed by John Sullivan and Anders Carlsson. 7727 7728 <rdar://problem/5987442> Pasteboard not exposed to WebEditingDelegate for WebViewInsertActionPasted (needed for system services) 7729 7730 Added SPI to tell which pasteboard is currently being inserted. 7731 I chose to put it on WebView to be forward-looking since we're migrating things 7732 from WebHTMLView to WebView in the future. 7733 7734 * WebView/WebHTMLView.mm: 7735 (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): Add calls to _setInsertionPasteboard. 7736 (-[WebHTMLView _pasteAsPlainTextWithPasteboard:]): Ditto. 7737 * WebView/WebView.mm: 7738 (-[WebViewPrivate dealloc]): Assert the pasteboard is nil. 7739 (-[WebViewPrivate finalize]): Ditto. 7740 (-[WebView _insertionPasteboard]): Return the pastebaord. 7741 (-[WebView _setInsertionPasteboard:]): Set the pasteboard. 7742 * WebView/WebViewInternal.h: Added _setInsertionPasteboard. 7743 * WebView/WebViewPrivate.h: Added _insertionPasteboard. 7744 77452009-03-25 Timothy Hatcher <timothy@apple.com> 7746 7747 Expose new DOM methods as public Objective-C API. 7748 7749 <rdar://problem/5837350> Expose new DOM classes and methods 7750 as public API (match the additions to the JavaScript DOM) 7751 7752 Reviewed by Mark Rowe and Darin Adler. 7753 7754 * MigrateHeaders.make: 7755 * Misc/DOMDocumentPrivate.h: Added. Forwarding header for 7756 <rdar://problem/6730996>. 7757 77582009-03-26 Jungshik Shin <jshin@chromium.org> 7759 7760 Reviewed by Alexey Proskuryakov. 7761 7762 Add WebPreferences for encoding autodetection on Mac. 7763 7764 http://bugs.webkit.org/show_bug.cgi?id=16482 7765 7766 * WebView/WebPreferenceKeysPrivate.h: 7767 * WebView/WebPreferences.mm: 7768 (+[WebPreferences initialize]): 7769 (-[WebPreferences usesEncodingDetector]): 7770 (-[WebPreferences setUsesEncodingDetector:]): 7771 * WebView/WebPreferencesPrivate.h: 7772 * WebView/WebView.mm: 7773 (-[WebView _preferencesChangedNotification:]): 7774 77752009-03-26 Anders Carlsson <andersca@apple.com> 7776 7777 Reviewed by Dan Bernstein. 7778 7779 - Fix <rdar://problem/6687055> and <rdar://problem/6713639>. 7780 7781 * Plugins/Hosted/NetscapePluginHostProxy.mm: 7782 (WKPCInvalidateRect): 7783 Call NetscapePluginInstanceProxy::invalidateRect. 7784 7785 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 7786 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 7787 (WebKit::NetscapePluginInstanceProxy::cleanup): 7788 Stop the request timer, set m_pluginView to nil. 7789 7790 (WebKit::NetscapePluginInstanceProxy::pluginHostDied): 7791 No need to set m_pluginView to nil here anymore, it's now done in cleanup(). 7792 7793 (WebKit::NetscapePluginInstanceProxy::performRequest): 7794 (WebKit::NetscapePluginInstanceProxy::requestTimerFired): 7795 Assert that the plug-in view is not nil. 7796 7797 (WebKit::NetscapePluginInstanceProxy::invalidateRect): 7798 Call setNeedsDisplayInRect here. 7799 78002009-03-25 Anders Carlsson <andersca@apple.com> 7801 7802 Reviewed by Darin Adler. 7803 7804 <rdar://problem/6714964> 7805 CrashTracer: [REGRESSION] 51 crashes in Safari at com.apple.WebKit • WebNetscapePluginStream::deliverData + 775 7806 7807 Don't release m_deliveryData since it's a RetainPtr. Also, use adoptNS instead of releasing newDeliveryData manually. 7808 7809 * Plugins/WebBaseNetscapePluginStream.mm: 7810 (WebNetscapePluginStream::deliverData): 7811 78122009-03-25 Mike Thole <mthole@apple.com> 7813 7814 Reviewed by Kevin Decker. 7815 7816 <rdar://problem/6453738> call SetWindow when user creates a new tab 7817 7818 CoreGraphics plug-ins now receive an NPP_SetWindow call when moving to a background tab. 7819 Flash is excluded from this change in behavior, as it has historical WebKit-specific code 7820 that isn't compatible with this change. 7821 7822 * Plugins/WebNetscapePluginView.h: 7823 Added an _isFlash ivar. 7824 * Plugins/WebNetscapePluginView.mm: 7825 (-[WebNetscapePluginView _createPlugin]): 7826 Set the new _isFlash ivar based on the bundle identifier. 7827 (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]): 7828 When using the CG drawing model and in a non-drawable state, set the portState 7829 to NULL and return early. 7830 (-[WebNetscapePluginView updateAndSetWindow]): 7831 When using the CG drawing model, call -setWindowIfNecessary even if the portState is NULL. 7832 Flash is an exception to this, due to its historical behavior. 7833 (-[WebNetscapePluginView setWindowIfNecessary]): 7834 Removed an assertion that was no longer true. The [NSView focus] view 7835 is no longer guaranteed to be 'self' at this point. 7836 Also modified the debug logging for CG plug-ins to include the size of the 7837 window's clipRect, which was useful in verifying the correct behavior of this patch. 7838 78392009-03-24 Dan Bernstein <mitz@apple.com> 7840 7841 Reviewed by Oliver Hunt. 7842 7843 - speculative fix for <rdar://problem/6630134> Crash at 7844 Editor::compositionRange() 7845 7846 * WebView/WebHTMLView.mm: 7847 (-[WebHTMLView markedRange]): Null-check the Frame like most other 7848 methods in this class. 7849 78502009-03-23 Sam Weinig <sam@webkit.org> 7851 7852 Reviewed by Dan Bernstein. 7853 7854 Fix for <rdar://problem/6140966> 7855 Empty Caches does not clear the Cross-site XMLHttpRequest preflight cache 7856 7857 * Misc/WebCache.mm: 7858 (+[WebCache empty]): 7859 78602009-03-23 Adele Peterson <adele@apple.com> 7861 7862 Reviewed by Mark Rowe & Dave Hyatt. 7863 7864 Merge some of the individual Mail quirks into two settings that we can check for future quirks. 7865 7866 * WebView/WebView.mm: 7867 (runningLeopardMail): 7868 (runningTigerMail): 7869 (-[WebView _preferencesChangedNotification:]): 7870 78712009-03-23 Darin Adler <darin@apple.com> 7872 7873 * WebView/WebTextIterator.h: Fixed a spelling error in a comment. 7874 78752009-03-22 Dan Bernstein <mitz@apple.com> 7876 7877 Reviewed by John Sullivan. 7878 7879 - fix <rdar://problem/6640741> Messages not displaying after the 7880 Safari 4 beta was installed 7881 7882 Mail assumes that if -[WebArchive subresources] is not nil, then it 7883 contains at least one object. 7884 7885 * WebView/WebArchive.mm: 7886 (-[WebArchive subresources]): Preserve the behavior of returning nil 7887 if there are no subresources. 7888 78892009-03-20 Adele Peterson <adele@apple.com> 7890 7891 Build fix. 7892 7893 Reviewed by Darin Adler. 7894 7895 * WebView/WebFrameView.mm: (-[WebFrameView initWithFrame:]): 7896 78972009-03-20 Timothy Hatcher <timothy@apple.com> 7898 7899 Change how threading exceptions are checked so they are reported 7900 by what round they were added. That way WebKit can decided the 7901 behavior per-round based on linked-on-or-after checks. 7902 7903 <rdar://problem/6626741&6648478&6635474&6674079> 7904 7905 Reviewed by Darin Adler. 7906 7907 * History/WebBackForwardList.mm: Use the new WebCoreThreadViolationCheckRoundOne macro. 7908 * History/WebHistoryItem.mm: Ditto. 7909 * Misc/WebIconDatabase.mm: Ditto. 7910 7911 * WebView/WebArchive.mm: Use the new WebCoreThreadViolationCheckRoundTwo macro. 7912 * WebView/WebResource.mm: Ditto. 7913 (+[WebResource _needMailThreadWorkaroundIfCalledOffMainThread]): Check Mail's bundle version 7914 to truly decide if it is an old Mail client. 7915 * WebView/WebView.mm: Ditto. 7916 7917 * Misc/WebKitVersionChecks.h: Add a new linked-on-or-after version define. 7918 * WebView/WebFrameView.mm: 7919 (-[WebFrameView initWithFrame:]): Set the default thread violation behavior per-round 7920 based on difference version checks and the Mail workaround check. 7921 79222009-03-20 Darin Adler <darin@apple.com> 7923 7924 Reviewed by Timothy Hatcher. 7925 7926 * WebView/WebTextIterator.h: Improved comments to point out some of the pitfalls 7927 of this SPI. 7928 79292009-03-20 Darin Adler <darin@apple.com> 7930 7931 Reviewed by Adele Peterson. 7932 7933 Use a better technique to handle finding out if something responds to a selector 7934 in WebHTMLView's doCommandBySelector method. 7935 7936 * WebView/WebHTMLView.mm: 7937 (-[WebHTMLView doCommandBySelector:]): Removed unneeded check for 0 coreFrame; 7938 this is already handled by coreCommandBySelector: so doesn't need to be checked 7939 twice. Got rid of initial value for eventWasHandled boolean to make it more clear. 7940 Use WebResponderChainSink to find out if a command is handled rather than walking 7941 the responder chain explicitly. 7942 (-[WebResponderChainSink initWithResponderChain:]): Added. 7943 (-[WebResponderChainSink detach]): Added. 7944 (-[WebResponderChainSink receivedUnhandledCommand]): Added. 7945 (-[WebResponderChainSink noResponderFor:]): Added. 7946 (-[WebResponderChainSink doCommandBySelector:]): Added. 7947 79482009-03-19 Timothy Hatcher <timothy@apple.com> 7949 7950 Remove #ifndef BUILDING_ON_TIGER around code that schedules runloop modes 7951 for Page, so the new RunLoopTimer in WebCore always gets a default mode. 7952 Fixes the layout test failures on the Tiger build bots. 7953 7954 Reviewed by Mark Rowe. 7955 7956 * WebView/WebView.mm: 7957 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): 7958 (-[WebView scheduleInRunLoop:forMode:]): 7959 (-[WebView unscheduleFromRunLoop:forMode:]): 7960 79612009-03-18 Anders Carlsson <andersca@apple.com> 7962 7963 Reviewed by Oliver Hunt. 7964 7965 WebKit side of <rdar://problem/6688244>. 7966 7967 Try reinitializing the vendor port if it's invalid. 7968 7969 * Plugins/Hosted/NetscapePluginHostManager.mm: 7970 (WebKit::NetscapePluginHostManager::spawnPluginHost): 7971 79722009-03-18 Anders Carlsson <andersca@apple.com> 7973 7974 Reviewed by Darin Adler. 7975 7976 <rdar://problem/6504776> 7977 CrashTracer: [USER] 188 crashes in Safari at com.apple.WebCore • WTF::HashTableIterator<WTF::RefPtr<WebCore::ResourceLoader>, ... 7978 7979 If the m_pluginView member was zeroed out as a result of making a call into the plug-in, the pluginFunctionCallDepth would be off 7980 causing the plug-in never to be stopped. Simplify the code by using a RAII object. 7981 7982 * Plugins/WebBaseNetscapePluginStream.mm: 7983 (PluginStopDeferrer::PluginStopDeferrer): 7984 (PluginStopDeferrer::~PluginStopDeferrer): 7985 (WebNetscapePluginStream::startStream): 7986 (WebNetscapePluginStream::wantsAllStreams): 7987 (WebNetscapePluginStream::destroyStream): 7988 79892009-03-17 Darin Adler <darin@apple.com> 7990 7991 Reviewed by Adele Peterson. 7992 7993 <rdar://problem/6687005> Need support for new move-left/right selectors. 7994 7995 * WebView/WebHTMLView.mm: Added the four new selectors to the command-forwarding list. 7996 * WebView/WebView.mm: Ditto. 7997 79982009-03-17 Darin Adler <darin@apple.com> 7999 8000 Reviewed by Adele Peterson. 8001 8002 Bug 24477: REGRESSION (r41467): Page Down key scrolls two pages 8003 https://bugs.webkit.org/show_bug.cgi?id=24477 8004 rdar://problem/6674184 8005 8006 * WebView/WebHTMLView.mm: 8007 (responderChainRespondsToSelector): Added. 8008 (-[WebHTMLView doCommandBySelector:]): Set eventWasHandled based on whether we 8009 can find a responder that responds to this selector rather than always assuming 8010 the selector will not be handled. 8011 80122009-03-17 Mark Rowe <mrowe@apple.com> 8013 8014 Fix the build. 8015 8016 * Plugins/Hosted/HostedNetscapePluginStream.mm: 8017 80182009-03-17 David Kilzer <ddkilzer@apple.com> 8019 8020 Use -[NSURLResponse(WebCoreURLResponse) _webcore_MIMEType] consistently 8021 8022 Reviewed by Darin Adler. 8023 8024 WebKit r30323 added -_webcore_MIMEType to fix issues with 8025 incorrect MIME types in NS[HTTP]URLResponse objects. However, 8026 uses of -[NSURLResponse MIMEType] still persist in WebKit that 8027 should be switched to use -_webcore_MIMEType. Note that 8028 -[WebDataSource _responseMIMEType] calls back into WebCore to 8029 get the MIME type from the ResourceResponse object, which has 8030 already retrieved it via -_webcore_MIMEType. 8031 8032 * Plugins/Hosted/HostedNetscapePluginStream.mm: 8033 (WebKit::HostedNetscapePluginStream::didReceiveResponse): Use 8034 -_webcore_MIMEType. 8035 * Plugins/WebBaseNetscapePluginStream.mm: 8036 (WebNetscapePluginStream::didReceiveResponse): Ditto. 8037 * Plugins/WebNetscapePluginView.mm: 8038 (-[WebNetscapePluginView pluginView:receivedData:]): Ditto. 8039 * Plugins/WebPluginController.mm: 8040 (-[WebPluginController pluginView:receivedResponse:]): Ditto. 8041 * WebView/WebHTMLRepresentation.mm: 8042 (-[WebHTMLRepresentation _isDisplayingWebArchive]): Use 8043 -[WebDataSource _responseMIMEType] instead. 8044 * WebView/WebPDFRepresentation.m: 8045 (-[WebPDFRepresentation finishedLoadingWithDataSource:]): Ditto. 8046 * WebView/WebPDFView.mm: 8047 (-[WebPDFView menuForEvent:]): Ditto. 8048 80492009-03-17 Simon Fraser <simon.fraser@apple.com> 8050 8051 Reviewed by Darin Adler 8052 8053 https://bugs.webkit.org/show_bug.cgi?id=24396 8054 8055 Add WTF_USE_ACCELERATED_COMPOSITING, defined to 0 for now. 8056 8057 * WebKitPrefix.h: 8058 80592009-03-17 Kevin Ollivier <kevino@theolliviers.com> 8060 8061 Reviewed by Mark Rowe. 8062 8063 Get BUILDING_ON_* defines from Platform.h. 8064 8065 https://bugs.webkit.org/show_bug.cgi?id=24630 8066 8067 * WebKitPrefix.h: 8068 80692009-03-16 Darin Adler <darin@apple.com> 8070 8071 Reviewed by Dan Bernstein. 8072 8073 <rdar://problem/6577174> Rename the text directionality submenus to “Paragraph Direction” and “Selection Direction” 8074 8075 * WebCoreSupport/WebViewFactory.mm: 8076 (-[WebViewFactory contextMenuItemTagParagraphDirectionMenu]): Changed string here, but only 8077 post-Leopard, since we want this to match the Mac OS X menu on Tiger and Leopard. 8078 (-[WebViewFactory contextMenuItemTagSelectionDirectionMenu]): Changed string here. 8079 80802009-03-16 Anders Carlsson <andersca@apple.com> 8081 8082 Reviewed by Oliver Hunt. 8083 8084 Don't mig_deallocate random data in case an instance proxy method returns false. 8085 8086 * Plugins/Hosted/NetscapePluginHostProxy.mm: 8087 (WKPCEvaluate): 8088 (WKPCInvoke): 8089 (WKPCInvokeDefault): 8090 (WKPCGetProperty): 8091 (WKPCEnumerate): 8092 80932009-03-16 Anders Carlsson <andersca@apple.com> 8094 8095 Reviewed by Oliver Hunt. 8096 8097 <rdar://problem/6633944> 8098 REGRESSION (Safari 4 PB): Many crashes in Flip4Mac involving loading the plugin 8099 8100 Defer loading while calling webPlugInInitialize since it can end up spinning the run loop. 8101 8102 * Plugins/WebPluginController.mm: 8103 (-[WebPluginController addPlugin:]): 8104 81052009-03-16 Anders Carlsson <andersca@apple.com> 8106 8107 Reviewed by Sam Weinig. 8108 8109 Fix <rdar://problem/6622601> 8110 8111 Make sure to update both the window frame and the plug-in frame. 8112 8113 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 8114 (-[WebHostedNetscapePluginView addWindowObservers]): 8115 81162009-03-15 Dan Bernstein <mitz@apple.com> 8117 8118 Reviewed by Adele Peterson. 8119 8120 - fix <rdar://problem/6607773> WebKit should support the "Default" 8121 paragraph writing direction -- or at least validate the menu item 8122 appropriately 8123 8124 Made WebHTMLView validate user interface items with the selector 8125 -makeBaseWritingDirectionNatural: by returning NO and, if the item is 8126 a menu item, setting its state to "off". 8127 8128 Strictly speaking, since -makeBaseWritingDirectionNatural: is never 8129 valid for WebViews, WebHTMLView should not need to respond to it and 8130 validate it, however because other responders respond to all three 8131 -makeBaseWritingDirection*: messages and set the menu item state, having 8132 WebHTMLView do the same makes application developers' lives easier. 8133 8134 * WebView/WebHTMLView.mm: 8135 (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): 8136 (-[WebHTMLView makeBaseWritingDirectionNatural:]): 8137 81382009-03-13 Mark Rowe <mrowe@apple.com> 8139 8140 Rubber-stamped by Dan Bernstein. 8141 8142 Take advantage of the ability of recent versions of Xcode to easily switch the active 8143 architecture. 8144 8145 * Configurations/DebugRelease.xcconfig: 8146 81472009-03-13 Anders Carlsson <andersca@apple.com> 8148 8149 Reviewed by Kevin Decker and Geoffrey Garen. 8150 8151 <rdar://problem/6590384> 8152 REGRESSION (Safari 3-4): Tiger-only Crash occurs at WebView hostWindow () after reloading a set of tabs then quitting 8153 8154 When we're doing fast teardown, plug-in views can be destroyed from -[WebView dealloc]'s [super dealloc] call, 8155 and thus calling -[WebView hostWindow] will crash since _private is nil. 8156 8157 * WebView/WebView.mm: 8158 (-[WebView hostWindow]): 8159 81602009-03-13 Anders Carlsson <andersca@apple.com> 8161 8162 And yet another attempt... 8163 8164 * Plugins/WebNetscapePluginEventHandlerCocoa.h: 8165 (WebNetscapePluginEventHandlerCocoa::installKeyEventHandler): 8166 (WebNetscapePluginEventHandlerCocoa::removeKeyEventHandler): 8167 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 8168 81692009-03-13 Anders Carlsson <andersca@apple.com> 8170 8171 Another attempt at fixing the build. 8172 8173 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 8174 (WebNetscapePluginEventHandlerCocoa::WebNetscapePluginEventHandlerCocoa): 8175 81762009-03-13 Anders Carlsson <andersca@apple.com> 8177 8178 Try to fix the SL build. 8179 8180 * Plugins/WebNetscapePluginEventHandlerCocoa.h: 8181 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 8182 (WebNetscapePluginEventHandlerCocoa::keyDown): 8183 81842009-03-13 Greg Bolsinga <bolsinga@apple.com> 8185 8186 Reviewed by Simon Fraser. 8187 8188 Update Geolocation perimission dialogs to be asynchronous. 8189 https://bugs.webkit.org/show_bug.cgi?id=24505 8190 8191 WebGeolocation is a wrapper around WebCore::Geolocation. It mimics the 8192 coding style set by WebSecurityOrigin. 8193 8194 WebChromeClient now calls the private UI delegate method 8195 -webView:frame:requestGeolocationPermission:securityOrigin: 8196 8197 * WebCoreSupport/WebChromeClient.h: 8198 * WebCoreSupport/WebChromeClient.mm: 8199 (WebChromeClient::requestGeolocationPermissionForFrame): 8200 * WebCoreSupport/WebGeolocation.mm: Added. 8201 (WebCore::if): 8202 (-[WebGeolocation shouldClearCache]): 8203 (-[WebGeolocation setIsAllowed:]): 8204 (-[WebGeolocation dealloc]): 8205 * WebCoreSupport/WebGeolocationInternal.h: Added. 8206 * WebCoreSupport/WebGeolocationPrivate.h: Added. 8207 * WebView/WebUIDelegatePrivate.h: 8208 82092009-03-13 Anders Carlsson <andersca@apple.com> 8210 8211 Reviewed by Dan Bernstein. 8212 8213 <rdar://problem/6610666> Revise the Cocoa event model text API 8214 8215 Replace the text input API with a simpler API that uses a separate text input window. 8216 8217 * Plugins/WebNetscapePluginEventHandlerCocoa.h: 8218 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 8219 (WebNetscapePluginEventHandlerCocoa::WebNetscapePluginEventHandlerCocoa): 8220 Initialize m_keyEventHandler to 0. 8221 8222 (WebNetscapePluginEventHandlerCocoa::keyDown): 8223 If the plug-in returns 0 from NPP_HandleEvent, pass the event to the TSM machinery. 8224 8225 (WebNetscapePluginEventHandlerCocoa::focusChanged): 8226 Install/remove the key event handler as needed. 8227 8228 (WebNetscapePluginEventHandlerCocoa::handleTSMEvent): 8229 Get the text and send a TextInput event. 8230 8231 * Plugins/WebNetscapePluginView.h: 8232 * Plugins/WebNetscapePluginView.mm: 8233 Remove the old text input API. 8234 8235 (-[WebNetscapePluginView inputContext]): 8236 Always return nil here. 8237 8238 * Plugins/npapi.mm: 8239 * Plugins/nptextinput.h: Removed. 8240 82412009-03-12 Anders Carlsson <andersca@apple.com> 8242 8243 Reviewed by Mike Thole and Mark Rowe. 8244 8245 Fix <rdar://problem/6624105>. 8246 8247 Make sure to process incoming messages for the NSEventTrackingRunLoopMode as well. 8248 8249 * Plugins/Hosted/NetscapePluginHostProxy.mm: 8250 (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): 8251 82522009-03-12 Anders Carlsson <andersca@apple.com> 8253 8254 Reviewed by Geoffrey Garen. 8255 8256 WebKit side of <rdar://problem/6607801> 8257 8258 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 8259 (WebKit::NetscapePluginInstanceProxy::destroy): 8260 Pass a requestID to _WKPCDestroyPluginInstance and wait until we get a reply back. 8261 8262 * Plugins/Hosted/WebKitPluginHost.defs: 8263 Add requestID parameter. 8264 82652009-03-12 Kevin Decker <kdecker@apple.com> 8266 8267 Reviewed by Anders Carlsson. 8268 8269 * Plugins/WebNetscapePluginPackage.mm: 8270 (-[WebNetscapePluginPackage _unloadWithShutdown:]): Simply a small SUPPORT_CFM code block. 8271 82722009-03-12 Kevin Decker <kdecker@apple.com> 8273 8274 Reviewed by Anders Carlsson. 8275 8276 Fixed: <rdar://problem/5815862> Opening a subclassed NSWindow from a Safari plugin causes Safari to crash on Quit 8277 8278 This fix addresses crashes in both Silverlight and ChemDraw. This type of crash would occur because AppKit still 8279 had a reference to open windows that the plugin created (which no longer exist). 8280 8281 * Plugins/WebNetscapePluginPackage.mm: 8282 (-[WebNetscapePluginPackage _unloadWithShutdown:]): Do not unload the plug-in bundle on browser shutdown. 8283 82842009-03-11 David Kilzer <ddkilzer@apple.com> 8285 8286 Remove duplicate header include 8287 8288 Rubber-stamped by Mark Rowe. 8289 8290 * WebView/WebView.mm: Remove duplicate #include <runtime/InitializeThreading.h>. 8291 Also realphabetized lowercase #include statements. 8292 82932009-03-11 David Kilzer <ddkilzer@apple.com> 8294 8295 Clarify comments regarding order of FEATURE_DEFINES 8296 8297 Rubber-stamped by Mark Rowe. 8298 8299 * Configurations/WebKit.xcconfig: Added warning about the 8300 consequences when FEATURE_DEFINES are not kept in sync. 8301 83022009-03-11 Anders Carlsson <andersca@apple.com> 8303 8304 Reviewed by Sam Weinig. 8305 8306 WebKit side of <rdar://problem/6656147>. 8307 8308 * Plugins/Hosted/NetscapePluginHostManager.mm: 8309 (WebKit::NetscapePluginHostManager::instantiatePlugin): 8310 Pass the requestID to _WKPHInstantiatePlugin. 8311 8312 * Plugins/Hosted/NetscapePluginHostProxy.mm: 8313 Pass the requestID to setCurrentReply. 8314 8315 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 8316 (WebKit::NetscapePluginInstanceProxy::setCurrentReply): 8317 Store the reply in a map with the requestID as the key. 8318 8319 (WebKit::NetscapePluginInstanceProxy::waitForReply): 8320 Wait for a reply that matches the given requestID. 8321 8322 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 8323 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): 8324 Initialize member variables. 8325 8326 (WebKit::NetscapePluginInstanceProxy::~NetscapePluginInstanceProxy): 8327 Delete all requests. 8328 8329 (WebKit::NetscapePluginInstanceProxy::print): 8330 Pass the requestID to _WKPHPluginInstancePrint. 8331 8332 (WebKit::NetscapePluginInstanceProxy::loadRequest): 8333 Rename m_currentRequestID to m_currentURLRequestID. 8334 8335 (WebKit::NetscapePluginInstanceProxy::processRequestsAndWaitForReply): 8336 Process requests until we find a reply with the right requestID. 8337 8338 (WebKit::NetscapePluginInstanceProxy::createBindingsInstance): 8339 Pass a requestID to the _WKPH function. 8340 8341 (WebKit::NetscapePluginInstanceProxy::nextRequestID): 8342 Ditto. 8343 8344 * Plugins/Hosted/ProxyInstance.mm: 8345 Pass a requestID to the _WKPH functions. 8346 8347 * Plugins/Hosted/WebKitPluginClient.defs: 8348 * Plugins/Hosted/WebKitPluginHost.defs: 8349 Add requestID parameters. 8350 83512009-03-11 Anders Carlsson <andersca@apple.com> 8352 8353 Reviewed by Darin Adler. 8354 8355 Fix <rdar://problem/6620064>. 8356 8357 * Plugins/WebPluginContainerPrivate.h: 8358 83592009-03-10 Xan Lopez <xlopez@igalia.com> 8360 8361 Build fix, no review. 8362 8363 * WebView/WebFrame.mm: 8364 (-[WebFrame _smartDeleteRangeForProposedRange:]): 8365 83662009-03-09 Anders Carlsson <andersca@apple.com> 8367 8368 Reviewed by Kevin Decker. 8369 8370 WebKit side of <rdar://problem/6530007> 8371 8372 * Plugins/Hosted/NetscapePluginHostProxy.mm: 8373 (WKPCEnumerate): 8374 Call NetscapePluginInstanceProxy::enumerate. 8375 8376 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 8377 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 8378 (WebKit::NetscapePluginInstanceProxy::enumerate): 8379 Enumerate the JS object and serialize its values. 8380 8381 * Plugins/Hosted/ProxyInstance.h: 8382 * Plugins/Hosted/ProxyInstance.mm: 8383 (WebKit::ProxyInstance::getPropertyNames): 8384 Ask the plug-in host to get the property names and deserialize them. 8385 8386 * Plugins/Hosted/WebKitPluginClient.defs: 8387 * Plugins/Hosted/WebKitPluginHost.defs: 8388 83892009-03-09 Simon Fraser <simon.fraser@apple.com> 8390 8391 Reviewed by Oliver Hunt and Cameron Zwarich 8392 8393 https://bugs.webkit.org/show_bug.cgi?id=24440 8394 8395 The sublayer added to WebHTMLView to host accelerated compositing layers needs to 8396 be a subclass of NSView which allows context menu clicks through. 8397 8398 * WebView/WebHTMLView.mm: 8399 (-[WebLayerHostingView rightMouseDown:]): 8400 (-[WebHTMLView attachRootLayer:]): 8401 84022009-03-08 Mark Rowe <mrowe@apple.com> 8403 8404 Reviewed by Oliver Hunt. 8405 8406 Split ScrollAlignment and ScrollBehavior out of RenderLayer.h so that 8407 Frame.h no longer needs to include it. This cuts the size of the symbols 8408 for a debug build by around 3%. 8409 8410 * Plugins/WebNetscapePluginView.mm: 8411 * WebView/WebFrame.mm: 8412 (-[WebFrame _scrollDOMRangeToVisible:]): 8413 (-[WebFrame _insertParagraphSeparatorInQuotedContent]): 8414 (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]): 8415 * WebView/WebHTMLView.mm: 8416 (-[WebHTMLView jumpToSelection:]): 8417 (-[WebHTMLView centerSelectionInVisibleArea:]): 8418 84192009-03-07 Dan Bernstein <mitz@apple.com> 8420 8421 Reviewed by Alexey Proskuryakov. 8422 8423 - fix a bug where debug builds were clearing the HTML5 application cache 8424 on application termination 8425 8426 * WebView/WebView.mm: 8427 (-[WebView _close]): Call -[WebCache setDisabled:YES] instead of 8428 -[WebCache empty]. 8429 84302009-03-06 Douglas R. Davidson <ddavidso@apple.com> 8431 8432 Reviewed by Justin Garcia. 8433 8434 https://bugs.webkit.org/show_bug.cgi?id=24108 8435 8436 Update spelling and grammar checking to use the new combined text 8437 checking (with automatic language identification) on Snow Leopard. 8438 8439 * WebCoreSupport/WebEditorClient.h: 8440 * WebCoreSupport/WebEditorClient.mm: 8441 (WebEditorClient::checkSpellingAndGrammarOfParagraph): 8442 84432009-03-05 Adele Peterson <adele@apple.com> 8444 8445 Reviewed by Darin Adler. 8446 8447 Fix for https://bugs.webkit.org/show_bug.cgi?id=24079 8448 <rdar://problem/6611233> REGRESSION (r39549): Page loads cannot be interrupted with Command-. or Escape 8449 <rdar://problem/6636563> Ctrl-tab shortcut doesn't switch tabs when focus is in text field 8450 8451 * WebView/WebHTMLView.mm: (-[WebHTMLView doCommandBySelector:]): 8452 If WebKit does not support the command, we need to pass the selector to super. In this case, 8453 we'll consider the event not to be handled. This is not perfect because in theory, [super doCommandBySelector:] 8454 can do some action that would cause WebKit to need to consider the event handled. But in practice, I've found no 8455 example of that happening and causing broken behavior. 8456 84572009-03-04 Mark Rowe <mrowe@apple.com> 8458 8459 Reviewed by Dan Bernstein. 8460 8461 <rdar://problem/6206172> Adoption of new Cocoa API for dictionary contextual menu 8462 8463 * WebView/WebHTMLView.mm: 8464 (-[WebHTMLView _lookUpInDictionaryFromMenu:]): 8465 84662009-03-04 Adam Barth <abath@webkit.org> 8467 8468 Reviewed by Alexey Proskuryakov. 8469 8470 https://bugs.webkit.org/show_bug.cgi?id=24356 8471 8472 Fix WebKit style for allowUniversalAccessFromFileURLs. 8473 8474 * WebView/WebPreferenceKeysPrivate.h: 8475 * WebView/WebPreferences.mm: 8476 (+[WebPreferences initialize]): 8477 (-[WebPreferences allowUniversalAccessFromFileURLs]): 8478 (-[WebPreferences setAllowUniversalAccessFromFileURLs:]): 8479 * WebView/WebPreferencesPrivate.h: 8480 * WebView/WebView.mm: 8481 (-[WebView _preferencesChangedNotification:]): 8482 84832009-03-03 David Kilzer <ddkilzer@apple.com> 8484 8485 <rdar://problem/6581203> WebCore and WebKit should install the same set of headers during installhdrs phase as build phase 8486 8487 Reviewed by Mark Rowe. 8488 8489 The fix is to add INSTALLHDRS_COPY_PHASE = YES and 8490 INSTALLHDRS_SCRIPT_PHASE = YES to WebKit.xcconfig, then to 8491 make sure various build phase scripts work with the installhdrs 8492 build phase. 8493 8494 * Configurations/Base.xcconfig: Defined REAL_PLATFORM_NAME 8495 based on PLATFORM_NAME to work around the missing definition on 8496 Tiger. 8497 * Configurations/WebKit.xcconfig: Added 8498 WEBCORE_PRIVATE_HEADERS_DIR variable to remove definition of 8499 UMBRELLA_FRAMEWORKS_DIR for Debug and Release builds in the 8500 Xcode project file. Added INSTALLHDRS_COPY_PHASE = YES and 8501 INSTALLHDRS_SCRIPT_PHASE = YES. 8502 85032009-03-03 David Kilzer <ddkilzer@apple.com> 8504 8505 Remove last vestiges of JAVASCRIPTCORE_PRIVATE_HEADERS_DIR from WebKit 8506 8507 Reviewed by Adam Roben. 8508 8509 Use of JAVASCRIPTCORE_PRIVATE_HEADERS_DIR was removed in r37465 8510 since NPAPI headers had migrated from JavaScriptCore to WebCore 8511 before that. 8512 8513 * Configurations/WebKit.xcconfig: Removed definition of 8514 JAVASCRIPTCORE_PRIVATE_HEADERS_DIR used in Production builds. 8515 85162009-03-03 Anders Carlsson <andersca@apple.com> 8517 8518 Reviewed by Darin Adler. 8519 8520 Fix <rdar://problem/6633834>. 8521 8522 * Plugins/Hosted/NetscapePluginHostManager.mm: 8523 (WebKit::NetscapePluginHostManager::instantiatePlugin): 8524 Create a new plug-in instance if the plug-in host has crashed. 8525 8526 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 8527 (WebKit::NetscapePluginInstanceProxy::invalidate): 8528 Add a null check for the plug-in host proxy. 8529 85302009-03-02 Sam Weinig <sam@webkit.org> 8531 8532 Reviewed by Mark Rowe. 8533 8534 Enable Geolocation (except on Tiger and Leopard). 8535 8536 * Configurations/WebKit.xcconfig: 8537 85382009-03-02 Anders Carlsson <andersca@apple.com> 8539 8540 Reviewed by Dan Bernstein. 8541 8542 WebKit part of <rdar://problem/6638658>. 8543 8544 * Plugins/Hosted/NetscapePluginHostManager.h: 8545 * Plugins/Hosted/NetscapePluginHostManager.mm: 8546 (WebKit::NetscapePluginHostManager::createPropertyListFile): 8547 Spawn the plug-in host and wait for it to create the property list. 8548 8549 * Plugins/WebBasePluginPackage.mm: 8550 (-[WebBasePluginPackage createPropertyListFile]): 8551 Factor code out into a new method. 8552 8553 (-[WebBasePluginPackage pListForPath:createFile:]): 8554 Call the newly added createPropertyListFile method. 8555 8556 * Plugins/WebNetscapePluginPackage.mm: 8557 (-[WebNetscapePluginPackage createPropertyListFile]): 8558 Tell the plug-in host manager to create a property list file for us. 8559 85602009-03-02 Sam Weinig <sam@webkit.org> 8561 8562 Reviewed by Geoffrey Garen. 8563 8564 Fix for <rdar://problem/6507404> Add Geolocation support. 8565 8566 This is not yet turned on for any Mac platform. 8567 8568 Add SPI to ask the embedding application whether to allow 8569 Geolocation for an origin. 8570 8571 * WebCoreSupport/WebChromeClient.h: 8572 * WebCoreSupport/WebChromeClient.mm: 8573 (WebChromeClient::shouldAllowGeolocationForFrame): 8574 * WebView/WebUIDelegatePrivate.h: 8575 85762009-03-02 Anders Carlsson <andersca@apple.com> 8577 8578 Fix PowerPC build. 8579 8580 * Plugins/WebNetscapePluginPackage.mm: 8581 (-[WebNetscapePluginPackage _tryLoad]): 8582 85832009-03-02 Anders Carlsson <andersca@apple.com> 8584 8585 Reviewed by John Sullivan, Ada Chan. 8586 8587 Factor loading code out into its own method and get rid of a bunch of gotos. 8588 8589 * Plugins/WebNetscapePluginPackage.mm: 8590 (-[WebNetscapePluginPackage _tryLoad]): 8591 (-[WebNetscapePluginPackage load]): 8592 85932009-03-02 Anders Carlsson <andersca@apple.com> 8594 8595 Build fix. 8596 8597 * Plugins/WebNetscapeDeprecatedFunctions.h: 8598 85992009-03-02 Anders Carlsson <andersca@apple.com> 8600 8601 Reviewed by John Sullivan. 8602 8603 Rename WebNetscapePluginPackage.m to WebNetscapePluginPackage.mm 8604 8605 * Plugins/WebNetscapePluginPackage.m: Removed. 8606 * Plugins/WebNetscapePluginPackage.mm: Copied from mac/Plugins/WebNetscapePluginPackage.m. 8607 86082009-03-01 Anders Carlsson <andersca@apple.com> 8609 8610 Reviewed by Sam Weinig. 8611 8612 WebKit side of <rdar://problem/6449689> 8613 8614 Pass the visible name to the plug-in host. 8615 8616 * Plugins/Hosted/NetscapePluginHostManager.mm: 8617 (WebKit::NetscapePluginHostManager::spawnPluginHost): 8618 86192009-02-27 Alice Liu <alice.liu@apple.com> 8620 8621 Fix <rdar://problem/6531265> REGRESSION (r39185): adding ".jpeg" 8622 extension to images that already have .jpg extension 8623 8624 Reviewed by Oliver Hunt. 8625 8626 * WebView/WebHTMLView.mm: 8627 (-[NSString matchesExtensionEquivalent:]): 8628 (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): 8629 Relax the check for the proper extension to allow for known 8630 equivalents, special-cased in matchesExtensionEquivalent function. 8631 86322009-02-27 Anders Carlsson <andersca@apple.com> 8633 8634 Reviewed by Geoffrey Garen. 8635 8636 <rdar://problem/6631436> 8637 CrashTracer: [USER] 1 crash in Safari at com.apple.WebKit • WebKit::NetscapePluginInstanceProxy::addValueToArray + 55 8638 8639 Port the NPN_Evaluate code over from WebCore instead of using the frame loader. 8640 8641 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 8642 (WebKit::NetscapePluginInstanceProxy::evaluate): 8643 86442009-02-27 Anders Carlsson <andersca@apple.com> 8645 8646 Reviewed by Geoffrey Garen. 8647 8648 WebKit side of <rdar://problem/6626814>. 8649 8650 * Plugins/Hosted/NetscapePluginHostProxy.mm: 8651 (WKPCInvokeDefault): 8652 Make InvokeDefault async. 8653 8654 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 8655 (WebKit::NetscapePluginInstanceProxy::addValueToArray): 8656 Handle passing NPObjects back to the plug-in host. 8657 8658 * Plugins/Hosted/ProxyInstance.h: 8659 (WebKit::ProxyInstance::objectID): 8660 Add objectID getter. 8661 8662 * Plugins/Hosted/WebKitPluginClient.defs: 8663 Make InvokeDefault a simpleroutine. 8664 86652009-02-27 Timothy Hatcher <timothy@apple.com> 8666 8667 Fixes an exception by null checking the WebResource before adding it to 8668 the subresources array. 8669 8670 <rdar://problem/5950769> Bug in [WebDataSource subresources] can throw an exception 8671 8672 Reviewed by Geoff Garen and Anders Carlsson. 8673 8674 * WebView/WebDataSource.mm: 8675 (-[WebDataSource subresources]): Null check the WebResource before adding it. 8676 86772009-02-27 Timothy Hatcher <timothy@apple.com> 8678 8679 Adds a workaround for Automator creating a WebView from a secondary thread. 8680 8681 <rdar://problem/6631951> REGRESSION (Safari 4 Beta): Automator crash on 8682 secondary thread beneath -[WebView initWithFrame:frameName:groupName:] 8683 8684 Reviewed by Geoff Garen. 8685 8686 * WebView/WebView.mm: 8687 (needsWebViewInitThreadWorkaround): Check for com.apple.Automator. 8688 86892009-02-27 Adam Barth <abarth@webkit.org> 8690 8691 Reviewed by Eric Seidel. 8692 8693 Add a preference to reduce the power of file:// URLs. 8694 8695 * WebView/WebPreferenceKeysPrivate.h: 8696 * WebView/WebPreferences.mm: 8697 (+[WebPreferences initialize]): 8698 (-[WebPreferences allowUniversalAccessFromFileUrls]): 8699 (-[WebPreferences setAllowUniversalAccessFromFileUrls:]): 8700 * WebView/WebPreferencesPrivate.h: 8701 * WebView/WebView.mm: 8702 (-[WebView _preferencesChangedNotification:]): 8703 87042009-02-27 Simon Fraser <simon.fraser@apple.com> 8705 8706 Reviewed by Anders Carlsson 8707 8708 https://bugs.webkit.org/show_bug.cgi?id=24242 8709 8710 setCursor(), and resetCursorRects() on Tiger, were using global, not local 8711 coordinates for elementAtPoint: 8712 8713 * WebView/WebHTMLView.mm: 8714 (resetCursorRects): 8715 (setCursor): 8716 87172009-02-27 Adam Barth <abarth@webkit.org> 8718 8719 Reviewed by Eric Seidel. 8720 8721 Add a preference to reduce the power of file:// URLs. 8722 8723 * WebView/WebPreferenceKeysPrivate.h: 8724 * WebView/WebPreferences.mm: 8725 (+[WebPreferences initialize]): 8726 (-[WebPreferences allowUniversalAccessFromFileUrls]): 8727 (-[WebPreferences setAllowUniversalAccessFromFileUrls:]): 8728 * WebView/WebPreferencesPrivate.h: 8729 * WebView/WebView.mm: 8730 (-[WebView _preferencesChangedNotification:]): 8731 87322009-02-26 Adele Peterson <adele@apple.com> 8733 8734 Reviewed by Geoff Garen. 8735 8736 Fix for <rdar://problem/6618166> 8737 https://bugs.webkit.org/show_bug.cgi?id=24216 8738 (REGRESSION r36919) Safari 4 Beta causes MSN Messenger's text entry field to lose focus after entering a message 8739 8740 During a series of firstResponder changes, at some point while the WebHTMLView was losing first responder status, 8741 we incorrectly marked the page as active, and then when the WebHTMLView became first responder again, setActive did nothing. 8742 This change restores behavior from before r36919 to check if the WebHTMLView is in the middle of losing first responder when calling setActive. 8743 8744 In addition to updating editing/selection/designmode-no-caret.html results, I also made sure the test cases that were 8745 fixed in r36919 and r38570 are still fixed. 8746 8747 * WebView/WebHTMLView.mm: 8748 (-[WebHTMLView resignFirstResponder]): Keep track if we're in the process of resigning first responder. 8749 (-[WebHTMLView _isResigningFirstResponder]): Added. 8750 * WebView/WebHTMLViewInternal.h: 8751 * WebView/WebView.mm: (-[WebView _updateFocusedAndActiveStateForFrame:]): Don't set the page to be active 8752 if the document view is currently resigning first responder. 8753 87542009-02-25 Anders Carlsson <andersca@apple.com> 8755 8756 Reviewed by Kevin Decker. 8757 8758 Fix <rdar://problem/6623697>. 8759 8760 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 8761 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 8762 (WebKit::NetscapePluginInstanceProxy::print): 8763 Ask the plug-in host to print, create a CGImage of the returned bytes and draw 8764 the image into the passed in context. 8765 8766 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 8767 (-[WebHostedNetscapePluginView drawRect:]): 8768 When printing, call NetscapePluginInstanceProxy::print. 8769 8770 * Plugins/Hosted/WebKitPluginHost.defs: 8771 87722009-02-19 Alexey Proskuryakov <ap@webkit.org> 8773 8774 Reviewed by Darin Adler. 8775 8776 https://bugs.webkit.org/show_bug.cgi?id=24024 8777 REGRESSION (r39845): Assertion failure in -[WebHistoryItem dictionaryRepresentation] when 8778 archiving a submission to about:blank 8779 8780 I don't know how to make an automated test for this bug. 8781 8782 * History/WebHistory.mm: (-[WebHistory _visitedURL:withTitle:method:wasFailure:]): 8783 Account for the fact that HTTP method may be non-empty for non-HTTP requests. 8784 87852009-02-25 Chris Fleizach <cfleizach@apple.com> 8786 8787 Reviewed by Beth Dakin. 8788 8789 Naming change from 8790 Bug 24143: Crash occurs at WebCore::AccessibilityTable::isTableExposableThroughAccessibility() when applying a link in GMail 8791 https://bugs.webkit.org/show_bug.cgi?id=24143 8792 8793 * WebView/WebFrame.mm: 8794 (-[WebFrame _accessibilityTree]): 8795 87962009-02-25 Simon Fraser <simon.fraser@apple.com> 8797 8798 Build fix with ACCELERATED_COMPOSITING turned on. 8799 8800 I missed a spot in my last commit in renaming to 8801 _stoppedAcceleratedCompositingForFrame: 8802 8803 * WebView/WebHTMLView.mm: 8804 (-[WebHTMLView close]): 8805 88062009-02-25 Simon Fraser <simon.fraser@apple.com> 8807 8808 Reviewed by Dan Bernstein 8809 8810 https://bugs.webkit.org/show_bug.cgi?id=23854 8811 8812 Make an observable property, _isUsingAcceleratedCompositing, on 8813 WebView that DumpRenderTree can use to specialize behavior. 8814 8815 This is implemented via a count of Frames that are using 8816 accelerated compositing. 8817 8818 * WebView/WebHTMLView.mm: 8819 (-[WebHTMLViewPrivate clear]): 8820 (-[WebHTMLView close]): 8821 (-[WebHTMLView attachRootLayer:]): 8822 (-[WebHTMLView detachRootLayer]): 8823 * WebView/WebView.mm: 8824 (+[WebView automaticallyNotifiesObserversForKey:]): 8825 (-[WebView _startedAcceleratedCompositingForFrame:]): 8826 (-[WebView _stoppedAcceleratedCompositingForFrame:]): 8827 (-[WebView _isUsingAcceleratedCompositing]): 8828 * WebView/WebViewInternal.h: 8829 * WebView/WebViewPrivate.h: 8830 88312009-02-24 Sam Weinig <sam@webkit.org> 8832 8833 Reviewed by Geoffrey Garen. 8834 8835 Related to <rdar://problem/6590295> 8836 Allow disabling javascript: urls. 8837 8838 * WebView/WebView.mm: 8839 (-[WebView _setJavaScriptURLsAreAllowed:]): 8840 * WebView/WebViewPrivate.h: 8841 88422009-02-24 Mark Rowe <mrowe@apple.com> 8843 8844 Reviewed by Oliver Hunt. 8845 8846 <rdar://problem/6259220> Rename AVAILABLE_AFTER_WEBKIT_VERSION_3_1 (etc.) to match the other macros 8847 8848 * Carbon/CarbonUtils.h: 8849 * Carbon/HIWebView.h: 8850 * Plugins/WebPlugin.h: 8851 * Plugins/WebPluginViewFactory.h: 8852 * WebView/WebUIDelegate.h: 8853 88542009-02-24 Peter Ammon <pammon@apple.com> 8855 8856 Reviewed by Mark Rowe. 8857 8858 Fix <rdar://problem/6251410> Services can modify non-editable content in Safari 8859 8860 * WebView/WebHTMLView.mm: 8861 (-[WebHTMLView validRequestorForSendType:returnType:]): Return self only if we can handle 8862 both the send and return type. We should also handle a nil send or return type by ignoring 8863 the argument and returning whether we can handle the other type passed in. 8864 88652009-02-23 Anders Carlsson <andersca@apple.com> 8866 8867 Reviewed by Geoffrey Garen and Darin Adler. 8868 8869 WebKit side of <rdar://problem/6613151>. 8870 8871 Make sure to vm_deallocate all memory we get from MIG callbacks. 8872 8873 * Plugins/Hosted/NetscapePluginHostProxy.mm: 8874 (DataDeallocator::DataDeallocator): 8875 (DataDeallocator::~DataDeallocator): 8876 Add a simple deallocator class. 8877 8878 (WKPCStatusText): 8879 (WKPCLoadURL): 8880 (WKPCBooleanAndDataReply): 8881 (WKPCEvaluate): 8882 (WKPCGetStringIdentifier): 8883 (WKPCInvoke): 8884 (WKPCInvokeDefault): 8885 (WKPCConstruct): 8886 (WKPCSetProperty): 8887 Use the new deallocator class. 8888 88892009-02-23 Anders Carlsson <andersca@apple.com> 8890 8891 Reviewed by Darin Adler. 8892 8893 Fix <rdar://problem/6450656>. 8894 8895 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 8896 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 8897 (WebKit::NetscapePluginInstanceProxy::insertText): 8898 Add insert text which just calls the new WKPH function. 8899 8900 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 8901 (-[WebHostedNetscapePluginView inputContext]): 8902 Get the input context from the shared input panel. 8903 8904 (-[WebHostedNetscapePluginView keyDown:]): 8905 Let the shared input panel have a go at the event first. 8906 8907 * Plugins/Hosted/WebKitPluginHost.defs: 8908 Add new InsertText function. 8909 89102009-02-23 Mark Rowe <mrowe@apple.com> 8911 8912 Fix the build after r41126. 8913 8914 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 8915 (WebKit::NetscapePluginInstanceProxy::invoke): 8916 (WebKit::NetscapePluginInstanceProxy::invokeDefault): 8917 (WebKit::NetscapePluginInstanceProxy::construct): 8918 89192009-02-22 Dan Bernstein <mitz@apple.com> 8920 8921 Reviewed by Darin Adler. 8922 8923 - fix <rdar://problem/5966123> REGRESSION (r30741): Generic Sun Applet loading logo appears half off screen 8924 8925 * WebCoreSupport/WebFrameLoaderClient.mm: Correct a copy & paste error 8926 in r30741, and assign the height value, rather than the width, to the 8927 "height" parameter. 8928 89292009-02-21 Anders Carlsson <andersca@apple.com> 8930 8931 Fix build. 8932 8933 * Plugins/Hosted/WebTextInputWindowController.m: 8934 89352009-02-20 Anders Carlsson <andersca@apple.com> 8936 8937 Reviewed by Dan Bernstein. 8938 8939 Add a shared floating text input window implementation, to be used by the hosted plug-in view. 8940 8941 * Plugins/Hosted/WebTextInputWindowController.h: Added. 8942 * Plugins/Hosted/WebTextInputWindowController.m: Added. 8943 89442009-02-20 Kevin Decker <kdecker@apple.com> 8945 8946 Reviewed by andersca. 8947 8948 <rdar://problem/6496140> Safari sometimes hangs in WKSetMetadataURL for several seconds after downloading a file 8949 8950 Spawn a background thread for WKSetMetadataURL because this function will not return until mds has journaled the data 8951 we are trying to set. Depending on what other I/O is going on, it can take some time. 8952 8953 * Misc/WebNSFileManagerExtras.m: Import pthread.h and FoundationExtras.h 8954 (setMetaData): Added. Calls WKSetMetadataURL(). 8955 (-[NSFileManager _webkit_setMetadataURL:referrer:atPath:]): Call setMetaData on a background thread 8956 89572009-02-19 Dan Bernstein <mitz@apple.com> 8958 8959 Reviewed by Sam Weinig. 8960 8961 - WebKit part of fixing https://bugs.webkit.org/show_bug.cgi?id=24027 8962 Do not send loader callbacks during CSS styling 8963 8964 * WebView/WebView.mm: 8965 (-[WebView _preferencesChangedNotification:]): Reverted the 8966 iChat-specific quirk added in <http://trac.webkit.org/changeset/41071>. 8967 89682009-02-18 Dan Bernstein <mitz@apple.com> 8969 8970 Reviewed by Brady Eidson. 8971 8972 - WebKit part of fixing <rdar://problem/6507512> Crash in iChat at CSSStyleSelector::adjustRenderStyle 8973 8974 * WebView/WebView.mm: 8975 (-[WebView _preferencesChangedNotification:]): Activate the WebCore 8976 workaround for this crash in iChat. 8977 89782009-02-18 Anders Carlsson <andersca@apple.com> 8979 8980 Reviewed by Sam Weinig. 8981 8982 Fix for <rdar://problem/6542390> 8983 8984 There's no need to call setDefersLoading here - we already defer anything a plug-in can do that 8985 would cause a load to begin. 8986 8987 * Plugins/WebNetscapePluginView.mm: 8988 (-[WebNetscapePluginView sendEvent:isDrawRect:]): 8989 89902009-02-18 Adam Roben <aroben@apple.com> 8991 8992 Add SPI to get WebKit's custom pointing-hand cursor 8993 8994 Reviewed by John Sullivan. 8995 8996 * WebView/WebView.mm: 8997 (+[WebView _pointingHandCursor]): Added. Returns the custom 8998 pointing-hand cursor that WebKit uses. 8999 * WebView/WebViewPrivate.h: Added +_pointingHandCursor. 9000 90012009-02-17 Eric Carlson <eric.carlson@apple.com> 9002 9003 Reviewed by Antti Koivisto. 9004 9005 https://bugs.webkit.org/show_bug.cgi?id=23917 9006 Allow a WebKit plug-in to act as a proxy for the <audio> and <video> 9007 element. 9008 9009 * Plugins/WebPluginContainerPrivate.h: 9010 * Plugins/WebPluginController.mm: 9011 (mediaProxyClient): New, cast to HTMLMediaElement if it is a video or audio element 9012 (-[WebPluginController _setMediaPlayerProxy:forElement:]): New, pass proxy to HTMLMediaElement 9013 (-[WebPluginController _postMediaPlayerNotification:forElement:]): New, deliver event to HTMLMediaElement 9014 9015 * WebCoreSupport/WebFrameLoaderClient.mm: 9016 (WebFrameLoaderClient::createPlugin): Don't allow a media player proxy plug-in to be chosen by 9017 file extension, only want a match for the new MIME type proxy plug-ins should have. 9018 90192009-02-13 Anders Carlsson <andersca@apple.com> 9020 9021 Reviewed by Kevin Decker. 9022 9023 <rdar://problem/6584834> ESPN radio live stream link hangs Safari 9024 9025 When a plug-in invokes JavaScript code that will destroy the plug-in, we need to 9026 defer destruction until we're done executing the script. 9027 9028 * Plugins/Hosted/NetscapePluginHostProxy.mm: 9029 (WebKit::PluginDestroyDeferrer::PluginDestroyDeferrer): 9030 (WebKit::PluginDestroyDeferrer::~PluginDestroyDeferrer): 9031 Add a simple RAII object for deferring destruction of the plug-in instance. 9032 9033 (WKPCEvaluate): 9034 (WKPCInvoke): 9035 (WKPCInvokeDefault): 9036 (WKPCConstruct): 9037 (WKPCGetProperty): 9038 (WKPCSetProperty): 9039 (WKPCRemoveProperty): 9040 (WKPCHasProperty): 9041 (WKPCHasMethod): 9042 Use the PluginDestroyDeferrer. 9043 9044 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 9045 (WebKit::NetscapePluginInstanceProxy::pluginID): 9046 Assert that the plug-in ID is not 0 here. 9047 9048 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 9049 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): 9050 Initialize the call depth. 9051 9052 (WebKit::NetscapePluginInstanceProxy::~NetscapePluginInstanceProxy): 9053 Set the plug-in ID to 0 to aid debugging. 9054 9055 (WebKit::NetscapePluginInstanceProxy::willCallPluginFunction): 9056 Increment the call depth. 9057 9058 (WebKit::NetscapePluginInstanceProxy::didCallPluginFunction): 9059 Decrement the call depth, if it's 0 and we should stop the plug-in, do so. 9060 9061 (WebKit::NetscapePluginInstanceProxy::shouldStop): 9062 If we're called this with a non-zero call depth, set shouldStopSoon to true. 9063 9064 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 9065 (-[WebHostedNetscapePluginView shouldStop]): 9066 Call the proxy. 9067 90682009-02-12 Brady Eidson <beidson@apple.com> 9069 9070 Reviewed by Kevin Decker 9071 9072 <rdar://problem/6582180> - Wrong HTTP method applied to history item. 9073 9074 * WebCoreSupport/WebFrameLoaderClient.mm: 9075 (WebFrameLoaderClient::updateGlobalHistory): Check the original request, not any 9076 redirected request. 9077 90782009-02-12 Anders Carlsson <andersca@apple.com> 9079 9080 Reviewed by Kevin Decker. 9081 9082 <rdar://problem/6579412> 9083 REGRESSION (3.2.1-ToT): Crash in Silverlight viewing streaming lecture 9084 9085 * Plugins/WebNetscapePluginView.h: 9086 * Plugins/WebNetscapePluginView.mm: 9087 (-[WebNetscapePluginView userAgent]): 9088 Apply workaround for Silverlight workaround. 9089 9090 (-[WebNetscapePluginView _createPlugin]): 9091 Check if the plug-in that we're creating is the silverlight plug-in. 9092 90932009-02-12 Brady Eidson <beidson@apple.com> 9094 9095 Reviewed by Darin Adler 9096 9097 Fix potential ref-count or null-deref problems with C++ objects as Obj-C members. 9098 9099 * History/WebBackForwardList.mm: 9100 (-[WebBackForwardList dealloc]): Null check before deref()'ing. 9101 (-[WebBackForwardList finalize]): Ditto. 9102 9103 * Misc/WebIconFetcher.mm: 9104 (-[WebIconFetcher dealloc]): Null check before deref()'ing. 9105 (-[WebIconFetcher finalize]): Ditto. 9106 9107 * WebCoreSupport/WebEditorClient.mm: Change to use RefPtr<> instead of ref()/deref(). 9108 (-[WebEditCommand initWithEditCommand:]): 9109 (-[WebEditCommand dealloc]): 9110 (-[WebEditCommand finalize]): 9111 (-[WebEditCommand command]): 9112 9113 * WebView/WebArchive.mm: Change to use RefPtr<> instead of ref()/deref(). 9114 (-[WebArchivePrivate init]): 9115 (-[WebArchivePrivate initWithCoreArchive:]): 9116 (-[WebArchivePrivate coreArchive]): 9117 (-[WebArchivePrivate setCoreArchive:]): 9118 (-[WebArchivePrivate dealloc]): 9119 (-[WebArchivePrivate finalize]): 9120 9121 * WebView/WebDataSource.mm: 9122 (-[WebDataSourcePrivate dealloc]): Null check before deref()'ing. 9123 (-[WebDataSourcePrivate finalize]): Ditto. 9124 91252009-02-12 Brady Eidson <beidson@apple.com> 9126 9127 Reviewed by Kevin Decker 9128 9129 <rdar://problem/6579750> - Crash in WebArchivePrivate in Tiger TextEdit 9130 9131 NSHTMLReader tries to create a WebArchive from a random chunk of data. Previously, WebArchive creation would 9132 fail and return nil and NSHTMLReader would try something else. When we changed the behavior to return an invalid 9133 WebArchive object, things started getting weird. 9134 9135 * WebView/WebArchive.mm: 9136 (-[WebArchivePrivate setCoreArchive:]): Null check the pointer before calling ->deref() 9137 (-[WebArchivePrivate dealloc]): Remove the ASSERT which is now invalid, and null check the pointer before ->deref(). 9138 (-[WebArchivePrivate finalize]): Ditto 9139 (-[WebArchive initWithData:]): If the LegacyWebArchive cannot be created, return nil instead of an invalid object. 9140 91412009-02-11 Mark Rowe <mrowe@apple.com> 9142 9143 Fix the build. 9144 9145 * History/WebHistory.mm: 9146 (-[WebHistoryPrivate visitedURL:withTitle:]): Use ASSERT_UNUSED in a manner that makes sense. 9147 91482009-02-11 Brady Eidson <beidson@apple.com> 9149 9150 Reviewed by Mark Rowe 9151 9152 <rdar://problem/6570573> Some visit counts in History.plist have insanely high values, can roll over to negative 9153 9154 Remove the item from the date caches before registering the visit. Otherwise it might not be successfully removed 9155 and when we add it back later it will exist in the list twice. This will cause the entry to be written out twice, 9156 which would lead to doubling (or more!) the visit count on next launch when these multiple items are merged. 9157 9158 * History/WebHistory.mm: 9159 (-[WebHistoryPrivate visitedURL:withTitle:]): Swap the removeItemFromDateCaches and visitedWithTitle calls. 9160 (-[WebHistoryPrivate addItem:discardDuplicate:]): Add a mode that allows the entry being added to be discarded 9161 if an entry for the URL already exists. Use that mode when reading the History.plist so only the most 9162 recent entry for a given URL will be used. 9163 (-[WebHistoryPrivate addItems:]): 9164 (-[WebHistoryPrivate loadHistoryGutsFromURL:savedItemsCount:collectDiscardedItemsInto:error:]): 9165 91662009-02-11 Dimitri Dupuis-latour <dupuislatour@apple.com> 9167 9168 Added a preference to disable some Inspector's panels (rdar://6419624, rdar://6419645). 9169 This is controlled via the 'WebKitInspectorHiddenPanels' key; if nothing is specified, all panels are shown. 9170 9171 Reviewed by Timothy Hatcher. 9172 9173 * WebCoreSupport/WebInspectorClient.h: 9174 * WebCoreSupport/WebInspectorClient.mm: 9175 (WebInspectorClient::hiddenPanels): 9176 91772009-02-11 Alexey Proskuryakov <ap@webkit.org> 9178 9179 Reviewed by Darin Adler. 9180 9181 <rdar://problem/6562920> Pasted text should be normalized to NFC 9182 9183 * Misc/WebNSURLExtras.mm: (-[NSURL _web_userVisibleString]): Route the URL string through 9184 -[NSString precomposedStringWithCanonicalMapping]. 9185 9186 * WebCoreSupport/WebPasteboardHelper.mm: 9187 (WebPasteboardHelper::plainTextFromPasteboard): Ditto. 9188 9189 * WebView/WebHTMLView.mm: 9190 (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]): 9191 Ditto. The affected cases are all plain text ones - RTF, RTFD and HTML are assumed to be 9192 precomposed already, and the conversion is performed outside WebKit for those anyway. 9193 91942009-02-10 John Sullivan <sullivan@apple.com> 9195 9196 Reviewed by Dan Bernstein 9197 9198 <https://bugs.webkit.org/show_bug.cgi?id=23889>, <rdar://problem/6572300> 9199 Negative visit counts stored in History.plist aren't corrected. 9200 9201 It's not clear how a huge negative visit count ended up in History.plist, but we can't 9202 trust data read from disk so we can at least reset this to something sane. WebCore has 9203 no guard against a visit count overflowing an int, but that seems very unlikely to have 9204 caused this. 9205 9206 * History/WebHistoryItem.mm: 9207 (-[WebHistoryItem initFromDictionaryRepresentation:]): 9208 If a negative visit count is in the dictionary, replace it with 1. If a negative daily or 9209 weekly visit count is in the dictionary, replace it with 0. 9210 92112009-02-10 John Sullivan <sullivan@apple.com> 9212 9213 Reviewed by Dan Bernstein 9214 9215 <https://bugs.webkit.org/show_bug.cgi?id=23891> 9216 [WebHistoryItem _setVisitCount:] is unused and should be removed 9217 9218 * History/WebHistoryItem.mm: 9219 (-[WebHistoryItem _setVisitCount:]): 9220 removed this unused method, which is a synonym for setVisitCount: that was introduced 9221 recently and abandoned even more recently 9222 9223 * History/WebHistoryItemInternal.h: 9224 removed declaration of _setVisitCount: 9225 92262009-02-10 Anders Carlsson <andersca@apple.com> 9227 9228 Reviewed by Mark Rowe. 9229 9230 <rdar://problem/6573916> 9231 CrashTracer: [USER] 1 crash in Safari at com.apple.WebKit • WebKit::NetscapePluginInstanceProxy::pluginHostDied + 25. 9232 9233 * Plugins/Hosted/NetscapePluginHostManager.mm: 9234 (WebKit::NetscapePluginHostManager::instantiatePlugin): 9235 If we failed to instantiate the plug-in, invalidate the instance proxy. 9236 9237 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 9238 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 9239 (WebKit::NetscapePluginInstanceProxy::invalidate): 9240 Remove the instance from the plug-in host's set. 9241 9242 (WebKit::NetscapePluginInstanceProxy::destroy): 9243 Call invalidate(). 9244 92452009-02-09 Mark Rowe <mrowe@apple.com> 9246 9247 Reviewed by Dan Bernstein. 9248 9249 Fix <https://bugs.webkit.org/show_bug.cgi?id=23863> / <rdar://problem/6571390>. 9250 Bug 23863: Reproducible crash in Mail with TOT WebKit when creating a new message 9251 9252 * WebView/WebHTMLView.mm: 9253 (-[WebHTMLView _removeMouseMovedObserverUnconditionally]): Nil-check _private as it may have not 9254 yet been initialized if this WebHTMLView was loaded from a nib. 9255 (-[WebHTMLView _removeSuperviewObservers]): Ditto. 9256 92572009-02-09 Eric Seidel <eric@webkit.org> 9258 9259 Reviewed by Dave Hyatt. 9260 9261 Rename Selection to VisibleSelection to allow us to separate 9262 the selections the user works with from the ones used by 9263 the JS editing APIs. 9264 https://bugs.webkit.org/show_bug.cgi?id=23852 9265 9266 * WebView/WebFrame.mm: 9267 (-[WebFrame _selectNSRange:]): 9268 * WebView/WebView.mm: 9269 (-[WebView textIteratorForRect:]): 9270 92712009-02-06 Anders Carlsson <andersca@apple.com> 9272 9273 Reviewed by Kevin Decker. 9274 9275 Fix crash when plug-in host dies. 9276 9277 * Plugins/Hosted/HostedNetscapePluginStream.mm: 9278 (WebKit::HostedNetscapePluginStream::didFail): 9279 92802009-02-05 Eric Seidel <eric@webkit.org> 9281 9282 Reviewed by Justin Garcia. 9283 9284 DOMSelection.getRangeAt() returns a different range than the selection 9285 https://bugs.webkit.org/show_bug.cgi?id=23601 9286 9287 Rename toRange to toNormalizedRange and add new firstRange which returns an unmodified range 9288 9289 * WebView/WebFrame.mm: 9290 (-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]): 9291 (-[WebFrame _markDOMRange]): 9292 (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]): 9293 (-[WebFrame _selectedNSRange]): 9294 * WebView/WebHTMLView.mm: 9295 (-[WebHTMLView _selectedRange]): 9296 (-[WebTextCompleteController doCompletion]): 9297 (-[WebHTMLView selectedAttributedString]): 9298 * WebView/WebView.mm: 9299 (-[WebView textIteratorForRect:]): 9300 (-[WebView selectedDOMRange]): 9301 93022009-02-06 Geoffrey Garen <ggaren@apple.com> 9303 9304 Reviewed by Sam Weinig. 9305 9306 Part III of <rdar://problem/6552272>. 9307 9308 Refactored to use the redirect data WebCore makes available, instead of 9309 tracking loading state in WebKit. 9310 9311 * History/WebHistory.mm: 9312 (-[WebHistoryPrivate dealloc]): 9313 (-[WebHistory _visitedURL:withTitle:method:wasFailure:]): 9314 (-[WebHistory _visitedURLForRedirectWithoutHistoryItem:]): 9315 * History/WebHistoryInternal.h: 9316 * WebCoreSupport/WebFrameLoaderClient.h: 9317 * WebCoreSupport/WebFrameLoaderClient.mm: 9318 (WebFrameLoaderClient::updateGlobalHistory): 9319 (WebFrameLoaderClient::updateGlobalHistoryRedirectLinks): 9320 93212009-02-06 Anders Carlsson <andersca@apple.com> 9322 9323 Reviewed by Sam Weinig. 9324 9325 <rdar://problem/6562220> 9326 CrashTracer: [USER] 21 crashes in Safari at com.apple.WebKit • WebKit::NetscapePluginHostProxy::port 9327 9328 Make the handling of crashes in the plug-in host more robust. 9329 9330 * Plugins/Hosted/NetscapePluginHostProxy.h: 9331 Add m_portSet. 9332 9333 * Plugins/Hosted/NetscapePluginHostProxy.mm: 9334 (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): 9335 Initialize m_portSet. 9336 9337 (WebKit::NetscapePluginHostProxy::~NetscapePluginHostProxy): 9338 Free m_portSet. 9339 9340 (WebKit::NetscapePluginHostProxy::processRequests): 9341 Listen for messages on the port set. If we get a message to the port death notification port, 9342 then call pluginHostDied. Otherwise, process the message. 9343 9344 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 9345 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 9346 (WebKit::NetscapePluginInstanceProxy::cleanup): 9347 Factor code that should be shared between destroy() and pluginHostDied() into cleanup. 9348 9349 (WebKit::NetscapePluginInstanceProxy::destroy): 9350 Call cleanup(). 9351 9352 (WebKit::NetscapePluginInstanceProxy::pluginHostDied): 9353 Call cleanup(). 9354 9355 (WebKit::NetscapePluginInstanceProxy::processRequestsAndWaitForReply): 9356 Call NetscapePluginHostProxy::processRequests. 9357 9358 * Plugins/Hosted/ProxyInstance.mm: 9359 (WebKit::ProxyInstance::invalidate): 9360 Add a null check for the host proxy. 9361 93622009-02-06 Dan Bernstein <mitz@apple.com> 9363 9364 - try to fix the Tiger build 9365 9366 * Misc/WebNSArrayExtras.h: 9367 93682009-02-06 Anders Carlsson <andersca@apple.com> 9369 9370 Reviewed by Dan Bernstein. 9371 9372 <rdar://problem/6563650> 9373 Add Netscape plug-in API to tell the browser not to load streams (some plug-ins handle network loading manually) 9374 9375 * Plugins/WebNetscapePluginView.mm: 9376 (-[WebNetscapePluginView loadStream]): 9377 (-[WebNetscapePluginView pluginView:receivedData:]): 9378 (-[WebNetscapePluginView _shouldCancelSrcStream]): 9379 93802009-02-05 Maciej Stachowiak <mjs@apple.com> and Brady Eidson <beidson@apple.com> 9381 9382 Reviewed by Dan Bernstein and Geoff Garen. 9383 9384 - WebKit code to track per-day and per-week visit counts in history 9385 9386 For now this data is only exposed via SPI for performance reasons. 9387 9388 * History/WebHistoryItem.mm: 9389 (-[WebHistoryItem initFromDictionaryRepresentation:]): Add parsing support 9390 for new data. 9391 (-[WebHistoryItem _recordInitialVisit]): Tell WebCore to record an initial visit. 9392 (-[WebHistoryItem dictionaryRepresentation]): Add saving support for new data. 9393 (-[WebHistoryItem _getDailyVisitCounts:]): SPI accessor. 9394 (-[WebHistoryItem _getWeeklyVisitCounts:]): SPI accessor. 9395 * History/WebHistoryItemInternal.h: Declare new methods. 9396 * History/WebHistoryItemPrivate.h: Ditto. 9397 9398 * History/WebHistory.mm: 9399 (-[WebHistoryPrivate visitedURL:withTitle:]): For the initial visit, use 9400 the new _recordInitialVisit method instead of setting visit count to 1. 9401 9402 * Misc/WebNSArrayExtras.h: 9403 * Misc/WebNSArrayExtras.m: 9404 (-[NSArray _webkit_numberAtIndex:]): Helper to retrieve an NSNumber or nil from an NSArray 9405 (-[NSArray _webkit_stringAtIndex:]): Helper to retrieve an NSString of nil from an NSArray 9406 94072009-02-05 Aaron Boodman <aa@chromium.org> 9408 9409 Reviewed by Dave Hyatt. 9410 9411 https://bugs.webkit.org/show_bug.cgi?id=23708 9412 Adds documentElementAvailable() callback to FrameLoaderClient. 9413 9414 * WebCoreSupport/WebFrameLoaderClient.h: 9415 Stub out documentElementAvailable(). 9416 * WebCoreSupport/WebFrameLoaderClient.mm: 9417 Ditto. 9418 94192009-02-05 Dan Bernstein <mitz@apple.com> 9420 9421 - build fix 9422 9423 * WebView/WebScriptDebugger.mm: 9424 (WebScriptDebugger::initGlobalCallFrame): 9425 94262009-02-05 Beth Dakin <bdakin@apple.com> 9427 9428 Reviewed by John Sullivan and Brady Eidson. 9429 9430 Fix for <rdar://problem/6557595> REGRESSION: In Mail, selecting a 9431 mail note message doesn't display it in Mail's preview pane 9432 9433 This was failing because revision 36962 removed a version of 9434 setVerticalScrollingMode that mail calls. This patch simply adds 9435 that method back. 9436 9437 * WebView/WebDynamicScrollBarsView.m: 9438 (-[WebDynamicScrollBarsView setVerticalScrollingMode:]): 9439 94402009-02-04 Anders Carlsson <andersca@apple.com> 9441 9442 Build fix fix. 9443 9444 * WebView/WebScriptDebugger.mm: 9445 (WebScriptDebugger::initGlobalCallFrame): 9446 94472009-02-04 Anders Carlsson <andersca@apple.com> 9448 9449 Reviewed by Sam Weinig. 9450 9451 Change PCHasProperty, PCHasMethod and PCGetProperty into simpleroutines. 9452 9453 Rename PHEvaluateReply to PHBooleanAndDataReply and add PHBooleanReply. 9454 9455 * Plugins/Hosted/NetscapePluginHostProxy.mm: 9456 (WKPCEvaluate): 9457 (WKPCInvoke): 9458 (WKPCGetProperty): 9459 (WKPCHasProperty): 9460 (WKPCHasMethod): 9461 * Plugins/Hosted/WebKitPluginClient.defs: 9462 * Plugins/Hosted/WebKitPluginHost.defs: 9463 94642009-02-04 Anders Carlsson <andersca@apple.com> 9465 9466 Reviewed by Mark Rowe. 9467 9468 Fix 64-bit build. 9469 9470 * WebView/WebScriptDebugger.mm: 9471 (WebScriptDebugger::initGlobalCallFrame): 9472 94732009-02-04 Geoffrey Garen <ggaren@apple.com> 9474 9475 Reviewed by Mark Rowe. 9476 9477 Part I of <rdar://problem/6552272>. 9478 9479 Clear the redirectURLs entry when first visiting a site, so sites that 9480 only redirect you the first time you visit them can later learn that 9481 they don't redirect. 9482 9483 * History/WebHistory.mm: 9484 (-[WebHistory _visitedURL:withTitle:method:wasFailure:serverRedirectURL:isClientRedirect:]): 9485 94862009-02-04 Timothy Hatcher <timothy@apple.com> 9487 9488 Change the WebSourceId typedef from int to intptr_t now that <rdar://problem/6263297> is fixed. 9489 9490 <rdar://problem/6263293> WebScriptDebugDelegate should use intptr_t for sourceId, not int 9491 9492 Reviewed by Oliver Hunt. 9493 9494 * WebView/WebScriptDebugDelegate.h: 9495 94962009-02-04 Timothy Hatcher <timothy@apple.com> 9497 9498 Switched over from using the WebSafeForwarder for the Script Debug 9499 delegate and added high performance CallScriptDebugDelegate functions. 9500 9501 <rdar://problem/6508457> Launching widget in Dashcode debugger is 9502 super-slow due forwardInvocation: calling debug delegate 9503 9504 Reviewed by Oliver Hunt. 9505 9506 * DefaultDelegates/WebDefaultScriptDebugDelegate.h: Removed. 9507 * DefaultDelegates/WebDefaultScriptDebugDelegate.m: Removed. 9508 * WebView/WebScriptDebugger.mm: 9509 (WebScriptDebugger::initGlobalCallFrame): Use CallScriptDebugDelegate. 9510 (WebScriptDebugger::sourceParsed): Ditto. 9511 (WebScriptDebugger::callEvent): Ditto. 9512 (WebScriptDebugger::atStatement): Ditto. 9513 (WebScriptDebugger::returnEvent): Ditto. 9514 (WebScriptDebugger::exception): Ditto. 9515 * WebView/WebView.mm: 9516 (-[WebViewPrivate dealloc]): Removed scriptDebugDelegateForwarder. 9517 (-[WebView _cacheScriptDebugDelegateImplementations]): Added. Gets the 9518 method implementations for the script debug delegate. Also caches what 9519 didParseSource method to use. 9520 (WebViewGetScriptDebugDelegateImplementations): Added. Returns the 9521 WebScriptDebugDelegateImplementations structure. 9522 (-[WebView setScriptDebugDelegate:]): Call _cacheScriptDebugDelegateImplementations. 9523 (CallDelegate): Added more overloaded versions that take different arguments. 9524 (CallScriptDebugDelegate): Added overloaded versions that take different arguments. 9525 * WebView/WebViewInternal.h: 9526 95272009-02-03 Simon Fraser <simon.fraser@apple.com> 9528 9529 Reviewed by Dave Hyatt 9530 9531 https://bugs.webkit.org/show_bug.cgi?id=23365 9532 9533 Hook up accelerated compositing layers the native 9534 view system on Mac. 9535 9536 * WebCoreSupport/WebChromeClient.h: 9537 * WebCoreSupport/WebChromeClient.mm: 9538 (WebChromeClient::attachRootGraphicsLayer): 9539 (WebChromeClient::setNeedsOneShotDrawingSynchronization): 9540 New methods to hook up the root GraphicsLayer to the native 9541 view system, and to synchronize layer changes with view-based 9542 drawing when layers come and go. 9543 9544 * WebView/WebHTMLView.mm: 9545 (-[WebHTMLViewPrivate clear]): 9546 Clear the pointer to layerHostingView. 9547 9548 (-[WebHTMLView _setAsideSubviews]): 9549 (-[WebHTMLView willRemoveSubview:]): 9550 Keep the special layer-hosting view in the subviews even 9551 when the rest of the subviews are ripped out for 9552 painting. 9553 9554 (-[WebHTMLView _isUsingAcceleratedCompositing]): 9555 New utility method for DumpRenderTree to know if we're 9556 hosting layers. 9557 9558 (-[WebHTMLView drawRect:]): 9559 Call -disableScreenUpdatesUntilFlush if we have to 9560 synchronize layer changes with painting. 9561 9562 (-[WebHTMLView attachRootLayer:]): 9563 (-[WebHTMLView detachRootLayer]): 9564 Attach and detach the root GraphicsLayer. 9565 9566 * WebView/WebViewInternal.h: 9567 * WebView/WebHTMLViewInternal.h: 9568 * WebView/WebHTMLViewPrivate.h: 9569 New method declarations. 9570 9571 * WebView/WebView.mm: 9572 (-[WebView _needsOneShotDrawingSynchronization]): 9573 (-[WebView _setNeedsOneShotDrawingSynchronization:]): 9574 Set the flag to say if we need to synchronize layer 9575 changes and painting on the next -drawRect: call. 9576 9577 (-[WebView viewWillMoveToWindow:]): 9578 (-[WebView viewDidMoveToWindow]): 9579 Call new notifications that the view was added to or removed from 9580 the window, which are required by the layer hosting mechanism. 9581 95822009-02-02 Geoffrey Garen <ggaren@apple.com> 9583 9584 Build fix. 9585 9586 * Plugins/WebPluginController.mm: 9587 (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]): 9588 95892009-02-02 Geoffrey Garen <ggaren@apple.com> 9590 9591 Reviewed by Sam Weinig. 9592 9593 Track redirects in global history. 9594 9595 * History/WebHistory.mm: 9596 (-[WebHistoryPrivate dealloc]): 9597 (-[WebHistoryPrivate lastVisitedEntry]): 9598 (-[WebHistoryPrivate setLastVisitedEntry:]): Remember the last global history 9599 entry in case we're asked to add redirect information to it later. 9600 9601 (-[WebHistory _visitedURL:withTitle:method:wasFailure:serverRedirectURL:isClientRedirect:]): 9602 (-[WebHistory _visitedURLForRedirectWithoutHistoryItem:]): Record redirect 9603 information in global history. 9604 9605 * History/WebHistoryInternal.h: 9606 * WebCoreSupport/WebFrameLoaderClient.h: See above and below. 9607 9608 * WebCoreSupport/WebFrameLoaderClient.mm: 9609 (WebFrameLoaderClient::updateGlobalHistory): 9610 (WebFrameLoaderClient::updateGlobalHistoryForRedirectWithoutHistoryItem): Record redirect 9611 information in global history. 9612 9613 * WebView/WebFrame.mm: 9614 (-[WebFrame loadRequest:]): 9615 (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): 9616 * WebView/WebFramePrivate.h: Updated for rename and extra parameter. 9617 96182009-02-02 Anders Carlsson <andersca@apple.com> 9619 9620 Reviewed by Dan Bernstein. 9621 9622 Work around a limitation in MIG where two functions can't have the same name even if they're 9623 not in the same subsystem. 9624 9625 * Plugins/Hosted/NetscapePluginHostProxy.mm: 9626 (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): 9627 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 9628 (WebKit::NetscapePluginInstanceProxy::processRequestsAndWaitForReply): 9629 * Plugins/Hosted/WebKitPluginClient.defs: 9630 * Plugins/Hosted/WebKitPluginHost.defs: 9631 96322009-02-02 Anders Carlsson <andersca@apple.com> 9633 9634 Reviewed by Sam Weinig. 9635 9636 Implement WKPCGetPluginElementObject. 9637 9638 * Plugins/Hosted/NetscapePluginHostProxy.mm: 9639 (WKPCGetPluginElementNPObject): 9640 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 9641 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 9642 (WebKit::NetscapePluginInstanceProxy::getPluginElementNPObject): 9643 * Plugins/Hosted/WebKitPluginClient.defs: 9644 * Plugins/WebBaseNetscapePluginView.h: 9645 * Plugins/WebBaseNetscapePluginView.mm: 9646 (-[WebBaseNetscapePluginView WebCore::]): 9647 96482009-02-02 Anders Carlsson <andersca@apple.com> 9649 9650 Build fix. 9651 9652 * WebView/WebHTMLView.mm: 9653 96542009-02-02 Anders Carlsson <andersca@apple.com> 9655 9656 Reviewed by Dan Bernstein. 9657 9658 Make WebBaseNetscapePluginView hold a reference to a HTMLPlugInElement instead of a DOMElement. 9659 9660 * Plugins/Hosted/WebHostedNetscapePluginView.h: 9661 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 9662 (-[WebHostedNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:WebCore::]): 9663 * Plugins/WebBaseNetscapePluginView.h: 9664 * Plugins/WebBaseNetscapePluginView.mm: 9665 (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:WebCore::]): 9666 (-[WebBaseNetscapePluginView _windowClipRect]): 9667 (-[WebBaseNetscapePluginView visibleRect]): 9668 (-[WebBaseNetscapePluginView dataSource]): 9669 * Plugins/WebKitPluginContainerView.h: Removed. 9670 * Plugins/WebKitPluginContainerView.mm: Removed. 9671 * Plugins/WebNetscapePluginView.h: 9672 * Plugins/WebNetscapePluginView.mm: 9673 (-[WebNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:WebCore::]): 9674 (-[WebNetscapePluginView getVariable:value:]): 9675 * WebCoreSupport/WebFrameLoaderClient.mm: 9676 (WebFrameLoaderClient::createPlugin): 9677 96782009-02-02 Anders Carlsson <andersca@apple.com> 9679 9680 Reviewed by Dan Bernstein. 9681 9682 Update for changes to WebCore. 9683 9684 * WebCoreSupport/WebFrameLoaderClient.h: 9685 * WebCoreSupport/WebFrameLoaderClient.mm: 9686 (WebFrameLoaderClient::createPlugin): 9687 96882009-02-02 Anders Carlsson <andersca@apple.com> 9689 9690 Reviewed by Oliver Hunt. 9691 9692 When a new Web View was not created, report back to the plug-in host. 9693 9694 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 9695 (WebKit::NetscapePluginInstanceProxy::performRequest): 9696 * Plugins/Hosted/WebKitPluginHost.defs: 9697 96982009-02-02 Anders Carlsson <andersca@apple.com> 9699 9700 Reviewed by Kevin Decker. 9701 9702 Draw the regular missing plug-in icon instead of a red rect when a plug-in has crashed. 9703 9704 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 9705 (-[WebHostedNetscapePluginView drawRect:]): 9706 97072009-02-02 Holger Hans Peter Freyther <zecke@selfish.org> 9708 9709 Reviewed by Darin Adler. 9710 9711 Move Frame::forceLayout, Frame::adjustPageHeight and Frame::forceLayoutWithPageWidthRange to FrameView 9712 9713 https://bugs.webkit.org/show_bug.cgi?id=23428 9714 9715 FrameView::forceLayout could be killed but the comment might 9716 contain a value over the the plain FrameView::layout... 9717 9718 Adjust the WebCore/WebKit consumers of these methods. 9719 9720 * WebView/WebFrame.mm: 9721 (-[WebFrame _computePageRectsWithPrintWidthScaleFactor:printHeight:]): 9722 * WebView/WebHTMLView.mm: 9723 (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): 9724 (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): 9725 97262009-01-31 John Sullivan <sullivan@apple.com> 9727 9728 https://bugs.webkit.org/show_bug.cgi?id=23665 9729 9730 Cleaned up code to add/remove NSNotification observers, to avoid performance hit 9731 of calling removeObserver with unspecified notifications, or calling removeObserver 9732 multiple times for the same notification. 9733 9734 Reviewed by Darin Adler 9735 9736 * WebView/WebHTMLView.mm: 9737 added observingMouseMovedNotifications, observingSuperviewNotifications, and 9738 observingWindowNotifications as BOOL ivars of _private object 9739 (-[WebHTMLView _removeMouseMovedObserverUnconditionally]): 9740 moved to file-internal section of file, added leading underscore, now bails out 9741 if we aren't observing the relevant notifications, now records that we are no longer 9742 observing the relevant notifications 9743 (-[WebHTMLView _removeSuperviewObservers]): 9744 ditto, also stores [NSNoticationCenter defaultCenter] in local var to avoid objc dispatch 9745 (-[WebHTMLView _removeWindowObservers]): 9746 ditto 9747 (-[WebHTMLView close]): 9748 replace general removeObserver: call with three specific calls for all the notifications 9749 that this class actually observes 9750 (-[WebHTMLView addMouseMovedObserver]): 9751 bail out if already observing relevant notifications, now records that we are observing 9752 the relevant notifications 9753 (-[WebHTMLView removeMouseMovedObserver]): 9754 updated for name change 9755 (-[WebHTMLView addSuperviewObservers]): 9756 bail out if already observing relevant notifications, now records that we are observing 9757 the relevant notifications; also stores [NSNoticationCenter defaultCenter] in local var 9758 to avoid objc dispatch 9759 (-[WebHTMLView addWindowObservers]): 9760 ditto 9761 (-[WebHTMLView viewWillMoveToSuperview:]): 9762 updated for name change 9763 (-[WebHTMLView viewWillMoveToWindow:]): 9764 updated for name changes 9765 97662009-01-31 Darin Adler <darin@apple.com> 9767 9768 Reviewed by Mark Rowe. 9769 9770 Fix code that assumes all command selectors end in colons. 9771 rdar://problem/6545874 9772 9773 * WebView/WebHTMLView.mm: 9774 (commandNameForSelector): Don't assert, just return a null string, when 9775 the selector doesn't end in a colon. 9776 97772009-01-30 Adam Barth <abarth@webkit.org> 9778 9779 Reviewed by Sam Weinig. 9780 9781 Add a pref to disable web security. 9782 9783 * WebView/WebPreferenceKeysPrivate.h: 9784 * WebView/WebPreferencesPrivate.h: 9785 * WebView/WebPreferences.mm: 9786 (+[WebPreferences initialize]): 9787 (-[WebPreferences isWebSecurityEnabled]): 9788 (-[WebPreferences setWebSecurityEnabled:]): 9789 * WebView/WebView.mm: 9790 (-[WebView _preferencesChangedNotification:]): 9791 97922009-01-30 Holger Hans Peter Freyther <zecke@selfish.org> 9793 9794 Reviewed by Darin Adler. 9795 9796 Move Frame::sendResizeEvent and Frame::sendScrollEvent to EventHandler 9797 9798 Carry out the move and catch up in two call sites. 9799 9800 * WebView/WebHTMLView.mm: 9801 (-[WebHTMLView _frameOrBoundsChanged]): 9802 98032009-01-30 Holger Hans Peter Freyther <zecke@selfish.org> 9804 9805 Reviewed by Darin Adler. 9806 9807 isFrameSet was moved from Frame to Document. Update the 9808 WebKit usage. 9809 9810 * WebView/WebFrame.mm: 9811 (-[WebFrame _isFrameSet]): 9812 * WebView/WebHTMLView.mm: 9813 (-[WebHTMLView knowsPageRange:]): 9814 98152009-01-30 Geoffrey Garen <ggaren@apple.com> 9816 9817 Build fix. 9818 9819 * WebView/WebFramePrivate.h: 9820 98212009-01-30 Geoffrey Garen <ggaren@apple.com> 9822 9823 Reviewed by Sam Weinig. 9824 9825 Split "lockHistory" into "lockHistory" and "lockBackForwardList" in 9826 preparation for setting them differently during a redirect. 9827 9828 * WebView/WebPDFView.mm: 9829 (-[WebPDFView PDFViewWillClickOnLink:withURL:]): 9830 98312009-01-30 Anders Carlsson <andersca@apple.com> 9832 9833 Reviewed by Sam Weinig. 9834 9835 Fix <rdar://problem/6544048> 9836 9837 Have NetscapePluginInstanceProxy keep track of all the ProxyInstance objects associated. 9838 9839 When the plug-in instance is destroyed, invalidate all proxy instances. 9840 9841 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 9842 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 9843 (WebKit::NetscapePluginInstanceProxy::destroy): 9844 (WebKit::NetscapePluginInstanceProxy::addInstance): 9845 (WebKit::NetscapePluginInstanceProxy::removeInstance): 9846 * Plugins/Hosted/ProxyInstance.h: 9847 * Plugins/Hosted/ProxyInstance.mm: 9848 (WebKit::ProxyInstance::ProxyInstance): 9849 (WebKit::ProxyInstance::~ProxyInstance): 9850 (WebKit::ProxyInstance::invalidate): 9851 98522009-01-30 Anders Carlsson <andersca@apple.com> 9853 9854 Reviewed by Sam Weinig. 9855 9856 Fix <rdar://problem/6490778>. 9857 9858 Change the NPRuntime related functions to use IdentifierRep directly, and make sure to always 9859 validate IdentifierReps before dereferencing them. 9860 9861 * Plugins/Hosted/NetscapePluginHostProxy.mm: 9862 (WKPCEvaluate): 9863 (WKPCGetStringIdentifier): 9864 (WKPCGetIntIdentifier): 9865 (identifierFromIdentifierRep): 9866 (WKPCInvoke): 9867 (WKPCGetProperty): 9868 (WKPCSetProperty): 9869 (WKPCRemoveProperty): 9870 (WKPCHasProperty): 9871 (WKPCHasMethod): 9872 (WKPCIdentifierInfo): 9873 98742009-01-30 Brady Eidson <beidson@apple.com> 9875 9876 Reviewed by Sam Weinig 9877 9878 Remove FrameLoaderClient code that is now handled by FrameLoader itself 9879 9880 * WebCoreSupport/WebFrameLoaderClient.mm: 9881 (WebFrameLoaderClient::frameLoadCompleted): 9882 98832009-01-29 Stephanie Lewis <slewis@apple.com> 9884 9885 RS by Oliver Hunt. 9886 9887 Update the order files. 9888 9889 * WebKit.order: 9890 98912009-01-29 Sam Weinig <sam@webkit.org> 9892 9893 Reviewed by Anders Carlsson. 9894 9895 Second step in tracking the urls a HistoryItem was redirected through 9896 Add SPI to access the array of redirect urls associated with a HistoryItem. 9897 9898 * History/WebHistoryItem.mm: 9899 (-[WebHistoryItem dictionaryRepresentation]): 9900 (-[WebHistoryItem _redirectURLs]): 9901 * History/WebHistoryItemPrivate.h: 9902 99032009-01-29 Anders Carlsson <andersca@apple.com> 9904 9905 Reviewed by Dan Bernstein. 9906 9907 Always activate the plug-in host process if we're in "modal mode" and are being told to activate. 9908 9909 * Plugins/Hosted/NetscapePluginHostProxy.h: 9910 * Plugins/Hosted/NetscapePluginHostProxy.mm: 9911 (WebKit::NetscapePluginHostProxy::pluginHostDied): 9912 Call endModal here. 9913 9914 (WebKit::NetscapePluginHostProxy::applicationDidBecomeActive): 9915 If we're modal, we should always bring the plug-in host process to the front. 9916 9917 (WebKit::NetscapePluginHostProxy::beginModal): 9918 Add an observer for the NSApplicationWillBecomeActiveNotification callback. 9919 9920 (WebKit::NetscapePluginHostProxy::endModal): 9921 Remove the observer. 9922 99232009-01-29 Sam Weinig <sam@webkit.org> 9924 9925 Reviewed by Mark Rowe. 9926 9927 First step in tracking the urls a HistoryItem was redirected through. 9928 9929 * History/WebHistoryItem.mm: 9930 (-[WebHistoryItem initFromDictionaryRepresentation:]): 9931 (-[WebHistoryItem dictionaryRepresentation]): 9932 * Misc/WebNSDictionaryExtras.h: 9933 * Misc/WebNSDictionaryExtras.m: 9934 (-[NSDictionary _webkit_arrayForKey:]): Add helper. 9935 99362009-01-29 Anders Carlsson <andersca@apple.com> 9937 9938 Reviewed by Sam Weinig. 9939 9940 Pass the PSN of the client to the host, and get the PSN of the host back when checking in. 9941 9942 * Plugins/Hosted/NetscapePluginHostManager.h: 9943 * Plugins/Hosted/NetscapePluginHostManager.mm: 9944 (WebKit::NetscapePluginHostManager::hostForPackage): 9945 Get the current PSN and pass it to spawnPluginHost. 9946 9947 (WebKit::NetscapePluginHostManager::spawnPluginHost): 9948 Pass the PSN to the "check in" function. 9949 9950 * Plugins/Hosted/NetscapePluginHostProxy.h: 9951 * Plugins/Hosted/NetscapePluginHostProxy.mm: 9952 (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): 9953 9954 (WebKit::NetscapePluginHostProxy::pluginHostDied): 9955 Fix a bug noticed by Julien Chaffraix. Call endModal if necessary. 9956 9957 (WebKit::NetscapePluginHostProxy::beginModal): 9958 (WebKit::NetscapePluginHostProxy::endModal): 9959 (WebKit::NetscapePluginHostProxy::setModal): 9960 Split out the code that does all of the work into beginModal and endModal methods. 9961 9962 * Plugins/Hosted/WebKitPluginHost.defs: 9963 * Plugins/WebNetscapePluginView.mm: 9964 (-[WebNetscapePluginView loadStream]): 9965 99662009-01-29 David Kilzer <ddkilzer@apple.com> 9967 9968 Remove semi-colons from the end of ObjC method implementations 9969 9970 Rubber-stamped by Adam Roben. 9971 9972 $ find WebKit -name \*.m -o -name \*.mm -exec perl -e 'undef $/; $s = <>; while ($s =~ m/[\n\r][-+].*;[\s\r\n]+\{/g) { print "$ARGV: $&\n"; }' {} \; 9973 9974 * DefaultDelegates/WebDefaultUIDelegate.m: 9975 (-[WebDefaultUIDelegate webView:setResizable:]): 9976 (-[WebDefaultUIDelegate webView:dragDestinationActionMaskForDraggingInfo:]): 9977 (-[WebDefaultUIDelegate webView:dragSourceActionMaskForPoint:]): 9978 (-[WebDefaultUIDelegate webView:willPerformDragSourceAction:fromPoint:withPasteboard:]): 9979 * History/WebBackForwardList.mm: 9980 (-[WebBackForwardList addItem:]): 9981 (-[WebBackForwardList backListWithLimit:]): 9982 (-[WebBackForwardList forwardListWithLimit:]): 9983 * History/WebHistoryItem.mm: 9984 (-[WebHistoryItem alternateTitle]): 9985 (-[WebHistoryItem setViewState:]): 9986 * Misc/WebCoreStatistics.mm: 9987 (+[WebCoreStatistics garbageCollectJavaScriptObjectsOnAlternateThreadForDebugging:]): 9988 * Misc/WebKitNSStringExtras.m: 9989 (-[NSString _web_drawAtPoint:font:textColor:]): 9990 * Plugins/WebNetscapePluginView.mm: 9991 (-[WebNetscapePluginView setAttributeKeys:andValues:]): 9992 * WebCoreSupport/WebEditorClient.mm: 9993 (-[WebEditCommand command]): 9994 * WebView/WebFrame.mm: 9995 (-[WebFrame _getVisibleRect:]): 9996 * WebView/WebHTMLRepresentation.mm: 9997 (-[WebHTMLRepresentation _redirectDataToManualLoader:forPluginView:]): 9998 * WebView/WebHTMLView.mm: 9999 (-[WebHTMLView elementAtPoint:allowShadowContent:]): 10000 * WebView/WebPreferences.mm: 10001 (-[WebPreferences setAllowsAnimatedImages:]): 10002 (-[WebPreferences setAutosaves:]): 10003 (-[WebPreferences PDFDisplayMode]): 10004 * WebView/WebView.mm: 10005 (+[WebView _viewClass:andRepresentationClass:forMIMEType:]): 10006 (-[WebView _viewClass:andRepresentationClass:forMIMEType:]): 10007 (+[WebView _unregisterViewClassAndRepresentationClassForMIMEType:]): 10008 (+[WebView _registerViewClass:representationClass:forURLScheme:]): 10009 (-[WebView _shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:]): 10010 (-[WebView _insertNewlineInQuotedContent]): 10011 100122009-01-28 Geoffrey Garen <ggaren@apple.com> 10013 10014 Reviewed by Sam Weinig. 10015 10016 Updated for WebCore rename. 10017 10018 * WebView/WebView.mm: 10019 (-[WebView setCustomTextEncodingName:]): 10020 100212009-01-28 David Kilzer <ddkilzer@apple.com> 10022 10023 Add missing declaration for -[NSURL(WebNSURLExtras) _webkit_isFileURL] 10024 10025 Reviewed by Dan Bernstein. 10026 10027 * Misc/WebNSURLExtras.h: 10028 (-[NSURL(WebNSURLExtras) _webkit_isFileURL]): Added missing 10029 declaration after the implementation was added in r9258. 10030 100312009-01-28 Sam Weinig <sam@webkit.org> 10032 10033 Reviewed by Geoff Garen. 10034 10035 Fix for <rdar://problem/6129678> 10036 REGRESSION (Safari 3-4): Local variable not accessible from Dashcode console or variables view 10037 10038 * WebView/WebScriptDebugDelegate.mm: 10039 (-[WebScriptCallFrame scopeChain]): Wrap JSActivations in DebuggerActivations. 10040 100412009-01-27 Anders Carlsson <andersca@apple.com> 10042 10043 Reviewed by Oliver Hunt. 10044 10045 Fix two bugs with Core Animation based plug-ins. 10046 10047 1. The plug-in view was marked as opaque even though it's not. 10048 (This would leave garbage in the plug-in view). 10049 2. The plug-in layer needs to have autoresizing turned on. 10050 10051 * Plugins/WebNetscapePluginView.mm: 10052 (-[WebNetscapePluginView setLayer:]): 10053 100542009-01-27 Brady Eidson <beidson@apple.com> 10055 10056 Reviewed by Dan Bernstein 10057 10058 Rework FrameLoaderClient to work on a CachedFrame basis instead of CachedPage 10059 10060 * History/WebHistoryItem.mm: 10061 10062 * WebCoreSupport/WebFrameLoaderClient.h: 10063 * WebCoreSupport/WebFrameLoaderClient.mm: 10064 (WebFrameLoaderClient::savePlatformDataToCachedFrame): 10065 (WebFrameLoaderClient::transitionToCommittedFromCachedFrame): 10066 * WebKit.order: 10067 100682009-01-26 Anders Carlsson <andersca@apple.com> 10069 10070 Reviewed by Dan Bernstein. 10071 10072 Add the ability for plug-ins to make WebKit operate in "modal mode" 10073 10074 * Plugins/Hosted/NetscapePluginHostProxy.h: 10075 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10076 (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): 10077 (WebKit::NetscapePluginHostProxy::pluginHostDied): 10078 If the plug-in crashes while we're modal, make sure to leave the modal mode. 10079 10080 (WebKit::NetscapePluginHostProxy::setModal): 10081 (WKPCSetModal): 10082 * Plugins/Hosted/WebKitPluginClient.defs: 10083 100842009-01-26 John Sullivan <sullivan@apple.com> 10085 10086 fixed <rdar://problem/6530053> REGRESSION (Leopard): Shift-tab in http authentication window gets 10087 stuck in the Name field rather than cycling around 10088 10089 Reviewed by Dan Bernstein 10090 10091 * Panels/English.lproj/WebAuthenticationPanel.nib/designable.nib: 10092 * Panels/English.lproj/WebAuthenticationPanel.nib/keyedobjects.nib: 10093 The two static text fields and the last button all had their "next key view" outlets set to the 10094 name field, which caused shift-tab from the name field to do the wrong thing. Fixed by making each 10095 selectable view have exactly one "next key view" set to it. 10096 100972009-01-26 Anders Carlsson <andersca@apple.com> 10098 10099 Reviewed by Sam Weinig. 10100 10101 Add the ability for a plug-in to show or hide the menu bar. 10102 10103 * Plugins/Hosted/NetscapePluginHostProxy.h: 10104 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10105 (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): 10106 (WebKit::NetscapePluginHostProxy::pluginHostDied): 10107 (WebKit::NetscapePluginHostProxy::setMenuBarVisible): 10108 (WKPCSetMenuBarVisible): 10109 * Plugins/Hosted/WebKitPluginClient.defs: 10110 101112009-01-26 Cameron Zwarich <cwzwarich@uwaterloo.ca> 10112 10113 Reviewed by Gavin Barraclough. 10114 10115 Bug 23552: Dashcode evaluator no longer works after making ExecStates actual call frames 10116 <https://bugs.webkit.org/show_bug.cgi?id=23552> 10117 <rdar://problem/6398839> 10118 10119 Dashcode will crash when using the evaluator because it saves a global call 10120 frame, even after global code has finished executing, and then uses this as 10121 a launching pad to execute new JS in the evaluator. The fix is to detect 10122 when Dashcode is attempting to do this and execute code from a global call 10123 frame instead. 10124 10125 * ForwardingHeaders/runtime/Protect.h: Added. 10126 * WebView/WebScriptDebugDelegate.mm: 10127 (-[WebScriptCallFrame _initWithGlobalObject:debugger:caller:debuggerCallFrame:]): 10128 Added debugger, a WebScriptDebugger* argument. 10129 (-[WebScriptCallFrame evaluateWebScript:]): Detect when Dashcode is using 10130 a stale WebScriptCallFrame to execute new JS and evaluate it starting from 10131 the global object's global call frame instead. 10132 * WebView/WebScriptDebugger.h: 10133 (WebScriptDebugger::globalObject): Added. 10134 (WebScriptDebugger::globalCallFrame): Added. 10135 * WebView/WebScriptDebugger.mm: 10136 (WebScriptDebugger::WebScriptDebugger): Initialize m_globalObject. 10137 (WebScriptDebugger::initGlobalCallFrame): Created as a clone of callEvent 10138 so that the global call frame can be saved immediately after being created. 10139 (WebScriptDebugger::callEvent): Pass 'this' as the debugger argument of 10140 WebScriptCallFrame's _initWithGlobalObject method. 10141 101422009-01-26 Anders Carlsson <andersca@apple.com> 10143 10144 Reviewed by Oliver Hunt. 10145 10146 Make WKPCInvoke a simpleroutine. 10147 10148 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10149 (WKPCInvoke): 10150 * Plugins/Hosted/WebKitPluginClient.defs: 10151 101522009-01-26 Anders Carlsson <andersca@apple.com> 10153 10154 Reviewed by Sam Weinig. 10155 10156 Implement using plug-in objects as constructors, and setting and getting properties from a plug-in object. 10157 10158 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10159 (WKPCBooleanAndDataReply): 10160 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 10161 (WebKit::NetscapePluginInstanceProxy::Reply::): 10162 (WebKit::NetscapePluginInstanceProxy::BooleanAndDataReply::BooleanAndDataReply): 10163 Rename NPObjectInvokeReply to BooleanAndDataReply. 10164 10165 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 10166 (WebKit::NetscapePluginInstanceProxy::addValueToArray): 10167 Fix a cut and paste error. 10168 10169 (WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray): 10170 Handle NPObjects. 10171 10172 * Plugins/Hosted/ProxyInstance.h: 10173 * Plugins/Hosted/ProxyInstance.mm: 10174 (WebKit::ProxyField::valueFromInstance): 10175 (WebKit::ProxyField::setValueToInstance): 10176 Call the ProxyInstance method. 10177 10178 (WebKit::ProxyInstance::~ProxyInstance): 10179 Release the NPObject. 10180 10181 (WebKit::ProxyInstance::supportsConstruct): 10182 Ask the plug-in host if an instance supports construct. 10183 10184 (WebKit::ProxyInstance::fieldValue): 10185 (WebKit::ProxyInstance::setFieldValue): 10186 Call the plug-in host methods. 10187 10188 * Plugins/Hosted/WebKitPluginHostTypes.h: 10189 Rename ObjectValueType to JSObjectValueType, and add NPObjectValueType. 10190 101912009-01-26 Mark Rowe <mrowe@apple.com> 10192 10193 Fix the build. 10194 10195 Remove -Wformat=2 from the warning flags as newer versions of GCC emit 10196 warnings about non-literal format strings for uses of our UI_STRING macro. 10197 10198 * Configurations/Base.xcconfig: 10199 102002009-01-26 Mark Rowe <mrowe@apple.com> 10201 10202 Rubber-stamped by Sam Weinig. 10203 10204 Clean up after r40240. 10205 10206 * Configurations/Base.xcconfig: Don't dead code strip in debug builds for now as it leads to link errors. 10207 * Plugins/Hosted/HostedNetscapePluginStream.mm: Revert change that is no longer needed now that WebKitPluginHost.defs 10208 is back in the build. 10209 102102009-01-25 Darin Adler <darin@apple.com> 10211 10212 * Plugins/Hosted/HostedNetscapePluginStream.mm: Added a missing extern "C". 10213 102142009-01-25 Darin Adler <darin@apple.com> 10215 10216 Discussed with Mark Rowe; not sure he reviewed it. 10217 10218 * Configurations/Base.xcconfig: Add all the same warnings as in WebCore except for 10219 -Wcast-qual and -Wunused-parameter, which both need to be off at least for now. 10220 102212009-01-25 Mark Rowe <mrowe@apple.com> 10222 10223 Rubber-stamped by Dan Bernstein. 10224 10225 Improve the consistency of settings in our .xcconfig files. 10226 10227 * Configurations/Base.xcconfig: Only dead code strip the normal variant. 10228 Handle all cases in GCC_GENERATE_DEBUGGING_SYMBOLS. 10229 102302009-01-25 Darin Adler <darin@apple.com> 10231 10232 Reviewed by Sam Weinig. 10233 10234 Bug 23522: use checked casts for render tree 10235 https://bugs.webkit.org/show_bug.cgi?id=23522 10236 10237 Step one: RenderText. 10238 10239 * WebView/WebRenderNode.mm: 10240 (copyRenderNode): Use toRenderText. 10241 102422009-01-23 Brady Eidson <beidson@apple.com> 10243 10244 Rubberstamped by Darin Adler 10245 10246 Rename CachedPagePlatformData to CachedFramePlatformData to more accurately reflect its true role. 10247 10248 * WebCoreSupport/WebCachedFramePlatformData.h: Copied from WebKit/mac/WebCoreSupport/WebCachedPagePlatformData.h. 10249 (WebCachedFramePlatformData::WebCachedFramePlatformData): 10250 * WebCoreSupport/WebCachedPagePlatformData.h: Removed. 10251 10252 * WebCoreSupport/WebFrameLoaderClient.mm: 10253 (WebFrameLoaderClient::savePlatformDataToCachedPage): 10254 (WebFrameLoaderClient::transitionToCommittedFromCachedPage): 10255 10256 * WebKit.order: 10257 102582009-01-23 Adele Peterson <adele@apple.com> 10259 10260 Build fix. 10261 10262 Use new linesBoundingBox method instead of 10263 boundingBoxWidth and boundingBoxHeight for RenderText objects. 10264 10265 * WebView/WebRenderNode.mm: (copyRenderNode): 10266 102672009-01-23 Anders Carlsson <andersca@apple.com> 10268 10269 Fix 64-bit build. 10270 10271 * Plugins/Hosted/ProxyInstance.mm: 10272 (WebKit::proxyClass): 10273 102742009-01-23 Anders Carlsson <andersca@apple.com> 10275 10276 Fix GCC 4.0 build. 10277 10278 * Configurations/Base.xcconfig: 10279 102802009-01-23 Anders Carlsson <andersca@apple.com> 10281 10282 Reviewed by Sam Weinig. 10283 10284 Turn on -Wmissing-prototypes and fix the resulting warnings. 10285 10286 * Configurations/Base.xcconfig: 10287 * History/WebHistory.mm: 10288 (timeIntervalForBeginningOfDay): 10289 * History/WebHistoryItem.mm: 10290 (historyItemWrappers): 10291 * Misc/WebNSPasteboardExtras.mm: 10292 (imageFromElement): 10293 * WebView/WebFrame.mm: 10294 * WebView/WebScriptDebugger.mm: 10295 (toNSString): 10296 102972009-01-22 Mark Rowe <mrowe@apple.com> 10298 10299 Rubber-stamped by Anders Carlsson. 10300 10301 Disable GCC_WARN_ABOUT_MISSING_PROTOTYPES temporarily. 10302 10303 Current versions of Xcode only respect it for C and Objective-C files, 10304 and our code doesn't currently compile if it is applied to C++ and 10305 Objective-C++ files. 10306 10307 * Configurations/Base.xcconfig: 10308 103092009-01-22 Anders Carlsson <andersca@apple.com> 10310 10311 Reviewed by Sam Weinig. 10312 10313 Add support for Invoke and InvokeDefault. Clean up code. 10314 10315 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10316 (WKPCBooleanReply): 10317 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 10318 (WebKit::NetscapePluginInstanceProxy::Reply::): 10319 (WebKit::NetscapePluginInstanceProxy::BooleanReply::BooleanReply): 10320 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 10321 (WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray): 10322 * Plugins/Hosted/ProxyInstance.h: 10323 * Plugins/Hosted/ProxyInstance.mm: 10324 (WebKit::ProxyInstance::invoke): 10325 (WebKit::ProxyInstance::invokeMethod): 10326 (WebKit::ProxyInstance::supportsInvokeDefaultMethod): 10327 (WebKit::ProxyInstance::invokeDefaultMethod): 10328 (WebKit::ProxyInstance::methodsNamed): 10329 (WebKit::ProxyInstance::fieldNamed): 10330 * Plugins/Hosted/WebKitPluginClient.defs: 10331 * Plugins/Hosted/WebKitPluginHost.defs: 10332 * Plugins/Hosted/WebKitPluginHostTypes.h: 10333 103342009-01-22 Eric Roman <eroman@chromium.og> 10335 10336 Reviewed by Eric Seidel. 10337 10338 https://bugs.webkit.org/show_bug.cgi?id=20806 10339 Deprecate RSSFeedReferrer() and setRSSFeedReferrer(). 10340 10341 * History/WebHistoryItem.mm: 10342 (-[WebHistoryItem RSSFeedReferrer]): 10343 (-[WebHistoryItem setRSSFeedReferrer:]): 10344 103452009-01-22 Anders Carlsson <andersca@apple.com> 10346 10347 Reviewed by Kevin Decker. 10348 10349 Don't crash or hang when we fail to instantiate a plug-in. 10350 10351 * Plugins/Hosted/NetscapePluginHostManager.mm: 10352 (WebKit::NetscapePluginHostManager::instantiatePlugin): 10353 Return 0 on failure. 10354 10355 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 10356 (-[WebHostedNetscapePluginView JSC::Bindings::createPluginBindingsInstance:JSC::Bindings::]): 10357 Null check for the proxy member. 10358 103592009-01-21 David Hyatt <hyatt@apple.com> 10360 10361 Devirtualize width/height/x/y on RenderObject and move the methods to RenderBox. 10362 10363 Reviewed by Eric Seidel and Darin Adler 10364 10365 * WebView/WebRenderNode.mm: 10366 (copyRenderNode): 10367 103682009-01-21 Anders Carlsson <andersca@apple.com> 10369 10370 Reviewed by Sam Weinig. 10371 10372 More browser->plug-in scripting support. 10373 10374 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10375 (WKPCNPObjectHasPropertyReply): 10376 (WKPCNPObjectHasMethodReply): 10377 (WKPCNPObjectInvokeReply): 10378 MIG reply functions. 10379 10380 (WKPCIdentifierInfo): 10381 Return information about an identifier given its 64-bit value. 10382 10383 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 10384 Add new reply structs. 10385 10386 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 10387 (WebKit::NetscapePluginInstanceProxy::addValueToArray): 10388 Split out code that adds values to the arrays from marshalValue. 10389 10390 (WebKit::NetscapePluginInstanceProxy::marshalValue): 10391 Call addValueToArray. 10392 10393 (WebKit::NetscapePluginInstanceProxy::marshalValues): 10394 Marshal a list of values. 10395 10396 (WebKit::NetscapePluginInstanceProxy::createBindingsInstance): 10397 Actually create a proxy instance. 10398 10399 * Plugins/Hosted/ProxyInstance.h: 10400 * Plugins/Hosted/ProxyInstance.mm: 10401 (WebKit::ProxyClass::methodsNamed): 10402 (WebKit::ProxyClass::fieldNamed): 10403 Add a proxy ProxyClass class that just forwards everything to the ProxyInstance class. 10404 10405 (WebKit::proxyClass): 10406 Shared proxyClass getter. 10407 10408 (WebKit::ProxyField::ProxyField): 10409 (WebKit::ProxyField::valueFromInstance): 10410 (WebKit::ProxyField::setValueToInstance): 10411 Add a proxy ProxyField class that just forwards everything to the ProxyInstance class. 10412 10413 (WebKit::ProxyMethod::ProxyMethod): 10414 (WebKit::ProxyMethod::serverIdentifier): 10415 (WebKit::ProxyMethod::numParameters): 10416 Add a dummy ProxyMethod class. 10417 10418 (WebKit::ProxyInstance::invokeMethod): 10419 Call _WKPHNPObjectInvoke. 10420 10421 (WebKit::ProxyInstance::defaultValue): 10422 (WebKit::ProxyInstance::stringValue): 10423 (WebKit::ProxyInstance::numberValue): 10424 (WebKit::ProxyInstance::booleanValue): 10425 (WebKit::ProxyInstance::valueOf): 10426 Add dummy implementations (taken from CInstance). 10427 10428 (WebKit::ProxyInstance::methodsNamed): 10429 Call _WKPHNPObjectHasMethod to determine whether a method with the given name exists. 10430 10431 (WebKit::ProxyInstance::fieldNamed): 10432 Call _WKPHNPObjectHasProperty to determine whether a property with the given name exists. 10433 10434 * Plugins/Hosted/WebKitPluginClient.defs: 10435 * Plugins/Hosted/WebKitPluginHost.defs: 10436 Add new MIG definitions. 10437 104382009-01-21 Mark Rowe <mrowe@apple.com> 10439 10440 Reviewed by Tim Hatcher. 10441 10442 Clean up how we force invocations of API that happened on background threads over to the main thread. 10443 10444 This was previously accomplished in a somewhat ad-hoc manner using a mutable dictionary to pass arguments 10445 and return values back from the function. The new approach is to use a proxy object that forwards an 10446 NSInvocation over to the main thread and applies it to the target object, which leads to a much cleaner 10447 call site. 10448 10449 * Misc/WebNSObjectExtras.h: 10450 * Misc/WebNSObjectExtras.mm: 10451 (-[WebMainThreadInvoker initWithTarget:]): 10452 (-[WebMainThreadInvoker forwardInvocation:]): 10453 (-[WebMainThreadInvoker methodSignatureForSelector:]): 10454 (-[WebMainThreadInvoker handleException:]): 10455 (-[NSInvocation _webkit_invokeAndHandleException:]): Execute the invocation and forward any exception that was 10456 raised back to the WebMainThreadInvoker. 10457 (-[NSObject _webkit_invokeOnMainThread]): 10458 10459 The following methods are updated to use the proxy object to forward methods to the main thread: 10460 10461 * WebView/WebArchive.mm: 10462 (-[WebArchive initWithMainResource:subresources:subframeArchives:]): 10463 (-[WebArchive mainResource]): 10464 (-[WebArchive subresources]): 10465 (-[WebArchive subframeArchives]): 10466 * WebView/WebResource.mm: 10467 (-[WebResource data]): 10468 (-[WebResource URL]): 10469 (-[WebResource MIMEType]): 10470 (-[WebResource textEncodingName]): 10471 (-[WebResource frameName]): 10472 (-[WebResource _ignoreWhenUnarchiving]): 10473 (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]): 10474 (-[WebResource _initWithData:URL:response:]): 10475 (-[WebResource _suggestedFilename]): 10476 (-[WebResource _response]): 10477 (-[WebResource _stringValue]): 10478 * WebView/WebView.mm: 10479 (-[WebView initWithFrame:frameName:groupName:]): 10480 (-[WebView initWithCoder:]): 10481 104822009-01-20 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com> 10483 10484 Reviewed by George Staikos. 10485 10486 Fixes: https://bugs.webkit.org/show_bug.cgi?id=23434 (Add WML <input> element support) 10487 10488 Protect text field related WebEditorClient.mm methods against non-HTMLElement callers. 10489 WebEditorClient.mm relies on HTMLInputElement as input element. Ignore calls from non-HTMLElement elements. 10490 10491 * WebCoreSupport/WebEditorClient.mm: 10492 (WebEditorClient::textFieldDidBeginEditing): 10493 (WebEditorClient::textFieldDidEndEditing): 10494 (WebEditorClient::textDidChangeInTextField): 10495 (WebEditorClient::doTextFieldCommandFromEvent): 10496 (WebEditorClient::textWillBeDeletedInTextField): 10497 (WebEditorClient::textDidChangeInTextArea): 10498 104992009-01-19 Anders Carlsson <andersca@apple.com> 10500 10501 Reviewed by Sam Weinig. 10502 10503 Add and implement GetScriptableNPObject. 10504 10505 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10506 (WKPCGetScriptableNPObjectReply): 10507 Create a new reply struct and set it as the current reply. 10508 10509 (WKPCEvaluate): 10510 Get rid of an unused variable. 10511 10512 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 10513 (WebKit::NetscapePluginInstanceProxy::Reply::): 10514 (WebKit::NetscapePluginInstanceProxy::GetScriptableNPObjectReply::GetScriptableNPObjectReply): 10515 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 10516 (WebKit::NetscapePluginInstanceProxy::createBindingsInstance): 10517 Call _WKPHGetScriptableNPObject and wait for a reply. 10518 10519 * Plugins/Hosted/ProxyInstance.h: Added. 10520 * Plugins/Hosted/ProxyInstance.mm: Added. 10521 Add empty files. 10522 10523 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 10524 (-[WebHostedNetscapePluginView JSC::Bindings::createPluginBindingsInstance:JSC::Bindings::]): 10525 Call NetscapePluginInstanceProxy::createBindingsInstance. 10526 10527 * Plugins/Hosted/WebKitPluginClient.defs: 10528 * Plugins/Hosted/WebKitPluginHost.defs: 10529 Add new declarations. 10530 105312009-01-19 Sam Weinig <sam@webkit.org> 10532 10533 Rubber-stamped by Gavin Barraclough. 10534 10535 Remove temporary operator-> from JSValuePtr. 10536 10537 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 10538 (WebKit::NetscapePluginInstanceProxy::invoke): 10539 (WebKit::NetscapePluginInstanceProxy::hasMethod): 10540 (WebKit::NetscapePluginInstanceProxy::marshalValue): 10541 * WebView/WebFrame.mm: 10542 (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): 10543 * WebView/WebView.mm: 10544 (aeDescFromJSValue): 10545 105462009-01-19 Anders Carlsson <andersca@apple.com> 10547 10548 Reviewed by Sam Weinig. 10549 10550 Make Evaluate an asynchronous method that has a reply method. 10551 10552 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10553 (WKPCEvaluate): 10554 * Plugins/Hosted/WebKitPluginClient.defs: 10555 * Plugins/Hosted/WebKitPluginHost.defs: 10556 105572009-01-19 Brady Eidson <beidson@apple.com> 10558 10559 Rubberstamped by Tim Hatcher 10560 10561 Fix long standing typo. 10562 10563 * History/WebBackForwardList.h: 10564 105652009-01-19 Mark Rowe <mrowe@apple.com> 10566 10567 Fix the build! 10568 10569 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 10570 (WebKit::NetscapePluginInstanceProxy::demarshalValue): 10571 (WebKit::NetscapePluginInstanceProxy::demarshalValues): 10572 105732009-01-18 Mark Rowe <mrowe@apple.com> 10574 10575 Reviewed by Anders Carlsson. 10576 10577 Fix <https://bugs.webkit.org/show_bug.cgi?id=23414>. 10578 Bug 23414: Reproducible crash accessing View menu with plugins disabled 10579 10580 * WebView/WebFrame.mm: 10581 (-[WebFrame _canProvideDocumentSource]): Null-check the PluginData before using it. 10582 105832009-01-17 David Hyatt <hyatt@apple.com> 10584 10585 Eliminate dependencies on "backslashAsCurrencySymbol()" from WebKit, and make sure these alterations 10586 are done in WebCore instead. 10587 10588 Reviewed by Oliver Hunt 10589 10590 * WebView/WebFrame.mm: 10591 (-[WebFrame _selectedString]): 10592 (-[WebFrame _stringForRange:]): 10593 105942009-01-17 Eric Carlson <eric.carlson@apple.com> 10595 10596 Reviewed by Adele Peterson 10597 10598 Complete <rdar://problem/6293969> 10599 10600 * WebCoreSupport/WebSystemInterface.m: 10601 (InitWebCoreSystemInterface): Remove UseSharedMediaUI 10602 106032009-01-15 Brady Eidson <beidson@apple.com> 10604 10605 Reviewed by Dan Bernstein 10606 10607 Fix problem where a URL visited as non-GET once is flagged as non-GET forever. 10608 10609 * History/WebHistory.mm: 10610 (-[WebHistory _visitedURL:withTitle:method:wasFailure:]): Always update the HTTPNonGet 10611 flag for all loads with an HTTP Method 10612 106132009-01-14 Anders Carlsson <andersca@apple.com> 10614 10615 Reviewed by Sam Weinig. 10616 10617 Implement InvokeDefault, Construct, GetProperty and SetProperty. 10618 10619 Fully implement marshalValue. 10620 10621 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10622 (WKPCInvokeDefault): 10623 (WKPCConstruct): 10624 (WKPCGetProperty): 10625 (WKPCSetProperty): 10626 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 10627 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 10628 (WebKit::NetscapePluginInstanceProxy::evaluate): 10629 (WebKit::NetscapePluginInstanceProxy::invoke): 10630 (WebKit::NetscapePluginInstanceProxy::invokeDefault): 10631 (WebKit::NetscapePluginInstanceProxy::construct): 10632 (WebKit::NetscapePluginInstanceProxy::getProperty): 10633 (WebKit::NetscapePluginInstanceProxy::setProperty): 10634 (WebKit::NetscapePluginInstanceProxy::marshalValue): 10635 (WebKit::NetscapePluginInstanceProxy::demarshalValue): 10636 * Plugins/Hosted/WebKitPluginClient.defs: 10637 106382009-01-14 Anders Carlsson <andersca@apple.com> 10639 10640 Reviewed by Sam Weinig. 10641 10642 Demarshal arguments and pass them to the JS call. 10643 10644 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10645 (WKPCInvoke): 10646 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 10647 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 10648 (WebKit::NetscapePluginInstanceProxy::invoke): 10649 (WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray): 10650 (WebKit::NetscapePluginInstanceProxy::demarshalValues): 10651 106522009-01-14 Mark Rowe <mrowe@apple.com> 10653 10654 Reviewed by Timothy Hatcher. 10655 10656 <rdar://problem/6496520> REGRESSION: In Mail, a crash occurs when attempting to display a mail message 10657 10658 Move WebArchive and WebResource to use the same approach for initializing themselves on the main thread 10659 that WebView uses. 10660 10661 * WebView/WebArchive.mm: 10662 (-[WebArchive initWithMainResource:subresources:subframeArchives:]): Use _webkit_performSelectorOnMainThread:withObject:. 10663 (-[WebArchive _initWithArguments:]): 10664 * WebView/WebResource.mm: 10665 (-[WebResource _initWithArguments:]): Unbox the BOOL argument. 10666 106672009-01-14 Darin Adler <darin@apple.com> 10668 10669 Reviewed by Oliver Hunt. 10670 10671 Fix crash I ran into while printing. I was unable to reproduce it, but also, 10672 it's clear there's no guarantee that the frame will be non-zero in this case, 10673 so it seems fine to check it. 10674 10675 * WebView/WebHTMLView.mm: (-[WebHTMLView reapplyStyles]): Check frame for zero 10676 and don't do anything with it if it's zero. 10677 106782009-01-14 Dan Bernstein <mitz@apple.com> 10679 10680 Reviewed by John Sullivan. 10681 10682 - update copyright 10683 10684 * Info.plist: 10685 106862009-01-12 Anders Carlsson <andersca@apple.com> 10687 10688 Reviewed by Darin Adler. 10689 10690 Add a bunch of methods to WebKitPluginClient.defs, and implement them. 10691 10692 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10693 (WebKit::fromUTF8WithLatin1Fallback): 10694 If the length isn't specified, get it by calling strlen. 10695 10696 (WKPCEvaluate): 10697 Evaluate doesn't take any arguments. 10698 10699 (WKPCGetIntIdentifier): 10700 Call _NPN_GetIntIdentifier. 10701 10702 (identifierFromServerIdentifier): 10703 New helper function that returns a JSC Identifier from an NPIdentifier. 10704 10705 (WKPCInvoke): 10706 Call identifierFromServerIdentifier. 10707 10708 (WKPCRemoveProperty): 10709 (WKPCHasProperty): 10710 (WKPCHasMethod): 10711 Call NetscapePluginInstanceProxy. 10712 10713 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 10714 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 10715 (WebKit::NetscapePluginInstanceProxy::removeProperty): 10716 (WebKit::NetscapePluginInstanceProxy::hasProperty): 10717 (WebKit::NetscapePluginInstanceProxy::hasMethod): 10718 10719 * Plugins/Hosted/WebKitPluginClient.defs: 10720 Add new definitions. 10721 107222009-01-13 Anders Carlsson <andersca@apple.com> 10723 10724 Fix build. 10725 10726 * WebView/WebView.mm: 10727 (-[WebView _initWithArguments:]): 10728 107292009-01-13 Timothy Hatcher <timothy@apple.com> 10730 10731 Adds a workaround for the flip4mac installer plugin decoding a WebView from a NIB on a secondary thread. 10732 10733 <rdar://problem/6489788> New WebKit thread checks break installation of flip4mac (thread violation) 10734 10735 Reviewed by Darin Adler. 10736 10737 * Misc/WebKitVersionChecks.h: Add WEBKIT_FIRST_VERSION_WITHOUT_WEBVIEW_INIT_THREAD_WORKAROUND. 10738 * Misc/WebNSObjectExtras.h: Add _webkit_performSelectorOnMainThread:withObject:. 10739 * Misc/WebNSObjectExtras.mm: 10740 (-[NSObject _webkit_performSelectorWithArguments:]): Renamed from _webkit_getPropertyWithArguments. 10741 Passes the optional object to the selector. 10742 (-[NSObject _webkit_performSelectorOnMainThread:withObject:]): Renamed from _webkit_getPropertyOnMainThread:. 10743 Put the optional object into the arguments dictionary. 10744 (-[NSObject _webkit_getPropertyOnMainThread:]): Call _webkit_performSelectorOnMainThread with a nil object. 10745 * WebView/WebResource.mm: 10746 (-[WebResource _ignoreWhenUnarchiving]): Use _cmd instead of making the selector again. 10747 (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]): Use the new 10748 _webkit_performSelectorOnMainThread:withObject: method instead of performSelectorOnMainThread. 10749 * WebView/WebView.mm: 10750 (-[WebView _initWithArguments:]): Added. Pulls arguments out of the dictionary and calls the right init method. 10751 (needsWebViewInitThreadWorkaround): Checks if the thead is not the main thread and if we are in the Installer bundle. 10752 (-[WebView initWithFrame:frameName:groupName:]): Call needsWebViewInitThreadWorkaround and use _webkit_performSelectorOnMainThread 10753 to call _initWithArguments: passing the frame, frameName and groupName. 10754 (-[WebView initWithCoder:]): Ditto, except pass the coder to _initWithArguments:. 10755 107562009-01-12 Gavin Barraclough <barraclough@apple.com> 10757 10758 Reviewed by Oliver Hunt. 10759 10760 Deprecate JSValuePtr::getNumber() - two ways to get a number should be enough. 10761 10762 * WebView/WebView.mm: 10763 (aeDescFromJSValue): 10764 107652009-01-12 Brady Eidson <beidson@apple.com> 10766 10767 Reviewed by Darin Adler 10768 10769 <rdar://problem/6468274> - Track Non-get requests in global history 10770 10771 * History/WebHistory.mm: 10772 (-[WebHistory _visitedURL:withTitle:method:wasFailure:]): 10773 * History/WebHistoryInternal.h: 10774 10775 * History/WebHistoryItem.mm: 10776 (-[WebHistoryItem initFromDictionaryRepresentation:]): 10777 (-[WebHistoryItem dictionaryRepresentation]): 10778 (-[WebHistoryItem _lastVisitWasHTTPNonGet]): 10779 * History/WebHistoryItemPrivate.h: 10780 10781 * WebCoreSupport/WebFrameLoaderClient.mm: 10782 (WebFrameLoaderClient::updateGlobalHistory): Only pass the method through if it was an HTTP load 10783 107842009-01-12 Anders Carlsson <andersca@apple.com> 10785 10786 Reviewed by Sam Weinig. 10787 10788 Move marshalling into NetscapePluginInstanceProxy. 10789 10790 Add support for marshallin strings. 10791 10792 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10793 (WKPCEvaluate): 10794 (WKPCInvoke): 10795 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 10796 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 10797 (WebKit::NetscapePluginInstanceProxy::evaluate): 10798 (WebKit::NetscapePluginInstanceProxy::invoke): 10799 (WebKit::NetscapePluginInstanceProxy::marshalValue): 10800 * Plugins/Hosted/WebKitPluginHostTypes.h: 10801 108022009-01-12 Anders Carlsson <andersca@apple.com> 10803 10804 Reviewed by Sam Weinig. 10805 10806 Implement WKPCInvoke. 10807 10808 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10809 (WKPCEvaluate): 10810 (WKPCInvoke): 10811 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 10812 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 10813 (WebKit::NetscapePluginInstanceProxy::idForObject): 10814 (WebKit::NetscapePluginInstanceProxy::invoke): 10815 * Plugins/Hosted/WebKitPluginClient.defs: 10816 108172009-01-12 Anders Carlsson <andersca@apple.com> 10818 10819 Reviewed by Sam Weinig. 10820 10821 Move marshalling code to NetscapePluginInstanceProxy. Add support for marshalling JS objects. 10822 10823 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10824 (WKPCEvaluate): 10825 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 10826 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 10827 (WebKit::NetscapePluginInstanceProxy::marshalValue): 10828 * Plugins/Hosted/WebKitPluginHostTypes.h: 10829 108302009-01-12 Julien Chaffraix <jchaffraix@pleyo.com> 10831 10832 Reviewed by Darin Adler. 10833 10834 Bug 22861: Turn the FontCache into a singleton 10835 https://bugs.webkit.org/show_bug.cgi?id=22861 10836 10837 * Misc/WebCoreStatistics.mm: 10838 (+[WebCoreStatistics cachedFontDataCount]): 10839 (+[WebCoreStatistics cachedFontDataInactiveCount]): 10840 (+[WebCoreStatistics purgeInactiveFontData]): 10841 Redirected all the static calls to the global FontCache 10842 instance. 10843 108442009-01-11 Dmitry Titov <dimich@chromium.org> 10845 10846 Reviewed by Darin Adler. 10847 10848 https://bugs.webkit.org/show_bug.cgi?id=23207 10849 Moved currentTime() to from WebCore to WTF. 10850 10851 * WebView/WebFrame.mm: a different header file included. 10852 108532009-01-10 Darin Adler <darin@apple.com> 10854 10855 Reviewed by Sam Weinig. 10856 10857 <rdar://problem/5845089> REGRESSION (r30044): Mail custom stationery missing images 10858 because of change to -[HTMLObjectElement data] 10859 10860 * WebView/WebView.mm: 10861 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): Added a thread 10862 violation check because I saw this being done off the main thread while testing Mail, and it 10863 caused problems. Put all the one time initialization under a single guard to make things just 10864 a little faster other times, and to make it clearer which things are one-time. Added a call to 10865 the new patchMailRemoveAttributesMethod function. 10866 (-[WebView initWithFrame:frameName:groupName:]): Added a thread violation check here too, 10867 because I assumed it would be slightly better to have a public method name in the violation 10868 message. This calls commonInitialization later, so it will hit that one eventually. 10869 (objectElementDataAttribute): Added. Just returns the value of the "data" attribute. 10870 (recursivelyRemoveMailAttributes): Added. Patch to an internal Mail method that in turn patches 10871 a WebKit method and removes the patch again on the way out. 10872 (patchMailRemoveAttributesMethod): Added. On Leopard only, checks the Mail version, and then 10873 applies the patch that fixes this bug. 10874 108752009-01-09 Dan Bernstein <mitz@apple.com> 10876 10877 Reviewed by Darin Adler. 10878 10879 - fixed <rdar://problem/6234347> Add/change conditional key 10880 bindings for changing paragraph- and character-level writing 10881 direction (to match NSTextView) 10882 10883 * WebView/WebHTMLView.mm: 10884 (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Added 10885 code to validate makeBaseWritingDirectionLeftToRight: and 10886 makeBaseWritingDirectionRightToLeft:. 10887 (writingDirectionKeyBindingsEnabled): Changed this function to 10888 always return YES, except on Tiger and Leopard. 10889 (-[WebHTMLView makeBaseWritingDirectionLeftToRight:]): Renamed 10890 changeBaseWritingDirectionToLTR: to this. 10891 (-[WebHTMLView makeBaseWritingDirectionRightToLeft:]): Renamed 10892 changeBaseWritingDirectionToRTL: to this. 10893 (-[WebHTMLView changeBaseWritingDirectionToLTR:]): Now calls 10894 makeBaseWritingDirectionLeftToRight:. 10895 (-[WebHTMLView changeBaseWritingDirectionToRTL:]): Now calls 10896 makeBaseWritingDirectionRightToLeft:. 10897 * WebView/WebView.mm: Added makeBaseWritingDirectionLeftToRight 10898 and makeBaseWritingDirectionRightToLeft to 10899 FOR_EACH_RESPONDER_SELECTOR. 10900 109012009-01-08 Anders Carlsson <andersca@apple.com> 10902 10903 Reviewed by Sam Weinig. 10904 10905 Add and implement WKPCGetStringIdentifier. 10906 10907 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10908 (WKPCGetStringIdentifier): 10909 * Plugins/Hosted/WebKitPluginClient.defs: 10910 109112009-01-08 Stephanie Lewis <slewis@gmail.com> 10912 10913 Fix Tiger build. 10914 10915 * WebView/WebTextIterator.mm: 10916 109172009-01-08 Anders Carlsson <andersca@apple.com> 10918 10919 Reviewed by Sam Weinig. 10920 10921 Add basic support for evaluating scripts. 10922 10923 * Plugins/Hosted/NetscapePluginHostProxy.mm: 10924 (WebKit::fromUTF8WithLatin1Fallback): 10925 (WebKit::NetscapePluginHostProxy::~NetscapePluginHostProxy): 10926 (WKPCReleaseObject): 10927 (marshalValue): 10928 (WKPCEvaluate): 10929 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 10930 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 10931 (WebKit::NetscapePluginInstanceProxy::releaseObject): 10932 (WebKit::NetscapePluginInstanceProxy::evaluate): 10933 * Plugins/Hosted/WebKitPluginClient.defs: 10934 * Plugins/Hosted/WebKitPluginHostTypes.h: 10935 109362009-01-08 David Hyatt <hyatt@apple.com> 10937 10938 Fix for <rdar://problem/6465682> REGRESSION: In Mail, can't force a message to auto scroll 10939 10940 Add a new ChromeClient method for handling exposure of scrolled rects. 10941 10942 Reviewed by Oliver Hunt 10943 10944 * WebCoreSupport/WebChromeClient.h: 10945 * WebCoreSupport/WebChromeClient.mm: 10946 (WebChromeClient::scrollRectIntoView): 10947 109482009-01-08 Darin Adler <darin@apple.com> 10949 10950 Reviewed by Tim Hatcher. 10951 10952 Bug 23185: add a currentRange method to the WebTextIterator SPI 10953 https://bugs.webkit.org/show_bug.cgi?id=23185 10954 rdar://problem/6455834 10955 10956 I also noticed a garbage-collection-related threading issue that I fixed, and 10957 that the SPI for getting text was unnecessarily inefficient, so I fixed that too. 10958 10959 * WebView/WebTextIterator.h: Moved currentNode and currentText into a "deprecated" 10960 category. Added currentTextPointer and currentTextLength. 10961 10962 * WebView/WebTextIterator.mm: Changed m_textIterator into an OwnPtr, and also 10963 used _textIterator to be consistent with ObjC rather than C++ naming. 10964 (+[WebTextIteratorPrivate initialize]): Added. Calls WebCoreObjCFinalizeOnMainThread, 10965 since the finalize method here works with main-thread only WebCore objects. 10966 (-[WebTextIterator initWithRange:]): Changed since _textIterator is an OwnPtr now. 10967 (-[WebTextIterator advance]): Changed name of m_textIterator. Removed null assertion, 10968 since I don't think it provides much value. 10969 (-[WebTextIterator atEnd]): Ditto. 10970 (-[WebTextIterator currentRange]): Added. 10971 (-[WebTextIterator currentTextPointer]): Added. 10972 (-[WebTextIterator currentTextLength]): Added. 10973 (-[WebTextIterator currentNode]): Did same as above, but also put into new category. 10974 (-[WebTextIterator currentText]): Ditto. 10975 109762009-01-08 Eric Carlson <eric.carlson@apple.com> 10977 10978 Reviewed by Adele Peterson. 10979 10980 Simplify Mac interfaces for drawing media controller elements 10981 10982 <rdar://problem/6293969> 10983 10984 * WebCoreSupport/WebSystemInterface.m: 10985 (InitWebCoreSystemInterface): Update for changes to media controller functions 10986 109872009-01-07 Anders Carlsson <andersca@apple.com> 10988 10989 Reviewed by Dan Bernstein. 10990 10991 Fix build. 10992 10993 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 10994 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 10995 (WebKit::NetscapePluginInstanceProxy::idForObject): 10996 109972009-01-07 Anders Carlsson <andersca@apple.com> 10998 10999 Reviewed by Dan Bernstein. 11000 11001 Add a way for a plug-in to get a reference to the Window JS object. 11002 11003 * Plugins/Hosted/NetscapePluginHostProxy.mm: 11004 (WKPCGetWindowNPObject): 11005 Call the appropriate instance. 11006 11007 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 11008 Add object ID counter. 11009 11010 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 11011 (WebKit::NetscapePluginInstanceProxy::destroy): 11012 Clear the object ID map. 11013 11014 (WebKit::NetscapePluginInstanceProxy::idForObject): 11015 New method that returns a unique ID for a given JS object. 11016 11017 (WebKit::NetscapePluginInstanceProxy::getWindowNPObject): 11018 Return the object ID for the window JS object. 11019 11020 * Plugins/Hosted/WebKitPluginClient.defs: 11021 Add GetWindowNPObject. 11022 110232009-01-07 Darin Adler <darin@apple.com> 11024 11025 Reviewed by Oliver Hunt. 11026 11027 Bug 23160: add setMemoryCacheClientCallsEnabled SPI so Safari can be faster with activity window closed 11028 https://bugs.webkit.org/show_bug.cgi?id=23160 11029 11030 * WebView/WebView.mm: 11031 (-[WebView setMemoryCacheDelegateCallsEnabled:]): Added. 11032 (-[WebView areMemoryCacheDelegateCallsEnabled]): Added 11033 * WebView/WebViewPrivate.h: Ditto. 11034 110352009-01-05 Gavin Barraclough <baraclough@apple.com> 11036 11037 Rubber Stamped by Oliver Hunt. 11038 11039 Replace all uses of JSValue* with new wrapper class, JSValuePtr. 11040 See JavaScriptCore/ChangeLog for more detailed description. 11041 11042 * WebView/WebFrame.mm: 11043 (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): 11044 * WebView/WebScriptDebugDelegate.mm: 11045 (-[WebScriptCallFrame _convertValueToObjcValue:]): 11046 (-[WebScriptCallFrame exception]): 11047 (-[WebScriptCallFrame evaluateWebScript:]): 11048 * WebView/WebView.mm: 11049 (aeDescFromJSValue): 11050 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): 11051 110522009-01-06 Pierre-Olivier Latour <pol@apple.com> 11053 11054 Reviewed by Darin Adler. 11055 11056 Exposed through WebFrame private interface the new WebCore API AnimationController::numberOfActiveAnimations() to be used by DRT. 11057 11058 https://bugs.webkit.org/show_bug.cgi?id=23126 11059 11060 * WebView/WebFrame.mm: 11061 (-[WebFrame _numberOfActiveAnimations]): 11062 * WebView/WebFramePrivate.h: 11063 110642009-01-05 David Kilzer <ddkilzer@apple.com> 11065 11066 Add SPI to enable, disable and check state of WebIconDatabase 11067 11068 Reviewed by Darin Adler & Timothy Hatcher. 11069 11070 Add -[WebIconDatabase isEnabled] and -[WebIconDatabase setEnabled:] 11071 SPI to make it possible to enable, disable and check the state of 11072 the icon database. 11073 11074 * Misc/WebIconDatabase.mm: 11075 (-[WebIconDatabase init]): Extracted code into -_startUpIconDatabase. 11076 (-[WebIconDatabase iconForURL:withSize:cache:]): Switched to use 11077 -isEnabled instead of -_isEnabled. 11078 (-[WebIconDatabase iconURLForURL:]): Ditto. 11079 (-[WebIconDatabase retainIconForURL:]): Ditto. 11080 (-[WebIconDatabase releaseIconForURL:]): Ditto. 11081 (-[WebIconDatabase isEnabled]): Renamed from -_isEnabled in 11082 WebInternal category. 11083 (-[WebIconDatabase setEnabled:]): Added. Takes care of changing 11084 the enabled/disabled state of the icon database. 11085 (-[WebIconDatabase removeAllIcons]): Switched to use -isEnabled 11086 instead of -_isEnabled. 11087 (-[WebIconDatabase _startUpIconDatabase]): Added. Extrated from 11088 -init. 11089 (-[WebIconDatabase _shutDownIconDatabase]): Added. Remove 11090 observers when the icon database is disabled. 11091 * Misc/WebIconDatabaseInternal.h: Added declarations for 11092 -_startUpIconDatabase and -_shutDownIconDatabase. 11093 * Misc/WebIconDatabasePrivate.h: Added declarations for 11094 -isEnabled and -setEnabled:. 11095 110962009-01-05 Brady Eidson <beidson@apple.com> 11097 11098 Reviewed by Jon Honeycutt 11099 11100 Expose setting the last-visit-was-failure flag on a history items in preparation for <rdar://problem/6173319> 11101 11102 * History/WebHistoryItem.mm: 11103 (-[WebHistoryItem _setLastVisitWasFailure:]): 11104 * History/WebHistoryItemPrivate.h: 11105 111062009-01-05 Adam Treat <adam.treat@torchmobile.com> 11107 11108 Another blind mac build fix 11109 11110 * WebCoreSupport/WebChromeClient.mm: 11111 (WebChromeClient::contentsSizeChanged): 11112 111132009-01-05 Adam Treat <adam.treat@torchmobile.com> 11114 11115 Blind mac build fix 11116 11117 * WebCoreSupport/WebChromeClient.mm: 11118 111192009-01-05 Adam Treat <adam.treat@torchmobile.com> 11120 11121 Fix mac build 11122 11123 * WebCoreSupport/WebChromeClient.h: 11124 111252009-01-05 Adam Treat <adam.treat@torchmobile.com> 11126 11127 Reviewed by George Staikos. 11128 11129 Build fix for contentsSizeChanged 11130 11131 * WebCoreSupport/WebChromeClient.h: 11132 * WebCoreSupport/WebChromeClient.mm: 11133 (WebChromeClient::contentsSizeChanged): 11134 111352009-01-02 Darin Adler <darin@apple.com> 11136 11137 Reviewed by Sam Weinig. 11138 11139 Bug 23072: REGRESSION (r37371): In the Dictionary application, scroll bar appears 11140 inside its web view when resizing its window 11141 https://bugs.webkit.org/show_bug.cgi?id=23072 11142 rdar://problem/6368028 11143 11144 The first attempt at fixing this did not work. 11145 This time I was able to reproduce the bug and test the fix. 11146 11147 * WebCoreSupport/WebFrameLoaderClient.mm: 11148 (applyAppleDictionaryApplicationQuirkNonInlinePart): Changed the arguments and 11149 function names around a bit to make even less code at the call site. 11150 (applyAppleDictionaryApplicationQuirk): Put the check for whether this is the 11151 Dictionary application in here. 11152 (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache): Put a call to 11153 applyAppleDictionaryApplicationQuirk here. This was a case I had missed before, 11154 when the script is cached. This fixes one of the two problems with the initial 11155 patch; the other fix is in WebCore. 11156 (WebFrameLoaderClient::dispatchWillSendRequest): Changed the 11157 applyAppleDictionaryApplicationQuirk call here to work the new simpler way. 11158 11159 * WebView/WebView.mm: Had to add an include due to changes in WebCore header includes. 11160 111612009-01-02 Cameron Zwarich <cwzwarich@uwaterloo.ca> 11162 11163 Reviewed by Darin Adler. 11164 11165 Bug 23060: REGRESSION (r38629): Cannot scroll a WebHTMLView using Home/End/Page up/Page down 11166 <https://bugs.webkit.org/show_bug.cgi?id=23060> 11167 <rdar://problem/6467830> 11168 11169 After r38629, all keyboard events get sent by Editor to the EditorClient, even 11170 if the selection is not editable. If the event's command is unsupported by 11171 WebHTMLView, WebHTMLView mistakenly thinks that the event was handled when it 11172 was not. When using the page up / page down keys, the events generated are of 11173 the form scrollPageUp rather than movePageUp, so they are unsupported by 11174 WebHTMLView and cause this bug to occur. 11175 11176 * WebView/WebHTMLView.mm: 11177 (-[WebHTMLView doCommandBySelector:]): 11178 111792009-01-02 Darin Adler <darin@apple.com> 11180 11181 Reviewed by Oliver Hunt. 11182 11183 Bug 23072: REGRESSION (r37371): In the Dictionary application, scroll bar appears inside its web view when resizing its window 11184 https://bugs.webkit.org/show_bug.cgi?id=23072 11185 rdar://problem/6368028 11186 11187 * WebCoreSupport/WebFrameLoaderClient.mm: 11188 (isAppleDictionaryApplication): Added. 11189 (applyAppleDictionaryApplicationQuirk): Added. Under the right conditions, sets 11190 a flag to ask HTMLFrameElementBase to ignore the scrolling attribute. 11191 (WebFrameLoaderClient::dispatchWillSendRequest): Call the two functions above to 11192 apply the quirk when the relevant script is loaded. 11193 111942008-12-26 Dan Bernstein <mitz@apple.com> 11195 11196 Reviewed by Sam Weinig. 11197 11198 - fix <rdar://problem/6467608> lastVisitWasFailure flag persists in 11199 global history after a successful visit 11200 11201 * History/WebHistory.mm: 11202 (-[WebHistory _visitedURL:withTitle:wasFailure:]): Changed to always 11203 update the wasFailure flag on the HistoryItem. 11204 112052008-12-23 Darin Adler <darin@apple.com> 11206 11207 Reviewed by Alexey Proskuryakov (a slightly earlier version). 11208 11209 - fix https://bugs.webkit.org/show_bug.cgi?id=22976 11210 crash due to Mail's use of WebArchive and WebResource on non-main thread 11211 11212 * Misc/WebKitLogging.h: Improved comments for ASSERT_MAIN_THREAD. Got rid of 11213 WebKitRunningOnMainThread function, which was just a cover for pthread_main_np. 11214 * Misc/WebKitLogging.m: Ditto. 11215 11216 * Misc/WebKitVersionChecks.h: Added a version after which we won't do the 11217 main thread workaround. 11218 11219 * Misc/WebNSObjectExtras.h: Added a new method, _webkit_getPropertyOnMainThread:, 11220 which performs a selector on the main thread, waits for it to complete, and then 11221 returns the value on the caller thread. 11222 * Misc/WebNSObjectExtras.mm: Added. 11223 11224 * WebView/WebArchive.mm: 11225 (-[WebArchive init]): Added WebCoreThreadViolationCheck. 11226 (-[WebArchive initWithMainResource:subresources:subframeArchives:]): Perform 11227 initialization on main thread if needMailThreadWorkaround is true. 11228 Also added WebCoreThreadViolationCheck. 11229 (-[WebArchive initWithData:]): Added WebCoreThreadViolationCheck. 11230 (-[WebArchive mainResource]): Get property on main thread if 11231 needMailThreadWorkaround is true. Also added WebCoreThreadViolationCheck. 11232 (-[WebArchive subresources]): Ditto. 11233 (-[WebArchive subframeArchives]): Ditto. 11234 (-[WebArchive data]): Ditto. 11235 (-[WebArchive _initWithCoreLegacyWebArchive:]): Added WebCoreThreadViolationCheck. 11236 (-[WebArchive _coreLegacyWebArchive]): Ditto. 11237 (-[WebArchive _initWithArguments:]): Added. Used to implement the cross-thread 11238 version of initWithMainResource above. 11239 11240 * WebView/WebResource.mm: 11241 (-[WebResource initWithCoder:]): Added WebCoreThreadViolationCheck. 11242 (-[WebResource data]): Get property on main thread if 11243 needMailThreadWorkaround is true. Also added WebCoreThreadViolationCheck. 11244 (-[WebResource URL]): Ditto. 11245 (-[WebResource MIMEType]): Ditto. 11246 (-[WebResource textEncodingName]): Ditto. 11247 (-[WebResource frameName]): Ditto. 11248 (-[WebResource _ignoreWhenUnarchiving]): Ditto. 11249 (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]): 11250 Perform initialization on main thread if needMailThreadWorkaround is true. 11251 Also added WebCoreThreadViolationCheck. 11252 (-[WebResource _suggestedFilename]): Added. Helper for _fileWrapperRepresentation. 11253 (-[WebResource _fileWrapperRepresentation]): Rewrote to use methods instead of 11254 getting at coreResource directly. 11255 (-[WebResource _response]): Get property on main thread if 11256 needMailThreadWorkaround is true. Also added WebCoreThreadViolationCheck. 11257 (-[WebResource _stringValue]): Ditto. 11258 (+[WebResource _needMailThreadWorkaroundIfCalledOffMainThread]): Added. 11259 (-[WebResource _initWithArguments:]): Added. Used to implement the cross-thread 11260 version of _initWithData above. 11261 11262 * WebView/WebResourceInternal.h: Changed to include WebResourcePrivate.h since internal 11263 clients have access to the SPI as well as the API. Added definition of MAIL_THREAD_WORKAROUND 11264 and the needMainThreadWorkaround helper function. 11265 11266 * Misc/WebIconDatabase.mm: Removed include of now-defunct FoundationExtras.h 11267 file. This probably fixes clean builds. 11268 * WebCoreSupport/WebIconDatabaseClient.mm: Ditto. 11269 11270 * WebCoreSupport/WebFrameLoaderClient.mm: Removed include of WebResourcePrivate.h, 11271 since it's not actually used. 11272 * WebView/WebDataSource.mm: Ditto. 11273 * WebView/WebHTMLRepresentation.mm: Ditto. 11274 112752008-12-23 Darin Adler <darin@apple.com> 11276 11277 Reviewed by Dan Bernstein. 11278 11279 - fix https://bugs.webkit.org/show_bug.cgi?id=22979 11280 crash seen in -[WebView drawsBackground] when quitting 11281 <rdar://problem/6464601> 11282 11283 * WebView/WebView.mm: 11284 (-[WebView drawsBackground]): Added comment and a null check for _private. 11285 112862008-12-22 Kevin Decker <kdecker@apple.com> 11287 11288 Reviewed by Anders Carlsson. 11289 11290 <rdar://problem/6449588> REGRESSION (r38279-r38280): Minimize them remaximize a window with a flash plugin, plugin doesn't resume at full speed 11291 11292 * Plugins/WebBaseNetscapePluginView.mm: 11293 (-[WebBaseNetscapePluginView windowDidDeminiaturize:]): Deminiaturizing should restart timers, not stop timers. 11294 112952008-12-19 Geoffrey Garen <ggaren@apple.com> 11296 11297 Reviewed by Darin Adler, Adele Peterson, Brady Eidson. 11298 11299 Added SPI for getting an unsorted vector of all items in history. 11300 11301 * History/WebHistory.h: 11302 * History/WebHistory.mm: 11303 (-[WebHistory allItems]): 11304 113052008-12-18 Dan Bernstein <mitz@apple.com> 11306 11307 Reviewed by Sam Weinig. 11308 11309 - implement FrameLoaderClient::shouldUseCredentialStorage() by calling 11310 a new resource load delegae method. 11311 11312 * WebCoreSupport/WebFrameLoaderClient.h: 11313 * WebCoreSupport/WebFrameLoaderClient.mm: 11314 (WebFrameLoaderClient::shouldUseCredentialStorage): Added. Calls the 11315 delegate method. If the method is unimplemented, returns true for 11316 backwards compatibility. 11317 * WebView/WebView.mm: 11318 (-[WebView _cacheResourceLoadDelegateImplementations]): Initialize the 11319 shouldUseCredentialStorageFunc member. 11320 (CallResourceLoadDelegateReturningBoolean): Added. 11321 * WebView/WebViewInternal.h: 11322 * WebView/WebResourceLoadDelegatePrivate.h: Declared the delegate method 11323 -webView:resource:shouldUseCredentialStorageForDataSource:. 11324 113252008-12-18 Cameron Zwarich <zwarich@apple.com> 11326 11327 Reviewed by Jonathan Honeycutt. 11328 11329 Fix an apparent typo in r39385 that is causing lots of crashes. 11330 11331 * WebCoreSupport/WebFrameLoaderClient.mm: 11332 (WebFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout): 11333 113342008-12-18 Brady Eidson <beidson@apple.com> 11335 11336 Reviewed by John Sullivan 11337 11338 Initial visit to a website creates history items that start with a visit count of 11339 zero instead of one 11340 11341 * History/WebHistory.mm: 11342 (-[WebHistoryPrivate visitedURL:withTitle:]): Set the visit count on new items 11343 11344 * History/WebHistoryItem.mm: 11345 (-[WebHistoryItem _setVisitCount:]): Call through to the WebCore item 11346 * History/WebHistoryItemInternal.h: 11347 113482008-12-18 Sam Weinig <sam@webkit.org> 11349 11350 Reviewed by John Sullivan. 11351 11352 Implement FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout() by calling 11353 a new private frame load delegate method. 11354 11355 * WebCoreSupport/WebFrameLoaderClient.h: 11356 * WebCoreSupport/WebFrameLoaderClient.mm: 11357 (WebFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout): 11358 * WebView/WebView.mm: 11359 (-[WebView _cacheFrameLoadDelegateImplementations]): 11360 * WebView/WebViewInternal.h: 11361 * WebView/WebViewPrivate.h: 11362 113632008-12-16 Antti Koivisto <antti@apple.com> 11364 11365 Reviewed by John Sullivan. 11366 11367 Add version check for shift-reload behavior. 11368 11369 * Misc/WebKitVersionChecks.h: 11370 * WebView/WebFrame.mm: 11371 (-[WebFrame reload]): 11372 113732008-12-16 Anders Carlsson <andersca@apple.com> 11374 11375 Reviewed by Dan Bernstein. 11376 11377 Start sending keyboard events to the plug-in host. 11378 11379 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 11380 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 11381 (WebKit::NetscapePluginInstanceProxy::keyEvent): 11382 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 11383 (-[WebHostedNetscapePluginView keyDown:]): 11384 (-[WebHostedNetscapePluginView keyUp:]): 11385 * Plugins/Hosted/WebKitPluginHost.defs: 11386 113872008-12-16 Anders Carlsson <andersca@apple.com> 11388 11389 Reviewed by Kevin Decker. 11390 11391 <rdar://problem/6450538> 11392 11393 Fix flag enumeration. 11394 11395 * Plugins/Hosted/WebKitPluginHostTypes.h: 11396 113972008-12-16 Anders Carlsson <andersca@apple.com> 11398 11399 Reviewed by Kevin Decker. 11400 11401 Instead of passing a gazillion booleans to WKPCLoadURL, pass a single set of flags. 11402 11403 * Plugins/Hosted/NetscapePluginHostProxy.mm: 11404 (WKPCLoadURL): 11405 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 11406 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 11407 (WebKit::NetscapePluginInstanceProxy::loadURL): 11408 * Plugins/Hosted/WebKitPluginClient.defs: 11409 * Plugins/Hosted/WebKitPluginHostTypes.h: 11410 114112008-12-16 Anders Carlsson <andersca@apple.com> 11412 11413 Reviewed by Kevin Decker. 11414 11415 Add trailing null to headers to avoid a crash in the plug-in host. 11416 11417 * Plugins/Hosted/HostedNetscapePluginStream.mm: 11418 (WebKit::HostedNetscapePluginStream::didReceiveResponse): 11419 114202008-12-15 Mark Rowe <mrowe@apple.com> 11421 11422 Rubber-stamped by Cameron Zwarich. 11423 11424 <rdar://problem/6289933> Change WebKit-related projects to build with GCC 4.2 on Leopard. 11425 11426 * Configurations/Base.xcconfig: 11427 * Configurations/DebugRelease.xcconfig: 11428 114292008-12-15 Stephanie Lewis <slewis@apple.com> 11430 11431 Fix build. 11432 11433 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 11434 114352008-12-15 Anders Carlsson <andersca@apple.com> 11436 11437 Reviewed by Sam Weinig. 11438 11439 Change InstantiatePlugin to be asynchronous so we won't deadlock if the plug-in tries to call 11440 back into us while it's being instantiated. 11441 11442 * Plugins/Hosted/NetscapePluginHostManager.mm: 11443 (WebKit::NetscapePluginHostManager::instantiatePlugin): 11444 * Plugins/Hosted/NetscapePluginHostProxy.h: 11445 (WebKit::NetscapePluginHostProxy::clientPort): 11446 * Plugins/Hosted/NetscapePluginHostProxy.mm: 11447 (WKPCInstantiatePluginReply): 11448 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 11449 (WebKit::NetscapePluginInstanceProxy::Reply::): 11450 (WebKit::NetscapePluginInstanceProxy::Reply::Reply): 11451 (WebKit::NetscapePluginInstanceProxy::Reply::~Reply): 11452 (WebKit::NetscapePluginInstanceProxy::InstantiatePluginReply::InstantiatePluginReply): 11453 (WebKit::NetscapePluginInstanceProxy::setCurrentReply): 11454 (WebKit::NetscapePluginInstanceProxy::waitForReply): 11455 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 11456 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): 11457 (WebKit::NetscapePluginInstanceProxy::processRequestsAndWaitForReply): 11458 * Plugins/Hosted/WebKitPluginClient.defs: 11459 * Plugins/Hosted/WebKitPluginHost.defs: 11460 114612008-12-15 Anders Carlsson <andersca@apple.com> 11462 11463 Reviewed by Darin Adler. 11464 11465 Let WebKit generate a plug-in ID instead of having the plug-in host do it. 11466 11467 * Plugins/Hosted/NetscapePluginHostManager.mm: 11468 (WebKit::NetscapePluginHostManager::instantiatePlugin): 11469 Create the plug-in proxy before instantiating the plug-in. 11470 11471 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 11472 (WebKit::NetscapePluginInstanceProxy::create): 11473 (WebKit::NetscapePluginInstanceProxy::setRenderContextID): 11474 (WebKit::NetscapePluginInstanceProxy::setUseSoftwareRenderer): 11475 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 11476 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): 11477 * Plugins/Hosted/WebKitPluginHost.defs: 11478 114792008-12-15 Anders Carlsson <andersca@apple.com> 11480 11481 Reviewed by Sam Weinig. 11482 11483 LoadURL doesn't need to be asynchronous. 11484 11485 * Plugins/Hosted/NetscapePluginHostProxy.mm: 11486 (WKPCLoadURL): 11487 * Plugins/Hosted/WebKitPluginClient.defs: 11488 * Plugins/Hosted/WebKitPluginHost.defs: 11489 114902008-12-15 Antti Koivisto <antti@apple.com> 11491 11492 Reviewed by Darin Adler. 11493 11494 - Add [WebFrame reloadFromOrigin] for performing end-to-end reload. 11495 - Add corresponding IBAction to WebView. 11496 - Temporarily make [WebFrame reload] trigger end-to-end reload if shift modifier is pressed when it is called. 11497 11498 * WebView/WebFrame.h: 11499 * WebView/WebFrame.mm: 11500 (-[WebFrame reload]): 11501 (-[WebFrame reloadFromOrigin]): 11502 * WebView/WebFramePrivate.h: Match the FrameLoadType enum in WebCore. 11503 * WebView/WebView.h: 11504 * WebView/WebView.mm: 11505 (-[WebView reloadFromOrigin:]): 11506 115072008-12-14 Dan Bernstein <mitz@apple.com> 11508 11509 Reviewed by Darin Adler. 11510 11511 - fix <rdar://problem/3258561> WebHistoryAllItemsRemovedNotification 11512 should add items to userInfo 11513 11514 * History/WebHistory.mm: 11515 (-[WebHistoryPrivate allItems]): Added this helper method, which returns 11516 all values in the _entriesByURL dictionary. 11517 (-[WebHistory removeAllItems]): Changed to send the array of all items 11518 in the notification. 11519 115202008-12-13 Darin Adler <darin@apple.com> 11521 11522 - <rdar://problem/6441035> WebTextIterator class not exported in WebKit 11523 11524 * WebKit.exp: Added the class. We forgot to export it when we added 11525 the WebTextIterator SPI. 11526 115272008-12-12 Darin Adler <darin@apple.com> 11528 11529 Rubber stamped by Adam Roben. 11530 11531 - fix <rdar://problem/5648301> Can't tab around to text fields in Safari 11532 login sheet after clicking static text, due to AppKit key loop change 11533 11534 * Panels/English.lproj/WebAuthenticationPanel.nib/classes.nib: Removed. 11535 * Panels/English.lproj/WebAuthenticationPanel.nib/designable.nib: Added. 11536 * Panels/English.lproj/WebAuthenticationPanel.nib/info.nib: Removed. 11537 * Panels/English.lproj/WebAuthenticationPanel.nib/keyedobjects.nib: 11538 Set nextKeyView of the selectable static texts to the editable text. 11539 Updated nib format. 11540 115412008-12-12 Stephanie Lewis <slewis@apple.com> 11542 11543 Reviewed by Geoff Garen. 11544 11545 Shrink Cache Sizes. 11546 11547 * WebView/WebView.mm: 11548 (+[WebView _setCacheModel:]): 11549 115502008-12-12 Anders Carlsson <andersca@apple.com> 11551 11552 Reviewed by Tim Hatcher. 11553 11554 Don't try to free the dummy "1" port state. 11555 11556 * Plugins/WebNetscapePluginView.mm: 11557 (-[WebNetscapePluginView sendEvent:isDrawRect:]): 11558 (-[WebNetscapePluginView updateAndSetWindow]): 11559 115602008-12-11 Cameron Zwarich <zwarich@apple.com> 11561 11562 Rubber-stamped by Mark Rowe. 11563 11564 Roll out r39212 due to assertion failures during layout tests, multiple 11565 layout test failures, memory leaks, and obvious incorrectness. 11566 11567 * WebView/WebPreferenceKeysPrivate.h: 11568 * WebView/WebPreferences.mm: 11569 (-[WebPreferences fullDocumentTeardownEnabled]): 11570 * WebView/WebPreferencesPrivate.h: 11571 115722008-12-11 Stephanie Lewis <slewis@apple.com> 11573 11574 Fix build. 11575 11576 * WebView/WebView.mm: 11577 115782008-12-11 Stephanie Lewis <slewis@apple.com> 11579 11580 Reviewed by Oliver Hunt. 11581 11582 Empty Web cache before quitting a debug build in order 11583 to report accurate CachedResource leaks. 11584 11585 * WebView/WebView.mm: 11586 (-[WebView _close]): 11587 115882008-12-11 Anders Carlsson <andersca@apple.com> 11589 11590 Fix Tiger build. 11591 11592 * Misc/WebNSDataExtras.h: 11593 115942008-12-11 Anders Carlsson <andersca@apple.com> 11595 11596 Reviewed by Cameron Zwarich. 11597 11598 https://bugs.webkit.org/show_bug.cgi?id=22797 11599 REGRESSION: Crash at http://news.cnet.com/8301-17939_109-10119149-2.html 11600 11601 Make sure to protect the stream because destroyStream can otherwise cause it to be deleted. 11602 11603 * Plugins/WebBaseNetscapePluginStream.mm: 11604 (WebNetscapePluginStream::destroyStreamWithReason): 11605 116062008-12-10 Glenn Wilson <gwilson@google.com> 11607 11608 Reviewed by Adam Roben. 11609 11610 Added new methods for overriding default WebPreference values 11611 and for resetting preferences to their defaults. 11612 https://bugs.webkit.org/show_bug.cgi?id=20534 11613 11614 * WebView/WebPreferenceKeysPrivate.h: 11615 * WebView/WebPreferences.mm: 11616 (-[WebPreferences resetToDefaults]): new method 11617 (-[WebPreferences overridePreference:flag:]): new method 11618 * WebView/WebPreferencesPrivate.h: new method signatures 11619 116202008-12-10 Anders Carlsson <andersca@apple.com> 11621 11622 Reviewed by Darin Adler. 11623 11624 Implement support for NPN_PostURL/NPN_PostURLNotify in WebKit. 11625 11626 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 11627 Add stopAllStreams. 11628 11629 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 11630 (WebKit::NetscapePluginInstanceProxy::stopAllStreams): 11631 Factored out this from ::destroy. 11632 11633 (WebKit::NetscapePluginInstanceProxy::destroy): 11634 Call stopAllStreams(). 11635 11636 (WebKit::NetscapePluginInstanceProxy::pluginHostDied): 11637 Ditto. 11638 11639 (WebKit::NetscapePluginInstanceProxy::loadURL): 11640 Handle post being true. This code has been copied from WebNetscapePluginView.mm (for now). 11641 116422008-12-10 Anders Carlsson <andersca@apple.com> 11643 11644 Reviewed by Darin Adler. 11645 11646 Move two NSData category methods to WebNSDataExtras.m. 11647 11648 * Misc/WebNSDataExtras.h: 11649 * Misc/WebNSDataExtras.m: 11650 (-[NSData _web_startsWithBlankLine]): 11651 (-[NSData _web_locationAfterFirstBlankLine]): 11652 * Plugins/WebNetscapePluginView.mm: 11653 116542008-12-10 Alice Liu <alice.liu@apple.com> 11655 11656 fixed https://bugs.webkit.org/show_bug.cgi?id=20685 11657 11658 Reviewed by Darin Adler. 11659 11660 * Misc/WebNSPasteboardExtras.mm: 11661 Ask image for its file extension instead of falling back on MIME type and file path. 11662 Also moved this code to before setting the pasteboard data so as not to set any if 11663 no extension can be determined. 11664 (-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]): 11665 11666 * WebView/WebHTMLView.mm: 11667 Fixed a separate but related long-standing bug of how the filename for the promised 11668 drag data is determined by asking the image for a proper file extension. 11669 (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): 11670 116712008-12-09 Anders Carlsson <andersca@apple.com> 11672 11673 Reviewed by Darin Adler. 11674 11675 Fix typecast. 11676 11677 * WebView/WebHTMLView.mm: 11678 (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]): 11679 116802008-12-09 Anders Carlsson <andersca@apple.com> 11681 11682 Reviewed by Darin Adler. 11683 11684 Implement software rendering of hosted plug-ins. 11685 11686 * Plugins/Hosted/NetscapePluginHostProxy.mm: 11687 (WKPCInvalidateRect): 11688 New MiG function. This is called by the plug-in host when it has drawn something. 11689 11690 * Plugins/Hosted/WebHostedNetscapePluginView.h: 11691 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 11692 (-[WebHostedNetscapePluginView createPlugin]): 11693 Create a software renderer. 11694 11695 (-[WebHostedNetscapePluginView destroyPlugin]): 11696 Destroy the software renderer. 11697 11698 (-[WebHostedNetscapePluginView drawRect:]): 11699 Draw using the software renderer. 11700 11701 * Plugins/Hosted/WebKitPluginClient.defs: 11702 Add InvalidateRect. 11703 117042008-12-09 Brett Wilson <brettw@chromium.org> 11705 11706 Reviewed by Dave Hyatt. 11707 11708 https://bugs.webkit.org/show_bug.cgi?id=22177 11709 11710 Add a callback on ChromeClient that the state of form elements on 11711 the page has changed. This is to allow clients implementing session 11712 saving to know when the current state is dirty. 11713 11714 * WebCoreSupport/WebChromeClient.h: 11715 (WebChromeClient::formStateDidChange): 11716 117172008-12-09 Anders Carlsson <andersca@apple.com> 11718 11719 Reviewed by Dan Bernstein. 11720 11721 Make sure to pause null events for hosted plug-ins as well. 11722 11723 * WebView/WebHTMLView.mm: 11724 (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]): 11725 117262008-12-09 Anders Carlsson <andersca@apple.com> 11727 11728 Reviewed by Darin Adler. 11729 11730 * Plugins/Hosted/NetscapePluginHostProxy.h: 11731 * Plugins/Hosted/NetscapePluginHostProxy.mm: 11732 (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): 11733 (WebKit::NetscapePluginHostProxy::~NetscapePluginHostProxy): 11734 Unfortunately we can't use a libdispatch source right now, because of <rdar://problem/6393180>. 11735 117362008-12-09 Timothy Hatcher <timothy@apple.com> 11737 11738 Implement a few methods needed to keep Dictionary.app working on Leopard. 11739 11740 <rdar://problem/6002160> Internal changes to WebKit in Safari 4 11741 Developer Preview might break Dictionary 11742 11743 Reviewed by Dan Bernstein. 11744 11745 * WebView/WebFrame.mm: 11746 (-[WebFrame convertNSRangeToDOMRange:]): Added. Calls _convertNSRangeToDOMRange. 11747 (-[WebFrame convertDOMRangeToNSRange:]): Added. Calls _convertDOMRangeToNSRange. 11748 * WebView/WebHTMLView.mm: 11749 (-[WebHTMLView _bridge]): Added. Returns the WebFrame, which has the methods 11750 that Dictionary.app is using. 11751 117522008-12-08 Anders Carlsson <andersca@apple.com> 11753 11754 Reviewed by Darin Adler. 11755 11756 More work towards getting NPN_GetURL working. 11757 11758 * Plugins/Hosted/HostedNetscapePluginStream.h: 11759 Inherit from NetscapePlugInStreamLoaderClient. 11760 11761 (WebKit::HostedNetscapePluginStream::streamID): 11762 * Plugins/Hosted/HostedNetscapePluginStream.mm: 11763 (WebKit::HostedNetscapePluginStream::startStream): 11764 Keep track of the resposne URL and the MIME type. Pass the response URL to the 11765 plug-in host. 11766 11767 (WebKit::HostedNetscapePluginStream::didFinishLoading): 11768 Disconnect the stream. 11769 11770 (WebKit::HostedNetscapePluginStream::start): 11771 Create a plug-in stream loader and start loading. 11772 11773 (WebKit::HostedNetscapePluginStream::stop): 11774 Cancel the load. 11775 11776 * Plugins/Hosted/NetscapePluginHostProxy.mm: 11777 (WKPCLoadURL): 11778 Fix the parameter order. 11779 11780 (WKPCCancelLoadURL): 11781 New function that cancels a load of a stream with a given reason. 11782 11783 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 11784 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 11785 (WebKit::NetscapePluginInstanceProxy::destroy): 11786 Stop the streams. 11787 11788 (WebKit::NetscapePluginInstanceProxy::pluginStream): 11789 Return a plug-in stream given a stream ID. 11790 11791 (WebKit::NetscapePluginInstanceProxy::disconnectStream): 11792 Remove the stream from the streams map. 11793 11794 (WebKit::NetscapePluginInstanceProxy::loadRequest): 11795 Create a stream and load it. 11796 11797 * Plugins/Hosted/WebKitPluginClient.defs: 11798 Add CancelLoadURL. 11799 11800 * Plugins/Hosted/WebKitPluginHost.defs: 11801 Add responseURL to StartStream. 11802 11803 * Plugins/WebBaseNetscapePluginView.h: 11804 * Plugins/WebBaseNetscapePluginView.mm: 11805 (-[WebBaseNetscapePluginView pluginPackage]): 11806 Move this down to the base class from WebNetscapePluginView. 11807 11808 * Plugins/WebNetscapePluginView.h: 11809 * Plugins/WebNetscapePluginView.mm: 11810 118112008-12-08 Dan Bernstein <mitz@apple.com> 11812 11813 Reviewed by John Sullivan. 11814 11815 - WebKit/mac part of tracking the global history item for a WebView 11816 11817 * WebView/WebView.mm: 11818 (-[WebView _globalHistoryItem]): Added. Returns the page's global 11819 history item. 11820 * WebView/WebViewPrivate.h: 11821 118222008-12-06 Simon Fraser <simon.fraser@apple.com> 11823 11824 Reviewed by Dave Hyatt 11825 11826 https://bugs.webkit.org/show_bug.cgi?id=15671 11827 11828 VisiblePosition::caretRect() was renaemd to absoluteCaretBounds(). 11829 11830 * WebView/WebFrame.mm: 11831 (-[WebFrame _caretRectAtNode:offset:affinity:]): 11832 118332008-12-06 David Kilzer <ddkilzer@apple.com> 11834 11835 Bug 22666: Clean up data structures used when collecting URLs of subresources for webarchives 11836 11837 <https://bugs.webkit.org/show_bug.cgi?id=22666> 11838 11839 Reviewed by Darin Adler. 11840 11841 * DOM/WebDOMOperations.mm: 11842 (-[DOMNode _subresourceURLs]): Changed from using Vector<KURL> to 11843 ListHashSet<KURL> when calling WebCore::Node::getSubresourceURLs(). 11844 118452008-12-05 Alexey Proskuryakov <ap@webkit.org> 11846 11847 Reviewed by Darin Adler. 11848 11849 <rdar://problem/6405599> Tiger Mail crashes when using "Mail Contents of This Page" 11850 in Safari before opening a mail message in Mail 11851 11852 * Carbon/CarbonWindowAdapter.m: Removed. 11853 * Carbon/CarbonWindowAdapter.mm: Copied from WebKit/mac/Carbon/CarbonWindowAdapter.m. 11854 (+[CarbonWindowAdapter initialize]): 11855 * History/WebBackForwardList.mm: 11856 (+[WebBackForwardList initialize]): 11857 * History/WebHistoryItem.mm: 11858 (+[WebHistoryItem initialize]): 11859 * Misc/WebElementDictionary.mm: 11860 (+[WebElementDictionary initialize]): 11861 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 11862 (+[WebHostedNetscapePluginView initialize]): 11863 * Plugins/WebBaseNetscapePluginView.mm: 11864 * Plugins/WebBasePluginPackage.m: Removed. 11865 * Plugins/WebBasePluginPackage.mm: Copied from WebKit/mac/Plugins/WebBasePluginPackage.m. 11866 (+[WebBasePluginPackage initialize]): 11867 * Plugins/WebNetscapePluginView.mm: 11868 (+[WebNetscapePluginView initialize]): 11869 * WebCoreSupport/WebEditorClient.mm: 11870 (+[WebEditCommand initialize]): 11871 * WebCoreSupport/WebFrameLoaderClient.mm: 11872 * WebView/WebArchive.mm: 11873 (+[WebArchivePrivate initialize]): 11874 * WebView/WebDataSource.mm: 11875 (+[WebDataSourcePrivate initialize]): 11876 * WebView/WebHTMLView.mm: 11877 (+[WebHTMLViewPrivate initialize]): 11878 (+[WebHTMLView initialize]): 11879 * WebView/WebResource.mm: 11880 (+[WebResourcePrivate initialize]): 11881 * WebView/WebView.mm: 11882 (+[WebViewPrivate initialize]): 11883 Call JSC::initializeThreading(); 11884 118852008-12-04 Stephanie Lewis <slewis@apple.com> 11886 11887 Fix build. 11888 11889 * Plugins/Hosted/NetscapePluginHostProxy.mm: 11890 (WKPCLoadURL): 11891 118922008-12-04 Anders Carlsson <andersca@apple.com> 11893 11894 Reviewed by Sam Weinig. 11895 11896 More work on streams. 11897 11898 * Plugins/Hosted/HostedNetscapePluginStream.h: Added. 11899 (WebKit::HostedNetscapePluginStream::create): 11900 * Plugins/Hosted/HostedNetscapePluginStream.mm: Added. 11901 (WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream): 11902 (WebKit::HostedNetscapePluginStream::startStreamWithResponse): 11903 (WebKit::HostedNetscapePluginStream::startStream): 11904 (WebKit::HostedNetscapePluginStream::didReceiveData): 11905 (WebKit::HostedNetscapePluginStream::didFinishLoading): 11906 (WebKit::HostedNetscapePluginStream::didReceiveResponse): 11907 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 11908 (WebKit::NetscapePluginInstanceProxy::pluginView): 11909 (WebKit::NetscapePluginInstanceProxy::hostProxy): 11910 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 11911 (WebKit::NetscapePluginInstanceProxy::PluginRequest::PluginRequest): 11912 (WebKit::NetscapePluginInstanceProxy::PluginRequest::requestID): 11913 (WebKit::NetscapePluginInstanceProxy::PluginRequest::request): 11914 (WebKit::NetscapePluginInstanceProxy::PluginRequest::frameName): 11915 (WebKit::NetscapePluginInstanceProxy::PluginRequest::didStartFromUserGesture): 11916 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): 11917 (WebKit::NetscapePluginInstanceProxy::performRequest): 11918 (WebKit::NetscapePluginInstanceProxy::evaluateJavaScript): 11919 (WebKit::NetscapePluginInstanceProxy::requestTimerFired): 11920 (WebKit::NetscapePluginInstanceProxy::loadRequest): 11921 * Plugins/Hosted/WebKitPluginHost.defs: 11922 119232008-12-04 Anders Carlsson <andersca@apple.com> 11924 11925 Reviewed by Sam Weinig. 11926 11927 Start implementing WKPCLoadURL. Currently this has copied a lot of code from WebNetscapePluginView 11928 but once we have a more complete implementation of NPStreams we can start refactoring things so that the 11929 implementations can share more code. 11930 11931 * Plugins/Hosted/NetscapePluginHostProxy.mm: 11932 (WKPCLoadURL): 11933 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 11934 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 11935 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): 11936 (WebKit::NetscapePluginInstanceProxy::loadURL): 11937 (WebKit::NetscapePluginInstanceProxy::performRequest): 11938 (WebKit::NetscapePluginInstanceProxy::requestTimerFired): 11939 (WebKit::NetscapePluginInstanceProxy::loadRequest): 11940 * Plugins/Hosted/WebKitPluginClient.defs: 11941 * Plugins/Hosted/WebKitPluginHost.defs: 11942 119432008-12-04 Anders Carlsson <andersca@apple.com> 11944 11945 Reviewed by Dan Bernstein. 11946 11947 Move requestWithURLCString to WebBaseNetscapePluginView. 11948 11949 * Plugins/WebBaseNetscapePluginView.h: 11950 * Plugins/WebBaseNetscapePluginView.mm: 11951 (-[WebBaseNetscapePluginView requestWithURLCString:]): 11952 * Plugins/WebNetscapePluginView.mm: 11953 119542008-12-03 Anders Carlsson <andersca@apple.com> 11955 11956 Reviewed by Sam Weinig. 11957 11958 Move WebPluginRequest to its own file. 11959 11960 * Plugins/WebNetscapePluginView.mm: 11961 * Plugins/WebPluginRequest.h: Added. 11962 * Plugins/WebPluginRequest.m: Added. 11963 (-[WebPluginRequest initWithRequest:frameName:notifyData:sendNotification:didStartFromUserGesture:]): 11964 (-[WebPluginRequest dealloc]): 11965 (-[WebPluginRequest request]): 11966 (-[WebPluginRequest frameName]): 11967 (-[WebPluginRequest isCurrentEventUserGesture]): 11968 (-[WebPluginRequest sendNotification]): 11969 (-[WebPluginRequest notifyData]): 11970 119712008-12-03 Anders Carlsson <andersca@apple.com> 11972 11973 Handle the CA model. 11974 11975 * Plugins/WebNetscapePluginView.mm: 11976 (-[WebNetscapePluginView setWindowIfNecessary]): 11977 119782008-12-03 Anders Carlsson <andersca@apple.com> 11979 11980 Reviewed by Kevin Decker. 11981 11982 <rdar://problem/6412293> 11983 Call NPP_SetWindow for CA plug-ins. 11984 11985 * Plugins/WebNetscapePluginView.mm: 11986 (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]): 11987 (-[WebNetscapePluginView restorePortState:]): 11988 (-[WebNetscapePluginView isNewWindowEqualToOldWindow]): 11989 (-[WebNetscapePluginView updateAndSetWindow]): 11990 (-[WebNetscapePluginView setWindowIfNecessary]): 11991 119922008-12-03 Anders Carlsson <andersca@apple.com> 11993 11994 Fix the release build. 11995 11996 * Plugins/Hosted/NetscapePluginHostProxy.mm: 11997 (WebKit::NetscapePluginHostProxy::deadNameNotificationCallback): 11998 119992008-12-03 Anders Carlsson <andersca@apple.com> 12000 12001 Reviewed by Dan Bernstein. 12002 12003 <rdar://problem/6412234> 12004 Don't crash if we can't launch the plug-in host. 12005 12006 * Plugins/Hosted/NetscapePluginHostManager.mm: 12007 (WebKit::NetscapePluginHostManager::instantiatePlugin): 12008 120092008-12-02 Anders Carlsson <andersca@apple.com> 12010 12011 Reviewed by Dan Bernstein. 12012 12013 Start processing messages sent to the client port. 12014 12015 * Plugins/Hosted/NetscapePluginHostProxy.h: 12016 * Plugins/Hosted/NetscapePluginHostProxy.mm: 12017 Add a map from ports to plug-in proxies. Turn the set of instances into a map from 12018 pluginID to instance proxy. 12019 12020 (WKPCStatusText): 12021 Look up the right instance proxy and call status(). 12022 12023 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 12024 (WebKit::NetscapePluginInstanceProxy::pluginID): 12025 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 12026 (WebKit::NetscapePluginInstanceProxy::status): 12027 Implement this. 12028 12029 * Plugins/Hosted/WebKitPluginClient.defs: 12030 Add the plug-in ID to StatusText. 12031 120322008-12-02 Gregory Hughes <ghughes@apple.com> 12033 12034 Reviewed by Beth Dakin. 12035 12036 Bug 22513: ZOOM: text selection does not send correct zoom bounds 12037 12038 When zoomed, text selection must send the zoom bounds in flipped 12039 screen coordinates. 12040 12041 * WebCoreSupport/WebViewFactory.mm: 12042 (-[WebViewFactory accessibilityConvertScreenRect:]): 12043 120442008-12-02 Anders Carlsson <andersca@apple.com> 12045 12046 Reviewed by Dan Bernstein. 12047 12048 Create a client mach port and pass it to the plug-in host. 12049 12050 * Plugins/Hosted/NetscapePluginHostManager.h: 12051 * Plugins/Hosted/NetscapePluginHostManager.mm: 12052 (WebKit::NetscapePluginHostManager::hostForPackage): 12053 (WebKit::NetscapePluginHostManager::spawnPluginHost): 12054 * Plugins/Hosted/NetscapePluginHostProxy.h: 12055 * Plugins/Hosted/NetscapePluginHostProxy.mm: 12056 (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): 12057 * Plugins/Hosted/WebKitPluginHost.defs: 12058 120592008-12-02 Anders Carlsson <andersca@apple.com> 12060 12061 Reviewed by Sam Weinig. 12062 12063 Let the plug-in views know if the plug-in host crashes. 12064 12065 * Plugins/Hosted/NetscapePluginHostManager.h: 12066 * Plugins/Hosted/NetscapePluginHostManager.mm: 12067 (WebKit::NetscapePluginHostManager::instantiatePlugin): 12068 * Plugins/Hosted/NetscapePluginHostProxy.h: 12069 * Plugins/Hosted/NetscapePluginHostProxy.mm: 12070 (WebKit::NetscapePluginHostProxy::pluginHostDied): 12071 (WebKit::NetscapePluginHostProxy::addPluginInstance): 12072 (WebKit::NetscapePluginHostProxy::removePluginInstance): 12073 12074 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 12075 (WebKit::NetscapePluginInstanceProxy::create): 12076 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 12077 Keep a pointer to the host proxy. 12078 12079 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): 12080 Add the instance to the host set. 12081 12082 (WebKit::NetscapePluginInstanceProxy::~NetscapePluginInstanceProxy): 12083 Remove the instance form the host set. 12084 12085 (WebKit::NetscapePluginInstanceProxy::pluginHostDied): 12086 Tell the plug-in view that the plug-in died. 12087 12088 * Plugins/Hosted/WebHostedNetscapePluginView.h: 12089 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 12090 (-[WebHostedNetscapePluginView createPlugin]): 12091 Pass the plug-in view to the instantiatePlugin. 12092 12093 (-[WebHostedNetscapePluginView pluginHostDied]): 12094 Handle the plug-in host crashing. 12095 12096 (-[WebHostedNetscapePluginView drawRect:]): 12097 Fill the plug-in view with a nice red shade if the plug-in crashes. 12098 120992008-12-01 Anders Carlsson <andersca@apple.com> 12100 12101 Reviewed by Dan Bernstein. 12102 12103 Recover if the plug-in host dies and we try to instantiate another plugin before we get the port death notification 12104 12105 * Plugins/Hosted/NetscapePluginHostManager.h: 12106 * Plugins/Hosted/NetscapePluginHostManager.mm: 12107 (WebKit::NetscapePluginHostManager::pluginHostDied): 12108 Remove the plug-in host from the map. 12109 12110 (WebKit::NetscapePluginHostManager::instantiatePlugin): 12111 NetscapePluginHostProxy is no longer refcounted. 12112 12113 * Plugins/Hosted/NetscapePluginHostProxy.h: 12114 This is no longer refcounted. Add a set of plug-in instances (unused for now). 12115 12116 * Plugins/Hosted/NetscapePluginHostProxy.mm: 12117 (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): 12118 Create a death notification port. 12119 12120 (WebKit::NetscapePluginHostProxy::pluginHostDied): 12121 Tell the manager that we're gone and delete ourselves. 12122 12123 (WebKit::NetscapePluginHostProxy::deathPortCallback): 12124 New CFMachPort callback. 12125 121262008-12-01 Anders Carlsson <andersca@apple.com> 12127 12128 Reviewed by Dan Bernstein. 12129 12130 Move instantiatePlugin to NetscapePluginHostManager. 12131 12132 * Plugins/Hosted/NetscapePluginHostManager.h: 12133 * Plugins/Hosted/NetscapePluginHostManager.mm: 12134 (WebKit::NetscapePluginHostManager::instantiatePlugin): 12135 * Plugins/Hosted/NetscapePluginHostProxy.h: 12136 * Plugins/Hosted/NetscapePluginHostProxy.mm: 12137 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 12138 (-[WebHostedNetscapePluginView createPlugin]): 12139 121402008-12-01 Anders Carlsson <andersca@apple.com> 12141 12142 Reviewed by Dan Bernstein. 12143 12144 Pass the plug-in host port directly to the instance proxy. 12145 12146 * Plugins/Hosted/NetscapePluginHostProxy.mm: 12147 (WebKit::NetscapePluginHostProxy::instantiatePlugin): 12148 * Plugins/Hosted/NetscapePluginInstanceProxy.h: 12149 (WebKit::NetscapePluginInstanceProxy::create): 12150 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: 12151 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): 12152 (WebKit::NetscapePluginInstanceProxy::resize): 12153 (WebKit::NetscapePluginInstanceProxy::destroy): 12154 (WebKit::NetscapePluginInstanceProxy::focusChanged): 12155 (WebKit::NetscapePluginInstanceProxy::windowFocusChanged): 12156 (WebKit::NetscapePluginInstanceProxy::windowFrameChanged): 12157 (WebKit::NetscapePluginInstanceProxy::startTimers): 12158 (WebKit::NetscapePluginInstanceProxy::mouseEvent): 12159 (WebKit::NetscapePluginInstanceProxy::stopTimers): 12160 121612008-12-01 Anders Carlsson <andersca@apple.com> 12162 12163 Try to fix the Tiger build. 12164 12165 * Plugins/WebNetscapePluginView.mm: 12166 121672008-12-01 Anders Carlsson <andersca@apple.com> 12168 12169 Rename _layer to _pluginLayer where I forgot to do so. 12170 12171 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 12172 (-[WebHostedNetscapePluginView destroyPlugin]): 12173 * Plugins/WebNetscapePluginView.h: 12174 * Plugins/WebNetscapePluginView.mm: 12175 (-[WebNetscapePluginView createPlugin]): 12176 (-[WebNetscapePluginView setLayer:]): 12177 (-[WebNetscapePluginView destroyPlugin]): 12178 121792008-12-01 Anders Carlsson <andersca@apple.com> 12180 12181 Reviewed by Adam Roben. 12182 12183 Make sure to re-insert layers as needed so they won't be lost when the layer backed 12184 view is removed from the view hierarchy. 12185 12186 * Plugins/Hosted/WebHostedNetscapePluginView.h: 12187 Add _pluginLayer ivar. 12188 12189 * Plugins/Hosted/WebHostedNetscapePluginView.mm: 12190 (-[WebHostedNetscapePluginView createPlugin]): 12191 Don't add the layer here. 12192 12193 (-[WebHostedNetscapePluginView setLayer:]): 12194 Instead, add it here. 12195 12196 (-[WebHostedNetscapePluginView destroyPlugin]): 12197 Set _pluginLayer to 0. 12198 12199 * Plugins/WebNetscapePluginView.mm: 12200 (-[WebNetscapePluginView createPlugin]): 12201 Don't add the layer here. 12202 12203 (-[WebNetscapePluginView setLayer:]): 12204 Do it here. 12205 122062008-11-30 Antti Koivisto <antti@apple.com> 12207 12208 Reviewed by Mark Rowe. 12209 12210 https://bugs.webkit.org/show_bug.cgi?id=22557 12211 12212 Report free size in central and thread caches too. 12213 12214 * Misc/WebCoreStatistics.mm: 12215 (+[WebCoreStatistics memoryStatistics]): 12216 122172008-11-29 Antti Koivisto <antti@apple.com> 12218 12219 Reviewed by Dan Bernstein. 12220 12221 https://bugs.webkit.org/show_bug.cgi?id=22557 12222 Add statistics for JavaScript GC heap. 12223 12224 * Misc/WebCoreStatistics.mm: 12225 (+[WebCoreStatistics javaScriptObjectsCount]): 12226 (+[WebCoreStatistics memoryStatistics]): 12227 122282008-11-29 Antti Koivisto <antti@apple.com> 12229 12230 Reviewed by Alexey Proskuryakov. 12231 12232 https://bugs.webkit.org/show_bug.cgi?id=22557 12233 12234 - Add purgeable memory statistics to cache statistics. 12235 - Add method for getting fastMalloc statistics. 12236 - Add method to force returning free memory back to system. 12237 12238 * Misc/WebCache.mm: 12239 (+[WebCache statistics]): 12240 * Misc/WebCoreStatistics.h: 12241 * Misc/WebCoreStatistics.mm: 12242 (+[WebCoreStatistics stopIgnoringWebCoreNodeLeaks]): 12243 (+[WebCoreStatistics memoryStatistics]): 12244 (+[WebCoreStatistics returnFreeMemoryToSystem]): 12245 122462008-11-26 Mark Rowe <mrowe@apple.com> 12247 12248 Fix the Tiger build. 12249 12250 mig.h does not always define __MigTypeCheck on Tiger, which leads to problems when the generated 12251 code is built with -Wundef. 12252 12253 * Plugins/Hosted/WebKitPluginHostTypes.h: 12254 122552008-11-26 Anders Carlsson <andersca@apple.com> 12256 12257 Fix build. 12258 12259 * Configurations/Base.xcconfig: 12260 122612008-11-26 Anders Carlsson <andersca@apple.com> 12262 12263 Reviewed by Mark Rowe. 12264 12265 Move WebHostedNetscapePluginView.{h|mm} to Plugins/Hosted. 12266 12267 (-[WebHostedNetscapePluginView handleMouseMoved:]): 12268 (-[WebHostedNetscapePluginView setAttributeKeys:andValues:]): 12269 Fix a leak. 12270 12271 (-[WebHostedNetscapePluginView createPlugin]): 12272 Instantiate the plug-in, store the plug-in proxy in the _proxy ivar. 12273 12274 (-[WebHostedNetscapePluginView loadStream]): 12275 (-[WebHostedNetscapePluginView shouldStop]): 12276 Add stubs for these. 12277 12278 (-[WebHostedNetscapePluginView updateAndSetWindow]): 12279 (-[WebHostedNetscapePluginView windowFocusChanged:]): 12280 (-[WebHostedNetscapePluginView destroyPlugin]): 12281 (-[WebHostedNetscapePluginView startTimers]): 12282 (-[WebHostedNetscapePluginView stopTimers]): 12283 (-[WebHostedNetscapePluginView focusChanged]): 12284 (-[WebHostedNetscapePluginView windowFrameDidChange:]): 12285 (-[WebHostedNetscapePluginView mouseDown:]): 12286 (-[WebHostedNetscapePluginView mouseUp:]): 12287 (-[WebHostedNetscapePluginView mouseDragged:]): 12288 (-[WebHostedNetscapePluginView mouseEntered:]): 12289 (-[WebHostedNetscapePluginView mouseExited:]): 12290 Call the proxy. 12291 12292 (-[WebHostedNetscapePluginView addWindowObservers]): 12293 (-[WebHostedNetscapePluginView removeWindowObservers]): 12294 Add/remove observers for when the window frame changes. 12295 12296 * Plugins/WebHostedNetscapePluginView.h: Removed. 12297 * Plugins/WebHostedNetscapePluginView.mm: Removed. 12298 122992008-11-26 Anders Carlsson <andersca@apple.com> 12300 12301 Reviewed by Mark Rowe. 12302 12303 Add the plug-in host proxy and plug-in instance proxy objects. 12304 12305 These are just simple objects that forward their calls to the plug-in host. 12306 12307 * Plugins/Hosted/NetscapePluginHostProxy.h: Added. 12308 (WebKit::NetscapePluginHostProxy::create): 12309 (WebKit::NetscapePluginHostProxy::port): 12310 * Plugins/Hosted/NetscapePluginHostProxy.mm: Added. 12311 (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): 12312 (WebKit::NetscapePluginHostProxy::instantiatePlugin): 12313 * Plugins/Hosted/NetscapePluginInstanceProxy.h: Added. 12314 (WebKit::NetscapePluginInstanceProxy::create): 12315 (WebKit::NetscapePluginInstanceProxy::renderContextID): 12316 (WebKit::NetscapePluginInstanceProxy::useSoftwareRenderer): 12317 * Plugins/Hosted/NetscapePluginInstanceProxy.mm: Added. 12318 (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): 12319 (WebKit::NetscapePluginInstanceProxy::resize): 12320 (WebKit::NetscapePluginInstanceProxy::destroy): 12321 (WebKit::NetscapePluginInstanceProxy::focusChanged): 12322 (WebKit::NetscapePluginInstanceProxy::windowFocusChanged): 12323 (WebKit::NetscapePluginInstanceProxy::windowFrameChanged): 12324 (WebKit::NetscapePluginInstanceProxy::startTimers): 12325 (WebKit::NetscapePluginInstanceProxy::mouseEvent): 12326 (WebKit::NetscapePluginInstanceProxy::stopTimers): 12327 123282008-11-26 Anders Carlsson <andersca@apple.com> 12329 12330 Reviewed by Dan Bernstein, Mark Rowe and Kevin Decker. 12331 12332 Add the plug-in host manager singleton. 12333 12334 * Plugins/Hosted/NetscapePluginHostManager.h: Added. 12335 * Plugins/Hosted/NetscapePluginHostManager.mm: Added. 12336 12337 (WebKit::NetscapePluginHostManager::hostForPackage): 12338 If there's an existing host proxy available, just return it. Otherwise spawn a new plug-in host and 12339 create a new plug-in host proxy from the new plug-in host port. 12340 12341 (WebKit::NetscapePluginHostManager::spawnPluginHost): 12342 Pass the plug-in host path and the preferred CPU type to the plug-in agent. When the plug-in host has 12343 finished launching, pass it the path to the plug-in bundle. 12344 12345 (WebKit::NetscapePluginHostManager::initializeVendorPort): 12346 Check in with the plug-in agent and get the new plug-in vendor port back. 12347 123482008-11-26 Anders Carlsson <andersca@apple.com> 12349 12350 Reviewed by Mark Rowe. 12351 12352 * Plugins/Hosted/WebKitPluginHostTypes.h: 12353 Add copyright headers and fix the spacing around the *'s. 12354 123552008-11-26 Anders Carlsson <andersca@apple.com> 12356 12357 Reviewed by Dan Bernstein. 12358 12359 * Plugins/Hosted/WebKitPluginHost.defs: 12360 Add copyright headers. 12361 12362 * Plugins/Hosted/WebKitPluginHostTypes.h: Added. 12363 Forgot to add this. 12364 123652008-11-26 Anders Carlsson <andersca@apple.com> 12366 12367 Reviewed by Dan Bernstein. 12368 12369 Add plug-in host .defs. 12370 12371 * Plugins/Hosted/WebKitPluginAgent.defs: Added. 12372 * Plugins/Hosted/WebKitPluginAgentReply.defs: Added. 12373 * Plugins/Hosted/WebKitPluginClient.defs: Added. 12374 * Plugins/Hosted/WebKitPluginHost.defs: Added. 12375 * Plugins/Hosted/WebKitPluginHostTypes.defs: Added. 12376 123772008-11-26 Anders Carlsson <andersca@apple.com> 12378 12379 Reviewed by Mark Rowe and Kevin Decker. 12380 12381 Minor plug-in changes. 12382 12383 * Plugins/WebBaseNetscapePluginView.h: 12384 Add add/remove observer method declarations. 12385 12386 * Plugins/WebBaseNetscapePluginView.mm: 12387 (-[WebBaseNetscapePluginView isFlipped]): 12388 Move this down from WebNetscapePluginView. 12389 12390 * Plugins/WebNetscapePluginPackage.h: 12391 * Plugins/WebNetscapePluginPackage.m: 12392 (-[WebNetscapePluginPackage pluginHostArchitecture]): 12393 Getter for the plug-in host architecture. 12394 12395 * Plugins/WebNetscapePluginView.mm: 12396 123972008-11-25 Dan Bernstein <mitz@apple.com> 12398 12399 Reviewed by Mark Rowe. 12400 12401 - include the text direction submenu in context menus when appropriate 12402 12403 * WebView/WebPreferences.mm: 12404 (+[WebPreferences initialize]): Changed the default 12405 textDirectionSubmenuInclusionBehavior to "automatically", which includes 12406 the menu when the selection is confined to a single paragraph the either 12407 has right-to-left base writing direction or contains right-to-left or 12408 embedded text. Left the default for Tiger and Leopard to be "never". 12409 124102008-11-24 Darin Fisher <darin@chromium.org> 12411 12412 Fix bustage. 12413 12414 * History/WebHistory.mm: 12415 124162008-11-24 Glenn Wilson <gwilson@chromium.org> 12417 12418 Reviewed by Alexey Proskuryakov. 12419 12420 http://bugs.webkit.org/show_bug.cgi?id=15643 12421 12422 Added API support for the "trailing whitespace" work-around. This includes an APIs 12423 to get and set the state of this configuration variable. 12424 12425 * WebCoreSupport/WebEditorClient.h: 12426 * WebCoreSupport/WebEditorClient.mm: 12427 (WebEditorClient::selectTrailingWhitespaceEnabled): 12428 * WebView/WebView.mm: 12429 (-[WebView setSelectTrailingWhitespaceEnabled:]): 12430 (-[WebView isSelectTrailingWhitespaceEnabled]): 12431 (-[WebView setSmartInsertDeleteEnabled:]): 12432 * WebView/WebViewPrivate.h: 12433 124342008-11-24 Darin Adler <darin@apple.com> 12435 12436 Reviewed by Dan Bernstein. 12437 12438 - https://bugs.webkit.org/show_bug.cgi?id=22470 12439 remove unneeded URL argument from FrameLoaderClient::updateGlobalHistory 12440 12441 * WebCoreSupport/WebFrameLoaderClient.h: Remove argument. 12442 * WebCoreSupport/WebFrameLoaderClient.mm: 12443 (WebFrameLoaderClient::updateGlobalHistory): Get the URL from the 12444 DocumentLoader, just as we do the title and the failure flag. 12445 124462008-11-24 Darin Adler <darin@apple.com> 12447 12448 Reviewed by Dan Bernstein. 12449 12450 - finish https://bugs.webkit.org/show_bug.cgi?id=22295 12451 track which history items are from page load failures 12452 12453 Last time around I did this only for the back/forward list and missed the 12454 global history list. 12455 12456 * History/WebHistory.mm: 12457 (-[WebHistory _visitedURL:withTitle:wasFailure:]): Added wasFailure argument. 12458 Set the flag on the newly created history item. Also eliminated the use of 12459 autorelease on the added-items array. 12460 * History/WebHistoryInternal.h: Ditto. 12461 12462 * WebCoreSupport/WebFrameLoaderClient.mm: 12463 (WebFrameLoaderClient::updateGlobalHistory): Added code to check for failure 12464 and pass the argument in to WebHistory. Given that this function gets other 12465 data from the DocumentLoader, I think we should get rid of the KURL argument, 12466 but that's a separate issue so I don't do it in this patch. 12467 124682008-11-24 Simon Fraser <simon.fraser@apple.com> 12469 12470 Fix call to Frame::selectionBounds in Tiger build. 12471 12472 * WebView/WebHTMLView.mm: 12473 (-[WebHTMLView _lookUpInDictionaryFromMenu:]): 12474 124752008-11-24 Simon Fraser <simon.fraser@apple.com> 12476 12477 Reviewed by Dan Bernstein 12478 12479 Via: https://bugs.webkit.org/show_bug.cgi?id=22433 12480 12481 Rename RenderView::selectionRect() to selectionBounds(), to remove 12482 longstanding ambiguity with the base class selectionRect() method. 12483 Do the same on Frame for consistency with RenderView. 12484 12485 * WebView/WebHTMLView.mm: 12486 (-[WebHTMLView _lookUpInDictionaryFromMenu:]): 12487 (-[WebHTMLView selectionRect]): 12488 (-[WebHTMLView selectionImageRect]): 12489 124902008-11-20 Pierre-Olivier Latour <pol@apple.com> 12491 12492 Reviewed by Dan Bernstein. 12493 12494 WebKit should be using Device RGB colorspace everywhere for 12495 consistency. 12496 12497 https://bugs.webkit.org/show_bug.cgi?id=22300 12498 12499 * WebView/WebHTMLView.mm: 12500 (-[WebHTMLView _dragImageForURL:withLabel:]): 12501 (-[WebHTMLView _colorAsString:]): 12502 125032008-11-20 Darin Adler <darin@apple.com> 12504 12505 Earlier version reviewed by Justin Garcia. 12506 12507 - part of fix for <rdar://problem/4108572> REGRESSION: Can't extend selection with shift-arrow in read only mode 12508 Also resolves <rdar://problem/5000134>. 12509 12510 * WebView/WebHTMLView.mm: Removed some unused code, and made the Tiger workaround for bug 3789278 12511 be Tiger-only. 12512 (-[WebHTMLView resignFirstResponder]): Removed code setting unused resigningFirstResponder flag. 12513 (-[WebHTMLView _wantsKeyDownForEvent:]): Added. Returns YES. 12514 (-[WebHTMLView insertText:]): Don't try to insert text if the selection is not editable. We used 12515 to prevent even processing the input, but that's not practical since some commands need to work 12516 even in non-editable regions. 12517 125182008-11-20 Anders Carlsson <andersca@apple.com> 12519 12520 Reviewed by Jon Honeycutt. 12521 12522 Move some frame/page checking code down to the base class. 12523 12524 * Plugins/WebBaseNetscapePluginView.mm: 12525 (-[WebBaseNetscapePluginView start]): 12526 * Plugins/WebNetscapePluginView.mm: 12527 (-[WebNetscapePluginView _createPlugin]): 12528 125292008-11-19 Anders Carlsson <andersca@apple.com> 12530 12531 Reviewed by Dan Bernstein. 12532 12533 Test: plugins/netscape-plugin-setwindow-size-2.html 12534 12535 Fix bug where NPP_SetWindow wasn't getting called for some plug-ins. 12536 12537 * Plugins/WebNetscapePluginView.mm: 12538 (-[WebNetscapePluginView updateAndSetWindow]): 12539 Don't bail if the drawing model is not the CA drawing model. Remove some code 12540 that was doing the wrong thing. 12541 125422008-11-19 Darin Fisher <darin@chromium.org> 12543 12544 Reviewed by Geoff Garen. 12545 12546 https://bugs.webkit.org/show_bug.cgi?id=22345 12547 Define ScriptValue as a thin container for a JSC::Value*. 12548 12549 * WebView/WebFrame.mm: 12550 (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): 12551 * WebView/WebView.mm: 12552 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): 12553 125542008-11-19 Anders Carlsson <andersca@apple.com> 12555 12556 Reviewed by Sam Weinig. 12557 12558 <rdar://problem/6383762> WebKit r38340 crash on key press in plugin 12559 12560 Set the value to 0 before calling NPP_GetValue, in case the plug-in returns NPERR_NO_ERROR but does not 12561 update the value. 12562 12563 * Plugins/WebNetscapePluginView.mm: 12564 (-[WebNetscapePluginView createPlugin]): 12565 125662008-11-19 Anders Carlsson <andersca@apple.com> 12567 12568 Reviewed by Sam Weinig. 12569 12570 Make sure to copy the MIME type. 12571 12572 * Plugins/WebBaseNetscapePluginView.mm: 12573 (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]): 12574 125752008-11-19 Geoffrey Garen <ggaren@apple.com> 12576 12577 Reviewed by Darin Adler. 12578 12579 First step toward fixing <rdar://problem/6263293> WebScriptDebugDelegate 12580 should use intptr_t for sourceId, not int 12581 12582 Added a conditional typedef (currently disabled) to switch sourceId to 12583 intptr_t in non-Tiger, non-Leopard builds. 12584 12585 * DefaultDelegates/WebDefaultScriptDebugDelegate.m: 12586 (-[WebDefaultScriptDebugDelegate webView:didParseSource:fromURL:sourceId:forWebFrame:]): 12587 (-[WebDefaultScriptDebugDelegate webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]): 12588 (-[WebDefaultScriptDebugDelegate webView:didEnterCallFrame:sourceId:line:forWebFrame:]): 12589 (-[WebDefaultScriptDebugDelegate webView:willExecuteStatement:sourceId:line:forWebFrame:]): 12590 (-[WebDefaultScriptDebugDelegate webView:willLeaveCallFrame:sourceId:line:forWebFrame:]): 12591 (-[WebDefaultScriptDebugDelegate webView:exceptionWasRaised:sourceId:line:forWebFrame:]): 12592 * WebView/WebScriptDebugDelegate.h: 12593 * WebView/WebScriptDebugger.mm: 12594 (WebScriptDebugger::sourceParsed): 12595 (WebScriptDebugger::callEvent): 12596 (WebScriptDebugger::atStatement): 12597 (WebScriptDebugger::returnEvent): 12598 (WebScriptDebugger::exception): 12599 126002008-11-18 Dan Bernstein <mitz@apple.com> 12601 12602 Reviewed by Mark Rowe. 12603 12604 - fix https://bugs.webkit.org/show_bug.cgi?id=22331 12605 <rdar://problem/6381657> REGRESSION: Contextual menu no longer has an "Inspect Element" item 12606 12607 * WebView/WebUIDelegatePrivate.h: Reorder new enum values after existing 12608 ones. 12609 126102008-11-17 Beth Dakin <bdakin@apple.com> 12611 12612 Reviewed by Adele Peterson. 12613 12614 Fix for <rdar://problem/6373102> REGRESSION (r36919): In a new mail 12615 message, the caret appears in message body by default 12616 12617 This fixes a regression caused by http://trac.webkit.org/changeset/36919. 12618 That change was too sweeping; we do not want to 12619 unconditionally set the page to be active, but we can be looser 12620 than the original constraints. This patch set the window active if 12621 the first responder is or is a descendant of the main frame's frame 12622 view. 12623 12624 * WebView/WebView.mm: 12625 (-[WebView _updateFocusedAndActiveStateForFrame:]): 12626 126272008-11-18 Alexey Proskuryakov <ap@webkit.org> 12628 12629 Reviewed by Darin Adler. 12630 12631 https://bugs.webkit.org/show_bug.cgi?id=22337 12632 Enable workers by default 12633 12634 * Configurations/WebKit.xcconfig: Define ENABLE_WORKERS (change from ENABLE_WORKER_THREADS, 12635 which was accidentally committed before). 12636 126372008-11-17 Geoffrey Garen <ggaren@apple.com> 12638 12639 Not reviewed. 12640 12641 Try to fix Mac build. 12642 12643 * WebView/WebScriptDebugDelegate.mm: 12644 126452008-11-17 Pierre-Olivier Latour <pol@apple.com> 12646 12647 Reviewed by Sam Weinig. 12648 12649 Added SPI to allow pausing a running CSS transition or animation 12650 at a given time for testing purposes. 12651 12652 https://bugs.webkit.org/show_bug.cgi?id=21261 12653 12654 * WebView/WebFrame.mm: 12655 (-[WebFrame _pauseAnimation:onNode:atTime:]): 12656 (-[WebFrame _pauseTransitionOfProperty:onNode:atTime:]): 12657 * WebView/WebFramePrivate.h: 12658 126592008-11-17 Geoffrey Garen <ggaren@apple.com> 12660 12661 Reviewed by Sam Weinig. 12662 12663 Updated for JavaScriptCore renames. 12664 12665 * ForwardingHeaders/runtime/Completion.h: Copied from ForwardingHeaders/runtime/Interpreter.h. 12666 * ForwardingHeaders/runtime/Interpreter.h: Removed. 12667 * WebView/WebScriptDebugDelegate.mm: 12668 126692008-11-16 Greg Bolsinga <bolsinga@apple.com> 12670 12671 Reviewed by Darin Adler. 12672 12673 https://bugs.webkit.org/show_bug.cgi?id=21810 12674 Remove use of static C++ objects that are destroyed at exit time (destructors) 12675 12676 Use DEFINE_STATIC_LOCAL for static RetainPtr<T> 12677 12678 * Misc/WebNSPasteboardExtras.mm: Use DEFINE_STATIC_LOCAL 12679 (+[NSPasteboard _web_writableTypesForURL]): 12680 (_createWritableTypesForImageWithoutArchive): Created so accessor has one line initialization 12681 (_writableTypesForImageWithoutArchive): Use create function for one line initialization 12682 (_createWritableTypesForImageWithArchive): Created so accessor has one line initialization 12683 (_writableTypesForImageWithArchive): Use create function for one line initialization 12684 * WebCoreSupport/WebPasteboardHelper.mm: Use DEFINE_STATIC_LOCAL 12685 (WebPasteboardHelper::insertablePasteboardTypes): 12686 * WebView/WebHTMLRepresentation.mm: Use DEFINE_STATIC_LOCAL 12687 (+[WebHTMLRepresentation supportedMIMETypes]): 12688 (+[WebHTMLRepresentation supportedNonImageMIMETypes]): 12689 (+[WebHTMLRepresentation supportedImageMIMETypes]): 12690 126912008-11-16 Darin Adler <darin@apple.com> 12692 12693 Reviewed by Dan Bernstein. 12694 12695 - https://bugs.webkit.org/show_bug.cgi?id=22295 12696 track which history items are from page load failures 12697 12698 * History/WebHistoryItem.mm: Added lastVisitWasFailureKey. 12699 (-[WebHistoryItem initFromDictionaryRepresentation:]): Set the lastVisitWasFailure 12700 flag in the history item if the dictionary had lastVisitWasFailureKey true. 12701 (-[WebHistoryItem dictionaryRepresentation]): Set the lastVisitWasFailureKey boolean 12702 in the dictionary if the history item had the lastVisitWasFailure flag. 12703 (-[WebHistoryItem lastVisitWasFailure]): Added. 12704 12705 * History/WebHistoryItemInternal.h: Moved include of WebBackForwardList here from 12706 WebHistoryItemPrivate.h; removed other unneeded includes. 12707 12708 * History/WebHistoryItemPrivate.h: Added lastVisitWasFailure method. 12709 Removed unneeded includes. 12710 12711 * Misc/WebNSDictionaryExtras.h: Added _webkit_boolForKey. 12712 * Misc/WebNSDictionaryExtras.m: 12713 (-[NSDictionary _webkit_boolForKey:]): Added. 12714 127152008-11-14 Greg Bolsinga <bolsinga@apple.com> 12716 12717 Reviewed by Darin Adler. 12718 12719 https://bugs.webkit.org/show_bug.cgi?id=21810 12720 Remove use of static C++ objects that are destroyed at exit time (destructors) 12721 12722 Create DEFINE_STATIC_LOCAL macro. Change static local objects to leak to avoid 12723 exit-time destructor. Update code that was changed to fix this issue that ran 12724 into a gcc bug (<rdar://problem/6354696> Codegen issue with C++ static reference 12725 in gcc build 5465). Also typdefs for template types needed to be added in some 12726 cases so the type could make it through the macro successfully. 12727 12728 Basically code of the form: 12729 static T m; 12730 becomes: 12731 DEFINE_STATIC_LOCAL(T, m, ()); 12732 12733 Also any code of the form: 12734 static T& m = *new T; 12735 also becomes: 12736 DEFINE_STATIC_LOCAL(T, m, ()); 12737 12738 * ForwardingHeaders/wtf/StdLibExtras.h: Added. 12739 * History/WebBackForwardList.mm: 12740 (backForwardLists): 12741 * History/WebHistoryItem.mm: 12742 (historyItemWrappers): 12743 * Misc/WebStringTruncator.m: 12744 (fontFromNSFont): 12745 * Plugins/WebBaseNetscapePluginStream.mm: 12746 (streams): 12747 * WebView/WebView.mm: 12748 (aeDescFromJSValue): 12749 127502008-11-14 Dan Bernstein <mitz@apple.com> 12751 12752 Reviewed by Darin Adler. 12753 12754 - <rdar://problem/6234333> Implement action methods for setting and clearing character-level directionality 12755 - part of <rdar://problem/6234337> Add a Text Direction menu to the default context menu when appropriate 12756 12757 * WebCoreSupport/WebViewFactory.mm: 12758 (-[WebViewFactory contextMenuItemTagTextDirectionMenu]): Added. 12759 * WebView/WebFrame.mm: 12760 (core): Added a convertor from WebTextDirectionSubmenuInclusionBehavior 12761 to WebCore::TextDirectionSubmenuInclusionBehavior. 12762 * WebView/WebFrameInternal.h: 12763 * WebView/WebHTMLView.mm: 12764 Added makeTextWritingDirectionLeftToRight:, 12765 makeTextWritingDirectionNatural: and 12766 makeTextWritingDirectionRightToLeft: using the WEBCORE_COMMAND macro. 12767 * WebView/WebPreferenceKeysPrivate.h: 12768 Added WebKitTextDirectionSubmenuInclusionBehaviorPreferenceKey. 12769 * WebView/WebPreferences.mm: 12770 (+[WebPreferences initialize]): Set the default Text Direction 12771 submenu inclusion behavior to never include. 12772 (-[WebPreferences textDirectionSubmenuInclusionBehavior]): Added this 12773 accessor. 12774 (-[WebPreferences setTextDirectionSubmenuInclusionBehavior:]): Ditto. 12775 * WebView/WebPreferencesPrivate.h: Defined the 12776 WebTextDirectionSubmenuInclusionBehavior enum and declared 12777 accessors. 12778 * WebView/WebUIDelegatePrivate.h: 12779 * WebView/WebView.mm: 12780 (-[WebView _preferencesChangedNotification:]): Added code to transfer 12781 the Text Direction submenu inclusion behavior preference to WebCore 12782 settings. 12783 127842008-11-14 Darin Adler <darin@apple.com> 12785 12786 Reviewed by Mark Rowe. 12787 12788 - fix https://bugs.webkit.org/show_bug.cgi?id=22222 12789 selectKeyViewPrecedingView: with document view that can't be first responder 12790 makes WebFrameView be first responder 12791 12792 * WebView/WebFrameView.mm: (-[WebFrameView becomeFirstResponder]): 12793 Moved the acceptsFirstResponder special case inside the if statement so it won't 12794 run in the "selecting previous" case. Also removed the "just before shipping Tiger" 12795 code that doesn't need to be here any more. 12796 127972008-11-13 Mark Rowe <mrowe@apple.com> 12798 12799 Fix the build. 12800 12801 Don't use NSPICTPboardType on systems where it is deprecated. The system will take care of converting 12802 from this format to a format that we can understand. 12803 12804 * WebCoreSupport/WebPasteboardHelper.mm: 12805 (WebPasteboardHelper::insertablePasteboardTypes): 12806 * WebView/WebHTMLView.mm: 12807 (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]): 12808 (+[WebHTMLView _insertablePasteboardTypes]): 12809 (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]): 12810 128112008-11-13 John Sullivan <sullivan@apple.com> 12812 12813 fixed <rdar://problem/6361578> Web Kit UI strings: a few edits 12814 12815 Reviewed by Tim Hatcher 12816 12817 * Misc/WebKitErrors.m: 12818 "Cannot show content with specified mime type" -> "Content with specified MIME type can't be shown" 12819 "Cannot show URL" -> "The URL can't be shown" 12820 "Cannot find plug-in" -> "The plug-in can't be found" 12821 "Cannot load plug-in" -> "The plug-in can't be loaded" 12822 12823 * Panels/English.lproj/WebAuthenticationPanel.nib/classes.nib: 12824 * Panels/English.lproj/WebAuthenticationPanel.nib/info.nib: 12825 * Panels/English.lproj/WebAuthenticationPanel.nib/keyedobjects.nib: Added. 12826 * Panels/English.lproj/WebAuthenticationPanel.nib/objects.nib: Removed. 12827 Changed placeholder fine print in the nib to match one of the two strings it might be replaced by. 12828 This automagically updated the nib to a newer format, hence the objects -> keyedobjects change. 12829 I could have changed the placeholder fine print to be empty but this lets localizers understand 12830 the dialog layout better. 12831 12832 * Panels/WebAuthenticationPanel.m: 12833 (-[WebAuthenticationPanel setUpForChallenge:]): 12834 "you need to log in" -> "you must log in" 12835 "Your log-in information" -> "Your login information" 12836 "The name or password entered" -> "The user name or password you entered" 12837 "Please try again." -> "Make sure you're entering them correctly, and then try again." 12838 128392008-11-12 Stephanie Lewis <slewis@apple.com> 12840 12841 Fix Mac build. 12842 12843 * Panels/WebAuthenticationPanel.m: 12844 128452008-11-12 John Sullivan <sullivan@apple.com> 12846 12847 fixed <rdar://problem/3839110> Authentication dialogs talk about passwords being sent "in the clear" 12848 12849 Reviewed by Tim Hatcher 12850 12851 * Panels/WebAuthenticationPanel.m: 12852 (-[WebAuthenticationPanel setUpForChallenge:]): 12853 use "unencrypted" instead of "in the clear". Also, use the "Your log-in information 12854 will be sent securely" version when the receiving server is https, regardless of 12855 whether it uses basic or digest authentication. 12856 128572008-11-12 Darin Adler <darin@apple.com> 12858 12859 Reviewed by Mark Rowe. 12860 12861 - fix https://bugs.webkit.org/show_bug.cgi?id=22223 12862 <rdar://problem/6366864> REGRESSION(r38245): "View Source" crashes the browser 12863 12864 * WebView/WebFrameView.mm: (-[WebFrameView viewDidMoveToWindow]): 12865 Add missing null check. 12866 128672008-11-12 Anders Carlsson <andersca@apple.com> 12868 12869 Reviewed by Kevin Decker. 12870 12871 Fix stupid bug. 12872 12873 * Plugins/WebNetscapePluginView.mm: 12874 (-[WebNetscapePluginView createPlugin]): 12875 128762008-11-10 Tor Arne Vestbø <tavestbo@trolltech.com> 12877 12878 Reviewed by Simon Hausmann. 12879 12880 Move _web_encodingForResource from WebKit into WebCore and change return type 12881 12882 This change is needed to implement NSAPI in WebCore for Mac, see: 12883 12884 https://bugs.webkit.org/show_bug.cgi?id=21427 12885 12886 12887 * Misc/WebKitNSStringExtras.m: 12888 (+[NSString _web_encodingForResource:]): 12889 128902008-11-10 Tor Arne Vestbø <tavestbo@trolltech.com> 12891 12892 Reviewed by Simon Hausmann. 12893 12894 Moved the implementation of _webkit_isCaseInsensitiveEqualToString to 12895 WebCore's WebCoreNSStringExtras as _stringIsCaseInsensitiveEqualToString. 12896 12897 This change is needed to implement NSAPI in WebCore for Mac, see: 12898 12899 https://bugs.webkit.org/show_bug.cgi?id=21427 12900 12901 * Misc/WebKitNSStringExtras.m: 12902 (-[NSString _webkit_isCaseInsensitiveEqualToString:]): 12903 129042008-11-11 Dan Bernstein <mitz@apple.com> 12905 12906 Reviewed by Adam Roben. 12907 12908 WebKit/mac part of adding a master volume control for media elements in a WebView 12909 12910 * WebView/WebView.mm: 12911 (-[WebView setMediaVolume:]): Added. 12912 (-[WebView mediaVolume]): Added. 12913 * WebView/WebViewPrivate.h: 12914 129152008-11-11 Aaron Golden <agolden@apple.com> 12916 12917 Bug 22134: -[WebHistoryItem dictionaryRepresentation] accesses past the end of a vector 12918 12919 <https://bugs.webkit.org/show_bug.cgi?id=22134> 12920 12921 Reviewed by Geoff Garen. 12922 12923 * History/WebHistoryItem.mm: 12924 (-[WebHistoryItem initFromDictionaryRepresentation:]): 12925 (-[WebHistoryItem dictionaryRepresentation]): 12926 129272008-11-10 Anders Carlsson <andersca@apple.com> 12928 12929 Reviewed by Kevin Decker. 12930 12931 Move renewGState to the base class. 12932 12933 * Plugins/WebBaseNetscapePluginView.mm: 12934 (-[WebBaseNetscapePluginView renewGState]): 12935 * Plugins/WebNetscapePluginView.mm: 12936 129372008-11-10 Anders Carlsson <andersca@apple.com> 12938 12939 Reviewed by Kevin Decker. 12940 12941 Move start, stop and all the related methods down to WebBaseNetscapePluginView. 12942 12943 * Plugins/WebBaseNetscapePluginView.h: 12944 * Plugins/WebBaseNetscapePluginView.mm: 12945 (-[WebBaseNetscapePluginView updateAndSetWindow]): 12946 (-[WebBaseNetscapePluginView addWindowObservers]): 12947 (-[WebBaseNetscapePluginView removeWindowObservers]): 12948 (-[WebBaseNetscapePluginView start]): 12949 (-[WebBaseNetscapePluginView stop]): 12950 (-[WebBaseNetscapePluginView viewWillMoveToWindow:]): 12951 (-[WebBaseNetscapePluginView viewWillMoveToSuperview:]): 12952 (-[WebBaseNetscapePluginView viewDidMoveToWindow]): 12953 (-[WebBaseNetscapePluginView viewWillMoveToHostWindow:]): 12954 (-[WebBaseNetscapePluginView viewDidMoveToHostWindow]): 12955 (-[WebBaseNetscapePluginView windowWillClose:]): 12956 (-[WebBaseNetscapePluginView windowBecameKey:]): 12957 (-[WebBaseNetscapePluginView windowResignedKey:]): 12958 (-[WebBaseNetscapePluginView windowDidMiniaturize:]): 12959 (-[WebBaseNetscapePluginView windowDidDeminiaturize:]): 12960 (-[WebBaseNetscapePluginView loginWindowDidSwitchFromUser:]): 12961 (-[WebBaseNetscapePluginView loginWindowDidSwitchToUser:]): 12962 (-[WebBaseNetscapePluginView preferencesHaveChanged:]): 12963 * Plugins/WebNetscapePluginView.h: 12964 * Plugins/WebNetscapePluginView.mm: 12965 129662008-11-10 Anders Carlsson <andersca@apple.com> 12967 12968 Reviewed by Kevin Decker. 12969 12970 Move rightMouseDown, rightMouseUp and sendActivateEvent to the base plugin view. 12971 Add stubs for createPlugin, loadStream, shouldStop and destroyPlugin. 12972 12973 * Plugins/WebBaseNetscapePluginView.h: 12974 * Plugins/WebBaseNetscapePluginView.mm: 12975 (-[WebBaseNetscapePluginView windowFocusChanged:]): 12976 (-[WebBaseNetscapePluginView createPlugin]): 12977 (-[WebBaseNetscapePluginView loadStream]): 12978 (-[WebBaseNetscapePluginView destroyPlugin]): 12979 (-[WebBaseNetscapePluginView sendActivateEvent:]): 12980 (-[WebBaseNetscapePluginView rightMouseDown:]): 12981 (-[WebBaseNetscapePluginView rightMouseUp:]): 12982 * Plugins/WebNetscapePluginView.mm: 12983 (-[WebNetscapePluginView windowFocusChanged:]): 12984 129852008-11-10 Anders Carlsson <andersca@apple.com> 12986 12987 Reviewed by Kevin Decker. 12988 12989 Factor plug-in type specific code out to three new methods, createPlugin, destroyPlugin and loadStream. 12990 12991 * Plugins/WebNetscapePluginView.mm: 12992 (-[WebNetscapePluginView createPlugin]): 12993 (-[WebNetscapePluginView loadStream]): 12994 (-[WebNetscapePluginView start]): 12995 (-[WebNetscapePluginView shouldStop]): 12996 (-[WebNetscapePluginView destroyPlugin]): 12997 (-[WebNetscapePluginView stop]): 12998 129992008-11-10 Anders Carlsson <andersca@apple.com> 13000 13001 Fix Tiger build. 13002 13003 * Plugins/WebNetscapePluginPackage.m: 13004 (-[WebNetscapePluginPackage load]): 13005 130062008-11-10 Anders Carlsson <andersca@apple.com> 13007 13008 Reviewed by Sam Weinig. 13009 13010 Move even more code down to WebBaseNetscapePluginView, get rid of some unnecessary methods. 13011 13012 * Plugins/WebBaseNetscapePluginView.h: 13013 * Plugins/WebBaseNetscapePluginView.mm: 13014 (-[WebBaseNetscapePluginView focusChanged]): 13015 (-[WebBaseNetscapePluginView visibleRect]): 13016 (-[WebBaseNetscapePluginView acceptsFirstResponder]): 13017 (-[WebBaseNetscapePluginView setHasFocus:]): 13018 (-[WebBaseNetscapePluginView becomeFirstResponder]): 13019 (-[WebBaseNetscapePluginView resignFirstResponder]): 13020 * Plugins/WebNetscapePluginView.h: 13021 * Plugins/WebNetscapePluginView.mm: 13022 (-[WebNetscapePluginView focusChanged]): 13023 (-[WebNetscapePluginView tellQuickTimeToChill]): 13024 (-[WebNetscapePluginView updateAndSetWindow]): 13025 (-[WebNetscapePluginView start]): 13026 (-[WebNetscapePluginView stop]): 13027 (-[WebNetscapePluginView viewWillMoveToWindow:]): 13028 (-[WebNetscapePluginView createPluginScriptableObject]): 13029 (-[WebNetscapePluginView pluginView:receivedData:]): 13030 (-[WebNetscapePluginView pluginView:receivedError:]): 13031 (-[WebNetscapePluginView pluginViewFinishedLoading:]): 13032 (-[WebNetscapePluginView inputContext]): 13033 (-[WebNetscapePluginView hasMarkedText]): 13034 (-[WebNetscapePluginView insertText:]): 13035 (-[WebNetscapePluginView markedRange]): 13036 (-[WebNetscapePluginView selectedRange]): 13037 (-[WebNetscapePluginView setMarkedText:selectedRange:]): 13038 (-[WebNetscapePluginView unmarkText]): 13039 (-[WebNetscapePluginView validAttributesForMarkedText]): 13040 (-[WebNetscapePluginView attributedSubstringFromRange:]): 13041 (-[WebNetscapePluginView characterIndexForPoint:]): 13042 (-[WebNetscapePluginView doCommandBySelector:]): 13043 (-[WebNetscapePluginView firstRectForCharacterRange:]): 13044 (-[WebNetscapePluginView _viewHasMoved]): 13045 (-[WebNetscapePluginView _redeliverStream]): 13046 130472008-11-10 Anders Carlsson <andersca@apple.com> 13048 13049 Reviewed by Kevin Decker. 13050 13051 Move timer handling code down to WebBaseNetscapePluginView. 13052 13053 * Plugins/WebBaseNetscapePluginView.h: 13054 * Plugins/WebBaseNetscapePluginView.mm: 13055 (-[WebBaseNetscapePluginView stopTimers]): 13056 (-[WebBaseNetscapePluginView startTimers]): 13057 (-[WebBaseNetscapePluginView restartTimers]): 13058 * Plugins/WebNetscapePluginView.h: 13059 * Plugins/WebNetscapePluginView.mm: 13060 (-[WebNetscapePluginView stopTimers]): 13061 (-[WebNetscapePluginView startTimers]): 13062 (-[WebNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]): 13063 * WebView/WebHTMLView.mm: 13064 (-[WebHTMLView _resumeNullEventsForAllNetscapePlugins]): 13065 130662008-11-10 Anders Carlsson <andersca@apple.com> 13067 13068 Reviewed by Kevin Decker. 13069 13070 Move a bunch of methods and ivars up to WebBaseNetscapePluginView. 13071 13072 * Plugins/WebBaseNetscapePluginView.h: 13073 * Plugins/WebBaseNetscapePluginView.mm: 13074 (-[WebBaseNetscapePluginView dealloc]): 13075 (-[WebBaseNetscapePluginView finalize]): 13076 (-[WebBaseNetscapePluginView removeTrackingRect]): 13077 (-[WebBaseNetscapePluginView resetTrackingRect]): 13078 (-[WebBaseNetscapePluginView dataSource]): 13079 (-[WebBaseNetscapePluginView webFrame]): 13080 (-[WebBaseNetscapePluginView webView]): 13081 (-[WebBaseNetscapePluginView currentWindow]): 13082 * Plugins/WebNetscapePluginEventHandlerCarbon.mm: 13083 (WebNetscapePluginEventHandlerCarbon::windowFocusChanged): 13084 * Plugins/WebNetscapePluginView.h: 13085 * Plugins/WebNetscapePluginView.mm: 13086 (-[WebNetscapePluginView sendEvent:isDrawRect:]): 13087 (-[WebNetscapePluginView sendActivateEvent:]): 13088 (-[WebNetscapePluginView restartTimers]): 13089 (-[WebNetscapePluginView setHasFocus:]): 13090 (-[WebNetscapePluginView mouseDown:]): 13091 (-[WebNetscapePluginView mouseUp:]): 13092 (-[WebNetscapePluginView mouseEntered:]): 13093 (-[WebNetscapePluginView mouseExited:]): 13094 (-[WebNetscapePluginView handleMouseMoved:]): 13095 (-[WebNetscapePluginView mouseDragged:]): 13096 (-[WebNetscapePluginView scrollWheel:]): 13097 (-[WebNetscapePluginView keyUp:]): 13098 (-[WebNetscapePluginView keyDown:]): 13099 (-[WebNetscapePluginView flagsChanged:]): 13100 (-[WebNetscapePluginView updateAndSetWindow]): 13101 (-[WebNetscapePluginView setWindowIfNecessary]): 13102 (-[WebNetscapePluginView start]): 13103 (-[WebNetscapePluginView stop]): 13104 (-[WebNetscapePluginView isStarted]): 13105 (-[WebNetscapePluginView dealloc]): 13106 (-[WebNetscapePluginView finalize]): 13107 (-[WebNetscapePluginView drawRect:]): 13108 (-[WebNetscapePluginView windowBecameKey:]): 13109 (-[WebNetscapePluginView preferencesHaveChanged:]): 13110 (-[WebNetscapePluginView evaluateJavaScriptPluginRequest:]): 13111 (-[WebNetscapePluginView webFrame:didFinishLoadWithReason:]): 13112 (-[WebNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]): 13113 (-[WebNetscapePluginView _viewHasMoved]): 13114 131152008-11-10 Anders Carlsson <andersca@apple.com> 13116 13117 Reviewed by Kevin Decker and Mark Rowe. 13118 13119 Add a WebHostedNetscapePluginView class. 13120 13121 * Plugins/WebHostedNetscapePluginView.h: Added. 13122 * Plugins/WebHostedNetscapePluginView.mm: Added. 13123 13124 * Plugins/WebNetscapePluginPackage.h: 13125 Use the right define. 13126 13127 * Plugins/WebPluginDatabase.mm: 13128 (-[WebPluginDatabase removePluginInstanceViewsFor:]): 13129 Check for WebBaseNetscapePluginView. 13130 13131 (-[WebPluginDatabase destroyAllPluginInstanceViews]): 13132 Check for WebBaseNetscapePluginView. 13133 13134 * WebCoreSupport/WebFrameLoaderClient.mm: 13135 (NetscapePluginWidget::NetscapePluginWidget): 13136 (NetscapePluginWidget::handleEvent): 13137 Use WebBaseNetscapePluginView. 13138 13139 (netscapePluginViewClass): 13140 New function that returns the right netscape plugin view type to use. 13141 13142 (WebFrameLoaderClient::createPlugin): 13143 Get the right class. 13144 13145 * WebKitPrefix.h: 13146 Prefix the #define with WTF_. 13147 13148 * WebView/WebHTMLView.mm: 13149 (-[NSArray _web_makePluginViewsPerformSelector:withObject:]): 13150 Check for WebBaseNetscapePluginView. 13151 13152 * WebView/WebView.mm: 13153 Remove an unnecessary include. 13154 131552008-11-10 Anders Carlsson <andersca@apple.com> 13156 13157 Reviewed by Sam Weinig. 13158 13159 Don't use individual ivars for each plug-in vtable function. Instead, get them from the plugin package. 13160 13161 * Plugins/WebBaseNetscapePluginView.mm: 13162 (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]): 13163 * Plugins/WebNetscapePluginPackage.h: 13164 * Plugins/WebNetscapePluginPackage.m: 13165 (-[WebNetscapePluginPackage load]): 13166 (-[WebNetscapePluginPackage _unloadWithShutdown:]): 13167 * Plugins/WebNetscapePluginView.h: 13168 * Plugins/WebNetscapePluginView.mm: 13169 (-[WebNetscapePluginView sendEvent:isDrawRect:]): 13170 (-[WebNetscapePluginView setWindowIfNecessary]): 13171 (-[WebNetscapePluginView start]): 13172 (-[WebNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]): 13173 (-[WebNetscapePluginView createPluginScriptableObject]): 13174 (-[WebNetscapePluginView evaluateJavaScriptPluginRequest:]): 13175 (-[WebNetscapePluginView webFrame:didFinishLoadWithReason:]): 13176 (-[WebNetscapePluginView loadPluginRequest:]): 13177 (-[WebNetscapePluginView _createPlugin]): 13178 (-[WebNetscapePluginView _destroyPlugin]): 13179 (-[WebNetscapePluginView _printedPluginBitmap]): 13180 131812008-11-10 Anders Carlsson <andersca@apple.com> 13182 13183 Reviewed by Kevin Decker. 13184 13185 Add a new WebBaseNetscapePluginView class. 13186 13187 * Plugins/WebBaseNetscapePluginView.h: Added. 13188 * Plugins/WebBaseNetscapePluginView.mm: Added. 13189 (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]): 13190 (-[WebBaseNetscapePluginView setAttributeKeys:andValues:]): 13191 (-[WebBaseNetscapePluginView handleMouseMoved:]): 13192 * Plugins/WebNetscapePluginView.h: 13193 * Plugins/WebNetscapePluginView.mm: 13194 (-[WebNetscapePluginView cut:]): 13195 (-[WebNetscapePluginView copy:]): 13196 (-[WebNetscapePluginView paste:]): 13197 (-[WebNetscapePluginView selectAll:]): 13198 (-[WebNetscapePluginView start]): 13199 (-[WebNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]): 13200 132012008-11-10 Anders Carlsson <andersca@apple.com> 13202 13203 Reviewed by Adam Roben. 13204 13205 Rename WebBaseNetscapePluginView to WebNetscapePluginView. 13206 13207 * Plugins/WebBaseNetscapePluginStream.h: 13208 * Plugins/WebBaseNetscapePluginStream.mm: 13209 (WebNetscapePluginStream::WebNetscapePluginStream): 13210 (WebNetscapePluginStream::setPlugin): 13211 * Plugins/WebBaseNetscapePluginView.h: Removed. 13212 * Plugins/WebBaseNetscapePluginView.mm: Removed. 13213 * Plugins/WebNetscapePluginEventHandler.h: 13214 (WebNetscapePluginEventHandler::WebNetscapePluginEventHandler): 13215 * Plugins/WebNetscapePluginEventHandler.mm: 13216 (WebNetscapePluginEventHandler::create): 13217 * Plugins/WebNetscapePluginEventHandlerCarbon.h: 13218 * Plugins/WebNetscapePluginEventHandlerCarbon.mm: 13219 (WebNetscapePluginEventHandlerCarbon::WebNetscapePluginEventHandlerCarbon): 13220 * Plugins/WebNetscapePluginEventHandlerCocoa.h: 13221 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 13222 (WebNetscapePluginEventHandlerCocoa::WebNetscapePluginEventHandlerCocoa): 13223 * Plugins/WebNetscapePluginView.h: Copied from mac/Plugins/WebBaseNetscapePluginView.h. 13224 * Plugins/WebNetscapePluginView.mm: Copied from mac/Plugins/WebBaseNetscapePluginView.mm. 13225 (+[WebNetscapePluginView setCurrentPluginView:]): 13226 (+[WebNetscapePluginView currentPluginView]): 13227 (-[WebNetscapePluginView loadPluginRequest:]): 13228 * Plugins/WebPluginDatabase.mm: 13229 (-[WebPluginDatabase removePluginInstanceViewsFor:]): 13230 (-[WebPluginDatabase destroyAllPluginInstanceViews]): 13231 * Plugins/npapi.mm: 13232 (pluginViewForInstance): 13233 (NPN_MarkedTextAbandoned): 13234 (NPN_MarkedTextSelectionChanged): 13235 * WebCoreSupport/WebFrameLoaderClient.mm: 13236 (NetscapePluginWidget::NetscapePluginWidget): 13237 (NetscapePluginWidget::handleEvent): 13238 (WebFrameLoaderClient::createPlugin): 13239 * WebView/WebHTMLView.mm: 13240 (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]): 13241 (-[WebHTMLView _resumeNullEventsForAllNetscapePlugins]): 13242 (-[NSArray _web_makePluginViewsPerformSelector:withObject:]): 13243 * WebView/WebView.mm: 13244 132452008-11-09 Darin Adler <darin@apple.com> 13246 13247 Reviewed by John Sullivan. 13248 13249 - fix https://bugs.webkit.org/show_bug.cgi?id=15063 13250 <rdar://problem/5452227> REGRESSION (r25151): Switching to a tab waiting 13251 for first data does not clear the window 13252 13253 * WebCoreSupport/WebFrameLoaderClient.mm: 13254 (WebFrameLoaderClient::frameLoadCompleted): Added comments, and got rid of 13255 a local variable to make this code match the code in the function below 13256 more closely. 13257 (WebFrameLoaderClient::provisionalLoadStarted): Added comments. 13258 13259 * WebView/WebFrame.mm: 13260 (-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]): Improved comment. 13261 13262 * WebView/WebFrameView.mm: 13263 (-[WebFrameView _scrollView]): Tweaked formatting. 13264 (-[WebFrameView initWithFrame:]): Ditto. 13265 (-[WebFrameView setFrameSize:]): Added a comment and tweaked formatting. 13266 (-[WebFrameView viewDidMoveToWindow]): Added. This is the change that fixes 13267 the bug. Calls setDrawsBackground:YES as appropriate since moving the view 13268 out of the window to switch to another view disrupts the special technique 13269 for showing the old page during the start of loading. This is the identical 13270 reason for the setFrameSize: method above, and the code is almost the same. 13271 132722008-11-08 David Kilzer <ddkilzer@apple.com> 13273 13274 Bug 22137: PLATFORM(MAC) build broken with HAVE(ACCESSIBILITY) disabled 13275 13276 <https://bugs.webkit.org/show_bug.cgi?id=22137> 13277 13278 Reviewed by Darin Adler. 13279 13280 * WebView/WebFrame.mm: 13281 (-[WebFrame _accessibilityTree]): Return nil if HAVE(ACCESSIBILITY) 13282 is false. 13283 132842008-11-08 Dan Bernstein <mitz@apple.com> 13285 13286 Reviewed by Darin Adler. 13287 13288 - WebKit/mac part of adding WebPreferences for controlling databases and local storage 13289 13290 * WebView/WebPreferenceKeysPrivate.h: Added 13291 WebKitDatabasesEnabledPreferenceKey and 13292 WebKitLocalStorageEnabledPreferenceKey. 13293 * WebView/WebPreferences.mm: 13294 (+[WebPreferences initialize]): Made databases and local storage enabled 13295 by default. 13296 (-[WebPreferences databasesEnabled]): Added. 13297 (-[WebPreferences setDatabasesEnabled:]): Added. 13298 (-[WebPreferences localStorageEnabled]): Added. 13299 (-[WebPreferences setLocalStorageEnabled:]): Added. 13300 * WebView/WebPreferencesPrivate.h: 13301 * WebView/WebView.mm: 13302 (-[WebView _preferencesChangedNotification:]): Transfer the databases 13303 and local storage preferences to WebCore settings. 13304 133052008-11-06 Anders Carlsson <andersca@apple.com> 13306 13307 Reviewed by Kevin Decker. 13308 13309 https://bugs.webkit.org/show_bug.cgi?id=22115 13310 NPN_HasPropertyUPP and NPN_HasMethodUPP entries in NPNetscapeFuncs are NULL 13311 13312 Initialize the browser funcs correctly. 13313 13314 * Plugins/WebNetscapePluginPackage.m: 13315 (-[WebNetscapePluginPackage load]): 13316 133172008-11-06 David Kilzer <ddkilzer@apple.com> 13318 13319 BUILD FIX: Backed out r38189 (and r38203) for Xcode 3.0. 13320 13321 Apparently older versions of gcc have issues with this patch. 13322 Backing out a second time until the issues are resolved. 13323 133242008-11-06 Cameron Zwarich <zwarich@apple.com> 13325 13326 Reviewed by Geoff Garen. 13327 13328 Move the remaining files in the kjs subdirectory of JavaScriptCore to 13329 a new parser subdirectory, and remove the kjs subdirectory entirely. 13330 13331 The header SavedBuiltins.h was removed in r32587, so it no longer needs 13332 a forwarding header. 13333 13334 * ForwardingHeaders/kjs: Removed. 13335 * ForwardingHeaders/kjs/SavedBuiltins.h: Removed. 13336 133372008-11-06 David Kilzer <ddkilzer@apple.com> 13338 13339 BUILD WAS NOT BROKEN: Rolling r38189 back in. 13340 13341 Please perform a clean build if you see crashes. 13342 133432008-11-06 David Kilzer <ddkilzer@apple.com> 13344 13345 BUILD FIX: Backed out r38189 since it apparently broke the world. 13346 133472008-11-06 John Sullivan <sullivan@apple.com> 13348 13349 Fixed problem with switching between text-only zoom and full-content zoom 13350 13351 There were two booleans tracking whether zoom was text-only, one in WebCore settings 13352 and one in WebViewPrivate. Fixed by eliminating the one in WebViewPrivate. 13353 13354 Reviewed by Adam Roben 13355 13356 * WebView/WebView.mm: 13357 remove declaration of zoomMultiplierIsTextOnly instance variable in WebViewPrivate 13358 (-[WebViewPrivate init]): 13359 removed initialization of zoomMultiplierIsTextOnly 13360 (-[WebView textSizeMultiplier]): 13361 call [self _realZoomMultiplierIsTextOnly] instead of accessing WebViewPrivate instance variable 13362 (-[WebView _setZoomMultiplier:isTextOnly:]): 13363 update WebCore settings rather than WebViewPrivate instance variable 13364 (-[WebView _zoomMultiplier:]): 13365 call [self _realZoomMultiplierIsTextOnly] instead of accessing WebViewPrivate instance variable 13366 (-[WebView _realZoomMultiplierIsTextOnly]): 13367 return value from WebCore settings instead of accessing WebViewPrivate instance variable 13368 (-[WebView pageSizeMultiplier]): 13369 call [self _realZoomMultiplierIsTextOnly] instead of accessing WebViewPrivate instance variable 13370 133712008-11-06 Greg Bolsinga <bolsinga@apple.com> 13372 13373 Reviewed by Darin Adler. 13374 13375 Bug 21810: Remove use of static C++ objects that are destroyed at exit time (destructors) 13376 https://bugs.webkit.org/show_bug.cgi?id=21810 13377 13378 * History/WebBackForwardList.mm: 13379 (backForwardLists): Changed to leak an object to avoid an exit-time destructor. 13380 * History/WebHistoryItem.mm: 13381 (historyItemWrappers): Ditto 13382 * Misc/WebStringTruncator.m: 13383 (fontFromNSFont): Ditto 13384 * Plugins/WebBaseNetscapePluginStream.mm: 13385 (streams): Ditto 13386 * WebView/WebView.mm: 13387 (aeDescFromJSValue): Ditto 13388 133892008-11-05 Anders Carlsson <andersca@apple.com> 13390 13391 Reviewed by Mark Rowe. 13392 13393 Keep track of which plug-in host architecture would be needed for a given plug-in package. 13394 13395 * Plugins/WebNetscapePluginPackage.h: 13396 * Plugins/WebNetscapePluginPackage.m: 13397 (-[WebNetscapePluginPackage _initWithPath:]): 13398 * WebKitPrefix.h: 13399 134002008-11-05 Cameron Zwarich <zwarich@apple.com> 13401 13402 Rubber-stamped by Sam Weinig. 13403 13404 Correct forwarding headers for files moved to the runtime subdirectory 13405 of JavaScriptCore and remove unused forwarding headers. 13406 13407 * ForwardingHeaders/kjs/collector.h: Removed. 13408 * ForwardingHeaders/kjs/identifier.h: Removed. 13409 * ForwardingHeaders/kjs/interpreter.h: Removed. 13410 * ForwardingHeaders/kjs/lookup.h: Removed. 13411 * ForwardingHeaders/kjs/operations.h: Removed. 13412 * ForwardingHeaders/kjs/protect.h: Removed. 13413 * ForwardingHeaders/runtime/Interpreter.h: Copied from ForwardingHeaders/kjs/interpreter.h. 13414 * WebView/WebScriptDebugDelegate.mm: 13415 134162008-11-05 Anders Carlsson <andersca@apple.com> 13417 13418 Reviewed by Kevin Decker. 13419 13420 Remove WebPlugInStreamLoaderDelegate.h 13421 13422 * Plugins/WebBaseNetscapePluginStream.h: 13423 * Plugins/WebPlugInStreamLoaderDelegate.h: Removed. 13424 134252008-11-05 Dan Bernstein <mitz@apple.com> 13426 13427 - Tiger build fix 13428 13429 * Plugins/WebBaseNetscapePluginView.mm: 13430 (-[WebBaseNetscapePluginView stop]): 13431 134322008-11-04 Anders Carlsson <andersca@apple.com> 13433 13434 Reviewed by Kevin Decker. 13435 13436 Don't leak the CALayer. 13437 13438 * Plugins/WebBaseNetscapePluginView.h: 13439 Make the layer a RetainPtr. 13440 13441 * Plugins/WebBaseNetscapePluginView.mm: 13442 (-[WebBaseNetscapePluginView start]): 13443 13444 (-[WebBaseNetscapePluginView stop]): 13445 Make sure to clear out the layer here. 13446 134472008-11-04 Cameron Zwarich <zwarich@apple.com> 13448 13449 Rubber-stamped by Sam Weinig. 13450 13451 Remove the unused kjs/dtoa.h forwarding header. 13452 13453 * ForwardingHeaders/kjs/dtoa.h: Removed. 13454 134552008-11-04 Anders Carlsson <andersca@apple.com> 13456 13457 Reviewed by Kevin Decker. 13458 13459 More cleanup. Make a bunch of instance variables RetainPtrs. 13460 13461 * Plugins/WebBaseNetscapePluginView.h: 13462 * Plugins/WebBaseNetscapePluginView.mm: 13463 (-[WebBaseNetscapePluginView visibleRect]): 13464 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): 13465 (-[WebBaseNetscapePluginView sendActivateEvent:]): 13466 (-[WebBaseNetscapePluginView sendDrawRectEvent:]): 13467 (-[WebBaseNetscapePluginView stopTimers]): 13468 (-[WebBaseNetscapePluginView restartTimers]): 13469 (-[WebBaseNetscapePluginView setHasFocus:]): 13470 (-[WebBaseNetscapePluginView mouseDown:]): 13471 (-[WebBaseNetscapePluginView mouseUp:]): 13472 (-[WebBaseNetscapePluginView mouseEntered:]): 13473 (-[WebBaseNetscapePluginView mouseExited:]): 13474 (-[WebBaseNetscapePluginView handleMouseMoved:]): 13475 (-[WebBaseNetscapePluginView mouseDragged:]): 13476 (-[WebBaseNetscapePluginView scrollWheel:]): 13477 (-[WebBaseNetscapePluginView keyUp:]): 13478 (-[WebBaseNetscapePluginView keyDown:]): 13479 (-[WebBaseNetscapePluginView flagsChanged:]): 13480 (-[WebBaseNetscapePluginView cut:]): 13481 (-[WebBaseNetscapePluginView copy:]): 13482 (-[WebBaseNetscapePluginView paste:]): 13483 (-[WebBaseNetscapePluginView selectAll:]): 13484 (-[WebBaseNetscapePluginView didStart]): 13485 (-[WebBaseNetscapePluginView start]): 13486 (-[WebBaseNetscapePluginView stop]): 13487 (-[WebBaseNetscapePluginView dataSource]): 13488 (-[WebBaseNetscapePluginView pluginPackage]): 13489 (-[WebBaseNetscapePluginView setPluginPackage:]): 13490 (-[WebBaseNetscapePluginView setAttributeKeys:andValues:]): 13491 (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]): 13492 (-[WebBaseNetscapePluginView fini]): 13493 (-[WebBaseNetscapePluginView dealloc]): 13494 (-[WebBaseNetscapePluginView pluginView:receivedError:]): 13495 (-[WebBaseNetscapePluginView requestWithURLCString:]): 13496 (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]): 13497 (-[WebBaseNetscapePluginView loadPluginRequest:]): 13498 (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): 13499 (-[WebBaseNetscapePluginView userAgent]): 13500 (-[WebBaseNetscapePluginView getVariable:value:]): 13501 (-[WebBaseNetscapePluginView setVariable:value:]): 13502 (-[WebBaseNetscapePluginView _createPlugin]): 13503 (-[WebBaseNetscapePluginView _redeliverStream]): 13504 135052008-11-04 Brady Eidson <beidson@apple.com> 13506 13507 Reviewed by John Sullivan 13508 13509 Cleanup global history a tad. 13510 13511 Used to _addItemForURL always create a new item and merge it with a previous item if one existed. 13512 13513 It is more efficient and less complicated to update the previous item if one exists. 13514 13515 * History/WebHistory.mm: 13516 (-[WebHistoryPrivate visitedURL:withTitle:]): 13517 (-[WebHistory _visitedURL:withTitle:]): Instead of calling the general purpose [WebHistoryPrivate addItem:] 13518 with a new history item, call the new special purposed visitedURL:withTitle: 13519 * History/WebHistoryInternal.h: 13520 13521 * History/WebHistoryItem.mm: 13522 (-[WebHistoryItem _visitedWithTitle:]): Call "visited()" on the WebCore history item with the pertinent info. 13523 * History/WebHistoryItemInternal.h: 13524 13525 * WebCoreSupport/WebFrameLoaderClient.mm: 13526 (WebFrameLoaderClient::updateGlobalHistory): 13527 135282008-11-04 Anders Carlsson <andersca@apple.com> 13529 13530 Reviewed by Kevin Decker. 13531 13532 https://bugs.webkit.org/show_bug.cgi?id=22065 13533 13534 Only create the plug-in stream loader when the stream is started. 13535 13536 * Plugins/WebBaseNetscapePluginStream.mm: 13537 (WebNetscapePluginStream::WebNetscapePluginStream): 13538 (WebNetscapePluginStream::start): 13539 135402008-11-04 Anders Carlsson <andersca@apple.com> 13541 13542 Reviewed by Kevin Decker. 13543 13544 https://bugs.webkit.org/show_bug.cgi?id=22065 13545 13546 Remove some old, unused plug-in code. 13547 13548 * Plugins/WebBaseNetscapePluginView.h: 13549 * Plugins/WebBaseNetscapePluginView.mm: 13550 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): 13551 (-[WebBaseNetscapePluginView start]): 13552 (-[WebBaseNetscapePluginView setVariable:value:]): 13553 135542008-11-04 Simon Fraser <simon.fraser@apple.com> 13555 13556 Reviewed by Dave Hyatt 13557 13558 https://bugs.webkit.org/show_bug.cgi?id=21941 13559 13560 Rename absolutePosition() to localToAbsolute(), and add the ability 13561 to optionally take transforms into account (which will eventually be the 13562 default behavior). 13563 13564 * WebView/WebRenderNode.mm: 13565 (copyRenderNode): 13566 135672008-11-01 Alexey Proskuryakov <ap@webkit.org> 13568 13569 Reviewed by Darin Adler. 13570 13571 https://bugs.webkit.org/show_bug.cgi?id=22030 13572 Make EventNames usable from multiple threads 13573 13574 * WebView/WebHTMLView.mm: 13575 * WebView/WebPDFView.mm: 13576 (-[WebPDFView PDFViewWillClickOnLink:withURL:]): 13577 Access event names via eventNames() function. 13578 135792008-11-04 Cameron Zwarich <zwarich@apple.com> 13580 13581 Reviewed by Mark Rowe. 13582 13583 Delete a forwarding header for a file that no longer exists. 13584 13585 * ForwardingHeaders/kjs/string_object.h: Removed. 13586 135872008-11-03 Cameron Zwarich <zwarich@apple.com> 13588 13589 Rubber-stamped by Maciej Stachowiak. 13590 13591 Move more files into the runtime subdirectory of JavaScriptCore. 13592 13593 * ForwardingHeaders/kjs/JSLock.h: Removed. 13594 * ForwardingHeaders/kjs/SymbolTable.h: Removed. 13595 * ForwardingHeaders/runtime/JSLock.h: Copied from ForwardingHeaders/kjs/JSLock.h. 13596 * ForwardingHeaders/runtime/SymbolTable.h: Copied from ForwardingHeaders/kjs/SymbolTable.h. 13597 * Misc/WebCoreStatistics.mm: 13598 * Plugins/WebBaseNetscapePluginStream.mm: 13599 * Plugins/WebBaseNetscapePluginView.mm: 13600 * Plugins/WebPluginController.mm: 13601 * WebView/WebFrame.mm: 13602 * WebView/WebScriptDebugDelegate.mm: 13603 * WebView/WebView.mm: 13604 136052008-11-03 Mark Rowe <mrowe@apple.com> 13606 13607 Fix the 64-bit build. 13608 13609 Pull the frequently-made check for drawingModel == NPDrawingModelQuickDraw out into a 13610 helper function to avoid #ifdef'ing all of the new places that this check is made. 13611 13612 A few other #ifdef's are moved inside functions to allow their call sites to remain #ifdef-free, 13613 and we rely on the compiler to optimise out the check (which will always be false in 64-bit) instead. 13614 13615 * Plugins/WebBaseNetscapePluginView.mm: 13616 (isDrawingModelQuickDraw): 13617 (-[WebBaseNetscapePluginView fixWindowPort]): 13618 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): 13619 (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]): 13620 (-[WebBaseNetscapePluginView updateAndSetWindow]): 13621 (-[WebBaseNetscapePluginView start]): 13622 (-[WebBaseNetscapePluginView tellQuickTimeToChill]): 13623 (-[WebBaseNetscapePluginView viewWillMoveToWindow:]): 13624 (-[WebBaseNetscapePluginView _viewHasMoved]): 13625 136262008-11-03 Maciej Stachowiak <mjs@apple.com> 13627 13628 Reviewed by Kevin Decker. 13629 13630 - fix release build (and unitialized variable for CG drawing model!) 13631 13632 * Plugins/WebBaseNetscapePluginView.mm: 13633 (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]): initialize portState in all code paths 13634 136352008-11-03 Kevin Decker <kdecker@apple.com> 13636 13637 Reviewed by Anders Carlsson. 13638 13639 https://bugs.webkit.org/show_bug.cgi?id=22053 13640 13641 This patch adds initial support for the NPDrawingModelCoreAnimation drawing model. 13642 13643 * Plugins/WebBaseNetscapePluginView.h: Added _layer ivar. 13644 * Plugins/WebBaseNetscapePluginView.mm: 13645 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): ASSERT this is not a plug-in using NPDrawingModelCoreAnimation. 13646 (-[WebBaseNetscapePluginView restorePortState:]): Ditto. 13647 (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]): Slightly refactored a small block of code which with the PortState. 13648 Plug-ins using the NPDrawingModelCoreAnimation drawing model have no PortState. 13649 (-[WebBaseNetscapePluginView isNewWindowEqualToOldWindow]): ASSERT this is not a plug-in using NPDrawingModelCoreAnimation 13650 (-[WebBaseNetscapePluginView updateAndSetWindow]): Ditto. 13651 (-[WebBaseNetscapePluginView setWindowIfNecessary]): Ditto. 13652 (-[WebBaseNetscapePluginView start]): If the plug-in is a plug-in using the Core Animation model, request a layer from it. 13653 (-[WebBaseNetscapePluginView drawRect:]): Return early for NPDrawingModelCoreAnimation plug-ins. 13654 (-[WebBaseNetscapePluginView getVariable:value:]): Tell plug-ins running on post-Tiger systems WebKit supports 13655 NPDrawingModelCoreAnimation. 13656 (-[WebBaseNetscapePluginView setVariable:value:]): Added the new NPDrawingModelCoreAnimation case, which initializes drawingMode. 13657 (-[WebBaseNetscapePluginView _viewHasMoved]): Reworded the conditional call to updateAndSetWindow to be specific to 13658 CoreGraphics and QuickDraw plug-ins. 13659 136602008-10-31 Cameron Zwarich <zwarich@apple.com> 13661 13662 Reviewed by Darin Adler. 13663 13664 Bug 22019: Move JSC::Interpreter::shouldPrintExceptions() to WebCore::Console 13665 <https://bugs.webkit.org/show_bug.cgi?id=22019> 13666 13667 * Misc/WebCoreStatistics.mm: 13668 (+[WebCoreStatistics shouldPrintExceptions]): 13669 (+[WebCoreStatistics setShouldPrintExceptions:]): 13670 136712008-10-31 Dan Bernstein <mitz@apple.com> 13672 13673 Reviewed by John Sullivan. 13674 13675 - WebKit/mac part of <rdar://problem/6334641> Add WebView SPI for disabling document.cookie 13676 13677 * WebView/WebView.mm: 13678 (-[WebView _cookieEnabled]): 13679 (-[WebView _setCookieEnabled:]): 13680 * WebView/WebViewPrivate.h: 13681 136822008-10-31 Brady Eidson <beidson@apple.com> 13683 13684 Reviewed by Darin Adler 13685 13686 [WebHistory setLastVisitedTimeInterval:forItem] was internal to WebHistory.mm and 13687 completely unused. Nuke it! 13688 13689 * History/WebHistory.mm: 13690 136912008-10-31 Chris Fleizach <cfleizach@apple.com> 13692 13693 Reviewed by Darin Adler. 13694 13695 <rdar://problem/4361197> Screen Reader's Item Chooser shows scroll area for WebKit Application window 13696 13697 If a WebFrameView does not allow scrolling, its scrollbars should not appear in the accessibility hierarchy. 13698 13699 * WebView/WebDynamicScrollBarsView.m: 13700 (-[WebDynamicScrollBarsView accessibilityIsIgnored]): 13701 137022008-10-30 Mark Rowe <mrowe@apple.com> 13703 13704 Reviewed by Jon Homeycutt. 13705 13706 Explicitly default to building for only the native architecture in debug and release builds. 13707 13708 * Configurations/DebugRelease.xcconfig: 13709 137102008-10-30 Cameron Zwarich <zwarich@apple.com> 13711 13712 Rubber-stamped by Sam Weinig. 13713 13714 Create a debugger directory in JavaScriptCore and move the relevant 13715 files to it. 13716 13717 * ForwardingHeaders/debugger: Added. 13718 * ForwardingHeaders/debugger/DebuggerCallFrame.h: Copied from ForwardingHeaders/kjs/DebuggerCallFrame.h. 13719 * ForwardingHeaders/kjs/DebuggerCallFrame.h: Removed. 13720 * WebView/WebScriptDebugDelegate.mm: 13721 * WebView/WebScriptDebugger.h: 13722 * WebView/WebScriptDebugger.mm: 13723 137242008-10-29 Anders Carlsson <andersca@apple.com> 13725 13726 Reviewed by Kevin Decker. 13727 13728 * Plugins/WebBaseNetscapePluginStream.h: 13729 * Plugins/WebBaseNetscapePluginStream.mm: 13730 (WebNetscapePluginStream::WebNetscapePluginStream): 13731 (WebNetscapePluginStream::~WebNetscapePluginStream): 13732 (WebNetscapePluginStream::start): 13733 137342008-10-29 Anders Carlsson <andersca@apple.com> 13735 13736 Reviewed by Sam Weinig. 13737 13738 Remove an unused forward class declaration. 13739 13740 * Plugins/WebBaseNetscapePluginView.h: 13741 137422008-10-29 Anders Carlsson <andersca@apple.com> 13743 13744 Reviewed by Sam Weinig. 13745 13746 Remove WebBaseNetscapePluginViewInternal.h and WebBaseNetscapePluginViewPrivate.h. 13747 13748 * Plugins/WebBaseNetscapePluginView.h: 13749 * Plugins/WebBaseNetscapePluginViewInternal.h: Removed. 13750 * Plugins/WebBaseNetscapePluginViewPrivate.h: Removed. 13751 * Plugins/WebNetscapePluginEventHandler.mm: 13752 * Plugins/WebNetscapePluginEventHandlerCarbon.mm: 13753 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 13754 * Plugins/npapi.mm: 13755 * WebView/WebHTMLView.mm: 13756 137572008-10-29 Anders Carlsson <andersca@apple.com> 13758 13759 Reviewed by Sam Weinig. 13760 13761 Remove WebNetscapePluginEmbeddedView, it adds nothing extra now. 13762 13763 Remove WebNetscapePlugInStreamLoaderClient since WebNetscapePluginStream is the client now. 13764 13765 * Plugins/WebBaseNetscapePluginStream.h: 13766 * Plugins/WebBaseNetscapePluginStream.mm: 13767 * Plugins/WebBaseNetscapePluginView.h: 13768 * Plugins/WebKitPluginContainerView.h: 13769 * Plugins/WebNetscapePluginEmbeddedView.h: Removed. 13770 * Plugins/WebNetscapePluginEmbeddedView.mm: Removed. 13771 * Plugins/WebNetscapePluginEventHandler.h: 13772 * WebCoreSupport/WebFrameLoaderClient.mm: 13773 (NetscapePluginWidget::NetscapePluginWidget): 13774 (NetscapePluginWidget::handleEvent): 13775 (WebFrameLoaderClient::createPlugin): 13776 * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.h: Removed. 13777 * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.mm: Removed. 13778 * WebView/WebHTMLView.mm: 13779 (-[NSArray _web_makePluginViewsPerformSelector:withObject:]): 13780 137812008-10-29 Anders Carlsson <andersca@apple.com> 13782 13783 Reviewed by Sam Weinig. 13784 13785 Remove the WebBaseNetscapePluginStream Objective-C object. 13786 13787 * Plugins/WebBaseNetscapePluginStream.h: 13788 (WebNetscapePluginStream::create): 13789 * Plugins/WebBaseNetscapePluginStream.mm: 13790 (WebNetscapePluginStream::WebNetscapePluginStream): 13791 * Plugins/WebBaseNetscapePluginView.mm: 13792 (-[WebBaseNetscapePluginView pluginView:receivedResponse:]): 13793 (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): 13794 (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): 13795 137962008-10-29 Brady Eidson <beidson@apple.com> 13797 13798 Reviewed by Sam Weinig 13799 13800 https://bugs.webkit.org/show_bug.cgi?id=21952 13801 13802 Address an outstanding FIXME by removing unused SPI 13803 13804 * History/WebHistory.mm: 13805 (-[WebHistory _addItemForURL:title:]): Fold addItem: into this method 13806 13807 * History/WebHistoryPrivate.h: Removed unused/unneccessary SPI 13808 138092008-10-28 Justin Garcia <justin.garcia@apple.com> 13810 13811 Reviewed by Darin Adler. 13812 13813 <rdar://problem/5188560> REGRESSION: Spell checker doesn't clear spelling/grammar marker after error is marked as Ignored 13814 13815 * WebView/WebHTMLView.mm: IgnoreSpelling is now a WebCore command. That command handles 13816 calling back into WebKit to perform the cross platform work that was removed in this change. 13817 138182008-10-28 Cameron Zwarich <zwarich@apple.com> 13819 13820 Reviewed by Mark Rowe. 13821 13822 Move ForwardingHeaders to their correct location after the creation of 13823 the runtime directory in JavaScriptCore. 13824 13825 * ForwardingHeaders/kjs/JSFunction.h: Removed. 13826 * ForwardingHeaders/kjs/JSObject.h: Removed. 13827 * ForwardingHeaders/kjs/JSString.h: Removed. 13828 * ForwardingHeaders/kjs/JSValue.h: Removed. 13829 * ForwardingHeaders/runtime: Added. 13830 * ForwardingHeaders/runtime/JSFunction.h: Copied from ForwardingHeaders/kjs/JSFunction.h. 13831 * ForwardingHeaders/runtime/JSObject.h: Copied from ForwardingHeaders/kjs/JSObject.h. 13832 * ForwardingHeaders/runtime/JSString.h: Copied from ForwardingHeaders/kjs/JSString.h. 13833 * ForwardingHeaders/runtime/JSValue.h: Copied from ForwardingHeaders/kjs/JSValue.h. 13834 * WebView/WebScriptDebugDelegate.mm: 13835 * WebView/WebScriptDebugger.mm: 13836 * WebView/WebView.mm: 13837 138382008-10-28 Adele Peterson <adele@apple.com> 13839 13840 Reviewed by John Sullivan. 13841 13842 Fix for https://bugs.webkit.org/show_bug.cgi?id=21880 13843 "files" string for multifile uploads needs to be localized 13844 13845 * WebCoreSupport/WebViewFactory.mm: (-[WebViewFactory multipleFileUploadTextForNumberOfFiles:]): 13846 Added. 13847 138482008-10-28 Timothy Hatcher <timothy@apple.com> 13849 13850 Add WebInspector methods to enable the profiler. 13851 13852 https://bugs.webkit.org/show_bug.cgi?id=21927 13853 13854 <rdar://problem/6211578> Make the JavaScript profiler opt-in, so it does 13855 not slow down JavaScript all the time 13856 13857 Reviewed by Darin Adler and Kevin McCullough. 13858 13859 * WebInspector/WebInspector.h: 13860 * WebInspector/WebInspector.mm: 13861 (-[WebInspector isJavaScriptProfilingEnabled]): Added. Calls InspectorController::profilerEnabled. 13862 (-[WebInspector setJavaScriptProfilingEnabled:]): Added. Call InspectorController's disableProfiler 13863 or enableProfiler methods. 13864 138652008-10-27 Timothy Hatcher <timothy@apple.com> 13866 13867 Rename a few methods related to attaching and detaching the debugger. 13868 13869 * Rename attachDebugger to enableDebugger. 13870 * Rename detachDebugger to disableDebugger. 13871 * Rename the debuggerAttached getter to debuggerEnabled. 13872 13873 Reviewed by Darin Adler. 13874 13875 * WebInspector/WebInspector.mm: 13876 (-[WebInspector isDebuggingJavaScript]): 13877 (-[WebInspector startDebuggingJavaScript:]): 13878 (-[WebInspector stopDebuggingJavaScript:]): 13879 138802008-10-27 Anders Carlsson <andersca@apple.com> 13881 13882 Reviewed by Maciej Stachowiak. 13883 13884 Use the C++ stream object for JS requests as well. 13885 13886 * Plugins/WebBaseNetscapePluginView.mm: 13887 (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): 13888 (-[WebBaseNetscapePluginView destroyStream:reason:]): 13889 138902008-10-27 Anders Carlsson <andersca@apple.com> 13891 13892 Reviewed by Dan Bernstein. 13893 13894 Use the C++ stream object in WebBaseNetscapePluginView. Use a HashSet of RefPtrs to keep track of the streams. 13895 13896 * Plugins/WebBaseNetscapePluginStream.mm: 13897 (WebNetscapePluginStream::~WebNetscapePluginStream): 13898 (WebNetscapePluginStream::setPlugin): 13899 (WebNetscapePluginStream::startStream): 13900 (WebNetscapePluginStream::destroyStream): 13901 (WebNetscapePluginStream::destroyStreamWithReason): 13902 (WebNetscapePluginStream::cancelLoadAndDestroyStreamWithError): 13903 (WebNetscapePluginStream::deliverData): 13904 * Plugins/WebBaseNetscapePluginView.h: 13905 * Plugins/WebBaseNetscapePluginView.mm: 13906 (-[WebBaseNetscapePluginView stop]): 13907 (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]): 13908 (-[WebBaseNetscapePluginView disconnectStream:]): 13909 (-[WebBaseNetscapePluginView dealloc]): 13910 (-[WebBaseNetscapePluginView pluginView:receivedResponse:]): 13911 (-[WebBaseNetscapePluginView pluginView:receivedData:]): 13912 (-[WebBaseNetscapePluginView pluginView:receivedError:]): 13913 (-[WebBaseNetscapePluginView pluginViewFinishedLoading:]): 13914 (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): 13915 139162008-10-27 Anders Carlsson <andersca@apple.com> 13917 13918 Reviewed by Dan Bernstein. 13919 13920 Move code from dealloc and finalize to the WebNetscapePluginStream destructor. 13921 13922 * Plugins/WebBaseNetscapePluginStream.h: 13923 * Plugins/WebBaseNetscapePluginStream.mm: 13924 (WebNetscapePluginStream::~WebNetscapePluginStream): 13925 (-[WebBaseNetscapePluginStream dealloc]): 13926 (-[WebBaseNetscapePluginStream finalize]): 13927 139282008-10-27 Anders Carlsson <andersca@apple.com> 13929 13930 Reviewed by Sam Weinig. 13931 13932 Get rid of WebNetscapePlugInStreamLoaderClient, the plug-in stream is its own client. 13933 13934 * Plugins/WebBaseNetscapePluginStream.h: 13935 * Plugins/WebBaseNetscapePluginStream.mm: 13936 (WebNetscapePluginStream::WebNetscapePluginStream): 13937 (-[WebBaseNetscapePluginStream dealloc]): 13938 (-[WebBaseNetscapePluginStream finalize]): 13939 * Plugins/WebBaseNetscapePluginView.mm: 13940 (-[WebBaseNetscapePluginView pluginView:receivedError:]): 13941 (-[WebBaseNetscapePluginView pluginViewFinishedLoading:]): 13942 (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): 13943 (-[WebBaseNetscapePluginView destroyStream:reason:]): 13944 139452008-10-27 Anders Carlsson <andersca@apple.com> 13946 13947 Reviewed by Darin Adler. 13948 13949 Change the Obj-C init methods to simply call WebNetscapePluginStream::create. 13950 13951 * Plugins/WebBaseNetscapePluginStream.h: 13952 (WebNetscapePluginStream::create): 13953 * Plugins/WebBaseNetscapePluginStream.mm: 13954 (-[WebBaseNetscapePluginStream initWithFrameLoader:]): 13955 (WebNetscapePluginStream::WebNetscapePluginStream): 13956 (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]): 13957 139582008-10-27 Anders Carlsson <andersca@apple.com> 13959 13960 Reviewed by Kevin Decker. 13961 13962 Convert more code over to C++. 13963 13964 * Plugins/WebBaseNetscapePluginStream.h: 13965 (WebNetscapePluginStream::plugin): 13966 (WebNetscapePluginStream::setRequestURL): 13967 Convert to C++. 13968 13969 * Plugins/WebBaseNetscapePluginStream.mm: 13970 (WebNetscapePluginStream::start): 13971 (WebNetscapePluginStream::stop): 13972 Ditto. 13973 13974 (WebNetscapePluginStream::startStreamWithResponse): 13975 Ditto. 13976 13977 (-[WebBaseNetscapePluginStream startStreamWithResponse:]): 13978 Call the C++ version. 13979 13980 (-[WebBaseNetscapePluginStream impl]): 13981 New accessor for the C++ class. 13982 13983 * Plugins/WebBaseNetscapePluginView.mm: 13984 (-[WebBaseNetscapePluginView pluginView:receivedData:]): 13985 (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): 13986 (-[WebBaseNetscapePluginView destroyStream:reason:]): 13987 Call the C++ methods. 13988 139892008-10-24 Sam Weinig <sam@webkit.org> 13990 13991 Reviewed by Dan Bernstein. 13992 13993 Fix https://bugs.webkit.org/show_bug.cgi?id=21759 13994 Layering violation: FileChooser should not depend on Document/Frame/Page 13995 13996 * WebCoreSupport/WebChromeClient.h: 13997 * WebCoreSupport/WebChromeClient.mm: 13998 (WebChromeClient::runOpenPanel): 13999 140002008-10-24 Anders Carlsson <andersca@apple.com> 14001 14002 Fix Tiger build. 14003 14004 * WebView/WebUIDelegate.h: 14005 140062008-10-24 Anders Carlsson <andersca@apple.com> 14007 14008 Reviewed by Sam Weinig. 14009 14010 <rdar://problem/5440917> Support NPN_Construct 14011 14012 Set construct. 14013 14014 * Plugins/WebNetscapePluginPackage.m: 14015 (-[WebNetscapePluginPackage load]): 14016 140172008-10-24 Mark Rowe <mrowe@apple.com> 14018 14019 Rubber-stamped by Tim Hatcher. 14020 14021 <rdar://problem/6119711> Remove the dependency on Foundation's private __COCOA_FORMAL_PROTOCOLS__ define. 14022 14023 * Misc/EmptyProtocolDefinitions.h: 14024 140252008-10-24 Adele Peterson <adele@apple.com> 14026 14027 Reviewed by Sam Weinig. 14028 14029 WebKit part of fix for <rdar://problem/5839256> FILE CONTROL: multi-file upload. 14030 14031 * WebCoreSupport/WebChromeClient.mm: 14032 (WebChromeClient::runOpenPanel): 14033 (-[WebOpenPanelResultListener chooseFilenames:]): 14034 * WebView/WebUIDelegate.h: 14035 140362008-10-24 Timothy Hatcher <timothy@apple.com> 14037 14038 Implement new InspectorClient methods to work with Settings. 14039 14040 https://bugs.webkit.org/show_bug.cgi?id=21856 14041 14042 Reviewed by Darin Adler. 14043 14044 * WebCoreSupport/WebInspectorClient.h: Add the new methods and 14045 guard the ObjC parts of the header. 14046 140472008-10-24 Darin Adler <darin@apple.com> 14048 14049 - finish rolling out https://bugs.webkit.org/show_bug.cgi?id=21732 14050 14051 * WebView/WebFrame.mm: 14052 (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): 14053 * WebView/WebScriptDebugDelegate.mm: 14054 (-[WebScriptCallFrame _convertValueToObjcValue:]): 14055 (-[WebScriptCallFrame exception]): 14056 (-[WebScriptCallFrame evaluateWebScript:]): 14057 * WebView/WebView.mm: 14058 (aeDescFromJSValue): 14059 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): 14060 Use JSValue* instead of JSValuePtr. 14061 140622008-10-23 Mark Rowe <mrowe@apple.com> 14063 14064 Build fix. 14065 14066 * Misc/WebKitErrors.m: 14067 (-[NSError _initWithPluginErrorCode:contentURL:pluginPageURL:pluginName:MIMEType:]): 14068 140692008-10-20 Sam Weinig <sam@webkit.org> 14070 14071 Reviewed by Anders Carlsson. 14072 14073 Remove FrameLoaderClient::detachedFromParent4. It is no longer used by any port. 14074 14075 * WebCoreSupport/WebFrameLoaderClient.h: 14076 * WebCoreSupport/WebFrameLoaderClient.mm: 14077 140782008-10-20 Alexey Proskuryakov <ap@webkit.org> 14079 14080 Reviewed by Oliver Hunt. 14081 14082 <rdar://problem/6277777> REGRESSION (r36954): XMLHttpRequest not working when 14083 certain WebView delegate actions are taken 14084 14085 * WebView/WebFrame.mm: (-[WebFrame _attachScriptDebugger]): Don't accidentally create 14086 a window shell if there is none yet. 14087 140882008-10-19 Darin Adler <darin@apple.com> 14089 14090 Reviewed by Oliver Hunt. 14091 14092 - next step of https://bugs.webkit.org/show_bug.cgi?id=21732 14093 improve performance by eliminating JSValue as a base class for JSCell 14094 14095 Remove most uses of JSValue, which will be removed in a future patch. 14096 14097 * WebView/WebFrame.mm: 14098 (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): 14099 Use JSValuePtr instead of JSValue. 14100 * WebView/WebScriptDebugger.h: Removed declaration of JSValue. 14101 141022008-10-18 Darin Adler <darin@apple.com> 14103 14104 Reviewed by Oliver Hunt. 14105 14106 - next step of https://bugs.webkit.org/show_bug.cgi?id=21732 14107 improve performance by eliminating JSValue as a base class for JSCell 14108 14109 Tweak a little more to get closer to where we can make JSValuePtr a class. 14110 14111 * WebView/WebScriptDebugDelegate.mm: 14112 (-[WebScriptCallFrame _convertValueToObjcValue:]): Use JSValuePtr. 14113 (-[WebScriptCallFrame exception]): Ditto. 14114 (-[WebScriptCallFrame evaluateWebScript:]): Ditto. And noValue. 14115 * WebView/WebScriptDebugger.mm: 14116 (WebScriptDebugger::WebScriptDebugger): Use new DebuggerCallFrame 14117 constructor that doesn't require explicitly passing an exception. 14118 * WebView/WebView.mm: 14119 (aeDescFromJSValue): Use JSValuePtr. 14120 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Ditto. 14121 141222008-10-18 Dan Bernstein <mitz@apple.com> 14123 14124 Reviewed by Sam Weinig. 14125 14126 - WebKit/mac part of https://bugs.webkit.org/show_bug.cgi?id=21736 14127 Long-dead decoded image data make up for most of the object cache's memory use over time 14128 14129 * WebView/WebView.mm: 14130 (+[WebView _setCacheModel:]): In the primary web browser model, set the 14131 cache's dead decoded data deletion interval to 60 seconds. 14132 141332008-10-15 Mark Rowe <mrowe@apple.com> 14134 14135 Reviewed by Jon Honeycutt. 14136 14137 Fix a leak of a CFStringRef reported by the build bot. 14138 14139 * Plugins/WebBaseNetscapePluginView.mm: 14140 (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): Use a autoreleased 14141 NSString rather than manually releasing a CFStringRef when we're done with it. 14142 141432008-10-15 Kenneth Russell <kenneth.russell@sun.com> 14144 14145 Reviewed and landed by Anders Carlsson. 14146 14147 https://bugs.webkit.org/show_bug.cgi?id=21572 14148 14149 Initialize pluginFunc.size to the correct size before calling NP_GetEntryPoints. 14150 14151 * Plugins/WebNetscapePluginPackage.m: 14152 (-[WebNetscapePluginPackage load]): 14153 141542008-10-15 Mark Rowe <mrowe@apple.com> 14155 14156 Reviewed by Dan Bernstein. 14157 14158 <rdar://problem/6272508> Crash occurs after loading flash content at http://www.macrumors.com/ 14159 14160 Restore some code related to the CoreGraphics drawing model that was misplaced in r37131. 14161 14162 * Plugins/WebBaseNetscapePluginView.mm: 14163 (-[WebBaseNetscapePluginView invalidateRegion:]): 14164 (-[WebBaseNetscapePluginView setVariable:value:]): 14165 141662008-10-15 Geoffrey Garen <ggaren@apple.com> 14167 14168 Reviewed by Cameron Zwarich. 14169 14170 Fixed https://bugs.webkit.org/show_bug.cgi?id=21345 14171 Start the debugger without reloading the inspected page 14172 14173 * WebInspector/WebInspector.mm: 14174 (-[WebInspector startDebuggingJavaScript:]): Updated for rename. 14175 141762008-10-14 Maxime Britto <britto@apple.com> 14177 14178 Reviewed by Darin Adler. 14179 14180 Added SPI to use WebCore's TextIterator with WebKit. 14181 14182 * WebView/WebTextIterator.h: Added. 14183 * WebView/WebTextIterator.mm: Added. 14184 (-[WebTextIteratorPrivate dealloc]): 14185 (-[WebTextIterator dealloc]): 14186 (-[WebTextIterator initWithRange:]): Creates a TextIterator 14187 instance 14188 (-[WebTextIterator advance]): Asks the iterator to advance() . 14189 (-[WebTextIterator currentNode]): Returns the current DOMNode from 14190 the iterator 14191 (-[WebTextIterator currentText]): Returns the current text from the 14192 iterator 14193 (-[WebTextIterator atEnd]): Indicated whether the iterator has 14194 reached the end of the range. 14195 * WebView/WebView.h: 14196 * WebView/WebView.mm: 14197 (-[WebView textIteratorForRect:]): Returns a WebTextIterator with 14198 the DOMRange contained in the rectangle given as a parameter. 14199 142002008-10-15 Timothy Hatcher <timothy@apple.com> 14201 14202 Clean up user agent generation to simplify the _standardUserAgentWithApplicationName: 14203 class method to not require a WebKit version. 14204 14205 Reviewed by Darin Adler. 14206 14207 * WebView/WebView.mm: 14208 (+[WebView _standardUserAgentWithApplicationName:]): Create the WebKit version. 14209 (-[WebView WebCore::_userAgentForURL:]): Use the simplified _standardUserAgentWithApplicationName:. 14210 Remove code that created the WebKit version. 14211 * WebView/WebViewPrivate.h: Change the method name of _standardUserAgentWithApplicationName:. 14212 142132008-10-14 Timothy Hatcher <timothy@apple.com> 14214 14215 Make the user agent generation method a class method and cache the WebKit 14216 version in a static to prevent generating it every time. This is needed 14217 clean up to fix <rdar://problem/6292331>. Moved all code to WebPrivate so 14218 the class method can be in the WebViewPrivate.h header. 14219 14220 Reviewed by John Sullivan. 14221 14222 * WebView/WebView.mm: 14223 (callGestalt): Moved. Same code. 14224 (createMacOSXVersionString): Moved. Same code. 14225 (createUserVisibleWebKitVersionString): Moved from _userVisibleBundleVersionFromFullVersion: 14226 and returns a copied string. 14227 (+[WebView _standardUserAgentWithApplicationName:andWebKitVersion:]): Made into a class method. 14228 (-[WebView WebCore::_userAgentForURL:]): Changed to cache the WebKit version. 14229 * WebView/WebViewPrivate.h: Added +_standardUserAgentWithApplicationName:andWebKitVersion:. 14230 142312008-10-13 Maciej Stachowiak <mjs@apple.com> 14232 14233 Rubber stamped by Mark Rowe. 14234 14235 - use gcc 4.2 when building with Xcode 3.1 or newer on Leopard, even though this is not the default 14236 14237 * Configurations/DebugRelease.xcconfig: 14238 142392008-10-11 Dan Bernstein <mitz@apple.com> 14240 14241 Reviewed by Sam Weinig. 14242 14243 - rename _setAlwaysUseATSU to _setAlwaysUsesComplexTextCodePath and 14244 update it for the renamed WebCoreTextRenderer method; keep the old 14245 method around for clients that use it 14246 14247 * WebView/WebView.mm: 14248 (+[WebView _setAlwaysUseATSU:]): 14249 (+[WebView _setAlwaysUsesComplexTextCodePath:]): 14250 * WebView/WebViewPrivate.h: 14251 142522008-10-09 Timothy Hatcher <timothy@apple.com> 14253 14254 Don't convert JavaScriptCore header include paths to WebKit paths. This was needed 14255 back when NPAPI and WebScriptObject migrated from JavaScriptCore. Also remove 14256 JavaScriptCore from the VPATH. 14257 14258 Reviewed by Sam Weinig. 14259 14260 * MigrateHeaders.make: 14261 142622008-10-08 Darin Adler <darin@apple.com> 14263 14264 Reviewed by Cameron Zwarich. 14265 14266 - https://bugs.webkit.org/show_bug.cgi?id=21403 14267 Bug 21403: use new CallFrame class rather than Register* for call frame manipulation 14268 14269 * WebView/WebScriptDebugger.mm: 14270 (WebScriptDebugger::WebScriptDebugger): Update since DebuggerCallFrame is simpler now. 14271 142722008-10-08 Timothy Hatcher <timothy@apple.com> 14273 14274 Roll out r37427 because it causes an infinite recursion loading about:blank. 14275 14276 https://bugs.webkit.org/show_bug.cgi?id=21476 14277 142782008-10-08 Darin Adler <darin@apple.com> 14279 14280 Reviewed by Cameron Zwarich. 14281 14282 - https://bugs.webkit.org/show_bug.cgi?id=21403 14283 Bug 21403: use new CallFrame class rather than Register* for call frame manipulation 14284 14285 * WebView/WebScriptDebugger.mm: 14286 (WebScriptDebugger::WebScriptDebugger): Update since DebuggerCallFrame is simpler now. 14287 142882008-10-07 David Hyatt <hyatt@apple.com> 14289 14290 Move viewless WebKit methods that Safari needs from WebViewInternal to WebViewPrivate. 14291 14292 Reviewed by Tim Hatcher 14293 14294 * WebView/WebView.mm: 14295 (WebKitInitializeApplicationCachePathIfNecessary): 14296 (-[WebView _registerDraggedTypes]): 14297 (-[WebView _usesDocumentViews]): 14298 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): 14299 (-[WebView _initWithFrame:frameName:groupName:usesDocumentViews:]): 14300 (-[WebView isFlipped]): 14301 (-[WebView viewWillDraw]): 14302 * WebView/WebViewInternal.h: 14303 * WebView/WebViewPrivate.h: 14304 143052008-10-07 David Hyatt <hyatt@apple.com> 14306 14307 Fix crash in isFlipped. Null check _private since isFlipped can get called from within AppKit 14308 machinery during teardown of the WebView. 14309 14310 Reviewed by Adam Roben 14311 14312 * WebView/WebView.mm: 14313 (-[WebView isFlipped]): 14314 143152008-10-07 David Hyatt <hyatt@apple.com> 14316 14317 Make viewless WebKit update focused and active state when the window becomes and loses key. 14318 The focus controller has been patched to understand that in viewless mode it can recur down and 14319 update all of the frames, which is why this code works now when placed just on the WebView. 14320 14321 Reviewed by Adam Roben 14322 14323 * WebView/WebView.mm: 14324 (-[WebView addWindowObservers]): 14325 (-[WebView removeWindowObservers]): 14326 (-[WebView viewWillMoveToWindow:]): 14327 (-[WebView viewDidMoveToWindow]): 14328 (-[WebView _updateFocusedAndActiveState]): 14329 (-[WebView _windowDidBecomeKey:]): 14330 (-[WebView _windowDidResignKey:]): 14331 (-[WebView _windowWillOrderOnScreen:]): 14332 143332008-10-07 David Hyatt <hyatt@apple.com> 14334 14335 Make sure the parent visibility state is set up properly on the outermost ScrollView widget. 14336 This fixes the repainting issues with viewless WebKit on Mac. 14337 14338 Reviewed by Sam Weinig 14339 14340 * WebCoreSupport/WebFrameLoaderClient.mm: 14341 (WebFrameLoaderClient::transitionToCommittedForNewPage): 14342 143432008-10-07 David Hyatt <hyatt@apple.com> 14344 14345 Make sure viewless Mac WebKit does a layout if needed before drawing. 14346 14347 Reviewed by Sam Weinig 14348 14349 * WebView/WebView.mm: 14350 (-[WebView viewWillDraw]): 14351 143522008-10-07 David Hyatt <hyatt@apple.com> 14353 14354 Make sure observers get hooked up to watch for size changes in viewless WebKit mode. 14355 14356 Reviewed by Sam Weinig 14357 14358 * ChangeLog: 14359 * WebView/WebFrame.mm: 14360 (-[WebFrame _drawRect:contentsOnly:]): 14361 * WebView/WebView.mm: 14362 (-[WebView viewWillDraw]): 14363 (-[WebView _boundsChanged]): 14364 (-[WebView addSizeObservers]): 14365 (-[WebView viewDidMoveToWindow]): 14366 (-[WebView viewDidMoveToSuperview]): 14367 143682008-10-07 David Hyatt <hyatt@apple.com> 14369 14370 Make sure WebView listens for size changes and resizes the frame view in viewless mode. 14371 14372 Reviewed by Sam Weinig 14373 14374 * WebView/WebView.mm: 14375 (-[WebView addSizeObservers]): 14376 (-[WebView viewDidMoveToWindow]): 14377 (-[WebView viewDidMoveToSuperview]): 14378 143792008-10-06 David Hyatt <hyatt@apple.com> 14380 14381 Enable viewless Mac WebKit to paint some basic pages. 14382 14383 Reviewed by Sam Weinig 14384 14385 * WebCoreSupport/WebChromeClient.mm: 14386 (WebChromeClient::windowResizerRect): 14387 (WebChromeClient::repaint): 14388 (WebChromeClient::screenToWindow): 14389 (WebChromeClient::windowToScreen): 14390 (WebChromeClient::platformWindow): 14391 * WebCoreSupport/WebFrameLoaderClient.h: 14392 * WebCoreSupport/WebFrameLoaderClient.mm: 14393 (WebFrameLoaderClient::forceLayoutForNonHTML): 14394 (WebFrameLoaderClient::dispatchDidCommitLoad): 14395 (WebFrameLoaderClient::transitionToCommittedForNewPage): 14396 (WebFrameLoaderClient::createFrame): 14397 * WebView/WebFrame.mm: 14398 (-[WebFrame _drawRect:contentsOnly:]): 14399 * WebView/WebFrameInternal.h: 14400 * WebView/WebFrameView.mm: 14401 * WebView/WebFrameViewInternal.h: 14402 * WebView/WebHTMLView.mm: 14403 (-[WebHTMLView drawSingleRect:]): 14404 (-[WebHTMLView drawRect:]): 14405 * WebView/WebView.mm: 14406 (-[WebView isFlipped]): 14407 (-[WebView _boundsChanged]): 14408 (-[WebView _mustDrawUnionedRect:singleRects:count:]): 14409 (-[WebView drawSingleRect:]): 14410 (-[WebView drawRect:]): 14411 (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): 14412 (-[WebView initWithFrame:frameName:groupName:]): 14413 (-[WebView _initWithFrame:frameName:groupName:usesDocumentViews:]): 14414 (-[WebView initWithCoder:]): 14415 (-[WebView removeSizeObservers]): 14416 (-[WebView viewWillMoveToWindow:]): 14417 (-[WebView viewWillMoveToSuperview:]): 14418 (-[WebView _usesDocumentViews]): 14419 * WebView/WebViewInternal.h: 14420 144212008-10-06 Kevin Decker <kdecker@apple.com> 14422 14423 Rubber-stamped by Anders Carlsson. 14424 14425 Rename _webkit_applicationCacheDirectoryWithBundleIdentifier to _webkit_localCacheDirectoryWithBundleIdentifier. 14426 14427 * Misc/WebKitNSStringExtras.h: 14428 * Misc/WebKitNSStringExtras.m: 14429 (+[NSString _webkit_localCacheDirectoryWithBundleIdentifier:]): 14430 * WebView/WebDataSource.mm: 14431 (-[WebDataSource _transferApplicationCache:]): 14432 * WebView/WebView.mm: 14433 (WebKitInitializeApplicationCachePathIfNecessary): 14434 144352008-10-06 Anders Carlsson <andersca@apple.com> 14436 14437 Reviewed by Sam Weinig. 14438 14439 Make WebNetscapePluginStream a WebCore::NetscapePlugInStreamLoaderClient. 14440 14441 * Plugins/WebBaseNetscapePluginStream.h: 14442 (WebNetscapePluginStream::~WebNetscapePluginStream): 14443 * Plugins/WebBaseNetscapePluginStream.mm: 14444 (WebNetscapePluginStream::didReceiveResponse): 14445 (-[WebBaseNetscapePluginStream startStreamWithResponse:]): 14446 (WebNetscapePluginStream::wantsAllStreams): 14447 (-[WebBaseNetscapePluginStream wantsAllStreams]): 14448 (WebNetscapePluginStream::didFail): 14449 (-[WebBaseNetscapePluginStream destroyStreamWithError:]): 14450 (WebNetscapePluginStream::didFinishLoading): 14451 (-[WebBaseNetscapePluginStream finishedLoading]): 14452 (WebNetscapePluginStream::didReceiveData): 14453 (-[WebBaseNetscapePluginStream receivedData:]): 14454 144552008-10-06 Anders Carlsson <andersca@apple.com> 14456 14457 Bring back the stop method. It was called through performSelector, which 14458 is why I couldn't find any references to it. 14459 14460 * Plugins/WebBaseNetscapePluginStream.h: 14461 * Plugins/WebBaseNetscapePluginStream.mm: 14462 (-[WebBaseNetscapePluginStream stop]): 14463 144642008-10-06 Anders Carlsson <andersca@apple.com> 14465 14466 Reviewed by Sam Weinig. 14467 14468 More conversion and cleanup. 14469 14470 * Plugins/WebBaseNetscapePluginStream.h: 14471 * Plugins/WebBaseNetscapePluginStream.mm: 14472 (WebNetscapePluginStream::startStream): 14473 (-[WebBaseNetscapePluginStream startStreamWithResponse:]): 14474 * Plugins/WebBaseNetscapePluginView.mm: 14475 (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): 14476 144772008-10-06 Anders Carlsson <andersca@apple.com> 14478 14479 Reviewed by Sam Weinig. 14480 14481 Fold initWithRequestURL into initWithRequest. 14482 14483 * Plugins/WebBaseNetscapePluginStream.h: 14484 * Plugins/WebBaseNetscapePluginStream.mm: 14485 (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]): 14486 144872008-10-06 Anders Carlsson <andersca@apple.com> 14488 14489 Reviewed by Sam Weinig. 14490 14491 Change the init methods not to return nil on failures. (These failures never occur anyway) 14492 14493 Use initWithRequest as the initializer, initWithRequestURL is going to be merged with it. 14494 14495 * Plugins/WebBaseNetscapePluginStream.mm: 14496 (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]): 14497 (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]): 14498 * Plugins/WebBaseNetscapePluginView.mm: 14499 (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): 14500 145012008-10-06 Anders Carlsson <andersca@apple.com> 14502 14503 Reviewed by David Hyatt. 14504 14505 Convert more methods over to C++. 14506 14507 * Plugins/WebBaseNetscapePluginStream.h: 14508 * Plugins/WebBaseNetscapePluginStream.mm: 14509 (WebNetscapePluginStream::ownerForStream): 14510 (WebNetscapePluginStream::pluginCancelledConnectionError): 14511 (WebNetscapePluginStream::errorForReason): 14512 (-[WebBaseNetscapePluginStream errorForReason:]): 14513 (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]): 14514 (WebNetscapePluginStream::cancelLoadAndDestroyStreamWithError): 14515 (-[WebBaseNetscapePluginStream cancelLoadAndDestroyStreamWithError:]): 14516 (WebNetscapePluginStream::deliverData): 14517 (WebNetscapePluginStream::deliverDataTimerFired): 14518 (WebNetscapePluginStream::deliverDataToFile): 14519 (-[WebBaseNetscapePluginStream finishedLoading]): 14520 (-[WebBaseNetscapePluginStream receivedData:]): 14521 * Plugins/WebBaseNetscapePluginView.mm: 14522 (-[WebBaseNetscapePluginView destroyStream:reason:]): 14523 145242008-10-06 David Hyatt <hyatt@apple.com> 14525 14526 Add SPI for a new viewless WebKit mode. The idea is that when this flag is set there will be no 14527 views created except for the outermost WebView. 14528 14529 Reviewed by Tim Hatcher 14530 14531 * WebView/WebView.mm: 14532 * WebView/WebViewInternal.h: 14533 145342008-10-06 Anders Carlsson <andersca@apple.com> 14535 14536 Reviewed by David Hyatt. 14537 14538 Convert more methods over to C++. 14539 14540 * Plugins/WebBaseNetscapePluginStream.h: 14541 * Plugins/WebBaseNetscapePluginStream.mm: 14542 (WebNetscapePluginStream::reasonForError): 14543 (WebNetscapePluginStream::destroyStreamWithReason): 14544 (WebNetscapePluginStream::cancelLoadWithError): 14545 (-[WebBaseNetscapePluginStream cancelLoadWithError:]): 14546 (WebNetscapePluginStream::destroyStreamWithError): 14547 (-[WebBaseNetscapePluginStream destroyStreamWithError:]): 14548 (-[WebBaseNetscapePluginStream cancelLoadAndDestroyStreamWithError:]): 14549 (-[WebBaseNetscapePluginStream _deliverDataToFile:]): 14550 (-[WebBaseNetscapePluginStream finishedLoading]): 14551 * Plugins/WebBaseNetscapePluginView.mm: 14552 (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithError:]): 14553 145542008-10-04 Darin Adler <darin@apple.com> 14555 14556 Reviewed by Cameron Zwarich. 14557 14558 - https://bugs.webkit.org/show_bug.cgi?id=21295 14559 Bug 21295: Replace ExecState with a call frame Register pointer 14560 14561 * WebView/WebScriptDebugger.mm: 14562 (WebScriptDebugger::WebScriptDebugger): Remove 0 passed for ExecState. 14563 145642008-10-03 John Sullivan <sullivan@apple.com> 14565 14566 Fixed Release build 14567 14568 * Plugins/WebBaseNetscapePluginStream.mm: 14569 (WebNetscapePluginStream::destroyStream): 14570 added !LOG_DISABLED guard around declaration of npErr used only in LOG 14571 145722008-10-03 Anders Carlsson <andersca@apple.com> 14573 14574 Reviewed by David Hyatt. 14575 14576 Convert destroyStream over to C++. 14577 14578 * Plugins/WebBaseNetscapePluginStream.h: 14579 * Plugins/WebBaseNetscapePluginStream.mm: 14580 (WebNetscapePluginStream::destroyStream): 14581 (-[WebBaseNetscapePluginStream _destroyStreamWithReason:]): 14582 (-[WebBaseNetscapePluginStream _deliverData]): 14583 145842008-10-03 Anders Carlsson <andersca@apple.com> 14585 14586 Reviewed by David Hyatt. 14587 14588 Use a Timer instead of -[NSObject performSelector:withObject:afterDelay]; 14589 14590 * Plugins/WebBaseNetscapePluginStream.h: 14591 (WebNetscapePluginStream::WebNetscapePluginStream): 14592 * Plugins/WebBaseNetscapePluginStream.mm: 14593 (-[WebBaseNetscapePluginStream _destroyStream]): 14594 (-[WebBaseNetscapePluginStream _deliverData]): 14595 (WebNetscapePluginStream::deliverDataTimerFired): 14596 145972008-10-03 Anders Carlsson <andersca@apple.com> 14598 14599 Reviewed by David Hyatt. 14600 14601 More plug-in stream cleanup. 14602 14603 * Plugins/WebBaseNetscapePluginStream.h: 14604 (WebNetscapePluginStream::create): 14605 (WebNetscapePluginStream::WebNetscapePluginStream): 14606 * Plugins/WebBaseNetscapePluginStream.mm: 14607 (-[WebBaseNetscapePluginStream initWithFrameLoader:]): 14608 (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]): 14609 (-[WebBaseNetscapePluginStream dealloc]): 14610 (-[WebBaseNetscapePluginStream finalize]): 14611 (-[WebBaseNetscapePluginStream setPlugin:]): 14612 (WebNetscapePluginStream::setPlugin): 14613 (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]): 14614 (-[WebBaseNetscapePluginStream _destroyStream]): 14615 146162008-10-03 David Hyatt <hyatt@apple.com> 14617 14618 Remove addToDirtyRegion. 14619 14620 Reviewed by Oliver Hunt 14621 14622 * WebCoreSupport/WebChromeClient.h: 14623 * WebCoreSupport/WebChromeClient.mm: 14624 146252008-10-02 David Hyatt <hyatt@apple.com> 14626 14627 https://bugs.webkit.org/show_bug.cgi?id=21328 14628 14629 Make widget invalidation more cross-platform. 14630 14631 (1) Make invalidateRect a pure virtual function on Widget. All leaf widgets must now implement this function. 14632 14633 (2) Scrollbars now send invalidations through the ScrollbarClient. windowClipRect on ScrollbarClient has been removed and replaced with this invalidation call. 14634 This allows all scrollbar invalidations to go through the render tree so that transforms and reflections will be respected. 14635 14636 (3) Plugins now have the native window invalidation code for windowed plugins. Windowless plugins do a repaintRectangle on the plugin's renderer. 14637 14638 (4) FrameViews now do a repaintRectangle on their owner element's renderer. 14639 14640 Reviewed by Sam Weinig 14641 14642 * WebCoreSupport/WebFrameLoaderClient.mm: 14643 (PluginWidget::PluginWidget): 14644 (PluginWidget::invalidateRect): 14645 (NetscapePluginWidget::NetscapePluginWidget): 14646 (WebFrameLoaderClient::createPlugin): 14647 146482008-10-02 Darin Adler <darin@apple.com> 14649 14650 Reviewed by Geoff Garen. 14651 14652 - https://bugs.webkit.org/show_bug.cgi?id=21321 14653 Bug 21321: speed up JavaScriptCore by inlining Heap in JSGlobalData 14654 14655 * Misc/WebCoreStatistics.mm: 14656 (+[WebCoreStatistics javaScriptObjectsCount]): Use heap. instead of heap-> to 14657 work with the heap. 14658 (+[WebCoreStatistics javaScriptGlobalObjectsCount]): Ditto. 14659 (+[WebCoreStatistics javaScriptProtectedObjectsCount]): Ditto. 14660 (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]): Ditto. 14661 (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]): Ditto. 14662 (+[WebCoreStatistics javaScriptReferencedObjectsCount]): Ditto. 14663 146642008-10-02 David Hyatt <hyatt@apple.com> 14665 14666 https://bugs.webkit.org/show_bug.cgi?id=21314 14667 14668 Make scrollBackingStore cross-platform. 14669 14670 Reviewed by Sam Weinig 14671 14672 * WebCoreSupport/WebChromeClient.h: 14673 * WebCoreSupport/WebChromeClient.mm: 14674 (WebChromeClient::repaint): 14675 (WebChromeClient::scroll): 14676 146772008-10-01 Geoffrey Garen <ggaren@apple.com> 14678 14679 Reviewed by Darin Adler and Cameron Zwarich. 14680 14681 Updated for JavaScriptCore API changes: use a SourceCode instead of 14682 broken out parameters; treat sourceId as intptr_t. 14683 14684 We still treat sourceId as int in some cases because of DashCode. See 14685 <rdar://problem/6263293> WebScriptDebugDelegate should use intptr_t for 14686 sourceId, not int. 14687 14688 * WebView/WebScriptDebugger.h: 14689 * WebView/WebScriptDebugger.mm: 14690 (toNSString): 14691 (WebScriptDebugger::sourceParsed): 14692 (WebScriptDebugger::callEvent): 14693 (WebScriptDebugger::atStatement): 14694 (WebScriptDebugger::returnEvent): 14695 (WebScriptDebugger::exception): 14696 (WebScriptDebugger::willExecuteProgram): 14697 (WebScriptDebugger::didExecuteProgram): 14698 (WebScriptDebugger::didReachBreakpoint): 14699 147002008-10-01 David Hyatt <hyatt@apple.com> 14701 14702 Move prohibitsScrolling from the Frame to the ScrollView. 14703 14704 Reviewed by Sam Weinig 14705 14706 * WebView/WebView.mm: 14707 (-[WebView setProhibitsMainFrameScrolling:]): 14708 147092008-10-01 David Hyatt <hyatt@apple.com> 14710 14711 https://bugs.webkit.org/show_bug.cgi?id=21282 14712 14713 Make contentsToScreen/screenToContents cross-platform. Only implemented by Mac/Win right now. 14714 14715 Reviewed by Adam Roben 14716 14717 * WebCoreSupport/WebChromeClient.h: 14718 * WebCoreSupport/WebChromeClient.mm: 14719 (WebChromeClient::repaint): 14720 (WebChromeClient::screenToWindow): 14721 (WebChromeClient::windowToScreen): 14722 147232008-09-30 Dave Hyatt <hyatt@apple.com> 14724 14725 https://bugs.webkit.org/show_bug.cgi?id=21269 14726 14727 This patch makes the ScrollView::paint method cross-platform. The paint method calls the base class 14728 Widget paint on platforms with native widgets (Mac and wx). Otherwise it calls a virtual function, 14729 paintContents, to paint the ScrollView's contents, and then it paints each of the two scrollbars and 14730 the scrollbar corner. 14731 14732 The scrollbar themes are now responsible for painting scrollbar corners. At the moment ScrollbarThemeWin still 14733 paints white (which is incorrect), so a future patch will actually implement proper native scroll corner painting 14734 for Windows. 14735 14736 paintContents is implemented by FrameView, and replaces Frame::paint. All of the FramePrivate member 14737 variables used by Frame::paint have moved to FrameViewPrivate instead. All callers of Frame::paint have 14738 been patched to use FrameView::paintContents instead. 14739 14740 Reviewed by Darin Adler 14741 14742 * WebView/WebFrame.mm: 14743 (-[WebFrame _drawRect:]): 14744 147452008-09-30 Kevin Decker <kdecker@apple.com> 14746 14747 Reviewed by Anders Carlsson. 14748 14749 Remove the NPDrawingModelOpenGL entirely. To my knowledge no shipping plug-in ever used it, and no other browser engine 14750 ever supported it. 14751 14752 * Plugins/WebBaseNetscapePluginView.h: Removed AGL.h import and OpenGL related ivars. 14753 * Plugins/WebBaseNetscapePluginView.mm: Removed soft linking for OpenGL and AGL frameworks. 14754 Also removed many methods AGL/CGL support methods that are no longer necessary. 14755 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Removed NPDrawingModelOpenGL related code. 14756 (-[WebBaseNetscapePluginView restorePortState:]): Ditto. 14757 (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]): Ditto. 14758 (-[WebBaseNetscapePluginView isNewWindowEqualToOldWindow]): Ditto. 14759 (-[WebBaseNetscapePluginView setWindowIfNecessary]): Ditto. 14760 (-[WebBaseNetscapePluginView stop]): Ditto. 14761 (-[WebBaseNetscapePluginView dealloc]): Ditto. 14762 (-[WebBaseNetscapePluginView drawRect:]): 14763 (-[WebBaseNetscapePluginView viewWillMoveToWindow:]): Ditto. 14764 (-[WebBaseNetscapePluginView invalidateRegion:]): Ditto. 14765 (-[WebBaseNetscapePluginView getVariable:value:]): Tell plug-ins WebKit does not support NPDrawingModelOpenGL. 14766 (-[WebBaseNetscapePluginView setVariable:value:]): Removed NPDrawingModelOpenGL related code. 14767 (-[WebBaseNetscapePluginView _viewHasMoved]): Ditto. 14768 147692008-09-30 Dave Hyatt <hyatt@apple.com> 14770 14771 http://bugs.webkit.org/show_bug.cgi?id=21250 14772 14773 Rename updateContents to repaintContentRectangle and make it cross-platform by always sending 14774 repaints up through the ChromeClient. 14775 14776 Reviewed by Darin Adler 14777 14778 * WebCoreSupport/WebChromeClient.h: 14779 * WebCoreSupport/WebChromeClient.mm: 14780 (WebChromeClient::repaint): 14781 147822008-09-30 Anders Carlsson <andersca@apple.com> 14783 14784 Reviewed by Mark Rowe and Adam Roben. 14785 14786 No need to use pointers to store C++ objects as pointers in WebViewPrivate, we can just 14787 store them directly. 14788 14789 * Configurations/Base.xcconfig: 14790 Set GCC_OBJC_CALL_CXX_CDTORS to YES. 14791 14792 * WebView/WebView.mm: 14793 (-[WebViewPrivate init]): 14794 (-[WebViewPrivate dealloc]): 14795 (-[WebViewPrivate finalize]): 14796 (-[WebView _preferencesChangedNotification:]): 14797 (-[WebView setApplicationNameForUserAgent:]): 14798 (-[WebView setCustomUserAgent:]): 14799 (-[WebView customUserAgent]): 14800 (-[WebView WebCore::_userAgentForURL:WebCore::]): 14801 (-[WebView _addObject:forIdentifier:]): 14802 (-[WebView _objectForIdentifier:]): 14803 (-[WebView _removeObjectForIdentifier:]): 14804 148052008-09-29 Thiago Macieira <thiago.macieira@nokia.com> 14806 14807 Reviewed by Simon. 14808 14809 Changed copyright from Trolltech ASA to Nokia. 14810 14811 Nokia acquired Trolltech ASA, assets were transferred on September 26th 2008. 14812 14813 14814 * WebCoreSupport/WebChromeClient.h: 14815 * WebCoreSupport/WebChromeClient.mm: 14816 * WebCoreSupport/WebEditorClient.h: 14817 * WebCoreSupport/WebEditorClient.mm: 14818 148192008-09-28 Timothy Hatcher <timothy@apple.com> 14820 14821 Improves the Web Inspector node highlight so it does not scroll 14822 to reveal the node in the page. This makes the highlight less 14823 invasive and causes less things to change on screen. Also makes 14824 the highlight redraw when the WebView draws, so it stays current 14825 if the node changes on the page for any reason. 14826 14827 <rdar://problem/6115804> Don't scroll when highlighting (21000) 14828 https://bugs.webkit.org/show_bug.cgi?id=21000 14829 14830 Reviewed by Dan Bernstein. 14831 14832 * WebCoreSupport/WebInspectorClient.mm: 14833 (-[WebInspectorWindowController highlightNode:]): Call setNeedsDisplay:YES 14834 if there is an existing highlight. 14835 (-[WebInspectorWindowController didAttachWebNodeHighlight:]): Set the current 14836 highlight node on the inspected WebView. 14837 (-[WebInspectorWindowController willDetachWebNodeHighlight:]): Set the current 14838 highlight node on the inspected WebView to nil. 14839 * WebInspector/WebNodeHighlight.m: 14840 (-[WebNodeHighlight setNeedsUpdateInTargetViewRect:]): Disable screen updates 14841 until flush for the inspected window. Invalidate the whole highlight view since 14842 we don't know the rect that needs updated since the highlight can be larger than 14843 the highlighted element due to the margins and other factors. 14844 * WebInspector/WebNodeHighlightView.m: 14845 * WebView/WebHTMLView.mm: 14846 (-[WebHTMLView drawSingleRect:]): Call setNeedsUpdateInTargetViewRect: on the 14847 current highlight node. 14848 * WebView/WebView.mm: 14849 (-[WebViewPrivate dealloc]): Release the current highlight node. 14850 (-[WebView setCurrentNodeHighlight:]): Set the current highlight node. 14851 (-[WebView currentNodeHighlight]): Return the current highlight node. 14852 * WebView/WebViewInternal.h: 14853 148542008-09-28 David Kilzer <ddkilzer@apple.com> 14855 14856 Fix build warning in WebDefaultUIDelegate.m 14857 14858 Reviewed by Dan Bernstein. 14859 14860 This fixes a warning noticed by the clang static analyzer: 14861 .../WebDefaultUIDelegate.m: In function ‘-[WebDefaultUIDelegate webViewFirstResponder:]’: 14862 .../WebDefaultUIDelegate.m:92: warning: initialization from distinct Objective-C type 14863 14864 Note that this doesn't actually cause any change in behavior since 14865 the gcc compiler ignores the semi-colon anyway. 14866 14867 * DefaultDelegates/WebDefaultUIDelegate.m: 14868 (-[WebDefaultUIDelegate webViewFirstResponder:]): Removed semi-colon 14869 from method signature. 14870 148712008-09-27 David Hyatt <hyatt@apple.com> 14872 14873 Fix for https://bugs.webkit.org/show_bug.cgi?id=21182 14874 14875 Make sure Mac null checks the view like the other platforms do now that Mac goes through WebCore 14876 to call setAllowsScrolling. 14877 14878 Reviewed by Mark Rowe 14879 14880 * WebCoreSupport/WebFrameLoaderClient.mm: 14881 (WebFrameLoaderClient::createFrame): 14882 148832008-09-27 Anders Carlsson <andersca@apple.com> 14884 14885 Reviewed by Sam Weinig. 14886 14887 https://bugs.webkit.org/show_bug.cgi?id=21178 14888 <rdar://problem/6248651> 14889 14890 Check if the plug-in is allowed to load the resource. This matches Firefox. 14891 14892 * Plugins/WebBaseNetscapePluginView.mm: 14893 (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): 14894 148952008-09-26 Matt Lilek <webkit@mattlilek.com> 14896 14897 Reviewed by Tim Hatcher. 14898 14899 Update FEATURE_DEFINES after ENABLE_CROSS_DOCUMENT_MESSAGING was removed. 14900 14901 * Configurations/WebKit.xcconfig: 14902 149032008-09-26 David Hyatt <hyatt@apple.com> 14904 14905 https://bugs.webkit.org/show_bug.cgi?id=21164 14906 14907 Rework concept of allowsScrolling/setAllowsScrolling to be cross-platform. 14908 14909 Reviewed by Sam Weinig 14910 14911 * WebCoreSupport/WebFrameLoaderClient.mm: 14912 (WebFrameLoaderClient::createFrame): 14913 * WebView/WebDynamicScrollBarsView.h: 14914 * WebView/WebDynamicScrollBarsView.m: 14915 * WebView/WebDynamicScrollBarsViewInternal.h: 14916 * WebView/WebFrameView.mm: 14917 (-[WebFrameView setAllowsScrolling:]): 14918 (-[WebFrameView allowsScrolling]): 14919 149202008-09-26 David Hyatt <hyatt@apple.com> 14921 14922 https://bugs.webkit.org/show_bug.cgi?id=21149 14923 14924 More refactoring to make scrollbar modes cross-platform. Reduce the protocol that 14925 WebDynamicScrollBarsView has to implement for communicating with WebCore to just three methods. 14926 14927 Reviewed by Sam Weinig 14928 14929 * WebView/WebDynamicScrollBarsView.m: 14930 (-[WebDynamicScrollBarsView scrollingModes:WebCore::vertical:WebCore::]): 14931 (-[WebDynamicScrollBarsView setHorizontalScrollingMode:andLock:]): 14932 (-[WebDynamicScrollBarsView setVerticalScrollingMode:andLock:]): 14933 (-[WebDynamicScrollBarsView setScrollingModes:vertical:andLock:]): 14934 * WebView/WebDynamicScrollBarsViewInternal.h: 14935 * WebView/WebFrameView.mm: 14936 (-[WebFrameView setAllowsScrolling:]): 14937 * WebView/WebView.mm: 14938 (-[WebView setAlwaysShowVerticalScroller:]): 14939 (-[WebView setAlwaysShowHorizontalScroller:]): 14940 149412008-09-26 David Kilzer <ddkilzer@apple.com> 14942 14943 Fix Mac build with XSLT disabled 14944 14945 Reviewed by Alexey. 14946 14947 * Misc/WebCache.mm: 14948 (+[WebCache statistics]): Populate xslStyleSheet statistics with 14949 zeros if XSLT is disabled. 14950 149512008-09-25 David Hyatt <hyatt@apple.com> 14952 14953 https://bugs.webkit.org/show_bug.cgi?id=21101 14954 14955 Fix the updating of the active state to not be dumb, so that viewless scrollbars repaint properly. 14956 14957 Reviewed by Tim Hatcher 14958 14959 * WebView/WebHTMLView.mm: 14960 (-[WebHTMLView _updateFocusedAndActiveState]): 14961 149622008-09-24 Darin Adler <darin@apple.com> 14963 14964 Reviewed by Dan Bernstein. 14965 14966 - https://bugs.webkit.org/show_bug.cgi?id=21079 14967 <rdar://problem/6203938> Disallow embedding Safari-generated pages 14968 (e.g bookmarks collection) in subframes 14969 14970 * DefaultDelegates/WebDefaultPolicyDelegate.m: 14971 (-[WebDefaultPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]): 14972 Use the new +[WebView _canHandleRequest:forMainFrame:] so we can give 14973 a different answer for the main frame and subframes. 14974 * WebCoreSupport/WebFrameLoaderClient.mm: 14975 (WebFrameLoaderClient::canHandleRequest): Ditto. 14976 14977 * WebView/WebView.mm: 14978 (+[WebView _canHandleRequest:forMainFrame:]): Added forMainFrame. Only look 14979 for scheme-specific representations for the main frame, not subframes. 14980 (+[WebView _canHandleRequest:]): Give answer for main frame -- calls the 14981 method above with YES for main frame. 14982 14983 * WebView/WebViewInternal.h: Added _canHandleRequest:forMainFrame:. 14984 149852008-09-23 David Hyatt <hyatt@apple.com> 14986 14987 https://bugs.webkit.org/show_bug.cgi?id=21039 14988 14989 Teach the viewless Mac scrollbar how to avoid the NSWindow resizer. 14990 14991 Reviewed by Sam Weinig 14992 14993 * WebCoreSupport/WebChromeClient.mm: 14994 (WebChromeClient::windowResizerRect): 14995 149962008-09-23 Dan Bernstein <mitz@apple.com> 14997 14998 Reviewed by Beth Dakin. 14999 15000 - fix <rdar://problem/6233388> Crash beneath -[WebFrameView keyDown:] 15001 15002 Test: fast/events/keydown-remove-frame.html 15003 15004 * WebView/WebFrameView.mm: 15005 (-[WebFrameView keyDown:]): Added a null check. 15006 150072008-09-21 Dirk Schulze <vbs85@gmx.de> 15008 15009 Reviewed and landed by Eric Seidel. 15010 15011 Moved CGFloat definition to WebKitPrefix so CGFloat can be used more 15012 freely throughout WebCore without worrying about breaking Tiger. 15013 15014 * Misc/WebTypesInternal.h: Removed it from here. 15015 * WebKitPrefix.h: Added it here. 15016 150172008-09-20 Matt Lilek <webkit@mattlilek.com> 15018 15019 Reviewed by Tim Hatcher. 15020 15021 Revert r35688. We use a textured window on Leopard, which does not have the 15022 square corners of the standard Aqua window on Tiger. 15023 15024 * WebCoreSupport/WebInspectorClient.mm: 15025 (-[WebInspectorWindowController window]): Add back the call to WKNSWindowMakeBottomCornersSquare. 15026 150272008-09-19 Darin Adler <darin@apple.com> 15028 15029 Reviewed by Dan Bernstein. 15030 15031 - speculative fix for https://bugs.webkit.org/show_bug.cgi?id=20943 15032 Assertion failure in RefCountedLeakCounter::cancelMessageSuppression() when closing a window 15033 15034 * WebView/WebView.mm: 15035 (-[WebView _commonInitializationWithFrameName:groupName:]): Moved call to 15036 RefCountedLeakCounter::suppressMessages in here. 15037 (-[WebView initWithFrame:frameName:groupName:]): Moved it out of here. 15038 150392008-09-18 Mark Rowe <mrowe@apple.com> 15040 15041 Reviewed by Dan Bernstein. 15042 15043 Add SPI to WebView to allow DRT to clear the main frame's name between tests. 15044 15045 * WebView/WebView.mm: 15046 (-[WebView _clearMainFrameName]): 15047 * WebView/WebViewPrivate.h: 15048 150492008-09-18 Darin Adler <darin@apple.com> 15050 15051 Reviewed by Sam Weinig. 15052 15053 - fix https://bugs.webkit.org/show_bug.cgi?id=20925 15054 LEAK messages appear every time I quit 15055 15056 * WebView/WebPreferences.mm: 15057 (-[WebPreferences setFullDocumentTeardownEnabled:]): Removed unneeded call 15058 to setLogLeakMessages. 15059 * WebView/WebView.mm: 15060 (-[WebView _closeWithFastTeardown]): Call RefCountedLeakCounter::suppressMessages, 15061 telling it that we can't track leaks because at least one WebView was closed with 15062 fast teardown. 15063 (-[WebView _close]): Removed unneeded call to setLogLeakMessages. Added a call to 15064 cancelMessageSuppression since the WebView is no longer open. 15065 Added an explicit garbage collect to help with the case where we're closing during 15066 the quit process -- the garbageCollectSoon() calls done inside WebCore won't help 15067 us in that case. 15068 (-[WebView initWithFrame:frameName:groupName:]): Call 15069 RefCountedLeakCounter::suppressMessages telling it that we can't track leaks 15070 because at least one WebView is currently open. 15071 150722008-09-18 Anders Carlsson <andersca@apple.com> 15073 15074 Reviewed by Adam Roben. 15075 15076 Move the remainder of the stream ivars to the C++ object. 15077 15078 * Plugins/WebBaseNetscapePluginStream.h: 15079 (WebNetscapePluginStream::WebNetscapePluginStream): 15080 * Plugins/WebBaseNetscapePluginStream.mm: 15081 (-[WebBaseNetscapePluginStream _pluginCancelledConnectionError]): 15082 (-[WebBaseNetscapePluginStream initWithFrameLoader:]): 15083 (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]): 15084 (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]): 15085 (-[WebBaseNetscapePluginStream dealloc]): 15086 (-[WebBaseNetscapePluginStream finalize]): 15087 (-[WebBaseNetscapePluginStream setPlugin:]): 15088 (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]): 15089 (-[WebBaseNetscapePluginStream start]): 15090 (-[WebBaseNetscapePluginStream stop]): 15091 (-[WebBaseNetscapePluginStream wantsAllStreams]): 15092 (-[WebBaseNetscapePluginStream _destroyStream]): 15093 (-[WebBaseNetscapePluginStream _destroyStreamWithReason:]): 15094 (-[WebBaseNetscapePluginStream cancelLoadWithError:]): 15095 (-[WebBaseNetscapePluginStream _deliverData]): 15096 150972008-09-17 David Hyatt <hyatt@apple.com> 15098 15099 Make the notion of Widget having an underlying native widget cross-platform. 15100 15101 Reviewed by Sam Weinig 15102 15103 * WebCoreSupport/WebFrameLoaderClient.mm: 15104 (NetscapePluginWidget::handleEvent): 15105 * WebView/WebFrame.mm: 15106 (-[WebFrame _dragSourceMovedTo:]): 15107 (-[WebFrame _dragSourceEndedAt:operation:]): 15108 * WebView/WebFrameView.mm: 15109 (-[WebFrameView _install]): 15110 * WebView/WebRenderNode.mm: 15111 (copyRenderNode): 15112 151132008-09-16 Anders Carlsson <andersca@apple.com> 15114 15115 Reviewed by Cameron Zwarich. 15116 15117 Move more instance variables down to the C++ class. 15118 15119 * Plugins/WebBaseNetscapePluginStream.h: 15120 (WebNetscapePluginStream::WebNetscapePluginStream): 15121 * Plugins/WebBaseNetscapePluginStream.mm: 15122 (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]): 15123 (-[WebBaseNetscapePluginStream dealloc]): 15124 (-[WebBaseNetscapePluginStream finalize]): 15125 (-[WebBaseNetscapePluginStream transferMode]): 15126 (-[WebBaseNetscapePluginStream plugin]): 15127 (-[WebBaseNetscapePluginStream setPlugin:]): 15128 (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]): 15129 (-[WebBaseNetscapePluginStream wantsAllStreams]): 15130 (-[WebBaseNetscapePluginStream _destroyStream]): 15131 (-[WebBaseNetscapePluginStream _destroyStreamWithReason:]): 15132 (-[WebBaseNetscapePluginStream _deliverData]): 15133 (-[WebBaseNetscapePluginStream _deliverDataToFile:]): 15134 (-[WebBaseNetscapePluginStream finishedLoading]): 15135 (-[WebBaseNetscapePluginStream receivedData:]): 15136 151372008-09-16 Anders Carlsson <andersca@apple.com> 15138 15139 Reviewed by Dave Hyatt. 15140 15141 Move a bunch of instance variables into the C++ class. 15142 15143 * Plugins/WebBaseNetscapePluginStream.h: 15144 * Plugins/WebBaseNetscapePluginStream.mm: 15145 (-[WebBaseNetscapePluginStream _pluginCancelledConnectionError]): 15146 (-[WebBaseNetscapePluginStream errorForReason:]): 15147 (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]): 15148 (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]): 15149 (-[WebBaseNetscapePluginStream dealloc]): 15150 (-[WebBaseNetscapePluginStream setRequestURL:]): 15151 (-[WebBaseNetscapePluginStream setResponseURL:]): 15152 (-[WebBaseNetscapePluginStream setMIMEType:]): 15153 (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]): 15154 (-[WebBaseNetscapePluginStream _destroyStream]): 15155 (-[WebBaseNetscapePluginStream _destroyStreamWithReason:]): 15156 (-[WebBaseNetscapePluginStream _deliverData]): 15157 (-[WebBaseNetscapePluginStream receivedData:]): 15158 151592008-09-16 Anders Carlsson <andersca@apple.com> 15160 15161 Reviewed by Dave Hyatt. 15162 15163 Add a new WebNetscapePluginStream C++ class. The idea is that it is supposed to replace the Obj-C 15164 WebBaseNetscapePluginStream class. The plan is to gradually move/rewrite code from the Obj-C class to the C++ class 15165 until the C++ class can replace the Obj-C class. 15166 15167 * Plugins/WebBaseNetscapePluginStream.h: 15168 (WebNetscapePluginStream::create): 15169 (WebNetscapePluginStream::WebNetscapePluginStream): 15170 * Plugins/WebBaseNetscapePluginStream.mm: 15171 (-[WebBaseNetscapePluginStream initWithFrameLoader:]): 15172 (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]): 15173 (-[WebBaseNetscapePluginStream dealloc]): 15174 (-[WebBaseNetscapePluginStream finalize]): 15175 151762008-09-16 Anders Carlsson <andersca@apple.com> 15177 15178 Reviewed by Dave Hyatt. 15179 15180 Instead of storing a pointer to NPP method individually, just store a pointer to the NPNetscapeFuncs vtable. 15181 15182 * Plugins/WebBaseNetscapePluginStream.h: 15183 * Plugins/WebBaseNetscapePluginStream.mm: 15184 (-[WebBaseNetscapePluginStream setPlugin:]): 15185 (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]): 15186 (-[WebBaseNetscapePluginStream wantsAllStreams]): 15187 (-[WebBaseNetscapePluginStream _destroyStream]): 15188 (-[WebBaseNetscapePluginStream _deliverData]): 15189 * Plugins/WebNetscapePluginPackage.h: 15190 * Plugins/WebNetscapePluginPackage.m: 15191 (-[WebNetscapePluginPackage pluginFuncs]): 15192 151932008-09-16 Anders Carlsson <andersca@apple.com> 15194 15195 Reviewed by Dave Hyatt. 15196 15197 Remove references to WebNetscapePluginStream. 15198 15199 * Plugins/WebBaseNetscapePluginView.h: 15200 * Plugins/WebNetscapePluginEmbeddedView.h: 15201 152022008-09-15 Dan Bernstein <mitz@apple.com> 15203 15204 Reviewed by Dave Hyatt. 15205 15206 - fix https://bugs.webkit.org/show_bug.cgi?id=20860 15207 REGRESSION: Crash in RenderLayer::hasVisibleContent() loading wavy.com 15208 15209 * WebView/WebFrame.mm: 15210 (-[WebFrame _getVisibleRect:]): Changed to check if the RenderPart has 15211 layout before accessing it, instead of checking if the frame inside it 15212 has layout. 15213 152142008-09-15 Chris Fleizach <cfleizach@apple.com> 15215 15216 Reviewed by Darin Adler, Beth Dakin 15217 15218 Support strings for AXLists 15219 15220 * WebCoreSupport/WebViewFactory.mm: 15221 (-[WebViewFactory AXDefinitionListTermText]): 15222 (-[WebViewFactory AXDefinitionListDefinitionText]): 15223 152242008-09-15 Anders Carlsson <andersca@apple.com> 15225 15226 Reviewed by Mitz. 15227 15228 Merge WebNetscapePluginStream into WebBaseNetscapePluginStream. 15229 15230 * Plugins/WebBaseNetscapePluginStream.h: 15231 * Plugins/WebBaseNetscapePluginStream.mm: 15232 (-[WebBaseNetscapePluginStream initWithFrameLoader:]): 15233 (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]): 15234 (-[WebBaseNetscapePluginStream dealloc]): 15235 (-[WebBaseNetscapePluginStream finalize]): 15236 (-[WebBaseNetscapePluginStream start]): 15237 (-[WebBaseNetscapePluginStream stop]): 15238 (-[WebBaseNetscapePluginStream cancelLoadWithError:]): 15239 * Plugins/WebBaseNetscapePluginView.mm: 15240 (-[WebBaseNetscapePluginView pluginView:receivedResponse:]): 15241 (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): 15242 * Plugins/WebNetscapePluginEmbeddedView.mm: 15243 * Plugins/WebNetscapePluginStream.h: Removed. 15244 * Plugins/WebNetscapePluginStream.mm: Removed. 15245 152462008-09-12 John Sullivan <sullivan@apple.com> 15247 15248 Fixed <rdar://problem/6110941> Clicking the print button in PDF content does nothing 15249 15250 Reviewed by Darin Adler 15251 15252 * WebView/WebPDFView.mm: 15253 (-[WebPDFView PDFViewPerformPrint:]): 15254 Implemented PDFKit delegate method that's called after a Print action in the PDF content 15255 152562008-09-12 Dan Bernstein <mitz@apple.com> 15257 15258 Reviewed by John Sullivan. 15259 15260 - fix a crash in -visibleRect when it is called during WebFrameView deallocation 15261 15262 * WebView/WebFrameView.mm: 15263 (-[WebFrameView visibleRect]): Added an early return if _private is 0. 15264 152652008-09-11 Dan Bernstein <mitz@apple.com> 15266 15267 Reviewed by John Sullivan. 15268 15269 - eliminate excessive repainting when a clipped iframe is moved (noticed in <rdar://problem/6204032>) 15270 15271 * WebView/WebFrame.mm: 15272 (-[WebFrame _getVisibleRect:]): Added. If the frame is in a RenderPart 15273 and has layout, gets the visible rect of the RenderPart and returns 15274 YES. Returns NO otherwise. 15275 * WebView/WebFrameInternal.h: 15276 * WebView/WebFrameView.mm: 15277 (-[WebFrameView visibleRect]): Added. Overrides this NSView method to 15278 take clipping in the render tree into account. 15279 152802008-09-09 Dan Bernstein <mitz@apple.com> 15281 15282 - Tiger build fix 15283 15284 * WebCoreSupport/WebSystemInterface.m: 15285 (InitWebCoreSystemInterface): 15286 152872008-09-09 Dan Bernstein <mitz@apple.com> 15288 15289 Reviewed by Darin Adler. 15290 15291 - WebKit part of <rdar://problem/6206244> Use alternate character-to-glyph interface on Leopard 15292 15293 * WebCoreSupport/WebSystemInterface.m: 15294 (InitWebCoreSystemInterface): 15295 152962008-09-07 Cameron Zwarich <cwzwarich@uwaterloo.ca> 15297 15298 Reviewed by Maciej Stachowiak. 15299 15300 Bug 20704: Replace the KJS namespace 15301 <https://bugs.webkit.org/show_bug.cgi?id=20704> 15302 15303 Rename the KJS namespace to JSC. 15304 15305 * Misc/WebCoreStatistics.mm: 15306 * Plugins/WebBaseNetscapePluginStream.mm: 15307 (-[WebBaseNetscapePluginStream wantsAllStreams]): 15308 * Plugins/WebBaseNetscapePluginView.mm: 15309 (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]): 15310 (-[WebBaseNetscapePluginView setWindowIfNecessary]): 15311 (-[WebBaseNetscapePluginView start]): 15312 (-[WebBaseNetscapePluginView createPluginScriptableObject]): 15313 (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): 15314 (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]): 15315 (-[WebBaseNetscapePluginView loadPluginRequest:]): 15316 (-[WebBaseNetscapePluginView _printedPluginBitmap]): 15317 * Plugins/WebPluginController.mm: 15318 (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]): 15319 (-[WebPluginController startAllPlugins]): 15320 (-[WebPluginController stopAllPlugins]): 15321 (-[WebPluginController addPlugin:]): 15322 (-[WebPluginController destroyPlugin:]): 15323 (-[WebPluginController destroyAllPlugins]): 15324 * WebView/WebFrame.mm: 15325 * WebView/WebScriptDebugDelegate.mm: 15326 * WebView/WebScriptDebugger.h: 15327 * WebView/WebScriptDebugger.mm: 15328 * WebView/WebView.mm: 15329 (-[WebViewPrivate init]): 15330 153312008-09-05 Timothy Hatcher <timothy@apple.com> 15332 15333 Correct a typo in the setApplicationChromeModeEnabledEnabled: 15334 method name, remove the extra "Enabled". 15335 15336 * WebView/WebPreferences.mm: 15337 * WebView/WebPreferencesPrivate.h: 15338 153392008-09-04 Mark Rowe <mrowe@apple.com> 15340 15341 Reviewed by Eric Seidel. 15342 15343 Fix https://bugs.webkit.org/show_bug.cgi?id=20639. 15344 Bug 20639: ENABLE_DASHBOARD_SUPPORT does not need to be a FEATURE_DEFINE 15345 15346 * Configurations/WebKit.xcconfig: Remove ENABLE_DASHBOARD_SUPPORT from FEATURE_DEFINES. 15347 153482008-09-03 Eric Seidel <eric@webkit.org> 15349 15350 Reviewed by Sam. 15351 15352 Clean up Platform.h and add PLATFORM(CHROMIUM), PLATFORM(SKIA) and USE(V8_BINDINGS) 15353 15354 * Configurations/WebKit.xcconfig: 15355 * WebKitPrefix.h: add rules for V8_BINDINGS 15356 153572008-09-01 Adam Barth <abarth@webkit.org> 15358 15359 Reviewed by Sam Weinig. 15360 15361 https://bugs.webkit.org/show_bug.cgi?id=19760 15362 15363 Add a linked-on-or-after check to prevent substitute data from loading 15364 local resources on newer users of WebKit. 15365 15366 * Misc/WebKitVersionChecks.h: 15367 * WebView/WebView.mm: 15368 (-[WebView _commonInitializationWithFrameName:groupName:]): 15369 153702008-08-29 Brady Eidson <beidson@apple.com> 15371 15372 Reviewed by Anders 15373 15374 Fix regression I introducted in 35946 15375 Already covered by media/video-click-dlbclick-standalone.html 15376 15377 * WebView/WebHTMLRepresentation.mm: 15378 (-[WebHTMLRepresentation receivedData:withDataSource:]): Cancel the load here after 15379 calling [WebFrame _receivedData:] which more closely follows the path taken by PluginDocuments 15380 153812008-08-28 Kevin McCullough <kmccullough@apple.com> 15382 15383 Reviewed by Geoff. 15384 15385 <rdar://problem/6095949> REGRESSION (5525.8-6527.1?): "this" is null 15386 when you first hit a breakpoint in Dashcode 15387 - We wanted to reset the callframe whenever eval() was called but 15388 dashcode uses eval() when broken to evaluate the state of the current 15389 call frame. 15390 15391 * WebView/WebScriptDebugger.mm: 15392 (WebScriptDebugger::willExecuteProgram): 15393 (WebScriptDebugger::didExecuteProgram): 15394 153952008-08-27 Robert Kroeger <rjkroege@liqui.org> 15396 15397 Tweaked by Sam Weinig. 15398 15399 Reviewed by Eric Seidel. 15400 15401 Fix https://bugs.webkit.org/show_bug.cgi?id=6595 15402 <rdar://problem/4432150> 15403 Right-click does not fire mouseup event 15404 15405 Adds a rightMouseUp handler to the WebHTMLView. 15406 15407 The added method generates mouseup events for button 2. The result 15408 is that webkit will deliver mousedown and mouseup events for button 15409 2 in a fashion identical to FireFox and will retain event ordering 15410 identical to Internet Explorer. 15411 15412 Test: fast/events/mouseup-from-button2.html 15413 15414 * WebView/WebHTMLView.mm: 15415 (-[WebHTMLView rightMouseUp:]): 15416 154172008-08-27 Timothy Hatcher <timothy@apple.com> 15418 15419 Add support for support for -webkit-appearance: default-button on the Mac platform. 15420 15421 <rdar://problem/6173530> 15422 15423 Reviewed by Dave Hyatt. 15424 15425 * WebCoreSupport/WebSystemInterface.m: 15426 (InitWebCoreSystemInterface): Init AdvanceDefaultButtonPulseAnimation. 15427 * WebView/WebPreferenceKeysPrivate.h: Added WebKitApplicationChromeModeEnabledPreferenceKey. 15428 * WebView/WebPreferences.mm: 15429 (+[WebPreferences initialize]): Set WebKitApplicationChromeModeEnabledPreferenceKey to NO. 15430 (-[WebPreferences applicationChromeModeEnabled]): Added. 15431 (-[WebPreferences setApplicationChromeModeEnabledEnabled:]): Added. 15432 * WebView/WebPreferencesPrivate.h: 15433 * WebView/WebView.mm: 15434 (-[WebView _preferencesChangedNotification:]): Call Settings::setApplicationChromeMode 15435 with the value of -[WebPreferences applicationChromeModeEnabled]. 15436 154372008-08-27 Brady Eidson <beidson@apple.com> 15438 15439 Reviewed by Anders 15440 15441 <rdar://problem/6134133> - Crash when loading large movie as a standalone document 15442 15443 * WebCoreSupport/WebFrameLoaderClient.h: 15444 * WebCoreSupport/WebFrameLoaderClient.mm: 15445 (WebFrameLoaderClient::pluginWillHandleLoadError): 15446 154472008-08-20 Dan Bernstein <mitz@apple.com> 15448 15449 Rubber-stamped by John Sullivan. 15450 15451 - rename shouldUpdateWhileHidden to shouldUpdateWhileOffscreen, 15452 rename related methods and variables accordingly, and make 15453 -setShouldUpdateWhileOffscreen: and -shouldUpdateWhileOffscreen 15454 WebView API. 15455 15456 * WebCoreSupport/WebFrameLoaderClient.mm: 15457 (WebFrameLoaderClient::transitionToCommittedForNewPage): 15458 * WebView/WebFrame.mm: 15459 (-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]): 15460 * WebView/WebFrameInternal.h: 15461 * WebView/WebHTMLView.mm: 15462 (-[WebHTMLView windowWillOrderOnScreen:]): 15463 * WebView/WebView.h: 15464 * WebView/WebView.mm: 15465 (-[WebViewPrivate init]): 15466 (-[WebView setBackgroundColor:]): 15467 (-[WebView setDrawsBackground:]): 15468 (-[WebView setShouldUpdateWhileOffscreen:]): 15469 (-[WebView shouldUpdateWhileOffscreen]): 15470 * WebView/WebViewPrivate.h: 15471 154722008-08-18 Mark Rowe <mrowe@apple.com> 15473 15474 Reviewed by Darin Adler. 15475 15476 Switch to non-deprecated NSFileManager API. 15477 15478 In order to minimize #if's the new NSFileManager APIs have been implemented for 15479 Tiger and call sites updated to use the new methods. 15480 15481 * Misc/WebIconDatabase.mm: 15482 (importToWebCoreFormat): 15483 * Misc/WebKitNSStringExtras.m: 15484 (-[NSString _webkit_fixedCarbonPOSIXPath]): 15485 * Misc/WebKitSystemBits.m: 15486 * Misc/WebNSFileManagerExtras.h: 15487 * Misc/WebNSFileManagerExtras.m: Remove implementations of methods that are not used. 15488 (-[NSFileManager _webkit_backgroundRemoveFileAtPath:]): 15489 (-[NSFileManager attributesOfFileSystemForPath:error:]): Implement new API for Tiger in terms of Tiger API. 15490 (-[NSFileManager contentsOfDirectoryAtPath:error:]): Ditto. 15491 (-[NSFileManager moveItemAtPath:toPath:error:]): Ditto. 15492 (-[NSFileManager removeItemAtPath:error:]): Ditto. 15493 * Plugins/WebPluginDatabase.mm: 15494 (-[WebPluginDatabase _scanForNewPlugins]): 15495 154962008-08-20 Josh Aas <joshmoz@gmail.com> 15497 15498 Reviewed and landed by Anders. 15499 15500 <rdar://problem/6163636> 15501 rename NPCocoaEvent's "event" struct to "data" (20446) 15502 15503 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 15504 (WebNetscapePluginEventHandlerCocoa::drawRect): 15505 (WebNetscapePluginEventHandlerCocoa::sendMouseEvent): 15506 (WebNetscapePluginEventHandlerCocoa::flagsChanged): 15507 (WebNetscapePluginEventHandlerCocoa::sendKeyEvent): 15508 (WebNetscapePluginEventHandlerCocoa::windowFocusChanged): 15509 (WebNetscapePluginEventHandlerCocoa::focusChanged): 15510 155112008-08-20 Beth Dakin <bdakin@apple.com> 15512 15513 Reviewed by Darin Adler. 15514 15515 Fix for <rdar://problem/6145626> 15516 Allows a WebKit client to mark a frame as not-text-searchable 15517 through SPI. 15518 15519 * WebView/WebFrame.mm: 15520 (-[WebFrame _setExcludeFromTextSearch:]): 15521 * WebView/WebFramePrivate.h: 15522 155232008-08-19 Alexey Proskuryakov <ap@webkit.org> 15524 15525 Reviewed by Geoff Garen. 15526 15527 Bring back shared JSGlobalData and implicit locking, because too many clients rely on it. 15528 15529 * ForwardingHeaders/runtime/JSLock.h: Added. 15530 * Misc/WebCoreStatistics.mm: 15531 (+[WebCoreStatistics javaScriptObjectsCount]): 15532 (+[WebCoreStatistics javaScriptGlobalObjectsCount]): 15533 (+[WebCoreStatistics javaScriptProtectedObjectsCount]): 15534 (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]): 15535 (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]): 15536 (+[WebCoreStatistics shouldPrintExceptions]): 15537 (+[WebCoreStatistics setShouldPrintExceptions:]): 15538 (+[WebCoreStatistics javaScriptReferencedObjectsCount]): 15539 * Plugins/WebBaseNetscapePluginStream.mm: 15540 (-[WebBaseNetscapePluginStream wantsAllStreams]): 15541 * Plugins/WebBaseNetscapePluginView.mm: 15542 (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]): 15543 (-[WebBaseNetscapePluginView setWindowIfNecessary]): 15544 (-[WebBaseNetscapePluginView start]): 15545 (-[WebBaseNetscapePluginView createPluginScriptableObject]): 15546 (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): 15547 (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]): 15548 (-[WebBaseNetscapePluginView loadPluginRequest:]): 15549 (-[WebBaseNetscapePluginView _printedPluginBitmap]): 15550 * Plugins/WebPluginController.mm: 15551 (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]): 15552 (-[WebPluginController startAllPlugins]): 15553 (-[WebPluginController stopAllPlugins]): 15554 (-[WebPluginController addPlugin:]): 15555 (-[WebPluginController destroyPlugin:]): 15556 (-[WebPluginController destroyAllPlugins]): 15557 * WebView/WebFrame.mm: 15558 (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): 15559 * WebView/WebScriptDebugDelegate.mm: 15560 (-[WebScriptCallFrame evaluateWebScript:]): 15561 * WebView/WebView.mm: 15562 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): 15563 155642008-08-19 Timothy Hatcher <timothy@apple.com> 15565 15566 Fixes the Web Inspector flashing white while resizing after 15567 highlighting a page element. Calling disableScreenUpdatesUntilFlush 15568 when attaching and detaching the Inspector page highlight is bad, 15569 since the browser window might not flush again for a while. So screen 15570 updates could be disabled for long periods of time, causing backing store 15571 flashing while resizing. There is no need to call disableScreenUpdatesUntilFlush 15572 when attaching or detaching the child window. 15573 15574 Reviewed by John Sullivan and Kevin McCullough. 15575 15576 * WebInspector/WebNodeHighlight.m: 15577 (-[WebNodeHighlight attach]): Remove the call to disableScreenUpdatesUntilFlush. 15578 (-[WebNodeHighlight detach]): Ditto. 15579 155802008-08-19 Timothy Hatcher <timothy@apple.com> 15581 15582 Correctly remembers the attached state of the Web Inspector so 15583 it opens in that state for the next window, or next launch. 15584 15585 Reviewed by Kevin McCullough. 15586 15587 * WebCoreSupport/WebInspectorClient.mm: 15588 (-[WebInspectorWindowController attach]): Set WebKitInspectorAttachedKey 15589 to YES in the user defaults. 15590 (-[WebInspectorWindowController detach]): Set WebKitInspectorAttachedKey 15591 to NO in the user defaults. 15592 155932008-08-18 Alexey Proskuryakov <ap@webkit.org> 15594 15595 Reviewed by Dan Bernstein. 15596 15597 https://bugs.webkit.org/show_bug.cgi?id=19347 15598 <rdar://problem/5977562> Input methods do not work after switching to a password field 15599 and back. 15600 15601 Fix <rdar://problem/5522011> (The content of the password field of Safari is displayed by 15602 reconversion) in a different way which doesn't conflict with context caching performed 15603 by AppKit. 15604 15605 This original bug does not really occur in ToT or shipping Safari under Mac OS X 10.5.4, 15606 because input methods are disabled in password fields. Attempting to reconvert text typed 15607 with Romaji only yields a string of bullets. Still, it is probably better to match Cocoa 15608 password field behavior and disable reconversion completely. 15609 15610 * WebView/WebHTMLView.mm: 15611 (isInPasswordField): Factored out code to determine that the current selection is in 15612 a password field. 15613 (inputContext): Removed a hack that was breaking TSMGetActiveDocument(). 15614 (-[WebHTMLView attributedSubstringFromRange:]): Check for password fields. 15615 (-[WebHTMLView textStorage]): Ditto. 15616 156172008-08-12 Darin Adler <darin@apple.com> 15618 15619 Reviewed by Geoff. 15620 15621 - eliminate JSValue::type() 15622 15623 * WebView/WebView.mm: 15624 (aeDescFromJSValue): Rewrite to use the JSValue::is functions instead 15625 of a switch on JSValue::type(). 15626 156272008-08-17 Geoffrey Garen <ggaren@apple.com> 15628 15629 Reviewed by Cameron Zwarich. 15630 15631 Made room for a free word in JSCell. 15632 15633 (Updated for JavaScriptCore changes.) 15634 156352008-08-15 Mark Rowe <mrowe@apple.com> 15636 15637 Rubber-stamped by Geoff Garen. 15638 15639 <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework 15640 15641 * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared 15642 between the Debug configuration and debug Production variant. 15643 156442008-08-14 Sam Weinig <sam@webkit.org> 15645 15646 Reviewed by Geoffrey Garen and Timothy Hatcher. 15647 15648 Add WebView SPI to set HTMLTokenizer yielding parameters. 15649 15650 * WebView/WebView.mm: 15651 (-[WebView _setCustomHTMLTokenizerTimeDelay:]): 15652 (-[WebView _setCustomHTMLTokenizerChunkSize:]): 15653 * WebView/WebViewPrivate.h: 15654 156552008-08-13 Timothy Hatcher <timothy@apple.com> 15656 15657 Fixes a bug where Safari's find banner would be permanently hidden 15658 when attaching or closing the Web Inspector while attached. 15659 15660 https://bugs.webkit.org/show_bug.cgi?id=20376 15661 15662 Reviewed by Kevin McCullough. 15663 15664 * WebCoreSupport/WebInspectorClient.mm: 15665 (-[WebInspectorWindowController close]): 15666 Carefully manipulate the WebFrameView's frame when closing to 15667 not assume the WebFrameView's frame fills the inspected WebView. 15668 (-[WebInspectorWindowController setAttachedWindowHeight:]): 15669 Carefully manipulate the WebFrameView's frame when docking to 15670 not assume the WebFrameView plus the Web Inspector WebViews fills 15671 the full inspected WebView. 15672 156732008-08-13 Stephanie Lewis <slewis@apple.com> 15674 15675 fix 64bit build 15676 15677 * WebCoreSupport/WebInspectorClient.mm: 15678 156792008-08-13 Timothy Hatcher <timothy@apple.com> 15680 15681 Remember the docked state of the Web Inspector, so it can be 15682 reopened docked if it was last docked. 15683 15684 https://bugs.webkit.org/show_bug.cgi?id=14271 15685 15686 Reviewed by Kevin McCullough. 15687 15688 * WebCoreSupport/WebInspectorClient.mm: 15689 (-[WebInspectorWindowController init]): Initialize _shouldAttach 15690 to the value stored in the user defaults. If there has never 15691 been a value stored, default to being attached. 15692 (-[WebInspectorWindowController showWindow:]): Pass the attached 15693 state to InspectorController::setWindowVisible. 15694 156952008-08-12 Timothy Hatcher <timothy@apple.com> 15696 15697 Remove the Inspector's WebView for the view hierarchy when closed 15698 while attached. This prevents it from showing in the background 15699 while the page changes. 15700 15701 Reviewed by Kevin McCullough. 15702 15703 * WebCoreSupport/WebInspectorClient.mm: 15704 (-[WebInspectorWindowController close:]): Call removeFromSuperview 15705 on the Inspector's WebView if it isn't attached, so it will not 15706 be visible when navigating pages while closed. 15707 157082008-08-12 Timothy Hatcher <timothy@apple.com> 15709 15710 Make the docked Web Inspector resizable. 15711 15712 https://bugs.webkit.org/show_bug.cgi?id=14282 15713 15714 Reviewed by Kevin McCullough. 15715 15716 * WebCoreSupport/WebInspectorClient.h: 15717 * WebCoreSupport/WebInspectorClient.mm: 15718 (WebInspectorClient::setAttachedWindowHeight): Call setAttachedWindowHeight: 15719 on the WebInspectorWindowController. 15720 (-[WebInspectorWindowController showWindow:]): Call setAttachedWindowHeight:. 15721 (-[WebInspectorWindowController setAttachedWindowHeight:]): Moved code 15722 from showWindow: and generalized to allow being called multiple times. 15723 Remembers the last height passed, which is used by showWindow: the next 15724 time the Inspector attaches. 15725 157262008-08-12 Timothy Hatcher <timothy@apple.com> 15727 15728 Remove unneeded header imports from some Web Inspector files. 15729 15730 Reviewed by Adam Roben. 15731 15732 * WebCoreSupport/WebInspectorClient.mm: 15733 * WebInspector/WebInspector.mm: 15734 * WebInspector/WebNodeHighlightView.m: 15735 157362008-08-12 Timothy Hatcher <timothy@apple.com> 15737 15738 Remove the call to WKNSWindowMakeBottomCornersSquare on the 15739 Web Inspector's window. This isn't needed anymore since the 15740 window style masks used always have square bottom corners. 15741 15742 Reviewed by Adam Roben. 15743 15744 * WebCoreSupport/WebInspectorClient.mm: 15745 (-[WebInspectorWindowController window]): Remove the call 15746 to WKNSWindowMakeBottomCornersSquare. 15747 157482008-08-12 Timothy Hatcher <timothy@apple.com> 15749 15750 Make attaching and detaching the Web Inspector instantaneous. 15751 This also preserves the current view, other state, and keeps 15752 the script debugger attached. 15753 15754 https://bugs.webkit.org/show_bug.cgi?id=19301 15755 15756 Reviewed by Adam Roben. 15757 15758 * WebCoreSupport/WebInspectorClient.mm: 15759 (-[WebInspectorWindowController close]): Only call setWindowVisible(false) 15760 when not moving windows. 15761 157622008-08-12 Dan Bernstein <mitz@apple.com> 15763 15764 Reviewed by John Sullivan. 15765 15766 - replace -[WebPreferences updatesWhenOffscreen] with -[WebView shouldUpdateWhileHidden] 15767 15768 * WebCoreSupport/WebFrameLoaderClient.mm: 15769 (WebFrameLoaderClient::transitionToCommittedForNewPage): 15770 * WebView/WebFrame.mm: 15771 (-[WebFrame _updateBackgroundAndUpdatesWhileHidden]): 15772 * WebView/WebFrameInternal.h: 15773 * WebView/WebHTMLView.mm: 15774 (-[WebHTMLView windowWillOrderOnScreen:]): 15775 * WebView/WebPreferenceKeysPrivate.h: 15776 * WebView/WebPreferences.mm: 15777 (+[WebPreferences initialize]): 15778 * WebView/WebPreferencesPrivate.h: 15779 * WebView/WebView.mm: 15780 (-[WebViewPrivate init]): 15781 (-[WebView _preferencesChangedNotification:]): 15782 (-[WebView setBackgroundColor:]): 15783 (-[WebView setDrawsBackground:]): 15784 (-[WebView shouldUpdateWhileHidden]): 15785 (-[WebView setShouldUpdateWhileHidden:]): 15786 * WebView/WebViewPrivate.h: 15787 157882008-08-08 Dan Bernstein <mitz@apple.com> 15789 15790 Reviewed by John Sullivan. 15791 15792 - fix <rdar://problem/6130216> Exception "windowRegionBeingDrawn != nil" in NSView when caching image of a subframe 15793 15794 This change reintroduces <https://bugs.webkit.org/show_bug.cgi?id=5195> on Leopard. 15795 15796 * WebView/WebHTMLView.mm: 15797 (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]): Removed an 15798 unsuccessful workaround for <rdar://problem/5668489>, because invoking 15799 layout may change the view hierarchy during the drawing operation, 15800 which is not supported on Leopard. 15801 158022008-08-08 Maxime Britto <britto@apple.com> 15803 15804 Reviewed by Adele. 15805 15806 * WebView/WebFrame.mm: 15807 (-[WebFrame _scrollDOMRangeToVisible:]): 15808 158092008-08-08 Brady Eidson <beidson@apple.com> 15810 15811 Reviewed by Sam Weinig 15812 15813 Fix for <rdar://problem/5865504> 15814 15815 This bug was actually *largely* fixed by http://trac.webkit.org/changeset/35538. 15816 But with that same patch, it became possible for a WebResource to fail to initialize. 15817 Therefore we were trying to add nil to an NSCFArray for certain situations, which is bad. 15818 Lets fix that, shall we? 15819 15820 * WebView/WebArchive.mm: 15821 (-[WebArchive subresources]): 15822 158232008-08-06 Eric Seidel <eric@webkit.org> 15824 15825 Reviewed by Cameron Zwarich. 15826 15827 Move more methods from Frame into ScriptController 15828 https://bugs.webkit.org/show_bug.cgi?id=20294 15829 15830 The WebKit side of this move. Calls to frame() are now frame()->script() 15831 15832 * Plugins/WebBaseNetscapePluginView.mm: 15833 (-[WebBaseNetscapePluginView getVariable:value:]): 15834 (-[WebBaseNetscapePluginView _destroyPlugin]): 15835 * Plugins/WebPluginController.mm: 15836 (-[WebPluginController destroyPlugin:]): 15837 (-[WebPluginController destroyAllPlugins]): 15838 * WebCoreSupport/WebFrameLoaderClient.mm: 15839 * WebView/WebFrame.mm: 15840 (-[WebFrame windowObject]): 15841 * WebView/WebScriptDebugger.mm: 15842 (WebScriptDebugger::callEvent): 15843 * WebView/WebView.mm: 15844 (-[WebView windowScriptObject]): 15845 158462008-08-06 Dan Bernstein <mitz@apple.com> 15847 15848 Reviewed by Mark Rowe. 15849 15850 - fix an assertion failure in Cache::setCapacities() 15851 15852 * Misc/WebKitSystemBits.h: Changed the return type of WebMemorySize() 15853 to uint64_t. 15854 * Misc/WebKitSystemBits.m: 15855 (WebMemorySize): 15856 * WebView/WebView.mm: 15857 (+[WebView _setCacheModel:]): 15858 158592008-08-05 Anders Carlsson <andersca@apple.com> 15860 15861 Pass in the correct class here. 15862 15863 * WebView/WebResource.mm: 15864 (-[WebResourcePrivate dealloc]): 15865 158662008-08-05 Anders Carlsson <andersca@apple.com> 15867 15868 Reviewed by Darin Adler. 15869 15870 <rdar://problem/6037398> 15871 ER: Deallocate WebKit objects on the main thread, even if released on secondary thread 15872 15873 Add calls to WebCoreObjCScheduleDeallocateOnMainThread in dealloc methods of objects we expose. 15874 15875 * Carbon/CarbonWindowAdapter.m: 15876 (-[CarbonWindowAdapter dealloc]): 15877 * History/WebBackForwardList.mm: 15878 (-[WebBackForwardList dealloc]): 15879 * History/WebHistoryItem.mm: 15880 (-[WebHistoryItem dealloc]): 15881 * Misc/WebElementDictionary.mm: 15882 (+[WebElementDictionary initialize]): 15883 (-[WebElementDictionary dealloc]): 15884 * WebCoreSupport/WebEditorClient.mm: 15885 (-[WebEditCommand dealloc]): 15886 * WebCoreSupport/WebFrameLoaderClient.mm: 15887 * WebView/WebArchive.mm: 15888 (-[WebArchivePrivate dealloc]): 15889 * WebView/WebDataSource.mm: 15890 (-[WebDataSourcePrivate dealloc]): 15891 * WebView/WebHTMLView.mm: 15892 (-[WebHTMLViewPrivate dealloc]): 15893 (-[WebHTMLView dealloc]): 15894 * WebView/WebResource.mm: 15895 (-[WebResourcePrivate dealloc]): 15896 158972008-08-05 Anders Carlsson <andersca@apple.com> 15898 15899 Reviewed by Darin Adler. 15900 15901 Remove MainThreadObjectDeallocator.{h|mm}. 15902 15903 * WebView/MainThreadObjectDeallocator.h: Removed. 15904 * WebView/MainThreadObjectDeallocator.mm: Removed. 15905 15906 * WebView/WebView.mm: 15907 (-[WebView dealloc]): 15908 Call WebCoreObjCScheduleDeallocateOnMainThread instead. 15909 159102008-08-05 Anders Carlsson <andersca@apple.com> 15911 15912 Reviewed by Darin Adler. 15913 15914 Make the main thread object deallocator work with subclasses. 15915 15916 * WebView/MainThreadObjectDeallocator.h: 15917 * WebView/MainThreadObjectDeallocator.mm: 15918 (deallocCallback): 15919 Call the correct dealloc method. 15920 15921 (scheduleDeallocateOnMainThread): 15922 Store both the class and the instance, so we know which dealloc method to call. 15923 15924 * WebView/WebView.mm: 15925 (-[WebViewPrivate dealloc]): 15926 Schedule deallocation on the main thread. 15927 159282008-08-05 Dan Bernstein <mitz@apple.com> 15929 15930 Reviewed by Mark Rowe and Anders Carlsson. 15931 15932 - fix WebMemorySize() reporting a value capped at 2GB 15933 15934 * misc/WebKitSystemBits.m: 15935 (WebMemorySize): Changed to return the max_mem field, which, unlike 15936 memory_size, is not capped at 2GB. 15937 * WebView/WebView.mm: 15938 (+[WebView _setCacheModel:]): Made the cache sizes for over 2GB RAM the 15939 same as for 2GB, so that behavior on machines that have more than 2GB 15940 RAM is not affected by the fix to WebMemorySize(). 15941 159422008-08-04 Mark Rowe <mrowe@apple.com> 15943 15944 Build fix. 15945 15946 * WebView/WebHTMLView.mm: 15947 159482008-08-04 Mark Rowe <mrowe@apple.com> 15949 15950 Reviewed by Kevin Decker. 15951 15952 Adopt the formal protocols where necessary. 15953 Final part of fix for <rdar://problem/5853147>. 15954 15955 * WebCoreSupport/WebInspectorClient.mm: 15956 * WebView/WebHTMLView.mm: 15957 * WebView/WebView.mm: 15958 (-[WebView _openFrameInNewWindowFromMenu:]): 15959 159602008-08-04 Mark Rowe <mrowe@apple.com> 15961 15962 Reviewed by Darin Adler. 15963 15964 Declare empty protocols when using versions of AppKit that do not use formal protocols for delegates and data sources. 15965 Part one of fix for <rdar://problem/5853147>. 15966 15967 * Misc/EmptyProtocolDefinitions.h: 15968 * WebKitPrefix.h: 15969 159702008-08-04 Brady Eidson <beidson@apple.com> 15971 15972 Reviewed by Mitz Pettel 15973 15974 Fix <rdar://problem/5820157> - Saving WebArchives of Mail attachments broken. 15975 15976 This broke in r31355 when we stopped returning nil WebResources when there was nil 15977 resource data. 15978 15979 * WebView/WebResource.mm: 15980 (-[WebResource _initWithCoreResource:]): Restore previous behavior of returning nil 15981 when the resource data is null. 15982 159832008-08-02 Matt Lilek <webkit@mattlilek.com> 15984 15985 Reviewed by Tim Hatcher. 15986 15987 Update the window gradient offset to match the inspector toolbar's new height. 15988 15989 * WebCoreSupport/WebInspectorClient.mm: 15990 (-[WebInspectorWindowController window]): 15991 159922008-08-01 Anders Carlsson <andersca@apple.com> 15993 15994 Reviewed by Jon. 15995 15996 <rdar://problem/6120206> 15997 Crash when plug-in queries for NPPVpluginWantsAllNetworkStreams. 15998 15999 Pass in a pointer to a void* to make sure that plug-ins don't overwrite the stack. 16000 16001 * Plugins/WebBaseNetscapePluginStream.mm: 16002 (-[WebBaseNetscapePluginStream wantsAllStreams]): 16003 160042008-07-31 Anders Carlsson <andersca@apple.com> 16005 16006 Reviewed by Darin Adler. 16007 16008 <rdar://problem/5949410> 16009 Add the ability to transfer a given application cache to a new database. 16010 16011 * Misc/WebKitNSStringExtras.h: 16012 * Misc/WebKitNSStringExtras.m: 16013 (+[NSString _webkit_applicationCacheDirectoryWithBundleIdentifier:]): 16014 New method which returns the appopriate cache directory for a given bundle identifier. 16015 16016 * WebView/WebDataSource.mm: 16017 (-[WebDataSource _transferApplicationCache:]): 16018 Transfer the application cache. 16019 16020 * WebView/WebDataSourcePrivate.h: 16021 * WebView/WebView.mm: 16022 (WebKitInitializeApplicationCachePathIfNecessary): 16023 Change this to use _webkit_applicationCacheDirectoryWithBundleIdentifier. 16024 160252008-07-31 John Sullivan <sullivan@apple.com> 16026 16027 WebKit part of <rdar://problem/6116650> Text-only zoom setting should be stored in WebKit prefs 16028 16029 Reviewed by Hyatt 16030 16031 * WebView/WebPreferenceKeysPrivate.h: 16032 added WebKitZoomsTextOnlyPreferenceKey 16033 16034 * WebView/WebPreferences.mm: 16035 (+[WebPreferences initialize]): 16036 default value of YES for WebKitZoomsTextOnlyPreferenceKey 16037 (-[WebPreferences zoomsTextOnly]): 16038 getter for WebKitZoomsTextOnlyPreferenceKey 16039 (-[WebPreferences setZoomsTextOnly:]): 16040 setter for WebKitZoomsTextOnlyPreferenceKey 16041 16042 * WebView/WebPreferencesPrivate.h: 16043 declare zoomsTextOnly/setZoomsTextOnly: 16044 16045 * WebView/WebView.mm: 16046 (-[WebView _preferencesChangedNotification:]): 16047 update WebCore::Settings value for zoomsTextOnly 16048 160492008-07-31 David D. Kilzer <ddkilzer@webkit.org> 16050 16051 Fix layout test results for webarchive/test-xml-stylesheet.xml 16052 16053 Reviewed by Darin Adler. 16054 16055 Needed to expose -[WebHTMLRepresentation supportedNonImageMIMETypes] 16056 for DumpRenderTree. 16057 16058 * WebView/WebHTMLRepresentationInternal.h: Added. 16059 160602008-07-31 Alexey Proskuryakov <ap@webkit.org> 16061 16062 Release build fix. 16063 16064 * Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView setWindowIfNecessary]): 16065 Don't define to npErr in release builds, as it is only used for logging. 16066 160672008-07-31 John Sullivan <sullivan@apple.com> 16068 16069 Fixed <https://bugs.webkit.org/show_bug.cgi?id=5195> 16070 drawing with cacheDisplayInRect:toBitmapImageRep: doesn't trigger layout on Leopard 16071 16072 Reviewed by Dan 16073 16074 * WebView/WebHTMLView.mm: 16075 (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]): 16076 include Leopard in the #ifdef that forces a layout if needed 16077 160782008-07-30 Brady Eidson <beidson@apple.com> 16079 16080 Reviewed by Adam and Hyatt 16081 16082 Fix for <rdar://problem/6099748> 16083 16084 * WebView/WebView.mm: 16085 (-[WebView _preferencesChangedNotification:]): Set the "don't enforce CSS mime type in strict mode" 16086 quirk when running under iWeb 2 16087 160882008-07-31 Alexey Proskuryakov <ap@webkit.org> 16089 16090 Rubber-stamped by Maciej. 16091 16092 Eliminate JSLock (it was already disabled, removing the stub implementaion and all 16093 call sites now). 16094 16095 * ForwardingHeaders/runtime/JSLock.h: Removed. 16096 * Misc/WebCoreStatistics.mm: 16097 (+[WebCoreStatistics javaScriptObjectsCount]): 16098 (+[WebCoreStatistics javaScriptGlobalObjectsCount]): 16099 (+[WebCoreStatistics javaScriptProtectedObjectsCount]): 16100 (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]): 16101 (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]): 16102 (+[WebCoreStatistics shouldPrintExceptions]): 16103 (+[WebCoreStatistics setShouldPrintExceptions:]): 16104 (+[WebCoreStatistics javaScriptReferencedObjectsCount]): 16105 * Plugins/WebBaseNetscapePluginStream.mm: 16106 (-[WebBaseNetscapePluginStream wantsAllStreams]): 16107 * Plugins/WebBaseNetscapePluginView.mm: 16108 (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]): 16109 (-[WebBaseNetscapePluginView setWindowIfNecessary]): 16110 (-[WebBaseNetscapePluginView start]): 16111 (-[WebBaseNetscapePluginView createPluginScriptableObject]): 16112 (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): 16113 (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]): 16114 (-[WebBaseNetscapePluginView loadPluginRequest:]): 16115 (-[WebBaseNetscapePluginView _printedPluginBitmap]): 16116 * Plugins/WebPluginController.mm: 16117 (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]): 16118 (-[WebPluginController startAllPlugins]): 16119 (-[WebPluginController stopAllPlugins]): 16120 (-[WebPluginController addPlugin:]): 16121 (-[WebPluginController destroyPlugin:]): 16122 (-[WebPluginController destroyAllPlugins]): 16123 * WebView/WebFrame.mm: 16124 (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): 16125 * WebView/WebScriptDebugDelegate.mm: 16126 (-[WebScriptCallFrame evaluateWebScript:]): 16127 * WebView/WebView.mm: 16128 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): 16129 161302008-07-30 Beth Dakin <bdakin@apple.com> 16131 16132 Reviewed by Anders Carlsson. 16133 16134 Fixes <rdar://problem/6041390> 16135 16136 Adds the ability to have a frame that is "disconnected" from the 16137 main frame from the perspective of top and parent in 16138 Javascript. 16139 16140 * WebView/WebFrame.mm: 16141 (-[WebFrame _setIsDisconnectedFrame]): 16142 * WebView/WebFramePrivate.h: 16143 161442008-07-29 Mark Rowe <mrowe@apple.com> 16145 16146 Tweak to the build fix to keep Dan happy. 16147 16148 * Plugins/WebBaseNetscapePluginView.mm: 16149 * WebView/WebHTMLView.mm: 16150 161512008-07-29 Mark Rowe <mrowe@apple.com> 16152 16153 Build fix. 16154 16155 * Plugins/WebBaseNetscapePluginView.mm: 16156 (-[WebBaseNetscapePluginView inputContext]): 16157 * WebView/WebHTMLView.mm: 16158 161592008-07-28 Anders Carlsson <andersca@apple.com> 16160 16161 Reviewed by Kevin Decker. 16162 16163 Based on a patch by Dimcho Balev. 16164 16165 https://bugs.webkit.org/show_bug.cgi?id=18676 16166 <rdar://problem/6106578> 16167 Plug-In API Proposal: Enable plugins to receive response body when an HTTP error occurs 16168 16169 * Plugins/WebBaseNetscapePluginStream.h: 16170 Add NPP_GetValue pointer. 16171 16172 * Plugins/WebBaseNetscapePluginStream.mm: 16173 (-[WebBaseNetscapePluginStream setPlugin:]): 16174 Initialize NPP_GetValue. 16175 16176 (-[WebBaseNetscapePluginStream wantsAllStreams]): 16177 Call NPP_GetValue. 16178 16179 * Plugins/WebPlugInStreamLoaderDelegate.h: 16180 * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.h: 16181 * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.mm: 16182 (WebNetscapePlugInStreamLoaderClient::wantsAllStreams): 16183 Implement this and call down to the stream. 16184 161852008-07-28 Anders Carlsson <andersca@apple.com> 16186 16187 Reviewed by Adam. 16188 16189 <rdar://problem/6105529> 16190 https://bugs.webkit.org/show_bug.cgi?id=19659 16191 Turning off plugins causes crash 16192 16193 When an active page has plug-ins, and plug-ins are disabled, they will be stopped and will 16194 end up in a state where they don't have an event handler. Because of this, we need to 16195 check that the plug-in has been started before calling the event handler. 16196 16197 * Plugins/WebBaseNetscapePluginView.mm: 16198 (-[WebBaseNetscapePluginView sendActivateEvent:]): 16199 (-[WebBaseNetscapePluginView sendDrawRectEvent:]): 16200 (-[WebBaseNetscapePluginView setHasFocus:]): 16201 (-[WebBaseNetscapePluginView mouseDown:]): 16202 (-[WebBaseNetscapePluginView mouseUp:]): 16203 (-[WebBaseNetscapePluginView mouseEntered:]): 16204 (-[WebBaseNetscapePluginView mouseExited:]): 16205 (-[WebBaseNetscapePluginView handleMouseMoved:]): 16206 (-[WebBaseNetscapePluginView mouseDragged:]): 16207 (-[WebBaseNetscapePluginView scrollWheel:]): 16208 (-[WebBaseNetscapePluginView keyUp:]): 16209 (-[WebBaseNetscapePluginView keyDown:]): 16210 (-[WebBaseNetscapePluginView flagsChanged:]): 16211 (-[WebBaseNetscapePluginView cut:]): 16212 (-[WebBaseNetscapePluginView copy:]): 16213 (-[WebBaseNetscapePluginView paste:]): 16214 (-[WebBaseNetscapePluginView selectAll:]): 16215 (-[WebBaseNetscapePluginView drawRect:]): 16216 (-[WebBaseNetscapePluginView inputContext]): 16217 162182008-07-26 Daniel Jalkut <jalkut@red-sweater.com> 16219 16220 Reviewed by Geoff Garen. 16221 16222 Changes to accommodate newly named/signatured loading methods in WebCore. 16223 16224 * Plugins/WebNetscapePluginStream.mm: 16225 (-[WebNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]): 16226 * Plugins/WebPluginContainerCheck.mm: 16227 (-[WebPluginContainerCheck _isForbiddenFileLoad]): 16228 * WebView/WebPDFView.mm: 16229 (-[WebPDFView PDFViewWillClickOnLink:withURL:]): 16230 162312008-07-21 Mark Rowe <mrowe@apple.com> 16232 16233 Reviewed by Sam Weinig. 16234 16235 <rdar://problem/6091287> Revamp the handling of CFBundleShortVersionString to be fixed at the major component of the version number. 16236 16237 * Configurations/Version.xcconfig: 16238 * Info.plist: 16239 162402008-07-21 Anders Carlsson <andersca@apple.com> 16241 16242 Reviewed by Geoff. 16243 16244 <rdar://problem/5820667> 16245 CrashTracer: [USER] 3759 crashes in Safari at FrameLoader::activeDocumentLoader const + 6 while canceling plug-in load 16246 16247 Don't allow URLs to be loaded in response to an NPP_DestroyStream that happens when tearing down the plug-in. 16248 16249 * Plugins/WebBaseNetscapePluginView.mm: 16250 (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): 16251 162522008-07-21 Mark Rowe <mrowe@apple.com> 16253 16254 Reviewed by Adam Roben. 16255 16256 <rdar://problem/5624143> WebView printing doesn't work correctly in x86_64 16257 16258 Fix the return type of an NSView method that we override so that the correct data type is used in 64-bit. 16259 This prevents a garbage value being used for the scale factor that the NSView print machinery applies. 16260 16261 * WebView/WebHTMLView.mm: 16262 162632008-07-21 Mark Rowe <mrowe@apple.com> 16264 16265 Reviewed by Adam Roben. 16266 16267 Fix CallDelegateReturningFloat for x86_64. The x86_64 Objective-C runtime 16268 only uses objc_msgSend_fpret for long double return values. For float return 16269 values the standard objc_msgSend is used, as on ppc and ppc64. 16270 16271 * WebView/WebView.mm: Use objc_msgSend_float_return as the name of our version of 16272 objc_msgSend with the correct return type. We can no longer call it objc_msgSend_fpret 16273 as that method is defined by the Objective-C runtime for x86_64. 16274 (CallDelegateReturningFloat): 16275 162762008-07-14 Dan Bernstein <mitz@apple.com> 16277 16278 Reviewed by John Sullivan. 16279 16280 - WebKit part of fixing <rdar://problem/6071850> Subviews not drawn correctly when using -cacheDisplayInRect:toBitmapImageRep: 16281 16282 * Plugins/WebBaseNetscapePluginView.mm: 16283 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Changed 16284 to account for the case of being drawn into a bitmap context that is not 16285 a window's backing store. In that case, there are no valid "rects being 16286 drawn" to clip to. 16287 * WebView/WebHTMLView.mm: 16288 (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]): 16289 Added an override of this NSView method which is used in for 16290 -cacheDisplayInRect:toBitmapImageRep:. Like two existing NSView drawing 16291 machinery overrides, it sets subviews aside before invoking the 16292 superclass implementation. On Tiger, it also updates the layout. 16293 162942008-07-14 Alexey Proskuryakov <ap@webkit.org> 16295 16296 Reviewed by Geoff Garen. 16297 16298 Eliminate per-thread JavaScript global data instance support and make arbitrary 16299 global data/global object combinations possible. 16300 16301 * Misc/WebCoreStatistics.mm: 16302 (+[WebCoreStatistics javaScriptObjectsCount]): 16303 (+[WebCoreStatistics javaScriptGlobalObjectsCount]): 16304 (+[WebCoreStatistics javaScriptProtectedObjectsCount]): 16305 (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]): 16306 (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]): 16307 (+[WebCoreStatistics javaScriptReferencedObjectsCount]): 16308 Ask WebCore for its instance of JSGlobalData, now that it is not in per-thread storage. 16309 163102008-07-11 Stephanie Lewis <slewis@apple.com> 16311 16312 Reviewed by Darin Adler. 16313 16314 Disable WTF leak messages when using fast teardown. Use full document teardown while running in debug. 16315 16316 * WebView/WebPreferences.m: Removed. 16317 * WebView/WebPreferences.mm: Copied from http:/svn.webkit.org/repository/webkit/trunk/WebKit/mac/WebView/WebPreferences.m. 16318 (+[WebPreferences initialize]): if running in Default enable full document teardown 16319 (-[WebPreferences editableLinkBehavior]): 16320 (-[WebPreferences setFullDocumentTeardownEnabled:]): 16321 * WebView/WebView.mm: 16322 (-[WebView _close]): disable leak messages if using fast teardown 16323 163242008-07-10 Mark Rowe <mrowe@apple.com> 16325 16326 Reviewed by Sam Weinig. 16327 16328 Define WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST when building WebKit to ensure that no symbols end up with the weak_import attribute. 16329 16330 * Configurations/WebKit.xcconfig: 16331 163322008-07-10 Mark Rowe <mrowe@apple.com> 16333 16334 Reviewed by Sam Weinig. 16335 16336 Fix the Tiger build by omitting annotations from methods declared in categories when using old versions of GCC. 16337 16338 * Plugins/WebPlugin.h: Wrap annotations on methods declared in categories in the WEBKIT_CATEGORY_METHOD_ANNOTATION macro. 16339 * WebView/WebFrameLoadDelegate.h: Ditto. 16340 * WebView/WebUIDelegate.h: Ditto. 16341 163422008-07-10 Anders Carlsson <andersca@apple.com> 16343 16344 Reviewed by Mark. 16345 16346 Add availability macros for the new WebPlugin methods. 16347 16348 * Plugins/WebPlugin.h: 16349 * Plugins/WebPluginViewFactory.h: 16350 163512008-07-09 Mark Rowe <mrowe@apple.com> 16352 16353 Reviewed by Geoff Garen. 16354 16355 Don't warn about deprecated functions in production builds. 16356 16357 * Configurations/Base.xcconfig: 16358 * Configurations/DebugRelease.xcconfig: 16359 163602008-07-09 Brady Eidson <beidson@apple.com> 16361 16362 Reviewed by Darin 16363 16364 <rdar://problem/5823684> - Crash manipulating frame tree of a new frame before the new frame 16365 has been installed in a frame tree. 16366 16367 The root of this problem was that calling init() on a new frame could end up calling arbitrary 16368 javascript that might end up removing the frame from the tree. This opened up a small can of worms 16369 such as the frame not having yet been installed in its frame tree, and other assumed behavior while 16370 destroying the frame. 16371 16372 Note that each platforms WebKit API layer needs to make this new guarantee: 16373 "The new Frame must be installed in its FrameTree before newCoreFrame->init() is called" 16374 I am fixing Mac, and Windows and GTK already have this property. Wx currently has subframes disabled 16375 but will need to add this guarantee when re-enabling, and Qt is currently vulnerable to this same bug. 16376 16377 Alternately, the way frames are created right now is roundabout and asinine, and this is a key 16378 architectural improvement we can make in the future so the individual platform clients are no longer 16379 vulnerable to this problem, which should really have been a WebCore issue. 16380 16381 * WebCoreSupport/WebFrameLoaderClient.mm: 16382 (WebFrameLoaderClient::createFrame): Don't bother null checking the newCoreFrame - can't be NULL. 16383 Don't appendChild() the new frame here. 16384 Null-check the new frame's page before loading the URL into it, as it might already have been 16385 removed from the page. 16386 16387 * WebView/WebFrame.mm: 16388 (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]): If there is an ownerElement, 16389 go ahead and install the new frame in the frame tree *before* calling init() on it. 16390 163912008-07-09 Anders Carlsson <andersca@apple.com> 16392 16393 Reviewed by Darin Adler. 16394 16395 Make some WebPlugin and WebPluginFactory SPI public. 16396 16397 * Plugins/WebPlugin.h: 16398 * Plugins/WebPluginPrivate.h: 16399 * Plugins/WebPluginViewFactory.h: 16400 * Plugins/WebPluginViewFactoryPrivate.h: 16401 164022008-07-08 Jon Honeycutt <jhoneycutt@apple.com> 16403 16404 Reviewed by Anders. 16405 16406 Port r34988 to Mac: don't call NPP_DestroyStream if NPP_NewStream was 16407 unsuccessful. 16408 16409 * Plugins/WebBaseNetscapePluginStream.h: Added new member, 16410 newStreamSuccessful. 16411 * Plugins/WebBaseNetscapePluginStream.mm: 16412 (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]): Initialize new member. 16413 (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]): If NPP_NewStream is successful, set 16414 newStreamSuccessful to YES. 16415 (-[WebBaseNetscapePluginStream _destroyStream]): Only call 16416 NPP_DestroyStream if newStreamSuccessful is true. 16417 164182008-07-08 Dan Bernstein <mitz@apple.com> 16419 16420 Reviewed by John Sullivan. 16421 16422 - WebKit part of <rdar://problem/6008409> Need a way to disable updates in offscreen views 16423 16424 * WebView/WebHTMLView.mm: 16425 (-[WebHTMLView addWindowObservers]): Added code to observe when the 16426 window goes onscreen. 16427 (-[WebHTMLView removeWindowObservers]): Added. 16428 (-[WebHTMLView windowWillOrderOnScreen:]): Added. If the view is set to 16429 not update when offscreen, calls -setNeedsDisplay: just before it comes 16430 onscreen. 16431 * WebView/WebPreferenceKeysPrivate.h: Added preference key. 16432 * WebView/WebPreferences.m: 16433 (+[WebPreferences initialize]): Made updates when offscreen on by 16434 default. 16435 (-[WebPreferences updatesWhenOffscreen]): Added. 16436 (-[WebPreferences setUpdatesWhenOffscreen:]): Added. 16437 * WebView/WebPreferencesPrivate.h: 16438 * WebView/WebView.mm: 16439 (-[WebView _preferencesChangedNotification:]): Added code to update the 16440 updatesWhenOffscreen setting in WebCore. 16441 164422008-07-07 Anders Carlsson <andersca@apple.com> 16443 16444 Reviewed by Darin Adler. 16445 16446 Speculative fix for 16447 <rdar://problem/5839800> 16448 CrashTracer: [USER] 5802 crashes in Safari at com.apple.WebKit: -[WebHTMLView(WebPrivate) _updateMouseoverWithFakeEvent] + 389 16449 16450 Set _private->closed to YES before calling -[WebPluginController destroyAllPlugins]. 16451 16452 My theory is that the plug-in destruction callbacks could end up rescheduling timers or re-adding notifications. 16453 This is usually protected by _private->closed, but in this case it might still be false. 16454 16455 * WebView/WebHTMLView.mm: 16456 (-[WebHTMLView close]): 16457 164582008-07-05 Mark Rowe <mrowe@apple.com> 16459 16460 Reviewed by John Sullivan. 16461 16462 Remove WebSearchableTextView as it has been unused for some time now. 16463 16464 * Misc/WebSearchableTextView.h: Removed. 16465 * Misc/WebSearchableTextView.m: Removed. 16466 164672008-07-05 Mark Rowe <mrowe@apple.com> 16468 16469 Reviewed by John Sullivan. 16470 16471 Don't leak the result of WKCopyCFLocalizationPreferredName when running under GC. 16472 16473 * Misc/WebNSUserDefaultsExtras.m: 16474 (-[NSString _webkit_HTTPStyleLanguageCode]): 16475 164762008-07-02 Alexey Proskuryakov <ap@webkit.org> 16477 16478 Inspired and reviewed by Mark Rowe. 16479 16480 Change non-API includes from JavaScriptCore/ to kjs/ and wtf/ to match prevalent style. 16481 16482 * Carbon/HIViewAdapter.m: 16483 * DOM/WebDOMOperations.mm: 16484 * DefaultDelegates/WebDefaultContextMenuDelegate.mm: 16485 * DefaultDelegates/WebDefaultPolicyDelegate.m: 16486 * History/WebBackForwardList.mm: 16487 * History/WebHistory.mm: 16488 * History/WebHistoryItem.mm: 16489 * History/WebHistoryItemInternal.h: 16490 * Misc/WebCoreStatistics.mm: 16491 * Misc/WebDownload.m: 16492 * Misc/WebGraphicsExtras.c: 16493 * Misc/WebKitLogging.h: 16494 * Misc/WebKitSystemBits.m: 16495 * Misc/WebLocalizableStrings.m: 16496 * Misc/WebNSArrayExtras.m: 16497 * Misc/WebNSDataExtras.m: 16498 * Misc/WebNSDictionaryExtras.m: 16499 * Misc/WebNSFileManagerExtras.m: 16500 * Misc/WebNSPasteboardExtras.mm: 16501 * Misc/WebNSURLExtras.mm: 16502 * Misc/WebNSUserDefaultsExtras.m: 16503 * Panels/WebAuthenticationPanel.m: 16504 * Panels/WebPanelAuthenticationHandler.m: 16505 * Plugins/WebBaseNetscapePluginView.mm: 16506 * Plugins/WebBasePluginPackage.m: 16507 * Plugins/WebNetscapePluginEmbeddedView.mm: 16508 * Plugins/WebPluginContainerCheck.mm: 16509 * Plugins/WebPluginController.mm: 16510 * Plugins/WebPluginDatabase.mm: 16511 * WebCoreSupport/WebJavaScriptTextInputPanel.m: 16512 * WebCoreSupport/WebKeyGenerator.m: 16513 * WebCoreSupport/WebViewFactory.mm: 16514 * WebKitPrefix.h: 16515 * WebView/WebHTMLRepresentation.mm: 16516 * WebView/WebPDFRepresentation.m: 16517 * WebView/WebPDFView.mm: 16518 * WebView/WebScriptDebugger.mm: 16519 165202008-07-01 Alexey Proskuryakov <ap@webkit.org> 16521 16522 Reviewed by Darin Adler. 16523 16524 Disable JSLock for per-thread contexts. 16525 16526 * Misc/WebCoreStatistics.mm: 16527 (+[WebCoreStatistics javaScriptObjectsCount]): 16528 (+[WebCoreStatistics javaScriptGlobalObjectsCount]): 16529 (+[WebCoreStatistics javaScriptProtectedObjectsCount]): 16530 (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]): 16531 (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]): 16532 (+[WebCoreStatistics shouldPrintExceptions]): 16533 (+[WebCoreStatistics setShouldPrintExceptions:]): 16534 (+[WebCoreStatistics javaScriptReferencedObjectsCount]): 16535 * Plugins/WebBaseNetscapePluginView.mm: 16536 (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]): 16537 (-[WebBaseNetscapePluginView setWindowIfNecessary]): 16538 (-[WebBaseNetscapePluginView start]): 16539 (-[WebBaseNetscapePluginView createPluginScriptableObject]): 16540 (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): 16541 (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]): 16542 (-[WebBaseNetscapePluginView loadPluginRequest:]): 16543 (-[WebBaseNetscapePluginView _printedPluginBitmap]): 16544 * Plugins/WebPluginController.mm: 16545 (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]): 16546 (-[WebPluginController startAllPlugins]): 16547 (-[WebPluginController stopAllPlugins]): 16548 (-[WebPluginController addPlugin:]): 16549 (-[WebPluginController destroyPlugin:]): 16550 (-[WebPluginController destroyAllPlugins]): 16551 * WebView/WebFrame.mm: 16552 (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): 16553 * WebView/WebScriptDebugDelegate.mm: 16554 (-[WebScriptCallFrame evaluateWebScript:]): 16555 * WebView/WebView.mm: 16556 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): 16557 Pass a parameter (always false) to JSLock and JSLock::DropAllLocks to indicate that WebKit 16558 doesn't need locking. In the future, it may be possible to remove some of these if we 16559 establish that this won't make JSC assertions fail (and that we don't want to add such 16560 assertions either). 16561 Added includes that are now needed. 16562 165632008-07-01 Kevin McCullough <kmccullough@apple.com> 16564 16565 Build fix. 16566 16567 * WebView/WebView.mm: 16568 165692008-07-01 Anders Carlsson <andersca@apple.com> 16570 16571 Reviewed by Darin Adler. 16572 16573 Use the PluginMainThreadScheduler, and implement NPN_PluginThreadAsyncCall. 16574 16575 * Plugins/WebBaseNetscapePluginView.mm: 16576 (-[WebBaseNetscapePluginView _createPlugin]): 16577 Register the plug-in instance. 16578 16579 (-[WebBaseNetscapePluginView _destroyPlugin]): 16580 Unegister the plug-in instance. 16581 16582 * Plugins/WebNetscapePluginPackage.m: 16583 (-[WebNetscapePluginPackage load]): 16584 Set NPN_PluginThreadAsyncCall. 16585 16586 * Plugins/npapi.mm: 16587 (NPN_PluginThreadAsyncCall): 16588 Implement this. 16589 165902008-07-01 Dan Bernstein <mitz@apple.com> 16591 16592 Reviewed by Darin Adler. 16593 16594 - WebKit part of moving the method to set the base writing direction from Frame to Editor 16595 16596 * WebView/WebHTMLView.mm: 16597 (-[WebHTMLView toggleBaseWritingDirection:]): Changed back to call the 16598 Editor method. 16599 (-[WebHTMLView changeBaseWritingDirection:]): Ditto. 16600 (-[WebHTMLView _changeBaseWritingDirectionTo:]): Ditto. 16601 166022008-07-01 Geoffrey Garen <ggaren@apple.com> 16603 16604 Build fix: forgot to check in this file. 16605 16606 * WebView/WebScriptDebugger.mm: 16607 (WebScriptDebugger::WebScriptDebugger): 16608 166092008-06-30 Dan Bernstein <mitz@apple.com> 16610 16611 Reviewed by Adele Peterson. 16612 16613 - WebKit/mac part of <rdar://problem/3881497> Writing direction context menu item has no effect on text typed in Safari 16614 16615 * WebView/WebHTMLView.mm: 16616 (-[WebHTMLView toggleBaseWritingDirection:]): Changed to call 16617 WebCore::Frame::setSelectionBaseWritingDirection() instead of 16618 WebCore::Editor::setBaseWritingDirection(). 16619 (-[WebHTMLView changeBaseWritingDirection:]): Ditto. 16620 (-[WebHTMLView _changeBaseWritingDirectionTo:]): Ditto. 16621 166222008-06-28 Darin Adler <darin@apple.com> 16623 16624 - fix build 16625 16626 * WebView/WebView.mm: 16627 (aeDescFromJSValue): Use get instead of getItem, which no longer exists. 16628 166292008-06-26 Anders Carlsson <andersca@apple.com> 16630 16631 Reviewed by Darin Adler. 16632 16633 Add a new MainThreadObjectDeallocator which can schedule dealloc calls on the main thread 16634 if necessary. Use this for the WebView class. 16635 16636 * WebView/MainThreadObjectDeallocator.h: Added. 16637 * WebView/MainThreadObjectDeallocator.mm: Added. 16638 (deallocCallback): 16639 (scheduleDeallocateOnMainThread): 16640 * WebView/WebView.mm: 16641 (-[WebViewPrivate dealloc]): 16642 (+[WebView initialize]): 16643 166442008-06-25 Anders Carlsson <andersca@apple.com> 16645 16646 Reviewed by Mark. 16647 16648 <rdar://problem/5984270> 16649 REGRESSION (Tiger only) : Mail crashes because message load is being processed on a secondary thread 16650 16651 * WebView/WebView.mm: 16652 (tigerMailReleaseIMP): 16653 New method that makes sure that the final release happens on the main thread. 16654 16655 (-[WebView release]): 16656 New method that just calls [super release]; 16657 16658 (+[WebView initialize]): 16659 When running under Tiger mail, replace the release method with tigerMailReleaseIMP. 16660 166612008-06-19 Alexey Proskuryakov <ap@webkit.org> 16662 16663 Reviewed by Geoff. 16664 16665 Make Machine per-JSGlobalData. 16666 16667 * WebView/WebScriptDebugger.mm: 16668 (WebScriptDebugger::WebScriptDebugger): 16669 166702008-06-17 Alexey Proskuryakov <ap@webkit.org> 16671 16672 Reviewed by Darin Adler. 16673 16674 Prepare JavaScript heap for being per-thread. 16675 16676 * Misc/WebCoreStatistics.mm: 16677 (+[WebCoreStatistics javaScriptObjectsCount]): 16678 (+[WebCoreStatistics javaScriptGlobalObjectsCount]): 16679 (+[WebCoreStatistics javaScriptProtectedObjectsCount]): 16680 (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]): 16681 (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]): 16682 (+[WebCoreStatistics javaScriptReferencedObjectsCount]): 16683 Use JSGlobalData::threadInstance()->heap instead of static Collector calls. 16684 166852008-06-17 Darin Adler <darin@apple.com> 16686 16687 Reviewed by Sam. 16688 16689 * WebView/WebHTMLView.mm: 16690 (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Use create instead of new 16691 to create a CSSMutableStyleDeclaration. 16692 166932008-06-16 Mark Rowe <mrowe@apple.com> 16694 16695 Reviewed by Darin Adler. 16696 16697 <rdar://problem/5951874> WebHTMLHighlighter mistakenly gained two new methods, causing compile warnings 16698 16699 _pauseNullEventsForAllNetscapePlugins and _resumeNullEventsForAllNetscapePlugins ended up being declared both in 16700 WebHTMLViewInternal.h and as members of the WebHTMLHighlighter protocol in WebHTMLViewPrivate.h. They don't belong 16701 in the protocol, but they do need to be available outside of WebKit so they're being moved to the correct location 16702 in WebHTMLViewPrivate.h and removed from WebHTMLViewInternal.h. 16703 16704 * WebView/WebHTMLView.mm: 16705 (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]): 16706 (-[WebHTMLView _resumeNullEventsForAllNetscapePlugins]): 16707 * WebView/WebHTMLViewInternal.h: 16708 * WebView/WebHTMLViewPrivate.h: 16709 167102008-06-15 Darin Adler <darin@apple.com> 16711 16712 - give Frame object functions shorter names: scriptProxy() -> script(), 16713 selectionController() -> selection(), animationController() -> animation() 16714 16715 * Plugins/WebPluginController.mm: 16716 (-[WebPluginController webPlugInContainerSelectionColor]): 16717 * WebView/WebFrame.mm: 16718 (-[WebFrame _attachScriptDebugger]): 16719 (-[WebFrame _hasSelection]): 16720 (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): 16721 (-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]): 16722 (-[WebFrame _convertToNSRange:]): 16723 (-[WebFrame _convertToDOMRange:]): 16724 (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]): 16725 (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]): 16726 (-[WebFrame _insertParagraphSeparatorInQuotedContent]): 16727 (-[WebFrame _selectedNSRange]): 16728 (-[WebFrame _selectNSRange:]): 16729 (-[WebFrame globalContext]): 16730 * WebView/WebHTMLView.mm: 16731 (-[WebHTMLView _selectedRange]): 16732 (-[WebHTMLView _hasSelection]): 16733 (-[WebHTMLView _hasSelectionOrInsertionPoint]): 16734 (-[WebHTMLView _hasInsertionPoint]): 16735 (-[WebHTMLView _isEditable]): 16736 (-[WebHTMLView _updateFocusedAndActiveState]): 16737 (-[WebHTMLView readSelectionFromPasteboard:]): 16738 (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): 16739 (-[WebHTMLView maintainsInactiveSelection]): 16740 (-[WebHTMLView paste:]): 16741 (isTextInput): 16742 (-[WebHTMLView inputContext]): 16743 (-[WebTextCompleteController doCompletion]): 16744 (-[WebHTMLView selectAll]): 16745 (-[WebHTMLView deselectAll]): 16746 (-[WebHTMLView selectedAttributedString]): 16747 * WebView/WebView.mm: 16748 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): 16749 (-[WebView setSelectedDOMRange:affinity:]): 16750 (-[WebView selectedDOMRange]): 16751 (-[WebView selectionAffinity]): 16752 167532008-06-15 Darin Adler <darin@apple.com> 16754 16755 - rename KJS::List to KJS::ArgList 16756 16757 * WebView/WebScriptDebugger.h: 16758 167592008-06-15 Darin Adler <darin@apple.com> 16760 16761 - new names for more JavaScriptCore files 16762 16763 * WebView/WebView.mm: 16764 167652008-06-15 Darin Adler <darin@apple.com> 16766 16767 - new names for a few key JavaScriptCore files 16768 16769 * ForwardingHeaders/kjs/JSFunction.h: Copied from WebKit/mac/ForwardingHeaders/kjs/function.h. 16770 * ForwardingHeaders/kjs/JSObject.h: Copied from WebKit/mac/ForwardingHeaders/kjs/object.h. 16771 * ForwardingHeaders/kjs/JSString.h: Copied from WebKit/mac/ForwardingHeaders/kjs/internal.h. 16772 * ForwardingHeaders/kjs/JSValue.h: Copied from WebKit/mac/ForwardingHeaders/kjs/value.h. 16773 * ForwardingHeaders/kjs/function.h: Removed. 16774 * ForwardingHeaders/kjs/internal.h: Removed. 16775 * ForwardingHeaders/kjs/object.h: Removed. 16776 * ForwardingHeaders/kjs/value.h: Removed. 16777 * WebView/WebScriptDebugDelegate.mm: 16778 167792008-06-15 Darin Adler <darin@apple.com> 16780 16781 Rubber stamped by Sam. 16782 16783 - use JS prefix and simpler names for basic JavaScriptCore types, 16784 to complement JSValue and JSObject 16785 16786 * WebView/WebView.mm: 16787 (aeDescFromJSValue): 16788 167892008-06-14 Darin Adler <darin@apple.com> 16790 16791 Rubber stamped by Sam. 16792 16793 - new names for kjs_binding.h and kjs_proxy.h 16794 16795 * WebView/WebFrame.mm: 16796 * WebView/WebScriptDebugDelegate.mm: 16797 * WebView/WebView.mm: 16798 167992008-06-14 Darin Adler <darin@apple.com> 16800 16801 Rubber stamped by Sam. 16802 16803 - renamed HTMLGenericFormElement to HTMLFormControlElement 16804 16805 * WebView/WebHTMLRepresentation.mm: 16806 (-[WebHTMLRepresentation elementWithName:inForm:]): 16807 (-[WebHTMLRepresentation controlsInForm:]): 16808 168092008-06-14 Darin Adler <darin@apple.com> 16810 16811 Reviewed by Sam. 16812 16813 - more of https://bugs.webkit.org/show_bug.cgi?id=17257 16814 start ref counts at 1 instead of 0 for speed 16815 16816 * WebCoreSupport/WebFrameLoaderClient.mm: 16817 (WebFrameLoaderClient::createDocumentLoader): Use create instead of new. 16818 (WebFrameLoaderClient::createFrame): Remove now-obsolete adoptRef that was balanced by 16819 a ref call inside the Frame constructor. The lifetime rules for Frame are now the 16820 conventional ones without a special case. 16821 16822 * WebView/WebDataSource.mm: 16823 (-[WebDataSource _initWithDocumentLoader:]): Changed argument to be a PassRefPtr, since 16824 this function takes ownership of the DocumentLoader. 16825 (-[WebDataSource initWithRequest:]): Use create instead of new. 16826 * WebView/WebDataSourceInternal.h: Changed _initWithDocumentLoader argument to be a 16827 PassRefPtr and also cleaned up the header a bit. 16828 16829 * WebView/WebDocumentLoaderMac.h: 16830 (WebDocumentLoaderMac::create): Added. Also made the constructor and a couple of virtual 16831 functions private. 16832 16833 * WebView/WebFrame.mm: 16834 (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]): Use create instead 16835 of new. 16836 168372008-06-14 Darin Adler <darin@apple.com> 16838 16839 Reviewed by Sam. 16840 16841 - more work on https://bugs.webkit.org/show_bug.cgi?id=17257 16842 start ref counts at 1 instead of 0 for speed 16843 16844 * WebView/WebFrame.mm: 16845 (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]): 16846 * WebView/WebPDFView.mm: 16847 (-[WebPDFView PDFViewWillClickOnLink:withURL:]): 16848 168492008-06-13 Darin Adler <darin@apple.com> 16850 16851 Reviewed by John Sullivan. 16852 16853 - updated for addition of FormState argument to action policy functions 16854 - added WebActionFormKey 16855 16856 * WebCoreSupport/WebFrameLoaderClient.h: 16857 * WebCoreSupport/WebFrameLoaderClient.mm: 16858 (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): 16859 (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): 16860 (WebFrameLoaderClient::actionDictionary): 16861 * WebKit.exp: 16862 * WebView/WebPolicyDelegate.mm: 16863 * WebView/WebPolicyDelegatePrivate.h: 16864 168652008-06-12 John Sullivan <sullivan@apple.com> 16866 16867 Reviewed by Dan and Darin 16868 16869 Clear up the confusion about _close (older private method) vs -close (newer public method). 16870 16871 * WebView/WebView.mm: 16872 (-[WebView _isClosed]): 16873 simplified style 16874 (-[WebView _close]): 16875 added a comment about how clients and subclasses should use -close instead 16876 (-[WebView dealloc]): 16877 call -close instead of _close, so subclasses that override the public method will have the intended behavior 16878 (-[WebView close]): 16879 added a comment 16880 (-[WebView _windowWillClose:]): 16881 call -close instead of _close, so subclasses that override the public method will have the intended behavior 16882 16883 * WebView/WebViewPrivate.h: 16884 added a comment about how clients and subclasses should use -close instead 16885 168862008-06-07 Darin Adler <darin@apple.com> 16887 16888 Reviewed by Mitz. 16889 16890 - work on https://bugs.webkit.org/show_bug.cgi?id=17257 16891 start ref counts at 1 instead of 0 for speed 16892 16893 * History/WebHistoryItem.mm: 16894 (-[WebHistoryItem init]): 16895 (-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]): 16896 (-[WebHistoryItem initWithURL:target:parent:title:]): 16897 (-[WebHistoryItem initWithURLString:title:displayTitle:lastVisitedTimeInterval:]): 16898 * WebView/WebView.mm: 16899 (+[WebView _decodeData:]): 16900 169012008-06-03 Oliver Hunt <oliver@apple.com> 16902 16903 Reviewed by Tim. 16904 16905 Bug 12983: Web Inspector break on the debugger keyword 16906 <https://bugs.webkit.org/show_bug.cgi?id=12983> 16907 16908 Add stubs to allow old webkit debugger interface to build. 16909 16910 * WebView/WebScriptDebugger.h: 16911 * WebView/WebScriptDebugger.mm: 16912 169132008-06-03 Anders Carlsson <andersca@apple.com> 16914 16915 Reviewed by Darin Adler. 16916 16917 <rdar://problem/5980961> 16918 16919 In 64-bit Web Kit, converting between float and double, can cause rounding errors which in turn causes 16920 newBottom to be larger than oldBottom which is illegal. 16921 16922 * WebView/WebHTMLView.mm: 16923 (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): 16924 169252008-06-02 Anders Carlsson <andersca@apple.com> 16926 16927 Reviewed by Mitz. 16928 16929 Speculative fix for <rdar://problem/5661112> 16930 CrashTracer: [USER] 49 crashes in DashboardClient at com.apple.WebCore: WebCore::RenderPart::setWidget + 62 16931 16932 Defer loads while calling NPP_New. Some plug-ins start a run-loop inside NPP_New and finished loads could cause 16933 layouts to be triggered. 16934 16935 * Plugins/WebBaseNetscapePluginView.mm: 16936 (-[WebBaseNetscapePluginView _createPlugin]): 16937 169382008-05-29 Justin Garcia <justin.garcia@apple.com> 16939 16940 Reviewed by Darin Adler. 16941 16942 <rdar://problem/5949462> REGRESSION: Can't paste screen captures into Mail 16943 16944 AppKit started putting PNG instead of PICT onto the pasteboard for screen 16945 captures. Added support for PNG with kUTTypePNG. Tiger doesn't support 16946 setting and retrieving pasteboard types with UTIs, but we don't know of any 16947 applications on Tiger that put only PNG on the pasteboard. 16948 16949 * WebView/WebHTMLView.mm: 16950 (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]): 16951 (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]): 16952 169532008-05-29 Anders Carlsson <andersca@apple.com> 16954 16955 Reviewed by Brady. 16956 16957 <rdar://problem/5970312> 16958 icon file specified for stand alone web app causes crash if the icon can't be found 16959 16960 Handle the case where iconData is null. 16961 16962 * Misc/WebIconFetcher.mm: 16963 (WebIconFetcherClient::finishedFetchingIcon): 16964 169652008-05-29 Anders Carlsson <andersca@apple.com> 16966 16967 Reviewed by Mitz. 16968 16969 <rdar://problem/5971845> 16970 https://bugs.webkit.org/show_bug.cgi?id=19313 16971 Add version member to NPCocoaEvent 16972 16973 Initialize the version member to 0 for all events. 16974 16975 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 16976 (initializeEvent): 16977 (WebNetscapePluginEventHandlerCocoa::drawRect): 16978 (WebNetscapePluginEventHandlerCocoa::sendMouseEvent): 16979 (WebNetscapePluginEventHandlerCocoa::flagsChanged): 16980 (WebNetscapePluginEventHandlerCocoa::sendKeyEvent): 16981 (WebNetscapePluginEventHandlerCocoa::windowFocusChanged): 16982 (WebNetscapePluginEventHandlerCocoa::focusChanged): 16983 169842008-05-29 Dan Bernstein <mitz@apple.com> 16985 16986 Reviewed by Jessica Kahn. 16987 16988 - fix <rdar://problem/5965013> Page 2 does not print correctly 16989 16990 When printing, _recursiveDisplayRectIfNeededIgnoringOpacity:... and 16991 _recursiveDisplayAllDirtyWithLockFocus:... can be invoked without 16992 -viewWillDraw being sent first, which could lead to painting without 16993 valid layout. The fix is to ensure up-to-date layout in those methods 16994 when printing. 16995 16996 * WebView/WebHTMLView.mm: 16997 (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]): 16998 (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]): 16999 170002008-05-28 Anders Carlsson <andersca@apple.com> 17001 17002 Reviewed by Jon. 17003 17004 Remove workaround, this is no longer a problem. 17005 17006 * WebView/WebView.mm: 17007 (-[WebView _removeObjectForIdentifier:]): 17008 170092008-05-27 Geoffrey Garen <ggaren@apple.com> 17010 17011 Reviewed by Tim Hatcher. 17012 17013 Fixed https://bugs.webkit.org/show_bug.cgi?id=19183 17014 REGRESSION (r33979): Crash in DebuggerCallFrame::functionName when 17015 clicking button in returnEvent-crash.html 17016 17017 Added implementations for willExecuteProgram and didExecuteProgram, which 17018 take care of making sure we're not hanging on to stale data. 17019 170202008-05-27 Timothy Hatcher <timothy@apple.com> 17021 17022 Fixes a bug where unplugging the monitor from a video card and 17023 moving it to another video card would no longer show OpenGL plugins 17024 until you relaunched Safari. 17025 17026 <rdar://problem/5790983> Add AllowOfflineDisplays pixel format 17027 attribute to OpenGL contexts 17028 17029 Reviewed by Kevin Decker. 17030 17031 * Plugins/WebBaseNetscapePluginView.mm: 17032 (-[WebBaseNetscapePluginView _createWindowedAGLContext]): Added 17033 AGL_ALLOW_OFFLINE_RENDERERS for non-Tiger builds. 17034 (-[WebBaseNetscapePluginView _createWindowlessAGLContext]): Ditto. 17035 170362008-05-25 Mark Rowe <mrowe@apple.com> 17037 17038 Reviewed by Darin Adler. 17039 17040 <rdar://problem/5840884> _recursive_resumeNullEventsForAllNetscapePlugins and _pauseNullEvents not defined 17041 17042 Follow-up for r33052. _recursive_resumeNullEventsForAllNetscapePlugins and _recursive_pauseNullEventsForAllNetscapePlugins 17043 need to be declared in WebFramePrivate.h rather than WebFrameInternal.h so they can be used from outside of WebKit. 17044 17045 * WebView/WebFrame.mm: 17046 (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]): 17047 (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]): 17048 * WebView/WebFrameInternal.h: 17049 * WebView/WebFramePrivate.h: 17050 170512008-05-23 Timothy Hatcher <timothy@apple.com> 17052 17053 Fix attaching and detaching the Web Inspector. This change removes 17054 the clunky animation that never looked right and was causing issues 17055 where the inspected WebView would get into a no useable state. 17056 17057 <rdar://problem/5958812> Attaching and Detaching the Web Inspector 17058 can cause the inspected WebVIew to be unusable 17059 17060 Reviewed by Adam Roben. 17061 17062 * WebCoreSupport/WebInspectorClient.mm: 17063 (-[WebInspectorWindowController close]): Removes animation code. 17064 Sets the frame directly and does a displayIfNeeded to prevent 17065 showing the Inspector in the page and in the Inspector window. 17066 (-[WebInspectorWindowController showWindow:]): Removes animation code. 17067 Sets the frame directly. 17068 (-[WebInspectorWindowController attach]): Simplified. 17069 (-[WebInspectorWindowController detach]): Ditto. 17070 170712008-05-22 Dan Bernstein <mitz@apple.com> 17072 17073 Reviewed by Darin Adler. 17074 17075 - fix broken documentation of 17076 webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame: 17077 17078 * WebView/WebUIDelegate.h: Fixed method name in HeaderDoc for 17079 -webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame: 17080 170812008-05-22 Timothy Hatcher <timothy@apple.com> 17082 17083 <rdar://problem/5956403> Update the Develop menu to match the new Inspector items 17084 17085 Reviewed by Adam Roben. 17086 17087 * WebCoreSupport/WebInspectorClient.mm: 17088 (-[WebInspectorWindowController showWebInspector:]): 17089 (-[WebInspectorWindowController showErrorConsole:]): 17090 (-[WebInspectorWindowController toggleDebuggingJavaScript:]): 17091 (-[WebInspectorWindowController toggleProfilingJavaScript:]): 17092 (-[WebInspectorWindowController validateUserInterfaceItem:]): 17093 * WebInspector/WebInspector.h: 17094 * WebInspector/WebInspector.mm: 17095 (-[WebInspector showConsole:]): 17096 (-[WebInspector showTimeline:]): 17097 (-[WebInspector isDebuggingJavaScript]): 17098 (-[WebInspector toggleDebuggingJavaScript:]): 17099 (-[WebInspector startDebuggingJavaScript:]): 17100 (-[WebInspector stopDebuggingJavaScript:]): 17101 (-[WebInspector isProfilingJavaScript]): 17102 (-[WebInspector toggleProfilingJavaScript:]): 17103 (-[WebInspector startProfilingJavaScript:]): 17104 (-[WebInspector stopProfilingJavaScript:]): 17105 171062008-05-22 Josh Aas <joshmoz@gmail.com> 17107 17108 Reviewed by Anders. 17109 17110 <rdar://problem/5956429> 17111 https://bugs.webkit.org/show_bug.cgi?id=19192 17112 remove NPNVpluginEventModel, fix example plugin 17113 17114 * Plugins/WebBaseNetscapePluginView.mm: 17115 (-[WebBaseNetscapePluginView getVariable:value:]): 17116 171172008-05-21 Anders Carlsson <andersca@apple.com> 17118 17119 Reviewed by Maciej. 17120 17121 Add WebIconFetcher. 17122 17123 * Misc/WebIconFetcher.h: Added. 17124 * Misc/WebIconFetcher.mm: Added. 17125 (WebIconFetcherClient::WebIconFetcherClient): 17126 (WebIconFetcherClient::finishedFetchingIcon): 17127 (WebIconFetcherClient::setFetcher): 17128 (-[WebIconFetcher init]): 17129 (-[WebIconFetcher dealloc]): 17130 (-[WebIconFetcher finalize]): 17131 (-[WebIconFetcher cancel]): 17132 (-[WebIconFetcher _initWithIconFetcher:client:]): 17133 (+[WebIconFetcher _fetchApplicationIconForFrame:target:selector:]): 17134 * Misc/WebIconFetcherInternal.h: Added. 17135 * WebView/WebFrame.mm: 17136 (-[WebFrame fetchApplicationIcon:selector:]): 17137 * WebView/WebFramePrivate.h: 17138 17139=== End merge of squirrelfish === 17140 171412008-05-21 Geoffrey Garen <ggaren@apple.com> 17142 17143 Reviewed by Tim Hatcher. 17144 17145 Updated for API changes from merging with trunk WebCore's new debugger. 17146 17147 * WebView/WebScriptDebugDelegate.mm: 17148 (-[WebScriptCallFrame evaluateWebScript:]): Explicitly check for an 17149 exception return, since the DebuggerCallFrame no longer automatically 17150 substitutes the exception for the return value. 17151 17152 * WebView/WebScriptDebugger.mm: Use the dynamic global object, not the 17153 lexical global object, since the debugger attaches based on dynamic 17154 global object. 17155 171562008-05-17 Geoffrey Garen <ggaren@apple.com> 17157 17158 Reviewed by Oliver Hunt. 17159 17160 Re-enabled previously disabled debugging functionality. 17161 17162 There are two major changes from how the WebKit debugger used to work: 17163 17164 (1) All the interesting bits are implemented down in JavaScriptCore. The 17165 debugger just calls through to KJS::DebuggerCallFrame for everything. 17166 17167 (2) Instead of copyihng a pointer to an ExecState once, the debugger 17168 copies the DebuggerCallFrame passed to it in each callback. This is 17169 because the VM no longer maintains a fully transparent execution state 17170 to which you can hold a pointer, and the DebuggerCallFrames it vends 17171 are temporaries. 17172 17173 Also, we NULL out a WebScriptCallFrame's DebuggerCallFrame upon return 17174 from its function. This is safer than the old method, which was to 17175 hold a stale ExecState* and hope for the best. 17176 171772008-05-13 Geoffrey Garen <ggaren@apple.com> 17178 17179 Reviewed by Oliver Hunt. 17180 17181 Updated for API changes in KJS::Debugger. 17182 17183 * WebView/WebFrame.mm: 17184 (-[WebFrame _attachScriptDebugger]): Changed the order of operations to 17185 fix an ASSERT that can happen when re-entering _attachScriptDebugger. 17186 171872008-05-13 Geoffrey Garen <ggaren@apple.com> 17188 17189 Reviewed by Oliver Hunt. 17190 17191 Updated WebScriptDebugger API to accept a SourceProvider instead 17192 of a WebCore::String, to avoid copying. 17193 17194 (WebScriptDebugger::sourceParsed): Updated this function not to return 17195 a value. 17196 171972008-04-30 Geoffrey Garen <ggaren@apple.com> 17198 17199 Build fix: #ifdef'd out some code that doesn't work anymore. 17200 172012008-04-30 Geoffrey Garen <ggaren@apple.com> 17202 17203 Reviewed by Oliver Hunt. 17204 17205 #ifdef'd out some debugger code that doesn't work anymore. 17206 17207 * WebView/WebScriptDebugDelegate.mm: 17208 (-[WebScriptCallFrame scopeChain]): 17209 172102008-04-21 Geoffrey Garen <ggaren@apple.com> 17211 17212 Build fix. 17213 17214 * ChangeLog: 17215 * WebView/WebScriptDebugDelegate.mm: 17216 (-[WebScriptCallFrame scopeChain]): 17217 172182008-03-30 Geoffrey Garen <ggaren@apple.com> 17219 17220 Reviewed by Oliver Hunt. 17221 17222 Build fix. 17223 17224=== Start merge of squirrelfish === 17225 172262008-05-21 Darin Adler <darin@apple.com> 17227 17228 - fix build 17229 17230 * WebView/WebViewPrivate.h: Remove declaration of closeWithFastTeardown. We can add it back later 17231 if we want, but if we do, we should probably make some refinements like checking _private->closed 17232 and applicationIsTerminating. 17233 172342008-05-21 Darin Adler <darin@apple.com> 17235 17236 Reviewed by Anders and Kevin Decker. 17237 17238 - fix <rdar://problem/5951130> REGRESSION: crash on quit after reopening windows from previous session 17239 17240 * WebView/WebView.mm: 17241 (-[WebViewPrivate dealloc]): Fix assertions to not complain when fast teardown is used. 17242 (-[WebView _closePluginDatabases]): Factored out some common code from both versions of close. 17243 (-[WebView _closeWithFastTeardown]): Added an underscore to this method's name, since it's internal. 17244 Streamlined the code a bit. Added a line of code to set _private->closed (this is the bug fix). 17245 (-[WebView _close]): Changed for new method name and to use _closePluginDatabases. 17246 172472008-05-19 Stephanie Lewis <slewis@apple.com> 17248 17249 Reviewed by Darin Adler. 17250 17251 more fast teardown performance work 17252 17253 * Misc/WebDownload.m: 17254 (-[WebDownloadInternal downloadDidBegin:]): 17255 (-[WebDownloadInternal downloadDidFinish:]): 17256 (-[WebDownloadInternal download:didFailWithError:]): 17257 * WebCoreSupport/WebChromeClient.h: 17258 * WebCoreSupport/WebChromeClient.mm: 17259 (WebChromeClient::disableSuddenTermination): 17260 (WebChromeClient::enableSuddenTermination): 17261 172622008-05-18 Dan Bernstein <mitz@apple.com> 17263 17264 Reviewed by Sam Weinig. 17265 17266 - fix <rdar://problem/5944596> IDNs are displayed as punycode in the authentication panel 17267 17268 * Panels/WebAuthenticationPanel.m: 17269 (-[WebAuthenticationPanel setUpForChallenge:]): 17270 172712008-05-16 Timothy Hatcher <timothy@apple.com> 17272 17273 Removes WebScriptDebugServer files and related calls. This removes 17274 the hooks that Drosera uses for debugging. Now that the Web Inspector 17275 has a better debugger, we don't need these anymore. 17276 17277 Reviewed by Sam Weinig. 17278 17279 * DefaultDelegates/WebScriptDebugServer.h: Removed. 17280 * DefaultDelegates/WebScriptDebugServer.m: Removed. 17281 * DefaultDelegates/WebScriptDebugServerPrivate.h: Removed. 17282 * WebCoreSupport/WebFrameLoaderClient.mm: 17283 * WebKit.exp: 17284 * WebView/WebScriptDebugDelegate.mm: 17285 * WebView/WebScriptDebugger.mm: 17286 (WebScriptDebugger::sourceParsed): 17287 (WebScriptDebugger::callEvent): 17288 (WebScriptDebugger::atStatement): 17289 (WebScriptDebugger::returnEvent): 17290 (WebScriptDebugger::exception): 17291 * WebView/WebView.mm: 17292 (-[WebView _commonInitializationWithFrameName:groupName:]): 17293 * WebView/WebViewPrivate.h: 17294 172952008-05-16 Brady Eidson <beidson@apple.com> 17296 17297 Reviewed by Anders 17298 17299 <rdar://problem/5942616> - Need to standardize LocalStorage persistence path 17300 17301 Took the opportunity to touch up another pref that needs the same standardization. 17302 That pref is currently not in use on Mac. 17303 17304 * WebView/WebPreferences.m: 17305 (-[WebPreferences _setFTPDirectoryTemplatePath:]): 17306 (-[WebPreferences _localStorageDatabasePath]): 17307 (-[WebPreferences _setLocalStorageDatabasePath:]): 17308 (-[WebPreferences _ftpDirectoryTemplatePath]): 17309 173102008-05-16 Chris Fleizach <cfleizach@apple.com> 17311 17312 Reviewed by Alice Liu 17313 17314 <rdar://problem/5710317> REGRESSION:Selecting ranges of text should be possible using the keyboard (15310) 17315 17316 * WebView/WebFrame.mm: 17317 (-[WebFrame _accessibilityTree]): 17318 173192008-05-15 Stephanie Lewis <slewis@apple.com> 17320 17321 fix mac build 17322 17323 * WebView/WebView.mm: 17324 (-[WebView closeWithFastTeardown]): 17325 173262008-05-15 Stephanie Lewis <slewis@apple.com> 17327 17328 Reviewed by Anders. 17329 17330 Turn on fast teardown. I added a preference for using full teardown because 17331 the LEAKS output will be useless without a full teardown. 17332 17333 preference for fullteardown 17334 * WebView/WebPreferenceKeysPrivate.h: 17335 * WebView/WebPreferences.m: 17336 (-[WebPreferences setFullDocumentTeardownEnabled:]): 17337 (-[WebPreferences fullDocumentTeardownEnabled]): 17338 * WebView/WebPreferencesPrivate.h: 17339 17340 on application quit dispatch unload events and destroy plugins then exit 17341 * WebView/WebView.mm: 17342 (-[WebView closeWithFastTeardown]): 17343 (-[WebView _close]): 17344 * WebView/WebViewPrivate.h: 17345 173462008-05-15 Stephanie Lewis <slewis@apple.com> 17347 17348 Reviewed by Anders. 17349 17350 get the pending frame unload count from WebCore 17351 17352 * WebView/WebFrame.mm: 17353 (-[WebFrame _pendingFrameUnloadEventCount]): 17354 * WebView/WebFramePrivate.h: 17355 173562008-05-15 John Sullivan <sullivan@apple.com> 17357 17358 Reviewed by Kevin Decker 17359 17360 - fixed <rdar://problem/5940275> Inspector highlighting moves to bottom-left corner of 17361 screen when new tab appears 17362 17363 The highlight should go away entirely, but this simple patch just makes it not jump away. 17364 The issue with it not going away entirely is harder to fix and covered by <rdar://problem/5322306> 17365 17366 * WebInspector/WebNodeHighlight.m: 17367 (-[WebNodeHighlight _repositionHighlightWindow]): 17368 Bail out if target view isn't in a window 17369 173702008-05-15 Stephanie Lewis <slewis@apple.com> 17371 17372 Reviewed by Anders. 17373 17374 Track views that contain plugin instances so that they can be destroyed at application 17375 quit without walking the entire document tree. 17376 17377 Add/Remove Netscape plugin views from instance list. Start/stop are when netscape 17378 plugins are created and destroyed 17379 * Plugins/WebBaseNetscapePluginView.mm: 17380 (-[WebBaseNetscapePluginView start]): 17381 (-[WebBaseNetscapePluginView stop]): 17382 17383 Add/remove WebKit plugin views from instance list 17384 * Plugins/WebPluginController.mm: 17385 (-[WebPluginController addPlugin:]): 17386 (-[WebPluginController destroyPlugin:]): 17387 (-[WebPluginController destroyAllPlugins]): 17388 17389 Add a set of views with plugin instances to the WebPluginDatabase 17390 * Plugins/WebPluginDatabase.h: 17391 * Plugins/WebPluginDatabase.mm: 17392 (-[WebPluginDatabase init]): 17393 (-[WebPluginDatabase dealloc]): 17394 (-[WebPluginDatabase addPluginInstanceView:]): 17395 (-[WebPluginDatabase removePluginInstanceView:]): 17396 (-[WebPluginDatabase removePluginInstanceViewsFor:]): 17397 (-[WebPluginDatabase destroyAllPluginInstanceViews]): 17398 17399 Handle cases where plugin views are detached before the plugin is destroyed. 17400 * WebCoreSupport/WebFrameLoaderClient.mm: 17401 (WebFrameLoaderClient::detachedFromParent2): 17402 (WebFrameLoaderClient::transitionToCommittedFromCachedPage): 17403 (WebFrameLoaderClient::transitionToCommittedForNewPage): 17404 17405 Add plugin instances to the set in the WebPluginDatabase by way of the WebView 17406 * WebView/WebHTMLView.mm: 17407 (-[WebHTMLView _destroyAllWebPlugins]): 17408 * WebView/WebHTMLViewInternal.h: 17409 * WebView/WebView.mm: 17410 (-[WebView addPluginInstanceView:]): 17411 (-[WebView removePluginInstanceView:]): 17412 (-[WebView removePluginInstanceViewsFor:]): 17413 * WebView/WebViewInternal.h: 17414 174152008-05-15 Brady Eidson <beidson@apple.com> 17416 17417 Reviewed by Tim Hatcher 17418 17419 Until the settings/preferences equation can be reworked, we'll need to manually set the local storage path 17420 before setting the page group of the new page. 17421 17422 * WebView/WebView.mm: 17423 (-[WebView _commonInitializationWithFrameName:groupName:]): Set the LocalStorage path 17424 immediately after creating the page so it is in place for initializing the LocalStorageThread 17425 174262008-05-15 Timothy Hatcher <timothy@apple.com> 17427 17428 Fixes the bug where the Web Inspector would flash white while resizing. 17429 This was cause by deferring the window creation. 17430 17431 <rdar://problem/5873549> REGRESSION: Inspector flickers horribly while resizing (17979) 17432 17433 Reviewed by Darin Adler. 17434 17435 * WebCoreSupport/WebInspectorClient.mm: 17436 (-[WebInspectorWindowController window]): Don't defer the window creation. 17437 174382008-05-15 Alexey Proskuryakov <ap@webkit.org> 17439 17440 Tiger build fix. 17441 17442 * Misc/WebNSAttributedStringExtras.mm: Import WebTypesInternal.h for NSUInteger. 17443 174442008-05-15 Adele Peterson <adele@apple.com> 17445 17446 Reviewed and landed by Alexey. 17447 17448 Use TextIterator in +[NSAttributedString _web_attributedStringFromRange:]. 17449 17450 * Misc/WebNSAttributedStringExtras.mm: 17451 (+[NSAttributedString _web_attributedStringFromRange:]): 17452 174532008-05-14 Eric Seidel <eric@webkit.org> 17454 17455 Reviewed by Oliver. 17456 17457 Add missing NULL check to match rest of file, this was found by the editing fuzzer. 17458 17459 * WebView/WebResource.mm: 17460 (-[WebResource data]): 17461 174622008-05-14 Alexey Proskuryakov <ap@webkit.org> 17463 17464 Reviewed by Dan Bernstein. 17465 17466 NPP_ValidAttributesForMarkedText should return NSArray*, not NSArray. 17467 17468 * Plugins/nptextinput.h: 17469 174702008-05-13 Anders Carlsson <andersca@apple.com> 17471 17472 Reviewed by Sam. 17473 17474 Don't empty the application cache in _setCacheModel, since it will be called during initialization. 17475 Instead, do it in [WebCache empty]. 17476 17477 * Misc/WebCache.mm: 17478 (+[WebCache empty]): 17479 * WebView/WebView.mm: 17480 (+[WebView _setCacheModel:]): 17481 174822008-05-13 chris fleizach <cfleizach@apple.com> 17483 17484 Reviewed by Beth Dakin 17485 17486 <rdar://problem/4780592> WebKit application has its window announced as HTML content 17487 17488 * WebCoreSupport/WebViewFactory.mm: 17489 (-[WebViewFactory AXWebAreaText]): 17490 174912008-05-13 Timothy Hatcher <timothy@apple.com> 17492 17493 Fixes a crash seen in Xcode where CallUIDelegateReturningBoolean 17494 was referencing a nil WebView under validateUserInterfaceItem. 17495 The validateUserInterfaceItem methods was being called at a time 17496 when the WebHTMLView is being torndown. 17497 17498 <rdar://problem/5806229> A crash occurs at CallUIDelegateReturningBoolean() 17499 while mousing down on menu bar after Xcode News window is opened 17500 17501 Reviewed by Ada Chan. 17502 17503 * WebView/WebHTMLView.mm: 17504 (-[WebHTMLView validateUserInterfaceItem:]): NULL check the WebView and 17505 return NO when it is nil. Adds a comment. 17506 * WebView/WebPDFView.mm: 17507 (-[WebPDFView validateUserInterfaceItem:]): Ditto. 17508 175092008-05-13 Mark Rowe <mrowe@apple.com> 17510 17511 Reviewed by John Sullivan. 17512 17513 <rdar://problem/5926425> HIWebViewCreateWithClass declared as API in HIWebView.h but never exported from WebKit.framework 17514 17515 * Carbon/HIWebView.h: Remove HIWebViewCreateWithClass. 17516 * Carbon/HIWebView.m: Ditto. 17517 (HIWebViewCreate): 17518 (HIWebViewConstructor): 17519 175202008-05-12 Dan Bernstein <mitz@apple.com> 17521 17522 Reviewed by Ada Chan. 17523 17524 - WebKit/mac changes for https://bugs.webkit.org/show_bug.cgi?id=17097 17525 <rdar://problem/5715471> CGFontRefs (and HFONTs on Windows) leak because FontCache grows without bound 17526 17527 Added font cache statistics and a function to purge inactive font data. 17528 17529 * Misc/WebCoreStatistics.h: 17530 * Misc/WebCoreStatistics.mm: 17531 (+[WebCoreStatistics cachedFontDataCount]): 17532 (+[WebCoreStatistics cachedFontDataInactiveCount]): 17533 (+[WebCoreStatistics purgeInactiveFontData]): 17534 (+[WebCoreStatistics glyphPageCount]): 17535 175362008-05-12 Mark Rowe <mrowe@apple.com> 17537 17538 Reviewed by Tim Hatcher. 17539 17540 Decorate some deprecated delegate methods with the availability macros. 17541 17542 The compiler doesn't appear to warn if a delegate implements these methods, but using the availability 17543 macros is good for consistency and documentation. 17544 17545 * WebView/WebFrameLoadDelegate.h: 17546 * WebView/WebUIDelegate.h: 17547 175482008-05-12 Mark Rowe <mrowe@apple.com> 17549 17550 Reviewed by Tim Hatcher. 17551 17552 <rdar://problem/5835604> Deprecate HIWebView 17553 17554 Use of HIWebView is deprecated in favor of embedding a WebView in a HICocoaView. 17555 17556 * Carbon/CarbonUtils.h: Include the availability macro header and decorate the functions appropriately. 17557 * Carbon/HIWebView.h: Ditto. 17558 175592008-05-12 Kevin Decker <kdecker@apple.com> 17560 17561 Reviewed by Anders. 17562 17563 Fixed: <rdar://problem/5840884>_recursive_resumeNullEventsForAllNetscapePlugins and _pauseNullEvents not defined 17564 17565 Re-added these SPI methods because they are needed by some clients. They were accidentally removed 17566 in changeset <http://trac.webkit.org/changeset/31028> 17567 17568 * Plugins/WebBaseNetscapePluginView.h: Added stopTimers, restartTimers to the header. 17569 * WebView/WebFrame.mm: 17570 (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]): Re-addd. 17571 (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]): Ditto. 17572 * WebView/WebFrameInternal.h: Ditto. 17573 * WebView/WebHTMLView.mm: Ditto. 17574 (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]): Ditto. 17575 (-[WebHTMLView _resumeNullEventsForAllNetscapePlugins]): Ditto. 17576 * WebView/WebHTMLViewInternal.h: Ditto. 17577 * WebView/WebHTMLViewPrivate.h: Ditto. 17578 175792008-05-12 Anders Carlsson <andersca@apple.com> 17580 17581 Reviewed by Alexey. 17582 17583 Empty the application cache when changing the cache model. 17584 17585 * WebView/WebView.mm: 17586 (+[WebView _setCacheModel:]): 17587 175882008-05-12 Anders Carlsson <andersca@apple.com> 17589 17590 Reviewed by Oliver. 17591 17592 <rdar://problem/5774495> Make Unicode text input possible in Netscape-style plug-ins 17593 17594 * Plugins/WebBaseNetscapePluginView.h: 17595 * Plugins/WebBaseNetscapePluginView.mm: 17596 (-[WebBaseNetscapePluginView start]): 17597 Get the plug-in text input vtable pointer. 17598 17599 (-[WebBaseNetscapePluginView stop]): 17600 Set the plug-in text input vtable pointer to 0. 17601 17602 (-[WebBaseNetscapePluginView inputContext]): 17603 Return 0 for Carbon plug-ins since we don't want Cocoa to handle text input for them. 17604 17605 (-[WebBaseNetscapePluginView hasMarkedText]): 17606 (-[WebBaseNetscapePluginView insertText:]): 17607 (-[WebBaseNetscapePluginView markedRange]): 17608 (-[WebBaseNetscapePluginView selectedRange]): 17609 (-[WebBaseNetscapePluginView setMarkedText:selectedRange:]): 17610 (-[WebBaseNetscapePluginView unmarkText]): 17611 (-[WebBaseNetscapePluginView validAttributesForMarkedText]): 17612 (-[WebBaseNetscapePluginView attributedSubstringFromRange:]): 17613 (-[WebBaseNetscapePluginView characterIndexForPoint:]): 17614 (-[WebBaseNetscapePluginView doCommandBySelector:]): 17615 (-[WebBaseNetscapePluginView firstRectForCharacterRange:]): 17616 (-[WebBaseNetscapePluginView conversationIdentifier]): 17617 Implement NSTextInput and call into the plug-in text input vtable. 17618 17619 (browserTextInputFuncs): 17620 New method which returns the browser input vtable. 17621 17622 (-[WebBaseNetscapePluginView getVariable:value:]): 17623 Support getting the browser input vtable pointer. 17624 17625 * Plugins/WebNetscapePluginEventHandlerCocoa.h: 17626 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 17627 (WebNetscapePluginEventHandlerCocoa::keyDown): 17628 (WebNetscapePluginEventHandlerCocoa::sendKeyEvent): 17629 If the plug-in returns 0 when a NPCocoaEventKeyDown is passed to NPP_HandleEvent, 17630 it means that the event should be passed on to the input manager. 17631 17632 * Plugins/npapi.mm: 17633 (NPN_MarkedTextAbandoned): 17634 (NPN_MarkedTextSelectionChanged): 17635 Add implementations of browser input method methods. 17636 17637 * Plugins/nptextinput.h: Added. 17638 Add file with new text input API. 17639 176402008-05-12 Alexey Proskuryakov <ap@webkit.org> 17641 17642 Roll out recent threading changes (r32807, r32810, r32819, r32822) to simplify 17643 SquirrelFish merging. 17644 17645 * Misc/WebCoreStatistics.mm: 17646 (+[WebCoreStatistics javaScriptObjectsCount]): 17647 (+[WebCoreStatistics javaScriptGlobalObjectsCount]): 17648 (+[WebCoreStatistics javaScriptProtectedObjectsCount]): 17649 (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]): 17650 (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]): 17651 (+[WebCoreStatistics javaScriptReferencedObjectsCount]): 17652 * WebView/WebScriptDebugDelegate.mm: 17653 (-[WebScriptCallFrame evaluateWebScript:]): 17654 176552008-05-07 Anders Carlsson <andersca@apple.com> 17656 17657 Reviewed by Mitz. 17658 17659 REGRESSION (3.1.1-TOT): Arrow keys are sticky in Google Maps street view 17660 https://bugs.webkit.org/show_bug.cgi?id=18880 17661 <rdar://problem/5909513> 17662 17663 Stop suspending key up events before calling handleEvent. 17664 17665 * Plugins/WebNetscapePluginEventHandlerCarbon.mm: 17666 (WebNetscapePluginEventHandlerCarbon::sendEvent): 17667 176682008-05-06 Stephanie Lewis <slewis@apple.com> 17669 17670 Reviewed by Andersca. 17671 17672 prepare for plugin fast teardown work - make WebPluginDatabase a objective C++ file. 17673 17674 * Plugins/WebPluginDatabase.m: Removed. 17675 * Plugins/WebPluginDatabase.mm: Copied from WebKit/mac/Plugins/WebPluginDatabase.m. 17676 * Plugins/npapi.m: Removed. 17677 * Plugins/npapi.mm: Copied from WebKit/mac/Plugins/npapi.m. 17678 176792008-05-06 Anders Carlsson <andersca@apple.com> 17680 17681 Reviewed by Darin Adler. 17682 17683 Initialize numArchs to 0. 17684 17685 * Plugins/WebBasePluginPackage.m: 17686 (-[WebBasePluginPackage isNativeLibraryData:]): 17687 176882008-05-06 Anders Carlsson <andersca@apple.com> 17689 17690 Reviewed by Darin Adler. 17691 17692 Add implementation of NPN_PopUpContextMenu. 17693 17694 * Plugins/WebBaseNetscapePluginView.mm: 17695 (-[WebBaseNetscapePluginView popUpContextMenu:]): 17696 * Plugins/WebBaseNetscapePluginViewPrivate.h: 17697 * Plugins/WebNetscapePluginPackage.m: 17698 (-[WebNetscapePluginPackage load]): 17699 * Plugins/npapi.m: 17700 (NPN_PopUpContextMenu): 17701 177022008-05-06 Anders Carlsson <andersca@apple.com> 17703 17704 Fix typo (don't read random memory). 17705 17706 * Plugins/WebBasePluginPackage.m: 17707 (-[WebBasePluginPackage isNativeLibraryData:]): 17708 177092008-05-05 Anders Carlsson <andersca@apple.com> 17710 17711 Reviewed by Darin Adler. 17712 17713 Change the isNativeLibraryData: method to handle universal binaries. 17714 17715 * Plugins/WebBasePluginPackage.m: 17716 (swapIntsInHeader): 17717 (-[WebBasePluginPackage isNativeLibraryData:]): 17718 177192008-05-06 Brady Eidson <beidson@apple.com> 17720 17721 Reviewed by Darin Adler 17722 17723 Preparation for upcoming work making LocalStorage persistent. 17724 17725 When the application terminates, all LocalStorage areas must be sync'ed out to disk first. 17726 17727 * WebView/WebView.mm: 17728 (+[WebView _applicationWillTerminate]): Close all LocalStorage areas before quitting. 17729 177302008-05-05 Sam Weinig <sam@webkit.org> 17731 17732 Reviewed by Darin Adler. 17733 17734 Fix for <rdar://problem/5884383> 17735 Escape look-a-like characters from the the entire url. 17736 17737 * Misc/WebNSURLExtras.mm: 17738 (escapeUnsafeCharacters): 17739 (-[NSURL _web_userVisibleString]): 17740 177412008-05-05 Justin Garcia <justin.garcia@apple.com> 17742 17743 Reviewed by Darin Adler. 17744 17745 <rdar://problem/5865171> REGRESSION: Creating a new quote places caret at beginning of quote instead of the end 17746 17747 * WebView/WebView.mm: 17748 (-[WebView _updateSettingsFromPreferences:]): Disable Range mutation on changes to 17749 the document for Tiger and Leopard Mail. There is code in Mail that does it, and 17750 the two interfere. 17751 177522008-05-05 Sam Weinig <sam@webkit.org> 17753 17754 Reviewed by Tim Hatcher. 17755 17756 Make the Inspector's localizable strings file match the format used by Dashboard widgets. 17757 17758 * WebCoreSupport/WebInspectorClient.mm: 17759 (WebInspectorClient::localizedStringsURL): 17760 177612008-05-05 Anders Carlsson <andersca@apple.com> 17762 17763 Reviewed by Jess. 17764 17765 Apparently preflighting can cause hangs for some reason. Revert this for now. 17766 17767 * Plugins/WebNetscapePluginPackage.m: 17768 (-[WebNetscapePluginPackage _initWithPath:]): 17769 * Plugins/WebPluginPackage.m: 17770 (-[WebPluginPackage initWithPath:]): 17771 177722008-05-05 Darin Adler <darin@apple.com> 17773 17774 Reviewed by Mitz. 17775 17776 - https://bugs.webkit.org/show_bug.cgi?id=18789 17777 fix some shouldCloseWithWindow edge cases 17778 17779 * WebView/WebView.mm: 17780 (-[WebView viewWillMoveToWindow:]): Fix bug where we would stop observing the 17781 NSWindowWillCloseNotification if the view was moved out of the window but still 17782 had that window set as the host window. Also make sure this function doesn't do 17783 anything if the WebView is already closed. 17784 (-[WebView setHostWindow:]): Ditto. 17785 177862008-05-04 David Kilzer <ddkilzer@apple.com> 17787 17788 Make parameters match for WebChromeClient::addMessageToConsole() 17789 17790 Reviewed by John. 17791 17792 * WebCoreSupport/WebChromeClient.h: 17793 (WebChromeClient::addMessageToConsole): Renamed sourceID parameter 17794 to sourceURL to match implementation in WebChromeClient.mm. 17795 177962008-05-02 Anders Carlsson <andersca@apple.com> 17797 17798 Reviewed by Mark. 17799 17800 Various Cocoa event model and 64-bit plug-in fixes. 17801 17802 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 17803 (WebNetscapePluginEventHandlerCocoa::sendMouseEvent): 17804 Set click count. 17805 17806 (WebNetscapePluginEventHandlerCocoa::flagsChanged): 17807 (WebNetscapePluginEventHandlerCocoa::sendKeyEvent): 17808 Don't try to get the mouse location for keyboard events. 17809 17810 * Plugins/WebPluginPackage.m: 17811 (-[WebPluginPackage initWithPath:]): 17812 Preflight the bundle so we won't show 32-bit WebKit plug-ins when running as 64-bit. 17813 178142008-05-02 Anders Carlsson <andersca@apple.com> 17815 17816 Reviewed by Sam. 17817 17818 The event union is now named. 17819 17820 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 17821 (WebNetscapePluginEventHandlerCocoa::drawRect): 17822 (WebNetscapePluginEventHandlerCocoa::sendMouseEvent): 17823 (WebNetscapePluginEventHandlerCocoa::flagsChanged): 17824 (WebNetscapePluginEventHandlerCocoa::sendKeyEvent): 17825 (WebNetscapePluginEventHandlerCocoa::windowFocusChanged): 17826 (WebNetscapePluginEventHandlerCocoa::focusChanged): 17827 178282008-05-02 Anders Carlsson <andersca@apple.com> 17829 17830 Reviewed by Mark. 17831 17832 Make sure that 32-bit only plug-ins aren't shown when running as 64-bit. 17833 17834 Call preflightAndReturnError on the bundle, which will check if any of the architectures 17835 in the bundle match the current architecture. 17836 17837 * Plugins/WebNetscapePluginPackage.m: 17838 (-[WebNetscapePluginPackage _initWithPath:]): 17839 178402008-05-02 Alexey Proskuryakov <ap@webkit.org> 17841 17842 Reviewed by Geoffrey Garen. 17843 17844 https://bugs.webkit.org/show_bug.cgi?id=18826 17845 Make JavaScript heap per-thread 17846 17847 * Misc/WebCoreStatistics.mm: 17848 (+[WebCoreStatistics javaScriptObjectsCount]): 17849 (+[WebCoreStatistics javaScriptGlobalObjectsCount]): 17850 (+[WebCoreStatistics javaScriptProtectedObjectsCount]): 17851 (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]): 17852 (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]): 17853 (+[WebCoreStatistics javaScriptReferencedObjectsCount]): 17854 Replaced static Collector calls with calls to a current thread's instance. 17855 17856 * WebView/WebScriptDebugDelegate.mm: 17857 (-[WebScriptCallFrame evaluateWebScript:]): 17858 Pass ExecState to jsString(). 17859 178602008-05-01 Anders Carlsson <andersca@apple.com> 17861 17862 Reviewed by Mark. 17863 17864 64-bit NPAPI plugin build fixes. 17865 17866 * Plugins/WebBaseNetscapePluginView.mm: 17867 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): 17868 (-[WebBaseNetscapePluginView updateAndSetWindow]): 17869 (-[WebBaseNetscapePluginView start]): 17870 (-[WebBaseNetscapePluginView windowBecameKey:]): 17871 * Plugins/WebNetscapeDeprecatedFunctions.c: 17872 * Plugins/WebNetscapeDeprecatedFunctions.h: 17873 * Plugins/WebNetscapePluginEventHandler.mm: 17874 (WebNetscapePluginEventHandler::create): 17875 * Plugins/WebNetscapePluginEventHandlerCarbon.h: 17876 * Plugins/WebNetscapePluginEventHandlerCarbon.mm: 17877 * Plugins/WebPluginDatabase.m: 17878 (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]): 17879 178802008-05-01 Anders Carlsson <andersca@apple.com> 17881 17882 Reviewed by Tim. 17883 17884 Remove duplicate npfunctions.h header from WebKit. 17885 17886 * MigrateHeaders.make: 17887 Migrate npfunctions.h 17888 17889 * Plugins/npfunctions.h: Removed. 17890 178912008-05-01 Anders Carlsson <andersca@apple.com> 17892 17893 Reviewed by John. 17894 17895 Add null checks for the event handler. 17896 17897 * Plugins/WebBaseNetscapePluginView.mm: 17898 (-[WebBaseNetscapePluginView stopTimers]): 17899 (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): 17900 179012008-05-01 Anders Carlsson <andersca@apple.com> 17902 17903 Fix 64-bit build. 17904 17905 * Plugins/WebNetscapePluginEventHandlerCocoa.h: 17906 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 17907 * WebCoreSupport/WebFrameLoaderClient.mm: 17908 179092008-05-01 Anders Carlsson <andersca@apple.com> 17910 17911 Fix build. 17912 17913 * Plugins/npfunctions.h: 17914 179152008-05-01 Anders Carlsson <andersca@apple.com> 17916 17917 Reviewed by Adam. 17918 17919 Forward mouse move events to the Netscape plug-in view. 17920 17921 * Plugins/WebBaseNetscapePluginView.h: 17922 * Plugins/WebBaseNetscapePluginView.mm: 17923 (-[WebBaseNetscapePluginView handleMouseMoved:]): 17924 New method that just calls the current event handler. 17925 17926 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: 17927 (WebNetscapePluginEventHandlerCocoa::flagsChanged): 17928 NSFlagsChanged is not a regular keyboard event and some of the NSEvent accessors 17929 don't work on it so don't call them. 17930 17931 * WebCoreSupport/WebFrameLoaderClient.mm: 17932 (NetscapePluginWidget::NetscapePluginWidget): 17933 New Widget subclass to be used for Netscape plug-ins. 17934 17935 (NetscapePluginWidget::handleEvent): 17936 Forward NSMouseMoved events to the plug-in. 17937 17938 (WebFrameLoaderClient::createPlugin): 17939 Wrap the plug-in view in a NetscapePluginWidget. 17940 179412008-05-01 Alp Toker <alp@nuanti.com> 17942 17943 Rubber-stamped by Anders. 17944 17945 GTK+ build fix for changes in r32752. Use int32, not int32_t types in 17946 npapi.h. 17947 17948 Additional fix to use same signedness in npapi.h and Mac for the 17949 interval parameter. 17950 17951 * Plugins/WebBaseNetscapePluginView.h: 17952 * Plugins/WebBaseNetscapePluginView.mm: 17953 (PluginTimer::PluginTimer): 17954 (-[WebBaseNetscapePluginView stopTimers]): 17955 (-[WebBaseNetscapePluginView restartTimers]): 17956 (-[WebBaseNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]): 17957 (-[WebBaseNetscapePluginView unscheduleTimer:]): 17958 * Plugins/WebBaseNetscapePluginViewPrivate.h: 17959 * Plugins/npapi.m: 17960 (NPN_ScheduleTimer): 17961 (NPN_UnscheduleTimer): 17962 * Plugins/npfunctions.h: 17963 179642008-04-30 Anders Carlsson <andersca@apple.com> 17965 17966 Reviewed by Adam. 17967 17968 Add new Cocoa event model and the NPN_ScheduleTimer/NPN_UnscheduleTimer methods. 17969 17970 * Plugins/WebBaseNetscapePluginView.h: 17971 * Plugins/WebBaseNetscapePluginView.mm: 17972 (PluginTimer::PluginTimer): 17973 (PluginTimer::start): 17974 (PluginTimer::fired): 17975 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): 17976 (-[WebBaseNetscapePluginView stopTimers]): 17977 (-[WebBaseNetscapePluginView restartTimers]): 17978 (-[WebBaseNetscapePluginView scrollWheel:]): 17979 (-[WebBaseNetscapePluginView flagsChanged:]): 17980 (-[WebBaseNetscapePluginView start]): 17981 (-[WebBaseNetscapePluginView eventModel]): 17982 (-[WebBaseNetscapePluginView fini]): 17983 (-[WebBaseNetscapePluginView getVariable:value:]): 17984 (-[WebBaseNetscapePluginView setVariable:value:]): 17985 (-[WebBaseNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]): 17986 (-[WebBaseNetscapePluginView unscheduleTimer:]): 17987 * Plugins/WebBaseNetscapePluginViewInternal.h: 17988 * Plugins/WebBaseNetscapePluginViewPrivate.h: 17989 * Plugins/WebNetscapePluginEventHandler.h: 17990 * Plugins/WebNetscapePluginEventHandler.mm: 17991 (WebNetscapePluginEventHandler::create): 17992 * Plugins/WebNetscapePluginEventHandlerCarbon.h: 17993 * Plugins/WebNetscapePluginEventHandlerCarbon.mm: 17994 (WebNetscapePluginEventHandlerCarbon::scrollWheel): 17995 (WebNetscapePluginEventHandlerCarbon::flagsChanged): 17996 (WebNetscapePluginEventHandlerCarbon::platformWindow): 17997 * Plugins/WebNetscapePluginEventHandlerCocoa.h: Added. 17998 (WebNetscapePluginEventHandlerCocoa::startTimers): 17999 (WebNetscapePluginEventHandlerCocoa::stopTimers): 18000 * Plugins/WebNetscapePluginEventHandlerCocoa.mm: Added. 18001 (WebNetscapePluginEventHandlerCocoa::WebNetscapePluginEventHandlerCocoa): 18002 (WebNetscapePluginEventHandlerCocoa::drawRect): 18003 (WebNetscapePluginEventHandlerCocoa::mouseDown): 18004 (WebNetscapePluginEventHandlerCocoa::mouseDragged): 18005 (WebNetscapePluginEventHandlerCocoa::mouseEntered): 18006 (WebNetscapePluginEventHandlerCocoa::mouseExited): 18007 (WebNetscapePluginEventHandlerCocoa::mouseMoved): 18008 (WebNetscapePluginEventHandlerCocoa::mouseUp): 18009 (WebNetscapePluginEventHandlerCocoa::scrollWheel): 18010 (WebNetscapePluginEventHandlerCocoa::sendMouseEvent): 18011 (WebNetscapePluginEventHandlerCocoa::keyDown): 18012 (WebNetscapePluginEventHandlerCocoa::keyUp): 18013 (WebNetscapePluginEventHandlerCocoa::flagsChanged): 18014 (WebNetscapePluginEventHandlerCocoa::sendKeyEvent): 18015 (WebNetscapePluginEventHandlerCocoa::windowFocusChanged): 18016 (WebNetscapePluginEventHandlerCocoa::focusChanged): 18017 (WebNetscapePluginEventHandlerCocoa::platformWindow): 18018 (WebNetscapePluginEventHandlerCocoa::sendEvent): 18019 * Plugins/WebNetscapePluginPackage.m: 18020 (-[WebNetscapePluginPackage load]): 18021 * Plugins/npapi.m: 18022 (NPN_ScheduleTimer): 18023 (NPN_UnscheduleTimer): 18024 * Plugins/npfunctions.h: 18025 180262008-04-30 Brady Eidson <beidson@apple.com> 18027 18028 Fix my WebPreferences revert check-in 18029 18030 * WebView/WebView.mm: 18031 (-[WebView _preferencesChangedNotification:]): 18032 180332008-04-30 Brady Eidson <beidson@apple.com> 18034 18035 Rubberstamped by John Sullivan 18036 18037 Revert the remainder of my original preferences changes from last week. 18038 They caused a massive PLT regression (too many notifications being sent out 18039 or listened to that weren't previously) and it's not in my schedule to refine 18040 the preferences code instead of working on my feature! 18041 18042 * WebView/WebView.mm: 18043 (-[WebView _updateSettingsFromPreferences:]): 18044 (-[WebView _commonInitializationWithFrameName:groupName:]): 18045 180462008-04-30 Anders Carlsson <andersca@apple.com> 18047 18048 Fix the 64-bit build. 18049 18050 * Plugins/WebNetscapePluginEventHandler.h: 18051 * Plugins/WebNetscapePluginEventHandler.mm: 18052 * Plugins/WebNetscapePluginEventHandlerCarbon.h: 18053 * Plugins/WebNetscapePluginEventHandlerCarbon.mm: 18054 180552008-04-29 David D. Kilzer <ddkilzer@apple.com> 18056 18057 BUILD FIX for Release build. 18058 18059 * Plugins/WebNetscapePluginEventHandlerCarbon.mm: 18060 (WebNetscapePluginEventHandlerCarbon::drawRect): Declare acceptedEvent 18061 separately so the compiler doesn't complain about an unused variable. 18062 (WebNetscapePluginEventHandlerCarbon::TSMEventHandler): Ditto. 18063 180642008-04-29 Anders Carlsson <andersca@apple.com> 18065 18066 Reviewed by Adam. 18067 18068 Refactor the Carbon event handling code out into a separate class in preparation for adding 18069 the Cocoa event handling code. 18070 18071 * Plugins/WebBaseNetscapePluginView.h: 18072 * Plugins/WebBaseNetscapePluginView.mm: 18073 (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]): 18074 (-[WebBaseNetscapePluginView sendActivateEvent:]): 18075 (-[WebBaseNetscapePluginView sendDrawRectEvent:]): 18076 (-[WebBaseNetscapePluginView stopTimers]): 18077 (-[WebBaseNetscapePluginView restartTimers]): 18078 (-[WebBaseNetscapePluginView setHasFocus:]): 18079 (-[WebBaseNetscapePluginView mouseDown:]): 18080 (-[WebBaseNetscapePluginView mouseUp:]): 18081 (-[WebBaseNetscapePluginView mouseEntered:]): 18082 (-[WebBaseNetscapePluginView mouseExited:]): 18083 (-[WebBaseNetscapePluginView mouseDragged:]): 18084 (-[WebBaseNetscapePluginView keyUp:]): 18085 (-[WebBaseNetscapePluginView keyDown:]): 18086 (-[WebBaseNetscapePluginView cut:]): 18087 (-[WebBaseNetscapePluginView copy:]): 18088 (-[WebBaseNetscapePluginView paste:]): 18089 (-[WebBaseNetscapePluginView selectAll:]): 18090 (-[WebBaseNetscapePluginView start]): 18091 (-[WebBaseNetscapePluginView stop]): 18092 (-[WebBaseNetscapePluginView fini]): 18093 (-[WebBaseNetscapePluginView drawRect:]): 18094 (-[WebBaseNetscapePluginView viewWillMoveToWindow:]): 18095 (-[WebBaseNetscapePluginView viewDidMoveToWindow]): 18096 (-[WebBaseNetscapePluginView windowBecameKey:]): 18097 (-[WebBaseNetscapePluginView windowResignedKey:]): 18098 (-[WebBaseNetscapePluginView windowDidMiniaturize:]): 18099 (-[WebBaseNetscapePluginView windowDidDeminiaturize:]): 18100 (-[WebBaseNetscapePluginView loginWindowDidSwitchFromUser:]): 18101 (-[WebBaseNetscapePluginView loginWindowDidSwitchToUser:]): 18102 (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): 18103 (-[WebBaseNetscapePluginView _viewHasMoved]): 18104 * Plugins/WebBaseNetscapePluginViewInternal.h: 18105 * Plugins/WebNetscapePluginEmbeddedView.h: 18106 * Plugins/WebNetscapePluginEventHandler.h: Added. 18107 (WebNetscapePluginEventHandler::~WebNetscapePluginEventHandler): 18108 (WebNetscapePluginEventHandler::currentEventIsUserGesture): 18109 (WebNetscapePluginEventHandler::WebNetscapePluginEventHandler): 18110 * Plugins/WebNetscapePluginEventHandler.mm: Added. 18111 (WebNetscapePluginEventHandler::create): 18112 * Plugins/WebNetscapePluginEventHandlerCarbon.h: Added. 18113 * Plugins/WebNetscapePluginEventHandlerCarbon.mm: Added. 18114 (WebNetscapePluginEventHandlerCarbon::WebNetscapePluginEventHandlerCarbon): 18115 (getCarbonEvent): 18116 (modifiersForEvent): 18117 (WebNetscapePluginEventHandlerCarbon::sendNullEvent): 18118 (WebNetscapePluginEventHandlerCarbon::drawRect): 18119 (WebNetscapePluginEventHandlerCarbon::mouseDown): 18120 (WebNetscapePluginEventHandlerCarbon::mouseUp): 18121 (WebNetscapePluginEventHandlerCarbon::mouseEntered): 18122 (WebNetscapePluginEventHandlerCarbon::mouseExited): 18123 (WebNetscapePluginEventHandlerCarbon::mouseDragged): 18124 (WebNetscapePluginEventHandlerCarbon::mouseMoved): 18125 (WebNetscapePluginEventHandlerCarbon::keyDown): 18126 (keyMessageForEvent): 18127 (WebNetscapePluginEventHandlerCarbon::keyUp): 18128 (WebNetscapePluginEventHandlerCarbon::focusChanged): 18129 (WebNetscapePluginEventHandlerCarbon::windowFocusChanged): 18130 (WebNetscapePluginEventHandlerCarbon::TSMEventHandler): 18131 (WebNetscapePluginEventHandlerCarbon::installKeyEventHandler): 18132 (WebNetscapePluginEventHandlerCarbon::removeKeyEventHandler): 18133 (WebNetscapePluginEventHandlerCarbon::nullEventTimerFired): 18134 (WebNetscapePluginEventHandlerCarbon::startTimers): 18135 (WebNetscapePluginEventHandlerCarbon::stopTimers): 18136 (WebNetscapePluginEventHandlerCarbon::sendEvent): 18137 181382008-04-29 Mark Rowe <mrowe@apple.com> 18139 18140 Reviewed by David Harrison. 18141 18142 Ensure that WebDynamicScrollBarsView defines WebCoreScrollbarAlwaysOn to keep Mail building. 18143 18144 * WebKit.exp: 18145 * WebView/WebDynamicScrollBarsView.h: 18146 * WebView/WebDynamicScrollBarsView.m: 18147 181482008-04-29 Greg Bolsinga <bolsinga@apple.com> 18149 18150 Reviewed by Darin Adler. 18151 18152 Wrapped Dashboard code with ENABLE(DASHBOARD_SUPPORT) 18153 18154 * WebCoreSupport/WebChromeClient.h: 18155 * WebCoreSupport/WebChromeClient.mm: 18156 * WebView/WebClipView.m: 18157 (-[WebClipView scrollWheel:]): 18158 * WebView/WebHTMLView.mm: 18159 (-[WebHTMLView addMouseMovedObserver]): 18160 (-[WebHTMLView removeMouseMovedObserver]): 18161 (-[WebHTMLView acceptsFirstMouse:]): 18162 * WebView/WebUIDelegatePrivate.h: 18163 * WebView/WebView.mm: 18164 (-[WebViewPrivate init]): 18165 * WebView/WebViewPrivate.h: 18166 181672008-04-28 Rob Buis <buis@kde.org> 18168 18169 Reviewed by Maciej. 18170 18171 Build fix for Tiger. 18172 18173 * WebView/WebView.mm: 18174 (WebKitInitializeApplicationCachePathIfNecessary): 18175 181762008-04-28 Adele Peterson <adele@apple.com> 18177 18178 Reviewed by Dan Bernstein, Tim Hatcher, Anders Carlsson, and Darin Adler. 18179 18180 WebKit part of fix for <rdar://problem/3709505> 18181 Safari should have a way to upload bundles from the file upload control (as zip) 18182 18183 Added UIDelegate methods to let the application handle generating replacement files for uploads. 18184 In this case, Safari will create archived files for bundles so they can be uploaded properly. 18185 18186 * DefaultDelegates/WebDefaultUIDelegate.m: 18187 (-[WebDefaultUIDelegate webView:shouldReplaceUploadFile:usingGeneratedFilename:]): 18188 (-[WebDefaultUIDelegate webView:generateReplacementFile:]): 18189 * WebCoreSupport/WebChromeClient.h: 18190 * WebCoreSupport/WebChromeClient.mm: 18191 (WebChromeClient::shouldReplaceWithGeneratedFileForUpload): 18192 (WebChromeClient::generateReplacementFile): 18193 * WebView/WebUIDelegatePrivate.h: 18194 181952008-04-28 Anders Carlsson <andersca@apple.com> 18196 18197 Reviewed by Sam, Mark, Adele and Darin. 18198 18199 Initialize the application cache path. 18200 18201 * WebView/WebView.mm: 18202 (WebKitInitializeApplicationCachePathIfNecessary): 18203 (-[WebView _commonInitializationWithFrameName:groupName:]): 18204 182052008-04-28 Alice Liu <alice.liu@apple.com> 18206 18207 Reviewed by Darin Adler. 18208 18209 Fix <rdar://problem/4911289> Add tabindex property to all children 18210 of HTMLElement (7138) 18211 http://bugs.webkit.org/show_bug.cgi?id=7138 18212 18213 * MigrateHeaders.make: 18214 Removing DOMHTMLLabelElementPrivate.h and DOMHTMLLegendElementPrivate.h 18215 because now that focus() has been moved to DOMHTMLElement.h, these 18216 files are no longer needed. 18217 182182008-04-25 Alexey Proskuryakov <ap@webkit.org> 18219 18220 Reviewed by Darin Adler. 18221 18222 Fix run-webkit-tests --threading 18223 and provisionally fix <https://bugs.webkit.org/show_bug.cgi?id=18661> 18224 Proxy server issue in Sunday's Nightly 18225 18226 * WebView/WebView.mm: (-[WebViewPrivate init]): Initialize threading. Previously, this was 18227 only done from icon database code, which is not robust enough. 18228 182292008-04-20 Adam Barth <hk9565@gmail.com> 18230 18231 Reviewed by Adam Roben and Sam Weinig. 18232 18233 Updated WebSecurityOrigin to match new SecurityOrigin API. 18234 18235 Collin Jackson <collinj-webkit@collinjackson.com> also contributed to this patch. 18236 18237 * Storage/WebSecurityOrigin.mm: 18238 (-[WebSecurityOrigin host]): 18239 (-[WebSecurityOrigin domain]): 18240 * Storage/WebSecurityOriginPrivate.h: 18241 182422008-04-25 Mark Rowe <mrowe@apple.com> 18243 18244 Rubber-stamped by Sam Weinig. 18245 18246 Add some content to an empty ICU header file to prevent verification errors. 18247 18248 * icu/unicode/utf_old.h: 18249 182502008-04-25 Anders Carlsson <andersca@apple.com> 18251 18252 Reviewed by Sam. 18253 18254 Add offlineWebApplicationCacheEnabled preference. 18255 18256 * WebView/WebPreferenceKeysPrivate.h: 18257 * WebView/WebPreferences.m: 18258 (+[WebPreferences initialize]): 18259 (-[WebPreferences offlineWebApplicationCacheEnabled]): 18260 (-[WebPreferences setOfflineWebApplicationCacheEnabled:]): 18261 * WebView/WebPreferencesPrivate.h: 18262 * WebView/WebView.mm: 18263 (-[WebView _updateSettingsFromPreferences:]): 18264 182652008-04-24 Mark Rowe <mrowe@apple.com> 18266 18267 Reviewed by Sam Weinig. 18268 18269 Remove code for calculating the glyph cache size. 18270 18271 * WebCoreSupport/WebSystemInterface.m: 18272 (InitWebCoreSystemInterface): Remove unused symbol. 18273 182742008-04-24 Mark Rowe <mrowe@apple.com> 18275 18276 Reviewed by Sam Weinig. 18277 18278 Add a definition of BUILDING_ON_LEOPARD to complement BUILDING_ON_TIGER. 18279 18280 * WebKitPrefix.h: 18281 182822008-04-24 Brady Eidson <beidson@apple.com> 18283 18284 Reviewed by Darin 18285 18286 Fix layout test regressions from my earlier preferences/settings tweak. 18287 18288 * WebView/WebView.mm: 18289 (-[WebView _commonInitializationWithFrameName:groupName:]): Even if we're not posting 18290 the notification to update the settings, each WebView still needs to register for the 18291 notification - restore that behavior. 18292 182932008-04-24 Dan Bernstein <mitz@apple.com> 18294 18295 Reviewed by Darin Adler. 18296 18297 - preparation for https://bugs.webkit.org/show_bug.cgi?id=3729 18298 <rdar://problem/4036353> REGRESSION: arrow keys move insertion bar backwards in RTL text 18299 18300 * WebView/WebFrame.mm: 18301 (-[WebFrame _caretRectAtNode:offset:affinity:]): Changed to use 18302 VisiblePosition::caretRect() instead of the RenderObject method which 18303 was removed. 18304 183052008-04-24 Brady Eidson <beidson@apple.com> 18306 18307 Reviewed by Darin 18308 18309 Rework the Settings population again. 18310 18311 * WebView/WebView.mm: 18312 (-[WebView _updateSettingsFromPreferences:]): This method is called both from _preferencesChangedNotification 18313 and directly from WebView's common init function. 18314 (-[WebView _preferencesChangedNotification:]): 18315 (-[WebView _commonInitializationWithFrameName:groupName:]): Call _updateSettingsFromPreferences immediately 18316 after creating the new Page 18317 183182008-04-24 Darin Adler <darin@apple.com> 18319 18320 Reviewed by Geoff. 18321 18322 - fix crash in regression test where we'd ask a frame for a user agent string 18323 after the WebView was already closed 18324 18325 * WebCoreSupport/WebFrameLoaderClient.mm: 18326 (WebFrameLoaderClient::userAgent): Assert that the WebView is not nil. Also 18327 added some code to prevent the crash in release builds if this problem happens 18328 again. 18329 183302008-04-24 Anders Carlsson <andersca@apple.com> 18331 18332 Reviewed by Sam. 18333 18334 Change some String arguments to be const references instead. 18335 18336 * WebCoreSupport/WebEditorClient.h: 18337 * WebCoreSupport/WebEditorClient.mm: 18338 (WebEditorClient::shouldInsertText): 18339 183402008-04-24 John Sullivan <sullivan@apple.com> 18341 18342 Mac build fix 18343 18344 * WebCoreSupport/WebViewFactory.mm: 18345 (-[WebViewFactory AXButtonActionVerb]): 18346 implement this method using the text in WebCoreLocalizedStrings.cpp 18347 (-[WebViewFactory AXRadioButtonActionVerb]): 18348 ditto 18349 (-[WebViewFactory AXTextFieldActionVerb]): 18350 ditto 18351 (-[WebViewFactory AXCheckedCheckBoxActionVerb]): 18352 ditto 18353 (-[WebViewFactory AXUncheckedCheckBoxActionVerb]): 18354 ditto 18355 (-[WebViewFactory AXLinkActionVerb]): 18356 ditto 18357 183582008-04-23 Brady Eidson <beidson@apple.com> 18359 18360 Reviewed by Sam Weinig 18361 18362 In some current work I noticed that when a new Page is created, it is possible that it requires info from its Settings 18363 object before the Settings object is initialized. It seems quite prudent to post the preferences changed notification, 18364 thereby populating the Settings object, immediately after the Page is created. 18365 18366 * WebView/WebView.mm: 18367 (-[WebView _commonInitializationWithFrameName:groupName:]): Post the notification right after the Page is created 18368 183692008-04-24 John Sullivan <sullivan@apple.com> 18370 18371 Reviewed by Jess 18372 18373 - fixed <rdar://problem/5886655> JavaScript input panel automatic resizing doesn't work right with HiDPI 18374 18375 * Misc/WebNSControlExtras.m: 18376 (-[NSControl sizeToFitAndAdjustWindowHeight]): 18377 deploy userSpaceScaleFactor when using view distances on the window 18378 183792008-04-22 Anders Carlsson <andersca@apple.com> 18380 18381 Reviewed by Darin Adler. 18382 18383 Add NPN_Construct and NPN_PluginThreadAsyncCall declarations. 18384 18385 * Plugins/npfunctions.h: 18386 183872008-04-20 Matt Lilek <webkit@mattlilek.com> 18388 18389 Mysteriously reviewed by mitz|away. 18390 18391 Bug 18111: Closing a tab while dragging crashes Safari 18392 https://bugs.webkit.org/show_bug.cgi?id=18111 18393 18394 Null check the page before handling drag events. 18395 18396 * WebView/WebView.mm: 18397 (-[WebView draggingUpdated:]): 18398 (-[WebView draggingExited:]): 18399 184002008-04-19 Brady Eidson <beidson@apple.com> 18401 18402 Reviewed by Tim Hatcher 18403 18404 Add a WebPreference for the path of the local storage persistent store. 18405 18406 * WebView/WebPreferenceKeysPrivate.h: 18407 18408 * WebView/WebPreferences.m: 18409 (-[WebPreferences _localStorageDatabasePath]): 18410 (-[WebPreferences _setLocalStorageDatabasePath:]): 18411 * WebView/WebPreferencesPrivate.h: 18412 18413 * WebView/WebView.mm: 18414 (-[WebView _preferencesChangedNotification:]): 18415 184162008-04-18 Brady Eidson <beidson@apple.com> 18417 18418 Reviewed by Sam Weinig 18419 18420 Don't clear the PageGroup on _close, as the WebCore::Page destructor already does this. 18421 No reason to do the work twice... 18422 18423 * WebView/WebView.mm: 18424 (-[WebView _close]): 18425 184262008-04-17 Eric Seidel <eric@webkit.org> 18427 18428 Reviewed by beth. 18429 18430 Rename Frame::renderer() to contentRenderer() and fix uses. 18431 18432 * Misc/WebCoreStatistics.mm: 18433 * WebView/WebRenderNode.mm: 18434 (-[WebRenderNode initWithWebFrameView:]): 18435 184362008-04-17 Jon Honeycutt <jhoneycutt@apple.com> 18437 18438 Reviewed by mrowe. 18439 18440 * WebView/WebFrame.mm: Remove temporary build fix. 18441 184422008-04-17 Mark Rowe <mrowe@apple.com> 18443 18444 Reviewed by Dan Bernstein. 18445 18446 Fix <rdar://problem/5863552> REGRESSION (r30741): Attachments don't appear in the iChat message window after sending 18447 18448 The order of arguments to -[NSDictionary initWithObjects:andKeys:] had been transposed accidentally during refactoring. 18449 18450 * WebCoreSupport/WebFrameLoaderClient.mm: 18451 (WebFrameLoaderClient::createPlugin): Pass the arguments in the correct order. 18452 184532008-04-17 Mark Rowe <mrowe@apple.com> 18454 18455 Rubber-stamped by Dan Bernstein. 18456 18457 Fix the Mac build. 18458 18459 * WebView/WebFrame.mm: Define HAVE_ACCESSIBILITY before including AccessibilityObject.h and AXObjectCache.h to get things building 18460 for now. This comes from config.h in WebCore but we don't have an equivalent in WebKit so we'll need to work out the correct place 18461 for this to live going forward. 18462 184632008-04-15 Kevin Decker <kdecker@apple.com> 18464 18465 Reviewed by Anders. 18466 18467 <rdar://problem/5412759> CrashTracer: [USER] 22 crashes in Safari at com.apple.quicktime.webplugin: NPN_SetValue + 15403 18468 18469 In certain situations, code in WebBasePluginPackage would load a plug-in only for the explicit reason of asking it to create a 18470 preference file, but wouldn't actually unload the bundle. This created problems for the QuickTime WebKit plug-in by unloading 18471 a bundle out from underneath itself. 18472 18473 * Plugins/WebBasePluginPackage.h: Added unload method. 18474 * Plugins/WebBasePluginPackage.m: 18475 (-[WebBasePluginPackage unload]): Added new method. Currently, only Netscape plug-ins support unload. 18476 (-[WebBasePluginPackage pListForPath:createFile:]): Added a call to unload. 18477 * Plugins/WebNetscapePluginPackage.m: 18478 (-[WebNetscapePluginPackage unload]): Added. 18479 184802008-04-15 Anders Carlsson <andersca@apple.com> 18481 18482 Reviewed by Adam. 18483 18484 Add ENABLE_OFFLINE_WEB_APPLICATIONS to FEATURE_DEFINES. 18485 18486 * Configurations/WebKit.xcconfig: 18487 184882008-04-15 Brady Eidson <beidson@apple.com> 18489 18490 Reviewed by John Sullivan 18491 18492 Do a more complete job adding the "WebArchiveDebugMode" pref 18493 18494 * WebView/WebPreferences.m: Add both getter *and* setter 18495 (-[WebPreferences webArchiveDebugModeEnabled]): 18496 (-[WebPreferences setWebArchiveDebugModeEnabled:]): 18497 * WebView/WebPreferencesPrivate.h: 18498 18499 * WebView/WebView.mm: 18500 (-[WebView _preferencesChangedNotification:]): Call the renamed getter 18501 185022008-04-14 Brady Eidson <beidson@apple.com> 18503 18504 Reviewed by Anders 18505 18506 Add a hidden pref to debug WebArchive loading. With this pref on, when loading a WebArchive, 18507 if the resource isn't in the ArchiveResourceCollection, the loader will not fall back to the 18508 network and will instead fail the load as "cancelled." 18509 18510 * WebView/WebPreferenceKeysPrivate.h: 18511 18512 * WebView/WebPreferences.m: 18513 (+[WebPreferences initialize]): 18514 (-[WebPreferences _webArchiveDebugModeEnabled]): 18515 * WebView/WebPreferencesPrivate.h: 18516 18517 * WebView/WebView.mm: 18518 (-[WebView _preferencesChangedNotification:]): 18519 185202008-04-11 David Hyatt <hyatt@apple.com> 18521 18522 Rename CachedResource ref/deref methods to addClient/removeClient. 18523 18524 Reviewed by olliej 18525 18526 * WebView/WebHTMLView.mm: 18527 (-[WebHTMLViewPrivate dealloc]): 18528 (-[WebHTMLViewPrivate finalize]): 18529 (-[WebHTMLViewPrivate clear]): 18530 (-[WebHTMLView setPromisedDragTIFFDataSource:WebCore::]): 18531 185322008-04-07 Brady Eidson <beidson@apple.com> 18533 18534 Add "ENABLE_DOM_STORAGE" to keep in sync with the rest of the project 18535 18536 * Configurations/WebKit.xcconfig: 18537 185382008-04-04 Adam Roben <aroben@apple.com> 18539 18540 Use WebCore's ICU headers instead of our own copy 18541 18542 Rubberstamped by Tim Hatcher. 18543 18544 * Configurations/WebKit.xcconfig: Pick up ICU headers from WebCore's 18545 PrivateHeaders. 18546 185472008-04-04 Adam Roben <aroben@apple.com> 18548 18549 Fix <rdar://problem/5804776> Would like to use WebCore's 18550 ForwardingHeaders in WebKit without manually creating copies 18551 18552 Patch by Tim Hatcher, typed by me. 18553 18554 * Configurations/WebKit.xcconfig: Use the copy of ForwardingHeaders in 18555 WebCore's PrivateHeaders instead of our own copy. 18556 185572008-04-04 Ada Chan <adachan@apple.com> 18558 18559 Now we pass width and height directly as integers to format 18560 the window title for a standalone image. 18561 18562 Reviewed by Dan. 18563 18564 * WebCoreSupport/WebViewFactory.mm: 18565 (-[WebViewFactory imageTitleForFilename:width:height:]): 18566 185672008-04-03 Nicholas Shanks <webkit@nickshanks.com> 18568 18569 Updated by Dan Bernstein. Reviewed by Dave Hyatt. 18570 18571 - WebKit part of fixing http://bugs.webkit.org/show_bug.cgi?id=6484 18572 font-weight does not properly support graded weights 18573 18574 * WebView/WebHTMLView.mm: 18575 (-[WebHTMLView _styleFromFontAttributes:]): 18576 (-[WebHTMLView _originalFontB]): 18577 (-[WebHTMLView _addToStyle:fontA:fontB:]): 18578 185792008-04-02 Mark Rowe <mrowe@apple.com> 18580 18581 Reviewed by Oliver Hunt. 18582 18583 Ensure that debug symbols are generated for x86_64 and ppc64 builds. 18584 18585 * Configurations/Base.xcconfig: 18586 185872008-03-31 Alice Liu <alice.liu@apple.com> 18588 18589 Reviewed by Darin Adler. 18590 18591 * WebView/WebFrame.mm: 18592 (-[WebFrame _accessibilityTree]): 18593 The syntax for fetching an object from the AXObjectCache changed slightly 18594 185952008-03-31 Brady Eidson <beidson@apple.com> 18596 18597 Reviewed by Jon Honeycutt 18598 18599 Move a WebArchive loading check into WebCore 18600 18601 * WebView/WebHTMLRepresentation.mm: 18602 (-[WebHTMLRepresentation receivedData:withDataSource:]): Don't check "isDisplayingWebArchive" as WebCore is now 18603 responsible for checking that state 18604 186052008-03-31 Brady Eidson <beidson@apple.com> 18606 18607 Reviewed by Darin and Mitz's rubber stamp 18608 18609 Remove dataForArchivedSelection(WebCore::Frame*) from the EditorClient - only usage is now directly in WebCore 18610 18611 * WebCoreSupport/WebEditorClient.mm: 18612 * WebCoreSupport/WebEditorClient.h: 18613 186142008-03-28 Brady Eidson <beidson@apple.com> 18615 18616 Rubberstamped by Darin Adler 18617 18618 Remove WebArchiver.h/mm 18619 18620 * WebView/WebArchiver.h: Removed. 18621 * WebView/WebArchiver.mm: Removed. 18622 18623 * DOM/WebDOMOperations.mm: 18624 * WebCoreSupport/WebDragClient.mm: 18625 * WebCoreSupport/WebEditorClient.mm: 18626 * WebView/WebDataSource.mm: 18627 * WebView/WebHTMLView.mm: 18628 186292008-03-28 Brady Eidson <beidson@apple.com> 18630 18631 Reviewed by Darin Adler 18632 18633 Now that WebCore can create archives from a frame selection directly, we don't need it in WebArchiver anymore 18634 18635 * WebCoreSupport/WebEditorClient.mm: 18636 (WebEditorClient::dataForArchivedSelection): 18637 18638 * WebView/WebArchiver.h: Nuke archiveSelectionInFrame, as there are no remaining users 18639 * WebView/WebArchiver.mm: Ditto 18640 18641 * WebView/WebHTMLView.mm: 18642 (-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]): 18643 186442008-03-28 Brady Eidson <beidson@apple.com> 18645 18646 Reviewed by Darin Adler 18647 18648 More Kit->Core WebArchive changes. 18649 18650 Create an archive from the current selection in a frame 18651 18652 * WebView/WebArchiver.mm: Remove one more *undeclared* method, the last method will drop off 18653 easily in a followup 18654 186552008-03-28 Brady Eidson <beidson@apple.com> 18656 18657 Reviewed by Sam Weinig 18658 18659 WebArchive saga continues - Can now make archives from ranges in WebCore 18660 18661 * DOM/WebDOMOperations.mm: 18662 (-[DOMRange webArchive]): 18663 (-[DOMRange markupString]): 18664 18665 * WebView/WebArchiver.h: Remove newly obsolete [WebArchiver archiveRange:] 18666 * WebView/WebArchiver.mm: 18667 186682008-03-28 Brady Eidson <beidson@apple.com> 18669 18670 Reviewed by Sam Weinig 18671 18672 More Kit->Core webarchive code movement 18673 18674 * DOM/WebDOMOperations.mm: 18675 (-[DOMNode markupString]): Call createFullMarkup() instead 18676 18677 * WebView/WebFrame.mm: Remove obsolete _markupStringFromNode 18678 * WebView/WebFrameInternal.h: Ditto 18679 186802008-03-28 Brady Eidson <beidson@apple.com> 18681 18682 Reviewed by Sam Weinig 18683 18684 Fold [WebArchiver archiveFrame:] into WebDataSource - the last remaining caller 18685 18686 * WebView/WebArchiver.h: 18687 * WebView/WebArchiver.mm: 18688 * WebView/WebDataSource.mm: 18689 (-[WebDataSource webArchive]): 18690 186912008-03-28 Brady Eidson <beidson@apple.com> 18692 18693 Reviewed by Sam Weinig 18694 18695 Remove unused [WebArchiver archiveNode:], made obsolete in r31400 18696 18697 * WebView/WebArchiver.h: 18698 * WebView/WebArchiver.mm: 18699 187002008-03-28 Brady Eidson <beidson@apple.com> 18701 18702 Reviewed by Darin 18703 18704 "Yet another transitional step" to empty out WebKit-based code for archiving. 18705 18706 With this patch, the key operation of "Creating a WebArchive rooted at a single Node" takes place 18707 entirely within WebCore, and opens the door to saving WebArchives on Windows. 18708 18709 * DOM/WebDOMOperations.mm: 18710 * WebView/WebArchiver.mm: 18711 (+[WebArchiver _archiveWithMarkupString:fromFrame:nodes:]): 18712 187132008-03-27 Brady Eidson <beidson@apple.com> 18714 18715 Reviewed by Adam Roben 18716 18717 Move [WebDataSource mainResource] and [WebDataSource subresources] down into WebCore 18718 as the push to core-ify WebArchives continues. 18719 18720 This patch also introduces a behavior change. WebCore allows ArchiveResources with null or empty data. 18721 WebKit has had the inexplicable distinction of allowing empty Data in a WebResource, but not null. 18722 Since WebResource is API, I decided to leave it be to avoid a behavior change. But internally created resources 18723 (as in "while archiving a page") are accepting of null or empty data. 18724 18725 This actually fixes a bug where not all subframes are archived, and resulted in a layout test change. 18726 18727 * WebView/WebDataSource.mm: 18728 (-[WebDataSource mainResource]): Call DocumentLoader implementation 18729 (-[WebDataSource subresources]): Ditto 18730 * WebView/WebFrame.mm: Remove [WebFrame _getAllResourceDatas:andResponses:] as its only caller is obsolete 18731 * WebView/WebFrameInternal.h: 18732 187332008-03-27 Brady Eidson <beidson@apple.com> 18734 18735 Reviewed by Adam 18736 18737 Change the "init from WebCore resource" version of WebResource to take PassRefPtr 18738 (more efficient) 18739 18740 * WebView/WebResource.mm: 18741 (-[WebResource _initWithCoreResource:]): 18742 * WebView/WebResourceInternal.h: 18743 187442008-03-26 Brady Eidson <beidson@apple.com> 18745 18746 Build fix - accidentally checked in this change which was work in progress 18747 18748 * DOM/WebDOMOperations.mm: 18749 187502008-03-26 Brady Eidson <beidson@apple.com> 18751 18752 Reviewed by Darin 18753 18754 When we create a WebArchive, we walk every node from some starting point, asking each node 18755 along the way "What are your subresource URLs?" 18756 18757 That logic is currently in DOMNode in WebKitMac - this patch moves that ability down into 18758 WebCore::Node 18759 18760 * DOM/WebDOMOperations.mm: 18761 (-[DOMNode _subresourceURLs]): One generic DOMNode method can now handle all DOMNodes by 18762 calling into individual WebCore::Node implementations 18763 * DOM/WebDOMOperationsPrivate.h: 18764 187652008-03-26 Brady Eidson <beidson@apple.com> 18766 18767 Reviewed by Mark Rowe 18768 18769 Part of the continued push to move WebArchive-related code down to WebCore, this 18770 moves [WebDataSource subresourceForURL:] down to DocumentLoader->subresource() 18771 18772 * WebView/WebDataSource.mm: 18773 (-[WebDataSource subresourceForURL:]): Call through to the DocumentLoader 18774 18775 * WebView/WebFrame.mm: Remove [WebFrame _getData:andResponse:forURL:], as its only use 18776 has now been ported down to WebCore 18777 * WebView/WebFrameInternal.h: 18778 187792008-03-26 Mark Rowe <mrowe@apple.com> 18780 18781 Rubber-stamped by Brady Eidson. 18782 18783 Update FEATURE_DEFINES to be consistent with the other locations in which it is defined. 18784 18785 * Configurations/WebKit.xcconfig: 18786 187872008-03-26 Mark Rowe <mrowe@apple.com> 18788 18789 Reviewed by David Hyatt. 18790 18791 Make the Ahem font antialias correctly on Acid3 on Tiger. 18792 18793 * WebCoreSupport/WebSystemInterface.m: 18794 (InitWebCoreSystemInterface): 18795 187962008-03-26 Mark Rowe <mrowe@apple.com> 18797 18798 Fix the Mac build. 18799 18800 * MigrateHeaders.make: Copy the newly generated header into the right place. 18801 188022008-03-25 Brady Eidson <beidson@apple.com> 18803 18804 Reviewed by Beth Dakin 18805 18806 Remove entirely unused internal method 18807 18808 * WebView/WebArchiver.h: 18809 * WebView/WebArchiver.mm: 18810 188112008-03-25 Brady Eidson <beidson@apple.com> 18812 18813 Reviewed by Adam Roben 18814 18815 <rdar://problem/5819308> - View Source is empty when view webarchives 18816 18817 * WebCore.base.exp: 18818 * loader/DocumentLoader.cpp: 18819 (WebCore::DocumentLoader::setParsedArchiveData): 18820 (WebCore::DocumentLoader::parsedArchiveData): 18821 * loader/DocumentLoader.h: 18822 18823 * loader/FrameLoader.cpp: 18824 (WebCore::FrameLoader::finishedLoadingDocument): Set the archive's MainResource data as the parsedArchiveData 18825 in the DocumentLoader 18826 188272008-03-25 Dan Bernstein <mitz@apple.com> 18828 18829 Reviewed by Darin Adler. 18830 18831 - fix http://bugs.webkit.org/show_bug.cgi?id=17933 18832 Reopen All Windows From Last Session causes crash 18833 18834 * WebView/WebHTMLView.mm: 18835 (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Added null 18836 check. 18837 188382008-03-25 Brady Eidson <beidson@apple.com> 18839 18840 Reviewed by Jon Honeycutt's rubberstamp 18841 18842 Fix a leak with the new WebArchive setup 18843 18844 * WebView/WebArchive.mm: 18845 (-[WebArchivePrivate setCoreArchive:]): Deref() the old WebArchive 18846 188472008-03-25 Brady Eidson <beidson@apple.com> 18848 18849 Reviewed by Darin 18850 18851 Removed the concept of "pending archive resources" and the "archive resources delivery timer" 18852 from WebFrameLoaderClient, as those concepts have been pushed into WebCore 18853 18854 * WebCoreSupport/WebFrameLoaderClient.h: 18855 * WebCoreSupport/WebFrameLoaderClient.mm: 18856 (WebFrameLoaderClient::WebFrameLoaderClient): 18857 188582008-03-25 Brady Eidson <beidson@apple.com> 18859 18860 Reviewed by Darin 18861 18862 Remove newly obsolete FrameLoaderClient methods 18863 18864 * WebCoreSupport/WebFrameLoaderClient.h: 18865 * WebCoreSupport/WebFrameLoaderClient.mm: 18866 188672008-03-25 Brady Eidson <beidson@apple.com> 18868 18869 Release build fix 18870 18871 * WebView/WebArchive.mm: 18872 (-[WebArchive subresources]): 18873 (-[WebArchive subframeArchives]): 18874 188752008-03-25 Brady Eidson <beidson@apple.com> 18876 18877 Reviewed by Darin 18878 18879 <rdar://problem/4516169> - Support WebArchives on Windows 18880 And paves the way for many future WebArchive bug fixes and enhancements 18881 18882 This change moves most of the real workhorse code about WebArchives into WebCore. It maintains 18883 1-to-1 relationships between a few objects in WebCore and WebKit. Such as: 18884 * WebArchive <-> LegacyWebArchive 18885 * WebResource <-> ArchiveResource 18886 * WebUnarchivingState <-> ArchiveResourceCollection 18887 18888 The other biggest changes involve many FrameLoaderClient methods that existed soley for WebArchives 18889 and now exist in WebCore 18890 18891 * WebCoreSupport/WebFrameLoaderClient.mm: 18892 (WebFrameLoaderClient::clearUnarchivingState): Emptied - to be removed in a followup patch 18893 (WebFrameLoaderClient::finalSetupForReplace): 18894 (WebFrameLoaderClient::setDefersLoading): 18895 (WebFrameLoaderClient::willUseArchive): 18896 (WebFrameLoaderClient::isArchiveLoadPending): 18897 (WebFrameLoaderClient::cancelPendingArchiveLoad): 18898 (WebFrameLoaderClient::clearArchivedResources): 18899 (WebFrameLoaderClient::createFrame): 18900 18901 * WebView/WebArchive.mm: 18902 (+[WebArchivePrivate initialize]): 18903 (-[WebArchivePrivate init]): 18904 (-[WebArchivePrivate initWithCoreArchive:]): 18905 (-[WebArchivePrivate coreArchive]): 18906 (-[WebArchivePrivate setCoreArchive:]): 18907 (-[WebArchivePrivate dealloc]): 18908 (-[WebArchivePrivate finalize]): 18909 (-[WebArchive init]): 18910 (-[WebArchive initWithMainResource:subresources:subframeArchives:]): 18911 (-[WebArchive initWithData:]): 18912 (-[WebArchive initWithCoder:]): 18913 (-[WebArchive encodeWithCoder:]): 18914 (-[WebArchive mainResource]): 18915 (-[WebArchive subresources]): 18916 (-[WebArchive subframeArchives]): 18917 (-[WebArchive data]): 18918 (-[WebArchive _initWithCoreLegacyWebArchive:WebCore::]): 18919 (-[WebArchive WebCore::]): 18920 * WebView/WebArchiveInternal.h: Added. 18921 18922 * WebView/WebDataSource.mm: 18923 (-[WebDataSourcePrivate dealloc]): 18924 (-[WebDataSource _addSubframeArchives:]): 18925 (-[WebDataSource _documentFragmentWithArchive:]): 18926 (-[WebDataSource subresourceForURL:]): 18927 (-[WebDataSource addSubresource:]): 18928 * WebView/WebDataSourceInternal.h: 18929 18930 * WebView/WebFrame.mm: 18931 (-[WebFrame loadArchive:]): 18932 * WebView/WebFrameInternal.h: 18933 18934 * WebView/WebHTMLRepresentation.mm: 18935 (-[WebHTMLRepresentation finishedLoadingWithDataSource:]): 18936 18937 * WebView/WebResource.mm: 18938 (+[WebResourcePrivate initialize]): 18939 (-[WebResourcePrivate init]): 18940 (-[WebResourcePrivate initWithCoreResource:]): 18941 (-[WebResourcePrivate dealloc]): 18942 (-[WebResourcePrivate finalize]): 18943 (-[WebResource initWithCoder:]): 18944 (-[WebResource encodeWithCoder:]): 18945 (-[WebResource data]): 18946 (-[WebResource URL]): 18947 (-[WebResource MIMEType]): 18948 (-[WebResource textEncodingName]): 18949 (-[WebResource frameName]): 18950 (-[WebResource _initWithCoreResource:WebCore::]): 18951 (-[WebResource WebCore::]): 18952 (-[WebResource _ignoreWhenUnarchiving]): 18953 (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]): 18954 (-[WebResource _fileWrapperRepresentation]): 18955 (-[WebResource _response]): 18956 (-[WebResource _stringValue]): 18957 * WebView/WebResourceInternal.h: Added. 18958 * WebView/WebResourcePrivate.h: 18959 18960 * WebView/WebUnarchivingState.h: Removed. 18961 * WebView/WebUnarchivingState.m: Removed. 18962 189632008-03-24 Oliver Hunt <oliver@apple.com> 18964 18965 Reviewed by Mark Rowe. 18966 18967 Bug 18030: REGRESSION(r31236): Space bar fails to scroll down page 18968 <http://bugs.webkit.org/show_bug.cgi?id=18030> 18969 18970 Rollout keyDown changes from r31236 -- fix for keyDown behaviour is 18971 tracked by Bug 18057: keyDown incorrectly propagates up the frame tree 18972 <http://bugs.webkit.org/show_bug.cgi?id=18057> 18973 18974 * WebView/WebHTMLView.mm: 18975 (-[WebHTMLView keyDown:]): 18976 189772008-03-24 Cameron Zwarich <cwzwarich@uwaterloo.ca> 18978 18979 Reviewed by Maciej, landed by Brady 18980 18981 Bug 3580: iFrames Appear to be Cached 18982 <http://bugs.webkit.org/show_bug.cgi?id=3580> 18983 18984 Bug 15486: REGRESSION: Reload causes WebKit to *forget* fragment URLs 18985 <http://bugs.webkit.org/show_bug.cgi?id=15486> 18986 18987 Bug 15554: Reload causes <object> to use old data 18988 <http://bugs.webkit.org/show_bug.cgi?id=15554> 18989 18990 If a page is reloaded, a child frame's URL can not be taken from a history item. 18991 18992 * WebView/WebFrame.mm: 18993 (-[WebFrame _loadURL:referrer:intoChild:]): 18994 189952008-03-24 Darin Adler <darin@apple.com> 18996 18997 Reviewed by Beth. 18998 18999 - fix <rdar://problem/5817067> -[WebDataSource unreachableURL] invokes KURL's copy constructor 19000 19001 * History/WebHistoryItem.mm: 19002 (-[WebHistoryItem URL]): Use a reference to avoid making a copy. 19003 * WebView/WebDataSource.mm: 19004 (-[WebDataSource _URL]): Ditto. 19005 (-[WebDataSource unreachableURL]): Ditto. 19006 * WebView/WebHTMLView.mm: 19007 (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto. 19008 19009 * DefaultDelegates/WebDefaultContextMenuDelegate.mm: 19010 * History/WebHistory.mm: 19011 * Misc/WebElementDictionary.mm: 19012 * Misc/WebNSAttributedStringExtras.mm: 19013 Remove unneeded imports of KURL.h. 19014 190152008-03-24 Brady Eidson <beidson@apple.com> 19016 19017 Reviewed by Darin's rubberstamp 19018 19019 Rename this file for upcoming work. 19020 19021 * WebView/WebArchive.m: Removed. 19022 * WebView/WebArchive.mm: Copied from WebKit/mac/WebView/WebArchive.m. 19023 190242008-03-24 Alexey Proskuryakov <ap@webkit.org> 19025 19026 Build fix. 19027 19028 * MigrateHeaders.make: Added DOMSVGAltGlyphElement.h and DOMSVGAltGlyphElementInternal.h. 19029 190302008-03-23 Oliver Hunt <oliver@apple.com> 19031 19032 Reviewed by Maciej. 19033 19034 Bug 17670: Key events may improperly propagate from iframe to parent frame 19035 <http://bugs.webkit.org/show_bug.cgi?id=17670> 19036 Bug 16381: REGRESSION: Shift, command, option, ctrl keys in Gmail Rich Text changes focus 19037 <http://bugs.webkit.org/show_bug.cgi?id=16381> 19038 19039 Prevent the Cocoa event system from propagating key events to the parent WebHTMLView, 19040 as that results in us dispatching the key events for each frame going up the frame 19041 tree. 19042 19043 * WebView/WebHTMLView.mm: 19044 (-[WebHTMLView keyDown:]): 19045 (-[WebHTMLView keyUp:]): 19046 (-[WebHTMLView flagsChanged:]): 19047 190482008-03-21 Timothy Hatcher <timothy@apple.com> 19049 19050 Bug 17980: Regression: Inspector highlighting of webpage not cleared when going to new URL 19051 http://bugs.webkit.org/show_bug.cgi?id=17980 19052 19053 Reviewed by Adam. 19054 19055 The new highlight drawing was not honoring the fade value, so it was 19056 always drawing at full opacity. The animation code didn't match Windows 19057 and the new highlight anyway, so it has been removed. The highlight 19058 how just detaches when it is hidden. 19059 19060 * WebCoreSupport/WebInspectorClient.mm: 19061 (-[WebInspectorWindowController windowShouldClose:]): Call hideHighlight. 19062 (-[WebInspectorWindowController close]): Ditto. 19063 (-[WebInspectorWindowController highlightNode:]): Call attach. 19064 (-[WebInspectorWindowController hideHighlight]): Call detach and release _currentHighlight. 19065 * WebInspector/WebNodeHighlight.h: 19066 * WebInspector/WebNodeHighlight.m: 19067 (-[WebNodeHighlight initWithTargetView:inspectorController:]): 19068 (-[WebNodeHighlight dealloc]): Assert we have no _highlightView. 19069 (-[WebNodeHighlight attach]): Renamed from attachHighlight. 19070 (-[WebNodeHighlight detach]): Renamed from detachHighlight. 19071 (-[WebNodeHighlight setNeedsUpdateInTargetViewRect:]): Renamed from setHolesNeedUpdateInTargetViewRect:. 19072 * WebInspector/WebNodeHighlightView.h: 19073 * WebInspector/WebNodeHighlightView.m: 19074 (-[WebNodeHighlightView setNeedsDisplayInRect:]): Renamed from setHolesNeedUpdateInRect:. 19075 190762008-03-20 Mark Rowe <mrowe@apple.com> 19077 19078 Reviewed by Sam Weinig. 19079 19080 Ensure that the defines in FEATURE_DEFINES are sorted so that they will match the default settings of build-webkit. 19081 This will prevent the world from being rebuilt if you happen to switch between building in Xcode and with build-webkit on the 19082 command-line. 19083 19084 * Configurations/WebKit.xcconfig: 19085 190862008-03-20 Adam Roben <aroben@apple.com> 19087 19088 Make WebNodeHighlightView use InspectorController to do its painting 19089 19090 Reviewed by Tim Hatcher. 19091 19092 * WebCoreSupport/WebInspectorClient.mm: 19093 (-[WebInspectorWindowController highlightNode:]): Pass the 19094 InspectorController to the WebNodeHighlight, and don't call 19095 setHighlightedNode: (which has been removed). 19096 (-[WebInspectorWindowController hideHighlight]): Removed call to 19097 setHighlightedNode:. 19098 * WebInspector/WebNodeHighlight.h: 19099 - Replaced _highlightNode with _inspectorController 19100 - Removed _highlightedNode accessors 19101 - Added -inspectorController method 19102 * WebInspector/WebNodeHighlight.m: 19103 (-[WebNodeHighlight initWithTargetView:inspectorController:]): Now 19104 takes an InspectorController* and stores it in _inspectorController. 19105 (-[WebNodeHighlight dealloc]): Removed code dealing with 19106 _highlightedNode. 19107 (-[WebNodeHighlight inspectorController]): Added. 19108 * WebInspector/WebNodeHighlightView.m: Removed FileInternal category. 19109 (-[WebNodeHighlightView isFlipped]): Added. WebCore expects all 19110 GraphicsContexts to be based on a flipped CGContext, so we have to 19111 specify that this view is flipped. 19112 (-[WebNodeHighlightView drawRect:]): Changed to create a 19113 GraphicsContext and pass it to InspectorController::drawNodeHighlight. 19114 191152008-03-18 David Hyatt <hyatt@apple.com> 19116 19117 Add support for a preference in WebKit that can be used in nightly builds to test full page 19118 zoom. 19119 19120 Reviewed by Antti 19121 19122 * WebView/WebPreferenceKeysPrivate.h: 19123 * WebView/WebView.mm: 19124 (-[WebView setTextSizeMultiplier:]): 19125 (-[WebView canMakeTextSmaller]): 19126 (-[WebView makeTextSmaller:]): 19127 (-[WebView canMakeTextLarger]): 19128 (-[WebView makeTextLarger:]): 19129 (-[WebView canMakeTextStandardSize]): 19130 (-[WebView makeTextStandardSize:]): 19131 191322008-03-17 Eric Seidel <eric@webkit.org> 19133 19134 Reviewed by darin. 19135 19136 Export _NPN_IntFromIdentifier as part of our NPAPI interface 19137 19138 * Plugins/WebNetscapePluginPackage.m: 19139 (-[WebNetscapePluginPackage load]): 19140 191412008-03-14 Brady Eidson <beidson@apple.com> 19142 19143 Reviewed by Brian Dash's rubberstamp 19144 19145 Remove a class declaration for a class that has never existed 19146 19147 * WebView/WebResource.h: 19148 191492008-03-14 David D. Kilzer <ddkilzer@apple.com> 19150 19151 Unify concept of enabling the Mac Java bridge. 19152 19153 Reviewed by Darin and Anders. 19154 19155 * Plugins/WebPluginJava.h: Removed unused file. 19156 * WebCoreSupport/WebFrameLoaderClient.h: 19157 (WebFrameLoaderClient::javaApplet): Added #if ENABLE(MAC_JAVA_BRIDGE) guard. 19158 * WebCoreSupport/WebFrameLoaderClient.mm: Ditto for #import and NSView SPI method. 19159 (WebFrameLoaderClient::javaApplet): Ditto. 19160 191612008-03-13 Antti Koivisto <antti@apple.com> 19162 19163 Reviewed by Darin Adler. 19164 19165 * ForwardingHeaders/wtf/Deque.h: Added. 19166 191672008-03-13 Anders Carlsson <andersca@apple.com> 19168 19169 Reviewed by Adam. 19170 19171 Call originalRequest, not initialRequest. 19172 19173 * WebView/WebDataSource.mm: 19174 (-[WebDataSource initialRequest]): 19175 191762008-03-12 Darin Adler <darin@apple.com> 19177 19178 Reviewed by John Sullivan. 19179 19180 - cleanup after removing the bridge 19181 19182 * DOM/WebDOMOperations.mm: 19183 (-[DOMDocument URLWithAttributeString:]): Call computeURL directly. 19184 19185 * Misc/WebCoreStatistics.mm: 19186 (-[WebFrame renderTreeAsExternalRepresentation]): Call externalRepresentation directly. 19187 19188 * Plugins/WebBaseNetscapePluginView.mm: 19189 (-[WebBaseNetscapePluginView loadPluginRequest:]): Use core function instead of 19190 _frameLoader method. 19191 (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): 19192 Ditto. 19193 * Plugins/WebPluginController.mm: 19194 (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]): Ditto. 19195 19196 * WebCoreSupport/WebFrameLoaderClient.mm: 19197 (WebFrameLoaderClient::frameLoaderDestroyed): Added a call to the new _clearCoreFrame 19198 method. Without this we could leave a stale frame pointer around. 19199 (WebFrameLoaderClient::dispatchDidReceiveIcon): Rewrote assertion so it's not the single 19200 caller of the _isMainFrame method. 19201 (WebFrameLoaderClient::transitionToCommittedForNewPage): Use core function instead of 19202 _frameLoader method. 19203 (WebFrameLoaderClient::createFrame): Moved code here from _addChild. 19204 19205 * WebView/WebFrame.mm: Removed lots of methods. Some were moved elsewhere, others 19206 turned out to be unused. 19207 (core): Added overload for DocumentFragment. 19208 (kit): Ditto. 19209 (-[WebFrame _loadURL:referrer:intoChild:]): Get to Frame using _private->coreFrame and 19210 to FrameLoader with _private->coreFrame->loader(). 19211 (-[WebFrame _attachScriptDebugger]): Ditto. 19212 (-[WebFrame _clearCoreFrame]): Added. 19213 (-[WebFrame _updateBackground]): More of the same. 19214 (-[WebFrame _unmarkAllBadGrammar]): Ditto. 19215 (-[WebFrame _unmarkAllMisspellings]): Ditto. 19216 (-[WebFrame _hasSelection]): Ditto. 19217 (-[WebFrame _atMostOneFrameHasSelection]): Ditto. 19218 (-[WebFrame _findFrameWithSelection]): Ditto. 19219 (-[WebFrame _dataSource]): Ditto. 19220 (-[WebFrame _addData:]): Streamlined code a bit. 19221 (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]): Ditto. 19222 (-[WebFrame _receivedData:textEncodingName:]): Ditto. 19223 (-[WebFrame _isDescendantOfFrame:]): Ditto. 19224 (-[WebFrame _bodyBackgroundColor]): Ditto. 19225 (-[WebFrame _isFrameSet]): Ditto. 19226 (-[WebFrame _firstLayoutDone]): Ditto. 19227 (-[WebFrame _loadType]): Ditto. 19228 (-[WebFrame _isDisplayingStandaloneImage]): Ditto. 19229 (-[WebFrame name]): Ditto. 19230 (-[WebFrame DOMDocument]): Ditto. 19231 (-[WebFrame frameElement]): Ditto. 19232 (-[WebFrame provisionalDataSource]): Ditto. 19233 (-[WebFrame dataSource]): Ditto. 19234 (-[WebFrame loadRequest:]): Ditto. 19235 (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): Ditto. 19236 (-[WebFrame loadArchive:]): Ditto. 19237 (-[WebFrame stopLoading]): Ditto. 19238 (-[WebFrame reload]): Ditto. 19239 (-[WebFrame findFrameNamed:]): Ditto. 19240 (-[WebFrame parentFrame]): Ditto. 19241 (-[WebFrame childFrames]): Ditto. 19242 (-[WebFrame windowObject]): Ditto. 19243 (-[WebFrame globalContext]): Ditto. 19244 19245 * WebView/WebFrameInternal.h: Added overloads of core and kit. 19246 Removed method declarations. 19247 19248 * WebView/WebHTMLRepresentation.mm: 19249 (-[WebHTMLRepresentation documentSource]): Moved code here from WebFrame. 19250 (formElementFromDOMElement): Ditto. 19251 (-[WebHTMLRepresentation elementWithName:inForm:]): Ditto. 19252 (inputElementFromDOMElement): Ditto. 19253 (-[WebHTMLRepresentation elementDoesAutoComplete:]): Ditto. 19254 (-[WebHTMLRepresentation elementIsPassword:]): Ditto. 19255 (-[WebHTMLRepresentation formForElement:]): Ditto. 19256 (-[WebHTMLRepresentation currentForm]): Ditto. 19257 (-[WebHTMLRepresentation controlsInForm:]): Ditto. 19258 (-[WebHTMLRepresentation searchForLabels:beforeElement:]): Ditto. 19259 (-[WebHTMLRepresentation matchLabels:againstElement:]): Ditto. 19260 19261 * WebView/WebHTMLView.mm: 19262 (-[WebHTMLView _frameOrBoundsChanged]): Moved sendScrollEvent code here from WebFrame. 19263 (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]): 19264 Call createFragmentFromText directly instead of via WebFrame. 19265 (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): 19266 Moved layout calls here from WebFrame. 19267 (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Ditto. 19268 (-[WebHTMLView _updateFontPanel]): Ditto, but with fontForSelection. 19269 (-[WebHTMLView _canSmartCopyOrDelete]): Ditto, but with selectionGranularity. 19270 (-[WebHTMLView markedRange]): Moved code here from _markedTextNSRange. 19271 (-[WebHTMLView attributedSubstringFromRange:]): Tweaked code a bit. 19272 (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]): 19273 Moved code here from WebFrame. 19274 (-[WebHTMLView elementAtPoint:allowShadowContent:]): Ditto. 19275 (-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]): Ditto. 19276 (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]): Ditto. 19277 (-[WebHTMLView markedTextMatchesAreHighlighted]): Ditto. 19278 (-[WebHTMLView unmarkAllTextMatches]): Ditto. 19279 (-[WebHTMLView rectsForTextMatches]): Ditto. 19280 19281 * WebView/WebHTMLViewInternal.h: Removed unused method declarations. 19282 19283 * WebView/WebPDFView.mm: 19284 (-[WebPDFView PDFViewWillClickOnLink:withURL:]): Use core function instead of 19285 _frameLoader method. 19286 19287 * WebView/WebRenderNode.mm: 19288 (copyRenderNode): Moved code here from WebFrame. 19289 (-[WebRenderNode initWithWebFrameView:]): Ditto. 19290 19291 * WebView/WebResource.mm: 19292 (-[WebResource _stringValue]): Moved code here from WebFrame. 19293 19294 * WebView/WebView.mm: 19295 (-[WebView _close]): Use core function intsead of _frameLoader method. 19296 (-[WebView setCustomTextEncodingName:]): Ditto. 19297 (-[WebView setHostWindow:]): Moved code here from WebFrame. 19298 (aeDescFromJSValue): Moved this here from WebFrame. 19299 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Moved code here from WebFrame. 19300 193012008-03-12 Darin Adler <darin@apple.com> 19302 19303 Reviewed by Anders. 19304 19305 - http://bugs.webkit.org/show_bug.cgi?id=17640 19306 eliminate WebCoreFrameBridge 19307 19308 Moved all the code from the bridge into WebFrame. This need not be the final 19309 home of these methods -- they can be moved closer to their callers and improved 19310 further -- but it eliminates the bridge without requiring a rewrite of the code. 19311 It's a fairly mechanical process (just adding underscores to method names really). 19312 19313 There's even a chance that some of the methods are unused. Those we can remove 19314 after checking if that's so. 19315 19316 * DOM/WebDOMOperations.mm: 19317 (-[DOMNode markupString]): Use WebFrame rather than bridge. 19318 (-[DOMDocument webFrame]): Changed to use the core and kit functions 19319 instead of using the bridge. 19320 (-[DOMDocument URLWithAttributeString:]): Use WebFrame rather than bridge. 19321 (-[DOMRange markupString]): Ditto. 19322 * DOM/WebDOMOperationsPrivate.h: Removed _bridge methods. 19323 19324 * DefaultDelegates/WebDefaultContextMenuDelegate.mm: Removed unneeded import. 19325 * History/WebHistoryItem.mm: Ditto. 19326 19327 * MigrateHeaders.make: Added DOMDocumentFragmentInternal.h. 19328 * Misc/WebCoreStatistics.mm: 19329 (-[WebFrame renderTreeAsExternalRepresentation]): Use WebFrame rather than bridge. 19330 19331 * Misc/WebElementDictionary.mm: Removed unneeded import. 19332 19333 * Misc/WebKitStatistics.m: 19334 (+[WebKitStatistics bridgeCount]): Removed WebBridgeCount and just return 0. 19335 * Misc/WebKitStatisticsPrivate.h: Ditto. 19336 19337 * Misc/WebNSAttributedStringExtras.mm: Removed unneeded import. 19338 * Misc/WebNSPasteboardExtras.mm: Ditto. 19339 19340 * Plugins/WebBaseNetscapePluginView.mm: 19341 (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): Use WebFrame 19342 rather than bridge. 19343 19344 * Plugins/WebNetscapePluginEmbeddedView.mm: Removed unneeded import. 19345 * Plugins/WebNetscapePluginStream.mm: Ditto. 19346 19347 * Plugins/WebPluginContainerCheck.mm: 19348 (-[WebPluginContainerCheck _isForbiddenFileLoad]): Use WebFrame rather than 19349 bridge to get to the WebCore::Frame. 19350 19351 * Plugins/WebPluginController.h: Declare webFrame method and remove bridge method. 19352 * Plugins/WebPluginController.mm: 19353 (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]): Use WebFrame 19354 rather than bridge. 19355 19356 * WebCoreSupport/WebEditorClient.mm: 19357 (selectorForKeyEvent): Tweaked comment. 19358 19359 * WebCoreSupport/WebFrameBridge.h: Removed. 19360 * WebCoreSupport/WebFrameBridge.mm: Removed. 19361 19362 * WebCoreSupport/WebFrameLoaderClient.mm: 19363 (WebFrameLoaderClient::frameLoaderDestroyed): Removed bridge assertion. 19364 (WebFrameLoaderClient::detachedFromParent4): Removed bridge teardown code. 19365 I could remove this function entirely, but it looks like the Qt port is using it. 19366 19367 * WebCoreSupport/WebViewFactory.mm: Removed unneeded import. 19368 19369 * WebView/WebArchiver.mm: 19370 (+[WebArchiver archiveRange:]): Use WebFrame rather than bridge. 19371 (+[WebArchiver archiveNode:]): Ditto. 19372 (+[WebArchiver archiveSelectionInFrame:]): Ditto. 19373 19374 * WebView/WebDataSource.mm: 19375 (-[WebDataSource _replaceSelectionWithArchive:selectReplacement:]): Ditto. 19376 (-[WebDataSource _documentFragmentWithArchive:]): Ditto. 19377 (-[WebDataSource subresources]): Ditto. 19378 (-[WebDataSource subresourceForURL:]): Ditto. 19379 19380 * WebView/WebDataSourceInternal.h: Removed _bridge method. 19381 19382 * WebView/WebFrame.mm: 19383 (-[WebFramePrivate dealloc]): Removed code to release the bridge. 19384 (core): Go directly to the core frame, not via the bridge. 19385 (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]): 19386 Remove the code to deal with the bridge. 19387 (-[WebFrame _initWithWebFrameView:webView:]): Ditto. Also added code to set the 19388 shouldCreateRenderers flag, formerly on the bridge. 19389 (-[WebFrame _updateBackground]): Change to call mehods on self, not bridge. 19390 (aeDescFromJSValue): Moved here from bridge. 19391 (-[WebFrame _domain]): Ditto. 19392 (-[WebFrame _addData:]): Ditto. 19393 (-[WebFrame _stringWithDocumentTypeStringAndMarkupString:]): Ditto. 19394 (-[WebFrame _nodesFromList:]): Ditto. 19395 (-[WebFrame _markupStringFromNode:nodes:]): Ditto. 19396 (-[WebFrame _markupStringFromRange:nodes:]): Ditto. 19397 (-[WebFrame _selectedString]): Ditto. 19398 (-[WebFrame _stringForRange:]): Ditto. 19399 (-[WebFrame _forceLayoutAdjustingViewSize:]): Ditto. 19400 (-[WebFrame _forceLayoutWithMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Ditto. 19401 (-[WebFrame _sendScrollEvent]): Ditto. 19402 (-[WebFrame _drawRect:]): Ditto. 19403 (-[WebFrame _computePageRectsWithPrintWidthScaleFactor:printHeight:]): Ditto. 19404 (-[WebFrame _adjustPageHeightNew:top:bottom:limit:]): Ditto. 19405 (-[WebFrame _copyRenderNode:copier:]): Ditto. 19406 (-[WebFrame _copyRenderTree:]): Ditto. 19407 (inputElementFromDOMElement): Ditto. 19408 (formElementFromDOMElement): Ditto. 19409 (-[WebFrame _elementWithName:inForm:]): Ditto. 19410 (-[WebFrame _elementDoesAutoComplete:]): Ditto. 19411 (-[WebFrame _elementIsPassword:]): Ditto. 19412 (-[WebFrame _formForElement:]): Ditto. 19413 (-[WebFrame _currentForm]): Ditto. 19414 (-[WebFrame _controlsInForm:]): Ditto. 19415 (-[WebFrame _searchForLabels:beforeElement:]): Ditto. 19416 (-[WebFrame _matchLabels:againstElement:]): Ditto. 19417 (-[WebFrame _URLWithAttributeString:]): Ditto. 19418 (-[WebFrame _searchFor:direction:caseSensitive:wrap:startInSelection:]): Ditto. 19419 (-[WebFrame _markAllMatchesForText:caseSensitive:limit:]): Ditto. 19420 (-[WebFrame _markedTextMatchesAreHighlighted]): Ditto. 19421 (-[WebFrame _setMarkedTextMatchesAreHighlighted:]): Ditto. 19422 (-[WebFrame _unmarkAllTextMatches]): Ditto. 19423 (-[WebFrame _rectsForTextMatches]): Ditto. 19424 (-[WebFrame _stringByEvaluatingJavaScriptFromString:]): Ditto. 19425 (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): Ditto. 19426 (-[WebFrame _aeDescByEvaluatingJavaScriptFromString:]): Ditto. 19427 (-[WebFrame _caretRectAtNode:offset:affinity:]): Ditto. 19428 (-[WebFrame _firstRectForDOMRange:]): Ditto. 19429 (-[WebFrame _scrollDOMRangeToVisible:]): Ditto. 19430 (-[WebFrame _baseURL]): Ditto. 19431 (-[WebFrame _stringWithData:]): Ditto. 19432 (+[WebFrame _stringWithData:textEncodingName:]): Ditto. 19433 (-[WebFrame _needsLayout]): Ditto. 19434 (-[WebFrame _renderTreeAsExternalRepresentation]): Ditto. 19435 (-[WebFrame _accessibilityTree]): Ditto. 19436 (-[WebFrame _setBaseBackgroundColor:]): Ditto. 19437 (-[WebFrame _setDrawsBackground:]): Ditto. 19438 (-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]): 19439 Ditto. 19440 (-[WebFrame _selectionGranularity]): Ditto. 19441 (-[WebFrame _convertToNSRange:]): Ditto. 19442 (-[WebFrame _convertToDOMRange:]): Ditto. 19443 (-[WebFrame _convertNSRangeToDOMRange:]): Ditto. 19444 (-[WebFrame _convertDOMRangeToNSRange:]): Ditto. 19445 (-[WebFrame _markDOMRange]): Ditto. 19446 (-[WebFrame _markedTextNSRange]): Ditto. 19447 (-[WebFrame _smartDeleteRangeForProposedRange:]): Ditto. 19448 (-[WebFrame _smartInsertForString:replacingRange:beforeString:afterString:]): Ditto. 19449 (-[WebFrame _documentFragmentWithMarkupString:baseURLString:]): Ditto. 19450 (-[WebFrame _documentFragmentWithText:inContext:]): Ditto. 19451 (-[WebFrame _documentFragmentWithNodesAsParagraphs:]): Ditto. 19452 (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]): Ditto. 19453 (-[WebFrame _replaceSelectionWithNode:selectReplacement:smartReplace:matchStyle:]): Ditto. 19454 (-[WebFrame _replaceSelectionWithMarkupString:baseURLString:selectReplacement:smartReplace:]): Ditto. 19455 (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]): Ditto. 19456 (-[WebFrame _insertParagraphSeparatorInQuotedContent]): Ditto. 19457 (-[WebFrame _visiblePositionForPoint:]): Ditto. 19458 (-[WebFrame _characterRangeAtPoint:]): Ditto. 19459 (-[WebFrame _typingStyle]): Ditto. 19460 (-[WebFrame _setTypingStyle:withUndoAction:]): Ditto. 19461 (-[WebFrame _fontForSelection:]): Ditto. 19462 (-[WebFrame _dragSourceMovedTo:]): Ditto. 19463 (-[WebFrame _dragSourceEndedAt:operation:]): Ditto. 19464 (-[WebFrame _getData:andResponse:forURL:]): Ditto. 19465 (-[WebFrame _getAllResourceDatas:andResponses:]): Ditto. 19466 (-[WebFrame _canProvideDocumentSource]): Ditto. 19467 (-[WebFrame _canSaveAsWebArchive]): Ditto. 19468 (-[WebFrame _receivedData:textEncodingName:]): Ditto. 19469 (-[WebFrame _setShouldCreateRenderers:]): Put the code from the bridge in this preexisting 19470 function. Couldn't just keep the bridge method because this was already here with the same name. 19471 (-[WebFrame _selectedNSRange]): Ditto. 19472 (-[WebFrame _selectNSRange:]): Ditto. 19473 (-[WebFrame dealloc]): Remove bridge-related code. 19474 (-[WebFrame finalize]): Ditto. 19475 19476 * WebView/WebFrameInternal.h: Added all the method declarations from the bridge. 19477 Removed the bridge parameter from the init method. Removed the #if blocks that 19478 tried to make this header work in non-C++ ObjC files -- they were broken and unused. 19479 Removed the _bridge method. 19480 19481 * WebView/WebFrameView.mm: Removed the _bridge method. 19482 19483 * WebView/WebHTMLRepresentation.mm: 19484 (-[WebHTMLRepresentation setDataSource:]): Removed the code to set up the bridge 19485 field. 19486 (-[WebHTMLRepresentation receivedData:withDataSource:]): Use WebFrame instead of bridge. 19487 (-[WebHTMLRepresentation finishedLoadingWithDataSource:]): Ditto. 19488 (-[WebHTMLRepresentation canProvideDocumentSource]): Ditto. 19489 (-[WebHTMLRepresentation canSaveAsWebArchive]): Ditto. 19490 (-[WebHTMLRepresentation documentSource]): Ditto. 19491 (-[WebHTMLRepresentation DOMDocument]): Ditto. 19492 (-[WebHTMLRepresentation elementWithName:inForm:]): Ditto. 19493 (-[WebHTMLRepresentation elementDoesAutoComplete:]): Ditto. 19494 (-[WebHTMLRepresentation elementIsPassword:]): Ditto. 19495 (-[WebHTMLRepresentation formForElement:]): Ditto. 19496 (-[WebHTMLRepresentation currentForm]): Ditto. 19497 (-[WebHTMLRepresentation controlsInForm:]): Ditto. 19498 (-[WebHTMLRepresentation searchForLabels:beforeElement:]): Ditto. 19499 (-[WebHTMLRepresentation matchLabels:againstElement:]): Ditto. 19500 19501 * WebView/WebHTMLRepresentationPrivate.h: Removed the _bridge method. 19502 19503 * WebView/WebHTMLView.mm: 19504 (-[WebHTMLView _documentFragmentWithPaths:]): Use WebFrame instead of bridge. 19505 (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): Ditto. 19506 (-[WebHTMLView _pasteAsPlainTextWithPasteboard:]): Ditto. 19507 (-[WebHTMLView _updateTextSizeMultiplier]): Ditto. 19508 (-[WebHTMLView _frameOrBoundsChanged]): Ditto. 19509 (-[WebHTMLView _smartInsertForString:replacingRange:beforeString:afterString:]): Ditto. 19510 (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]): Ditto. 19511 (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Ditto. 19512 (-[WebHTMLView drawSingleRect:]): Ditto. 19513 (-[WebHTMLView draggedImage:movedTo:]): Ditto. 19514 (-[WebHTMLView draggedImage:endedAt:operation:]): Ditto. 19515 (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Ditto. 19516 (-[WebHTMLView knowsPageRange:]): Ditto. 19517 (-[WebHTMLView accessibilityAttributeValue:]): Ditto. 19518 (-[WebHTMLView accessibilityFocusedUIElement]): Ditto. 19519 (-[WebHTMLView accessibilityHitTest:]): Ditto. 19520 (-[WebHTMLView _accessibilityParentForSubview:]): Ditto. 19521 (-[WebHTMLView changeDocumentBackgroundColor:]): Ditto. 19522 (-[WebHTMLView _changeWordCaseWithSelector:]): Ditto. 19523 (-[WebHTMLView _changeSpellingToWord:]): Ditto. 19524 (-[WebHTMLView startSpeaking:]): Ditto. 19525 (-[WebHTMLView _updateFontPanel]): Ditto. 19526 (-[WebHTMLView _canSmartCopyOrDelete]): Ditto. 19527 (-[WebHTMLView _layoutIfNeeded]): Ditto. 19528 (-[WebHTMLView characterIndexForPoint:]): Ditto. 19529 (-[WebHTMLView firstRectForCharacterRange:]): Ditto. 19530 (-[WebHTMLView selectedRange]): Ditto. 19531 (-[WebHTMLView markedRange]): Ditto. 19532 (-[WebHTMLView attributedSubstringFromRange:]): Ditto. 19533 (-[WebHTMLView setMarkedText:selectedRange:]): Ditto. 19534 (-[WebHTMLView insertText:]): Ditto. 19535 (-[WebTextCompleteController _insertMatch:]): Ditto. 19536 (-[WebTextCompleteController doCompletion]): Ditto. 19537 (-[WebTextCompleteController endRevertingChange:moveLeft:]): Ditto. 19538 (-[WebHTMLView string]): Ditto. 19539 (-[WebHTMLView selectedString]): Ditto. 19540 (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]): Ditto. 19541 (-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]): Ditto. 19542 (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]): Ditto. 19543 (-[WebHTMLView markedTextMatchesAreHighlighted]): Ditto. 19544 (-[WebHTMLView unmarkAllTextMatches]): Ditto. 19545 (-[WebHTMLView rectsForTextMatches]): Ditto. 19546 * WebView/WebRenderNode.mm: 19547 (-[WebRenderNode initWithWebFrameView:]): Ditto. 19548 * WebView/WebResource.mm: 19549 (-[WebResource _stringValue]): Ditto. 19550 19551 * WebView/WebScriptDebugDelegate.mm: Removed unneeded include. 19552 19553 * WebView/WebView.mm: 19554 (-[WebView _dashboardRegions]): Use WebFrame instead of bridge. 19555 (-[WebView setProhibitsMainFrameScrolling:]): Ditto. 19556 (-[WebView _setInViewSourceMode:]): Ditto. 19557 (-[WebView _inViewSourceMode]): Ditto. 19558 (-[WebView _executeCoreCommandByName:value:]): Ditto. 19559 (-[WebView stringByEvaluatingJavaScriptFromString:]): Ditto. 19560 (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Ditto. 19561 (-[WebView scrollDOMRangeToVisible:]): Ditto. 19562 (-[WebView setSelectedDOMRange:affinity:]): Ditto. 19563 (-[WebView setEditable:]): Ditto. 19564 (-[WebView setTypingStyle:]): Ditto. 19565 (-[WebView typingStyle]): Ditto. 19566 (-[WebView replaceSelectionWithNode:]): Ditto. 19567 (-[WebView replaceSelectionWithText:]): Ditto. 19568 (-[WebView replaceSelectionWithMarkupString:]): Ditto. 19569 (-[WebView replaceSelectionWithArchive:]): Ditto. 19570 (-[WebView _insertNewlineInQuotedContent]): Ditto. 19571 (-[WebView _replaceSelectionWithNode:matchStyle:]): Ditto. 19572 195732008-03-12 David Hyatt <hyatt@apple.com> 19574 19575 Make the zoom factor a float and not a percent. 19576 19577 Reviewed by antti 19578 19579 * WebView/WebView.mm: 19580 (-[WebView _setZoomMultiplier:isTextOnly:]): 19581 195822008-03-11 David Hyatt <hyatt@apple.com> 19583 19584 This patch prepares Mac WebKit to handle two different zooming modes (full page zoom and text only zoom). 19585 New API is added that is parallel to the text zoom public API. You can get/set a pageSizeMultiplier and you 19586 can zoom the page in, out or reset it to the standard size. 19587 19588 In the implementation only one zoom factor is stored, and setting one multiplier will shift you into that mode 19589 and set the common zoom factor. In other words you can't combine text zoom and page zoom. One will always 19590 win. 19591 19592 Reviewed by Tim H. 19593 19594 * WebCoreSupport/WebFrameBridge.mm: 19595 (-[WebFrameBridge finishInitializingWithPage:frameName:WebCore::frameView:ownerElement:]): 19596 * WebView/WebDocumentInternal.h: 19597 * WebView/WebHTMLView.mm: 19598 (-[WebHTMLView viewDidMoveToSuperview]): 19599 * WebView/WebPDFView.h: 19600 * WebView/WebPDFView.mm: 19601 (-[WebPDFView _zoomOut:]): 19602 (-[WebPDFView _zoomIn:]): 19603 (-[WebPDFView _resetZoom:]): 19604 (-[WebPDFView _canZoomOut]): 19605 (-[WebPDFView _canZoomIn]): 19606 (-[WebPDFView _canResetZoom]): 19607 * WebView/WebView.mm: 19608 (-[WebViewPrivate init]): 19609 (-[WebView setTextSizeMultiplier:]): 19610 (-[WebView textSizeMultiplier]): 19611 (-[WebView _setZoomMultiplier:isTextOnly:]): 19612 (-[WebView _zoomMultiplier:]): 19613 (-[WebView _realZoomMultiplier]): 19614 (-[WebView _realZoomMultiplierIsTextOnly]): 19615 (-[WebView _canZoomOut:]): 19616 (-[WebView _canZoomIn:]): 19617 (-[WebView _zoomOut:isTextOnly:]): 19618 (-[WebView _zoomIn:isTextOnly:]): 19619 (-[WebView _canResetZoom:]): 19620 (-[WebView _resetZoom:isTextOnly:]): 19621 (-[WebView canMakeTextSmaller]): 19622 (-[WebView makeTextSmaller:]): 19623 (-[WebView canMakeTextLarger]): 19624 (-[WebView makeTextLarger:]): 19625 (-[WebView canMakeTextStandardSize]): 19626 (-[WebView makeTextStandardSize:]): 19627 (-[WebView setPageSizeMultiplier:]): 19628 (-[WebView pageSizeMultiplier]): 19629 (-[WebView canZoomPageIn]): 19630 (-[WebView zoomPageIn:]): 19631 (-[WebView canZoomPageOut]): 19632 (-[WebView zoomPageOut:]): 19633 (-[WebView canResetPageZoom]): 19634 (-[WebView resetPageZoom:]): 19635 (-[WebView _searchWithSpotlightFromMenu:]): 19636 * WebView/WebViewInternal.h: 19637 * WebView/WebViewPrivate.h: 19638 196392008-03-12 Dan Bernstein <mitz@apple.com> 19640 19641 Reviewed by Darin Adler and Sam Weinig. 19642 19643 - <rdar://problem/4433248> use CoreText API instead of SPI on Leopard 19644 19645 * WebCoreSupport/WebSystemInterface.m: 19646 (InitWebCoreSystemInterface): Made WKGetCGFontFromNSFont and 19647 WKGetNSFontATSUFontId Tiger-only. 19648 196492008-03-12 Darin Adler <darin@apple.com> 19650 19651 - fix http://bugs.webkit.org/show_bug.cgi?id=17794 19652 REGRESSION (r30980): 23 tests hanging on the Mac buildbot 19653 19654 * WebView/WebFrame.mm: 19655 (-[WebFrame _initWithWebFrameView:webView:bridge:]): Added missing call to set 19656 up pointer from the bridge to the frame. (My next check-in removes the bridge 19657 entirely, but we need this until then.) 19658 196592008-03-11 Darin Adler <darin@apple.com> 19660 19661 Reviewed by Sam. 19662 19663 - remove all bridge-related things from WebCore except the bridge itself 19664 19665 * DOM/WebDOMOperations.mm: 19666 (-[DOMNode _bridge]): Reimplemented to not use the bridgeForDOMDocument: method. 19667 19668 * DefaultDelegates/WebDefaultContextMenuDelegate.mm: Removed unneeded include. 19669 19670 * Plugins/WebPluginController.mm: Ditto. 19671 19672 * WebCoreSupport/WebFrameBridge.h: Removed unneeded things, including the 19673 init and close methods. Added a setWebFrame: method. 19674 19675 * WebCoreSupport/WebFrameBridge.mm: 19676 (-[WebFrameBridge setWebFrame:]): Added. 19677 19678 * WebCoreSupport/WebFrameLoaderClient.mm: 19679 (WebFrameLoaderClient::frameLoaderDestroyed): Added an assertion. 19680 (WebFrameLoaderClient::detachedFromParent4): Moved the call to close on the 19681 bridge here. Soon we will be able to remove this entirely! 19682 (WebFrameLoaderClient::createFrame): Rewrote this to use the method moved 19683 into WebFrame from the bridge. 19684 19685 * WebView/WebFrame.mm: 19686 (-[WebFramePrivate dealloc]): Added code to release the bridge, because it's 19687 now owned by the frame. 19688 (-[WebFramePrivate finalize]): Added this missing method. We'd leak the script 19689 debugger under GC without this! 19690 (kit): Rewrote the function that maps from a WebCore::Frame to a WebFrame to 19691 use WebFrameLoaderClient instead of the bridge. 19692 (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]): Added. 19693 This is code that used to live in the bridge's init function. 19694 (+[WebFrame _createMainFrameWithPage:frameName:frameView:]): Ditto. 19695 (+[WebFrame WebCore::_createSubframeWithOwnerElement:frameName:frameView:]): Ditto. 19696 (-[WebFrame _initWithWebFrameView:webView:bridge:]): Retain the bridge, since 19697 the WebView is now the bridge's owner. 19698 (-[WebFrame _updateBackground]): Changed this one call site that was calling the 19699 WebCore::Frame::bridge function directly to use the kit function instead. 19700 (-[WebFrame dealloc]): Added code to clear the WebFrame pointer in the bridge. 19701 This code won't last long -- we're eliminating the bridge soon. 19702 (-[WebFrame finalize]): Ditto. 19703 19704 * WebView/WebFrameInternal.h: Added a coreFrame backpointer and two new methods 19705 for creating frames. 19706 19707 * WebView/WebView.mm: 19708 (-[WebView _commonInitializationWithFrameName:groupName:]): Rewrote this to use 19709 the method moved into WebFrame from the bridge. Gets rid of the unpleasant idiom 19710 where we have to allocate a WebFrameBridge and then immediately release it. 19711 197122008-03-11 Darin Adler <darin@apple.com> 19713 19714 Reviewed by Anders. 19715 19716 - remove code depending on the bridge to get from an NSView to a WebCore::Frame 19717 19718 * WebCoreSupport/WebFrameLoaderClient.mm: 19719 (WebFrameLoaderClient::transitionToCommittedForNewPage): Remove incorrect call 19720 to setView. A couple lines later, there is a call to _install, which sets the 19721 view to the scroll view. 19722 19723 * WebCoreSupport/WebViewFactory.mm: Removed bridgeForView method. 19724 19725 * WebView/WebDynamicScrollBarsView.h: Moved most of the declarations out of 19726 this file, since it's used by Safari. 19727 * WebView/WebDynamicScrollBarsViewInternal.h: Added. 19728 * WebView/WebDynamicScrollBarsView.m: 19729 (-[WebDynamicScrollBarsView updateScrollers]): Ditto. 19730 (-[WebDynamicScrollBarsView setAllowsScrolling:]): Ditto. 19731 (-[WebDynamicScrollBarsView allowsScrolling]): Ditto. 19732 (-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]): Ditto. 19733 (-[WebDynamicScrollBarsView setAllowsVerticalScrolling:]): Ditto. 19734 (-[WebDynamicScrollBarsView allowsHorizontalScrolling]): Ditto. 19735 (-[WebDynamicScrollBarsView allowsVerticalScrolling]): Ditto. 19736 (-[WebDynamicScrollBarsView horizontalScrollingMode]): Ditto. 19737 (-[WebDynamicScrollBarsView verticalScrollingMode]): Ditto. 19738 (-[WebDynamicScrollBarsView setHorizontalScrollingMode:]): Ditto. 19739 (-[WebDynamicScrollBarsView setHorizontalScrollingMode:andLock:]): Ditto. 19740 (-[WebDynamicScrollBarsView setVerticalScrollingMode:]): Ditto. 19741 (-[WebDynamicScrollBarsView setVerticalScrollingMode:andLock:]): Ditto. 19742 (-[WebDynamicScrollBarsView setScrollingMode:]): Ditto. 19743 (-[WebDynamicScrollBarsView setScrollingMode:andLock:]): Ditto. 19744 19745 * WebView/WebFrameView.mm: 19746 (-[WebFrameView _web_frame]): Added. Replaces the webCoreBridge method. 19747 19748 * WebView/WebView.mm: 19749 (-[WebView setAlwaysShowVerticalScroller:]): Updated for changes to WebCoreFrameView.h. 19750 (-[WebView alwaysShowVerticalScroller]): Ditto. 19751 (-[WebView setAlwaysShowHorizontalScroller:]): Ditto. 19752 (-[WebView alwaysShowHorizontalScroller]): Ditto. 19753 197542008-03-11 Darin Adler <darin@apple.com> 19755 19756 Reviewed by Sam. 19757 19758 - eliminate the remaining parts of WebCoreBridge used for calls to WebKit from WebCore 19759 19760 * WebCoreSupport/WebChromeClient.h: Added new virtual functions that replace 19761 bridge methods. 19762 * WebCoreSupport/WebChromeClient.mm: Added lots of BEGIN_BLOCK_OBJC_EXCEPTIONS 19763 to recently-created functions. 19764 (WebChromeClient::firstResponder): Moved code here from the bridge. 19765 (WebChromeClient::makeFirstResponder): Ditto. 19766 (WebChromeClient::runOpenPanel): Ditto. 19767 (WebChromeClient::willPopUpMenu): Ditto. 19768 19769 * WebCoreSupport/WebFrameBridge.h: Removed almost everything. What's left 19770 is related to creating the bridge and connecting it to WebCore, which will 19771 go next when I eliminate use of the bridge to get to/from the Frame*. 19772 * WebCoreSupport/WebFrameBridge.mm: 19773 (-[WebFrameBridge close]): Moved the code to track the bridge count here 19774 instead of the dealloc and finalize methods. 19775 197762008-03-11 Darin Adler <darin@apple.com> 19777 19778 Reviewed by Mitz. 19779 19780 - update code affected by Range changes 19781 19782 * Misc/WebNSAttributedStringExtras.mm: 19783 (+[NSAttributedString _web_attributedStringFromRange:]): Update for name changes. 19784 * WebView/WebHTMLRepresentation.mm: 19785 (-[WebHTMLRepresentation attributedStringFrom:startOffset:to:endOffset:]): 19786 Use Range::create. 19787 * WebView/WebHTMLView.mm: 19788 (-[WebHTMLView attributedString]): Ditto. 19789 197902008-03-10 Darin Adler <darin@apple.com> 19791 19792 Reviewed by Sam. 19793 19794 - eliminate keyboard UI mode method from WebCoreFrameBridge 19795 19796 * WebCoreSupport/WebChromeClient.h: Added keyboardUIMode function. 19797 * WebCoreSupport/WebChromeClient.mm: 19798 (WebChromeClient::keyboardUIMode): Ditto. Calls WebView. 19799 * WebCoreSupport/WebFrameBridge.h: Removed unused things, including the 19800 fields for keyboard UI mode. 19801 * WebCoreSupport/WebFrameBridge.mm: 19802 (-[WebFrameBridge dealloc]): Removed unneeded code; eliminated the fini 19803 method. 19804 (-[WebFrameBridge finalize]): Ditto. 19805 * WebView/WebView.mm: Moved the keyboard mode code in here. 19806 (-[WebView _close]): Remove observer from the distributed notification 19807 center as well as the normal one. 19808 (-[WebView _retrieveKeyboardUIModeFromPreferences:]): Added. Code moved 19809 here from the bridge. 19810 (-[WebView _keyboardUIMode]): Ditto. 19811 * WebView/WebViewInternal.h: Added _keyboardUIMode method. 19812 198132008-03-10 Darin Adler <darin@apple.com> 19814 19815 Reviewed by Sam. 19816 19817 - eliminate Java applet methods from WebCoreFrameBridge 19818 19819 * WebCoreSupport/WebChromeClient.mm: Removed unneeded headers and declarations. 19820 * WebCoreSupport/WebFrameBridge.mm: Ditto. Also removed unneeded methods, including 19821 the ones that load Java applets. 19822 * WebCoreSupport/WebFrameLoaderClient.h: Added javaApplet function. 19823 * WebCoreSupport/WebFrameLoaderClient.mm: Ditto. 19824 198252008-03-07 Simon Hausmann <hausmann@webkit.org> 19826 19827 Reviewed by Darin Adler. 19828 19829 Done with Lars. 19830 19831 Simplified WebViewFactory's refreshPlugins method to only refresh the 19832 plugins and not reload the frames anymore since that's now done in a 19833 platform independent manner by WebCore::Page. 19834 19835 Also removed the now unused pluginNameForMIMEType and 19836 pluginSupportsMIMEType methods. 19837 19838 * WebCoreSupport/WebViewFactory.mm: 19839 * WebView/WebFrame.mm: 19840 * WebView/WebFrameInternal.h: 19841 * WebView/WebView.mm: 19842 198432008-03-08 Mark Rowe <mrowe@apple.com> 19844 19845 Reviewed by Darin Adler. 19846 19847 Fix 64-bit build with GCC 4.2. 19848 19849 * DefaultDelegates/WebDefaultScriptDebugDelegate.m: Use NSUInteger in place of unsigned where required. 19850 * DefaultDelegates/WebDefaultUIDelegate.m: Ditto. 19851 * History/WebHistoryItem.mm: Ditto. 19852 * Misc/WebElementDictionary.mm: Ditto. 19853 * WebCoreSupport/WebFrameLoaderClient.mm: 19854 (WebFrameLoaderClient::objectContentType): Move variable declaration outside of if to avoid warning about the 19855 variable being unused in 64-bit. 19856 * WebCoreSupport/WebInspectorClient.mm: Use NSUInteger in place of unsigned where required. 19857 * WebView/WebHTMLView.mm: 19858 (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Use CGFloat in place of float where required. 19859 (-[WebTextCompleteController numberOfRowsInTableView:]): Use NSInteger in place of int where required. 19860 198612008-03-08 Darin Adler <darin@apple.com> 19862 19863 Reviewed by Adele. 19864 19865 - eliminate custom highlight methods from WebCoreFrameBridge 19866 19867 * WebCoreSupport/WebChromeClient.h: Added custom highlight functions. 19868 * WebCoreSupport/WebChromeClient.mm: 19869 (WebChromeClient::customHighlightRect): Moved code here from bridge. 19870 (WebChromeClient::paintCustomHighlight): Ditto. 19871 * WebCoreSupport/WebFrameBridge.mm: Removed code here. 19872 198732008-03-07 David D. Kilzer <ddkilzer@apple.com> 19874 19875 Unify concept of enabling Netscape Plug-in API (NPAPI). 19876 19877 Reviewed by Darin Adler. 19878 19879 * WebKit.exp: Removed unused class export for WebBaseNetscapePluginView. 19880 19881 * WebKitPrefix.h: Removed WTF_USE_NPOBJECT since we now use 19882 ENABLE(NETSCAPE_PLUGIN_API) as defined in Platform.h. 19883 19884 * Plugins/WebBaseNetscapePluginStream.h: Replaced #ifndef __LP64__ with 19885 #if ENABLE(NETSCAPE_PLUGIN_API). 19886 * Plugins/WebBaseNetscapePluginStream.mm: Ditto. 19887 * Plugins/WebBaseNetscapePluginView.h: Ditto. 19888 * Plugins/WebBaseNetscapePluginView.mm: Ditto. 19889 * Plugins/WebBaseNetscapePluginViewInternal.h: Ditto. 19890 * Plugins/WebBaseNetscapePluginViewPrivate.h: Ditto. 19891 * Plugins/WebBasePluginPackage.h: Ditto. 19892 * Plugins/WebBasePluginPackage.m: Ditto. 19893 (+[WebBasePluginPackage pluginWithPath:]): 19894 * Plugins/WebNetscapeDeprecatedFunctions.c: Ditto. 19895 * Plugins/WebNetscapeDeprecatedFunctions.h: Ditto. 19896 * Plugins/WebNetscapePluginEmbeddedView.h: Ditto. 19897 * Plugins/WebNetscapePluginEmbeddedView.mm: Ditto. 19898 * Plugins/WebNetscapePluginPackage.h: Ditto. 19899 * Plugins/WebNetscapePluginPackage.m: Ditto. 19900 * Plugins/WebNetscapePluginStream.h: Ditto. 19901 * Plugins/WebNetscapePluginStream.mm: Ditto. 19902 * Plugins/WebPluginDatabase.m: Ditto. 19903 (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]): 19904 * Plugins/npapi.m: Ditto. 19905 * WebCoreSupport/WebFrameLoaderClient.mm: Ditto. 19906 (WebFrameLoaderClient::objectContentType): 19907 (WebFrameLoaderClient::createPlugin): 19908 * WebView/WebHTMLView.mm: Ditto. 19909 (-[NSArray _web_makePluginViewsPerformSelector:withObject:]): 19910 * WebView/WebHTMLViewInternal.h: Ditto. 19911 19912 * WebView/WebFrame.mm: Replaced #ifndef __LP64__ with 19913 #if ENABLE(NETSCAPE_PLUGIN_API). Moved methods below from (WebPrivate) 19914 category to (WebInternal) category so we don't expose the ENABLE() macro 19915 from the private header. 19916 (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]): 19917 (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]): 19918 * WebView/WebFrameInternal.h: Ditto. 19919 * WebView/WebFramePrivate.h: Ditto. 19920 199212008-03-07 Alexey Proskuryakov <ap@webkit.org> 19922 19923 Reviewed by Darin Adler. 19924 19925 <rdar://problem/5579292> REGRESSION: (safari 2-3): "Default default" encoding for Korean 19926 changed from Korean (Windows, DOS) to Korean (ISO 2022-KR), which breaks some sites 19927 19928 * WebView/WebPreferences.m: 19929 (+[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]): Make encoding name match 19930 the one used in Safari. 19931 199322008-03-07 Mark Rowe <mrowe@apple.com> 19933 19934 Reviewed by Oliver Hunt. 19935 19936 Fix WebKit build with GCC 4.2. 19937 19938 * Plugins/WebBaseNetscapePluginView.mm: Use the correct return type in method signature. 19939 199402008-03-07 Darin Adler <darin@apple.com> 19941 19942 Reviewed by Adam. 19943 19944 - eliminated WebCoreFrameBridge runOpenPanel 19945 19946 * WebCoreSupport/WebChromeClient.h: Added runOpenPanel. 19947 * WebCoreSupport/WebChromeClient.mm: 19948 (WebChromeClient::runOpenPanel): Added. 19949 (-[WebOpenPanelResultListener initWithChooser:]): Added. Used to wrap the 19950 FileChooser so it can get a result from the UI delegate. 19951 (-[WebOpenPanelResultListener dealloc]): Added. 19952 (-[WebOpenPanelResultListener finalize]): Added. 19953 (-[WebOpenPanelResultListener cancel]): Added. 19954 (-[WebOpenPanelResultListener chooseFilename:]): Added. 19955 199562008-03-06 Darin Adler <darin@apple.com> 19957 19958 Reviewed by Mitz. 19959 19960 - fix regression test failures from the visited-link change 19961 19962 * History/WebHistory.mm: 19963 (+[WebHistory setOptionalSharedHistory:]): Call PageGroup::setShouldTrackVisitedLinks 19964 to turn off visited links if there is no history object. Also call 19965 removeAllVisitedLinks so we can start over from scratch with the new history. 19966 199672008-03-06 Dan Bernstein <mitz@apple.com> 19968 19969 Reviewed by Darin Adler. 19970 19971 - fix a regression from r30741: a crash under 19972 WebFrameLoaderClient::createPlugin() when showing a Mail message with 19973 an attachment 19974 19975 * WebCoreSupport/WebFrameLoaderClient.mm: 19976 (WebFrameLoaderClient::createPlugin): 19977 199782008-03-06 Darin Adler <darin@apple.com> 19979 19980 - fix Tiger build 19981 19982 * History/WebHistory.mm: Added include of WebTypesInternal.h. 19983 199842008-03-06 Darin Adler <darin@apple.com> 19985 19986 - fix Release build 19987 19988 * History/WebHistory.mm: 19989 (-[WebHistoryPrivate setLastVisitedTimeInterval:forItem:]): Removed underscore. 19990 (-[WebHistoryPrivate loadFromURL:collectDiscardedItemsInto:error:]): Added #if. 19991 (-[WebHistoryPrivate saveToURL:error:]): Ditto. 19992 199932008-03-06 Darin Adler <darin@apple.com> 19994 19995 Reviewed by Mitz. 19996 19997 - fix http://bugs.webkit.org/show_bug.cgi?id=17526 19998 REGRESSION: iframes are added to Safari's History menu 19999 by separating the visited link machinery from global history 20000 20001 * History/WebHistory.mm: Moved WebHistoryPrivate inside this file. 20002 (-[WebHistoryPrivate removeItemFromDateCaches:]): Removed the underscore from this 20003 method name, since it's on a private object. 20004 (-[WebHistoryPrivate removeItemForURLString:]): Added a call to the 20005 PageGroup::removeAllVisitedLinks function if the last URL was removed. 20006 (-[WebHistoryPrivate addItemToDateCaches:]): Removed the underscore from this 20007 method name, since it's on a private object. 20008 (-[WebHistoryPrivate removeAllItems]): Call PageGroup::removeAllVisitedLinks. 20009 (-[WebHistoryPrivate ageLimitDate]): Removed the underscore from this 20010 method name, since it's on a private object. 20011 (-[WebHistoryPrivate loadHistoryGutsFromURL:savedItemsCount:collectDiscardedItemsInto:error:]): 20012 Ditto. 20013 (-[WebHistoryPrivate saveHistoryGuts:URL:error:]): Ditto. Also changed this 20014 to correctly return the error by using the newer version of writeToURL: and 20015 removed the FIXME about that. 20016 (-[WebHistoryPrivate addVisitedLinksToPageGroup:]): Added. Calls addVisitedLink 20017 for every link in the history. 20018 (-[WebHistory saveToURL:error:]): Removed the FIXME, since we do get the error now. 20019 (-[WebHistory addItem:]): Moved into the WebPrivate category. 20020 (-[WebHistory addItemForURL:]): Ditto. 20021 (-[WebHistory _addItemForURL:title:]): Added. Used for the normal case where we 20022 create an item and already know its title. 20023 (-[WebHistory ageLimitDate]): Moved into the WebPrivate category. 20024 (-[WebHistory containsItemForURLString:]): Ditto. 20025 (-[WebHistory removeItem:]): Ditto. 20026 (-[WebHistory setLastVisitedTimeInterval:forItem:]): Ditto. 20027 (-[WebHistory _itemForURLString:]): Ditto. 20028 (-[WebHistory _addVisitedLinksToPageGroup:]): Added. For use only inside WebKit. 20029 20030 * History/WebHistoryInternal.h: Added. 20031 * History/WebHistoryItemInternal.h: Tweaked formatting and includes. 20032 * History/WebHistoryPrivate.h: Moved the WebHistoryPrivate class out of this header. 20033 Also reorganized what was left behind. 20034 20035 * WebCoreSupport/WebChromeClient.h: Added populateVisitedLinks. 20036 * WebCoreSupport/WebChromeClient.mm: 20037 (WebChromeClient::populateVisitedLinks): Added a call to the new 20038 -[WebHistory _addVisitedLinksToPageGroup:] method. 20039 20040 * WebCoreSupport/WebFrameLoaderClient.mm: 20041 (WebFrameLoaderClient::updateGlobalHistory): Changed code to use the new 20042 -[WebHistory _addItemForURL:title:] method. 20043 200442008-03-05 Adam Roben <aroben@apple.com> 20045 20046 Rename WebCoreScriptDebuggerImp.{h,mm} to WebScriptDebugger.{h,mm} 20047 20048 Reviewed by Kevin M. 20049 20050 * WebView/WebFrame.mm: 20051 * WebView/WebScriptDebugDelegate.mm: 20052 * WebView/WebScriptDebugger.h: Renamed from WebKit/mac/WebView/WebCoreScriptDebuggerImp.h. 20053 * WebView/WebScriptDebugger.mm: Renamed from WebKit/mac/WebView/WebCoreScriptDebuggerImp.mm. 20054 200552008-03-05 Adam Roben <aroben@apple.com> 20056 20057 Rename WebCoreScriptDebuggerImp to WebScriptDebugger 20058 20059 Reviewed by Kevin M. 20060 20061 * WebView/WebCoreScriptDebuggerImp.h: 20062 * WebView/WebCoreScriptDebuggerImp.mm: 20063 * WebView/WebFrame.mm: 20064 (-[WebFrame _attachScriptDebugger]): 20065 * WebView/WebFrameInternal.h: 20066 200672008-03-05 Adam Roben <aroben@apple.com> 20068 20069 Remove WebScriptDebugger 20070 20071 Uses of WebScriptDebugger have been replaced with 20072 WebCoreScriptDebuggerImp. 20073 20074 Reviewed by Kevin M. 20075 20076 * WebView/WebFrame.mm: 20077 (-[WebFramePrivate dealloc]): Use delete instead of release since 20078 WebCoreScriptDebuggerImp is a C++ class. 20079 (-[WebFrame _attachScriptDebugger]): Updated to use early returns and 20080 WebCoreScriptDebuggerImp. 20081 (-[WebFrame _detachScriptDebugger]): Ditto. 20082 * WebView/WebFrameInternal.h: 20083 * WebView/WebScriptDebugDelegate.mm: Removed WebScriptDebugger 20084 * WebView/WebScriptDebugDelegatePrivate.h: Removed. 20085 * WebView/WebView.mm: 20086 200872008-03-05 Adam Roben <aroben@apple.com> 20088 20089 Remove -webFrame and -globalObject from WebScriptDebugger 20090 20091 WebCoreScriptDebuggerImp is now unaware of WebScriptDebugger 20092 20093 Reviewed by Kevin M. 20094 20095 * WebView/WebCoreScriptDebuggerImp.h: Removed WebScriptDebugger* 20096 parameter to the constructor. 20097 * WebView/WebCoreScriptDebuggerImp.mm: 20098 (toWebFrame): Added. 20099 (WebCoreScriptDebuggerImp::sourceParsed): Call toWebFrame. 20100 (WebCoreScriptDebuggerImp::callEvent): Ditto, and get the Frame's 20101 WindowScriptObject ourselves instead of asking WebScriptDebugger for 20102 it. 20103 (WebCoreScriptDebuggerImp::atStatement): Call toWebFrame. 20104 (WebCoreScriptDebuggerImp::returnEvent): Ditto. 20105 (WebCoreScriptDebuggerImp::exception): Ditto. 20106 * WebView/WebScriptDebugDelegate.mm: 20107 (-[WebScriptDebugger initWithWebFrame:]): Updated for change to 20108 WebScriptDebuggerImp's constructor. 20109 * WebView/WebScriptDebugDelegatePrivate.h: Removed 20110 -webFrame/-globalObject. 20111 201122008-03-05 Adam Roben <aroben@apple.com> 20113 20114 Remove -enterFrame: and -leaveFrame from WebScriptDebugger 20115 20116 Reviewed by Kevin M. 20117 20118 * WebView/WebCoreScriptDebuggerImp.h: Changed to store m_topCallFrame 20119 in a RetainPtr, now that WebCoreScriptDebuggerImp is in charge of its 20120 lifetime. 20121 * WebView/WebCoreScriptDebuggerImp.mm: 20122 - Added declaration of -[WebScriptCallFrame 20123 _initWithGlobalObject:caller:state:]. 20124 - Changed most uses of m_topCallFrame to m_topCallFrame.get() 20125 (WebCoreScriptDebuggerImp::WebCoreScriptDebuggerImp): Removed 20126 now-unnecessary initialization of m_topCallFrame. 20127 (WebCoreScriptDebuggerImp::callEvent): Replaced call to enterFrame: 20128 with its implementation. The one difference between this 20129 implementation and the old enterFrame: method is that we don't hand 20130 our reference to m_topCallFrame to _initWithGlobalObject: -- that 20131 method must now retain the passed-in WebScriptCallFrame manually. 20132 (WebCoreScriptDebuggerImp::atStatement): 20133 (WebCoreScriptDebuggerImp::returnEvent): Replaced call to leaveFrame 20134 with its implementation. 20135 (WebCoreScriptDebuggerImp::exception): 20136 * WebView/WebScriptDebugDelegate.mm: Removed declaration of 20137 -[WebScriptCallFrame _initWithGlobalObject:caller:state:]. 20138 (-[WebScriptCallFrame _initWithGlobalObject:caller:state:]): Changed 20139 to retain the passed-in caller. 20140 * WebView/WebScriptDebugDelegatePrivate.h: 20141 - Removed _current ivar 20142 - Removed enterFrame:/leaveFrame declarations. 20143 201442008-03-05 Adam Roben <aroben@apple.com> 20145 20146 Remove -parsedSource: from WebScriptDebugger 20147 20148 Reviewed by Kevin M. 20149 20150 * WebView/WebCoreScriptDebuggerImp.mm: 20151 (WebCoreScriptDebuggerImp::sourceParsed): Moved code here from 20152 -[WebScriptDebugger parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:] 20153 * WebView/WebScriptDebugDelegate.mm: Removed -parsedSource:. 20154 * WebView/WebScriptDebugDelegatePrivate.h: Ditto. 20155 201562008-03-05 Adam Roben <aroben@apple.com> 20157 20158 Remove -enteredFrame:, -leavingFrame:, and -exceptionRaised: from WebScriptDebugger 20159 20160 Reviewed by Kevin M. 20161 20162 * WebView/WebCoreScriptDebuggerImp.mm: 20163 (WebCoreScriptDebuggerImp::WebCoreScriptDebuggerImp): Changed to call 20164 trhough to callEvent instead of duplicating its code here. 20165 (WebCoreScriptDebuggerImp::callEvent): Moved code from 20166 -[WebScriptDebugger enteredFrame:sourceId:line:] here. 20167 (WebCoreScriptDebuggerImp::returnEvent): Moved code from 20168 -[WebScriptDebugger leavingFrame:sourceId:line:] here. 20169 (WebCoreScriptDebuggerImp::exception): Moved code from 20170 -[WebScriptDebugger exceptionRaised:sourceId:line:] here. 20171 * WebView/WebScriptDebugDelegate.mm: Removed -enteredFrame:, 20172 -leavingFrame:, and -exceptionRaised:. 20173 * WebView/WebScriptDebugDelegatePrivate.h: Ditto. 20174 201752008-03-05 Adam Roben <aroben@apple.com> 20176 20177 Remove -[WebScriptDebugger hitStatement:sourceId:line:] 20178 20179 Reviewed by Kevin M. 20180 20181 * WebView/WebCoreScriptDebuggerImp.mm: 20182 (WebCoreScriptDebuggerImp::atStatement): Moved code here from 20183 -[WebScriptDebugger hitStatement:sourceId:line:]. 20184 * WebView/WebScriptDebugDelegate.mm: 20185 (-[WebScriptDebugger webFrame]): Added. 20186 * WebView/WebScriptDebugDelegatePrivate.h: 20187 201882008-03-05 Adam Roben <aroben@apple.com> 20189 20190 Remove WebCoreScriptDebugger 20191 20192 Reviewed by Kevin M. 20193 20194 * WebView/WebCoreScriptDebugger.h: Removed. 20195 * WebView/WebCoreScriptDebugger.mm: Removed. 20196 * WebView/WebCoreScriptDebuggerImp.h: Replaced WebCoreScriptDebugger 20197 with WebScriptDebugger. 20198 * WebView/WebCoreScriptDebuggerImp.mm: Ditto, and replaced [m_debugger 20199 delegate] with just m_debugger. 20200 (toNSString): Moved here from WebCoreScriptDebugger.mm. 20201 (toNSURL): Ditto. 20202 (WebCoreScriptDebuggerImp::WebCoreScriptDebuggerImp): 20203 (WebCoreScriptDebuggerImp::sourceParsed): 20204 (WebCoreScriptDebuggerImp::callEvent): 20205 (WebCoreScriptDebuggerImp::atStatement): 20206 (WebCoreScriptDebuggerImp::returnEvent): 20207 (WebCoreScriptDebuggerImp::exception): 20208 * WebView/WebScriptDebugDelegate.mm: 20209 (-[WebScriptDebugger initWithWebFrame:]): _debugger now holds a 20210 WebCoreScriptDebuggerImp, so initialize it properly. 20211 * WebView/WebScriptDebugDelegatePrivate.h: Changed _debugger to hold a 20212 WebCoreScriptDebuggerImp. 20213 202142008-03-05 Adam Roben <aroben@apple.com> 20215 20216 Move WebCoreScriptDebuggerImp to its own source files 20217 20218 Also changed WebCoreScriptDebuggerImp coding style to match our style 20219 guidelines. 20220 20221 Reviewed by Kevin M. 20222 20223 * WebView/WebCoreScriptDebugger.h: Added declaration of toNSURL 20224 function. 20225 * WebView/WebCoreScriptDebugger.mm: Removed WebCoreScriptDebuggerImp 20226 implementation. 20227 (toNSURL): Made no longer static. 20228 * WebView/WebCoreScriptDebuggerImp.h: Added. 20229 * WebView/WebCoreScriptDebuggerImp.mm: Added. Code was moved here from 20230 WebCoreScriptDebugger.mm and cleaned up. 20231 (WebCoreScriptDebuggerImp::WebCoreScriptDebuggerImp): 20232 (WebCoreScriptDebuggerImp::sourceParsed): 20233 (WebCoreScriptDebuggerImp::callEvent): 20234 (WebCoreScriptDebuggerImp::atStatement): 20235 (WebCoreScriptDebuggerImp::returnEvent): 20236 (WebCoreScriptDebuggerImp::exception): 20237 202382008-03-05 Adam Roben <aroben@apple.com> 20239 20240 Move -_enterFrame and -_leaveFrame from WebCoreScriptDebugger to WebScriptDebugger 20241 20242 Reviewed by Kevin M. 20243 20244 * WebView/WebCoreScriptDebugger.h: 20245 - Removed newFrameWithGlobalObject:caller:state: from 20246 WebScriptDebugger protocol 20247 - Added enterFrame: and leaveFrame: to WebScriptDebugger protocol 20248 - Removed _current ivar from WebCoreScriptDebugger 20249 * WebView/WebCoreScriptDebugger.mm: 20250 (WebCoreScriptDebuggerImp::callEvent): Changed to call enterFrame on 20251 the delegate. 20252 (WebCoreScriptDebuggerImp::returnEvent): Ditto for leaveFrame. 20253 * WebView/WebScriptDebugDelegate.mm: 20254 (-[WebScriptDebugger dealloc]): Added code to release _current. 20255 (-[WebScriptDebugger enterFrame:]): Added. Code came from 20256 WebCoreScriptDebugger. 20257 (-[WebScriptDebugger leaveFrame]): Ditto. 20258 * WebView/WebScriptDebugDelegatePrivate.h: Added _current ivar. 20259 202602008-03-05 Adam Roben <aroben@apple.com> 20261 20262 Remove WebCoreScriptCallFrame 20263 20264 Reviewed by Tim. 20265 20266 * WebView/WebCoreScriptDebugger.h: 20267 - Replaced WebCoreScriptCallFrame with WebScriptCallFrame 20268 - Replaced -newWrapperForFrame: with 20269 -newFrameWithGlobalObject:caller:state: 20270 - Removed WebCoreScriptCallFrame interface. 20271 * WebView/WebCoreScriptDebugger.mm: Replaced WebCoreScriptCallFrame 20272 with WebScriptCallFrame. 20273 (-[WebCoreScriptDebugger _enterFrame:]): Changed to call 20274 -newFrameWithGlobalObject:caller:state. 20275 (-[WebCoreScriptDebugger _leaveFrame]): 20276 * WebView/WebScriptDebugDelegate.h: Changed WebScriptCallFrame's 20277 _private ivar to be of type WebScriptCallFramePrivate*. 20278 * WebView/WebScriptDebugDelegate.mm: 20279 - Replaced WebCoreScriptCallFrame with WebScriptCallFrame 20280 - Added WebScriptCallFramePrivate 20281 (-[WebScriptDebugger enteredFrame:sourceId:line:]): 20282 (-[WebScriptDebugger hitStatement:sourceId:line:]): 20283 (-[WebScriptDebugger leavingFrame:sourceId:line:]): 20284 (-[WebScriptDebugger exceptionRaised:sourceId:line:]): 20285 (-[WebScriptCallFramePrivate dealloc]): Added. 20286 (-[WebScriptCallFrame _initWithGlobalObject:caller:state:]): Added. 20287 Code came from WebCoreScriptCallFrame. 20288 (-[WebScriptCallFrame dealloc]): Added a call to release the _private 20289 ivar. 20290 (-[WebScriptCallFrame _convertValueToObjcValue:]): Replaced calls to 20291 _private with direct access of _private's ivars. 20292 (-[WebScriptCallFrame caller]): Ditto. 20293 (-[WebScriptCallFrame scopeChain]): Ditto. 20294 (-[WebScriptCallFrame evaluateWebScript:]): Ditto. 20295 202962008-03-05 Adam Roben <aroben@apple.com> 20297 20298 Move -_convertValueToObjcValue to WebScriptCallFrame 20299 20300 Reviewed by Darin Adler. 20301 20302 * WebView/WebCoreScriptDebugger.h: Removed declaration of 20303 -_convertValueToObjcValue. 20304 * WebView/WebCoreScriptDebugger.mm: Removed -_convertValueToObjcValue. 20305 * WebView/WebScriptDebugDelegate.mm: 20306 (-[WebScriptCallFrame _convertValueToObjcValue:]): Added. Code came 20307 from -[WebCoreScriptCallFrame _convertValueToObjcValue]. 20308 (-[WebScriptCallFrame scopeChain]): Changed to call 20309 -_convertValueToObjcValue on self instead of _private. 20310 (-[WebScriptCallFrame exception]): Ditto. 20311 (-[WebScriptCallFrame evaluateWebScript:]): Ditto. 20312 203132008-03-05 Adam Roben <aroben@apple.com> 20314 20315 Move -exception and -evaluateWebScript: to WebScriptCallFrame 20316 20317 Reviewed by Darin Adler. 20318 20319 * WebView/WebCoreScriptDebugger.h: Removed declarations of -exception 20320 and -evaluateWebScript:. 20321 * WebView/WebCoreScriptDebugger.mm: Removed -exception and 20322 -evaluateWebScript:. 20323 * WebView/WebScriptDebugDelegate.mm: 20324 (-[WebScriptCallFrame exception]): Added. Code came from 20325 -[WebCoreScriptCallFrame exception]. 20326 (-[WebScriptCallFrame evaluateWebScript:]): Added. Code came from 20327 -[WebCoreScriptCallFrame evaluateWebScript:]. 20328 203292008-03-05 Adam Roben <aroben@apple.com> 20330 20331 Move -scopeChain to WebScriptCallFrame 20332 20333 Reviewed by Darin Adler. 20334 20335 * WebView/WebCoreScriptDebugger.h: 20336 - Added declarations of -globalObject and -_convertValueToObjcValue: 20337 to WebCoreScriptCallFrame 20338 - Removed declaration of -scopeChain. 20339 * WebView/WebCoreScriptDebugger.mm: Moved -_convertValueToObjcValue 20340 within the main WebCoreScriptCallFrame implementation. 20341 (-[WebCoreScriptCallFrame globalObject]): Added. 20342 * WebView/WebScriptDebugDelegate.mm: 20343 (-[WebScriptCallFrame scopeChain]): Added. Code came from 20344 -[WebCoreScriptCallFrame scopeChain]. 20345 203462008-03-05 Adam Roben <aroben@apple.com> 20347 20348 Move -functionName from WebCoreScriptCallFrame to WebScriptCallFrame 20349 20350 Reviewed by Darin Adler. 20351 20352 * WebView/WebCoreScriptDebugger.h: 20353 - Removed #else case of #ifdef __cplusplus since this file is only 20354 ever used by C++ Objective-C files 20355 - Removed 'using KJS::ExecState' statement since we prefer not to 20356 have using statements in header files 20357 - Consequently prefixed uses of ExecState with KJS:: 20358 - Added declaration of toNSString method that takes a const 20359 UString& 20360 - Added declaration of -[WebCoreScriptCallFrame state] 20361 - Removed declaration of -[WebCoreScriptCallFrame functionName] 20362 * WebView/WebCoreScriptDebugger.mm: 20363 (toNSString): Made this no longer static. 20364 (-[WebCoreScriptCallFrame state]): Added. 20365 * WebView/WebScriptDebugDelegate.mm: 20366 (-[WebScriptCallFrame functionName]): Added. Code came from 20367 -[WebCoreScriptCallFrame functionName], though I changed some nested 20368 ifs into early returns. 20369 203702008-03-05 Adam Roben <aroben@apple.com> 20371 20372 Move WebCoreScriptDebugger to WebKit 20373 20374 Reviewed by Darin Adler. 20375 20376 * WebView/WebCoreScriptDebugger.h: Renamed from WebCore/page/mac/WebCoreScriptDebugger.h. 20377 * WebView/WebCoreScriptDebugger.mm: Renamed from WebCore/page/mac/WebCoreScriptDebugger.mm. 20378 (toNSString): 20379 (toNSURL): 20380 (WebCoreScriptDebuggerImp::WebCoreScriptDebuggerImp): 20381 (WebCoreScriptDebuggerImp::sourceParsed): 20382 (WebCoreScriptDebuggerImp::callEvent): 20383 (WebCoreScriptDebuggerImp::atStatement): 20384 (WebCoreScriptDebuggerImp::returnEvent): 20385 (WebCoreScriptDebuggerImp::exception): 20386 (+[WebCoreScriptDebugger initialize]): 20387 (-[WebCoreScriptDebugger initWithDelegate:]): 20388 (-[WebCoreScriptDebugger dealloc]): 20389 (-[WebCoreScriptDebugger finalize]): 20390 (-[WebCoreScriptDebugger delegate]): 20391 (-[WebCoreScriptDebugger _enterFrame:]): 20392 (-[WebCoreScriptDebugger _leaveFrame]): 20393 (-[WebCoreScriptCallFrame _initWithGlobalObject:caller:state:]): 20394 (-[WebCoreScriptCallFrame _setWrapper:]): 20395 (-[WebCoreScriptCallFrame _convertValueToObjcValue:]): 20396 (-[WebCoreScriptCallFrame dealloc]): 20397 (-[WebCoreScriptCallFrame wrapper]): 20398 (-[WebCoreScriptCallFrame caller]): 20399 (-[WebCoreScriptCallFrame scopeChain]): 20400 (-[WebCoreScriptCallFrame functionName]): 20401 (-[WebCoreScriptCallFrame exception]): 20402 (-[WebCoreScriptCallFrame evaluateWebScript:]): 20403 * WebView/WebScriptDebugDelegate.mm: Updated header path. 20404 * WebView/WebScriptDebugDelegatePrivate.h: Ditto. 20405 204062008-03-05 Anders Carlsson <andersca@apple.com> 20407 20408 Reviewed by Geoff. 20409 20410 Include file changes. 20411 20412 * Plugins/WebBaseNetscapePluginView.mm: 20413 * Plugins/WebNetscapePluginPackage.m: 20414 204152008-03-04 Timothy Hatcher <timothy@apple.com> 20416 20417 Reviewed by Darin Adler. 20418 20419 <rdar://problem/5720160> Browser windows "do nothing" while modal 20420 dialog or menu is up due to run loop modes (or while scrolling) 20421 20422 Add new API that lets a WebView be scheduled with multiple runloops and modes. 20423 This lets loading continue when in a nested runloop or in a different mode. 20424 20425 * Misc/WebKitVersionChecks.h: Add a new version define: 20426 WEBKIT_FIRST_VERSION_WITH_LOADING_DURING_COMMON_RUNLOOP_MODES. 20427 * WebView/WebView.mm: 20428 (-[WebView _commonInitializationWithFrameName:groupName:]): Schedule in the main runloop and with 20429 the default runloop mode if we are linked on an earlier WebKit version, use common modes otherwise. 20430 (-[WebView scheduleInRunLoop:forMode:]): New API, that calls through to Page. 20431 (-[WebView unscheduleFromRunLoop:forMode:]): Ditto. 20432 * WebView/WebViewPrivate.h: Add the new pending API methods. 20433 204342008-03-04 Anders Carlsson <andersca@apple.com> 20435 20436 Reviewed by Darin Adler. 20437 20438 Fix crash that happens when trying to load a page with a Java applet. 20439 20440 * WebCoreSupport/WebFrameLoaderClient.mm: 20441 Don't release the names and values array - the kit method returns an autoreleased array. 20442 204432008-03-04 Darin Adler <darin@apple.com> 20444 20445 Reviewed by Adam. 20446 20447 - fix 200+ failing regression tests 20448 - fix http://bugs.webkit.org/show_bug.cgi?id=17668 20449 Vertical scrollbar at slashdot.org is randomly not shown 20450 20451 * WebCoreSupport/WebFrameLoaderClient.mm: 20452 (WebFrameLoaderClient::transitionToCommittedForNewPage): Changed the refcounting 20453 code here to exactly match the way it was before it was moved from WebCore. I had 20454 introduced a storage leak and that was causing problems with scroll bars! 20455 204562008-03-04 Darin Adler <darin@apple.com> 20457 20458 Reviewed by Adam. 20459 20460 - remove WebCoreFrameBridge reapplyStyles method 20461 20462 * WebView/WebHTMLView.mm: 20463 (-[WebHTMLView reapplyStyles]): Moved code to reapply styles here from the bridge. 20464 204652008-03-04 Darin Adler <darin@apple.com> 20466 20467 Reviewed by Adam. 20468 20469 - eliminate WebCoreFrameBridge createFrameViewWithNSView 20470 20471 * WebCoreSupport/WebFrameLoaderClient.mm: 20472 (WebFrameLoaderClient::transitionToCommittedForNewPage): 20473 Moved code here from createFrameViewWithNSView. 20474 204752008-03-04 Darin Adler <darin@apple.com> 20476 20477 Reviewed by Adam. 20478 20479 - removed WebCoreFrameBridge scrollOverflowInDirection 20480 20481 * WebView/WebFrameView.mm: 20482 (-[WebFrameView _scrollOverflowInDirection:granularity:]): Changed to call 20483 EventHandler directly instead of using the bridge. 20484 (-[WebFrameView scrollToBeginningOfDocument:]): Updated to use WebCore enums instead 20485 of the ones from the bridge. 20486 (-[WebFrameView scrollToEndOfDocument:]): Ditto. 20487 (-[WebFrameView _pageVertically:]): Ditto. 20488 (-[WebFrameView _pageHorizontally:]): Ditto. 20489 (-[WebFrameView _scrollLineVertically:]): Ditto. 20490 (-[WebFrameView _scrollLineHorizontally:]): Ditto. 20491 204922008-03-04 Darin Adler <darin@apple.com> 20493 20494 Reviewed by Adam. 20495 20496 - remove WebCoreFrameBridge installInFrame: method 20497 20498 * WebCoreSupport/WebFrameLoaderClient.mm: 20499 (WebFrameLoaderClient::transitionToCommittedForNewPage): Call 20500 -[WebFrameView _install] instead of -[WebCoreFrameBridge installInFrame:]. 20501 * WebView/WebFrameView.mm: 20502 (-[WebFrameView _install]): Added. Has code from -[WebCoreFrameBridge installInFrame:]. 20503 (-[WebFrameView _setCustomScrollViewClass:]): Used early return idiom so the entire 20504 method isn't nested inside an if statement. Call 20505 -[WebFrameView _install] instead of -[WebCoreFrameBridge installInFrame:]. 20506 * WebView/WebFrameViewInternal.h: Added declaration of _install method so it can be 20507 used in WebFrameLoaderClient.mm. 20508 205092008-03-04 Darin Adler <darin@apple.com> 20510 20511 Reviewed by Adam. 20512 20513 - remove WebCoreFrameBridge window method 20514 20515 * WebCoreSupport/WebFrameBridge.mm: Removed window method. 20516 205172008-03-04 Darin Adler <darin@apple.com> 20518 20519 Reviewed by Adam. 20520 20521 - move code from WebFrameBridge into WebFrameLoaderClient 20522 20523 * WebCoreSupport/WebFrameBridge.h: Removed unused fields, changed frame name parameters 20524 to use WebCore::String instead of NSString, add initSubframeWithOwnerElement declaration, 20525 removed viewForPluginWithFrame, viewForJavaAppletWithFrame, createChildFrameNamed, 20526 redirectDataToPlugin, determineObjectFromMIMEType, and windowObjectCleared methods. 20527 * WebCoreSupport/WebFrameBridge.mm: 20528 (-[WebFrameBridge finishInitializingWithPage:frameName:WebCore::frameView:ownerElement:]): 20529 Changed to use WebCore::String. 20530 (-[WebFrameBridge initMainFrameWithPage:frameName:WebCore::frameView:]): Ditto. 20531 (-[WebFrameBridge initSubframeWithOwnerElement:frameName:WebCore::frameView:]): Ditto. 20532 20533 * WebCoreSupport/WebFrameLoaderClient.mm: 20534 (WebFrameLoaderClient::setOriginalURLForDownload): Removed some dead code I found here 20535 and added a FIXME. 20536 (WebFrameLoaderClient::createFrame): Moved the code from WebFrameBridge here. 20537 (WebFrameLoaderClient::objectContentType): Ditto. 20538 (parameterValue): Added. Helper function, based on code originally in WebFrameBridge. 20539 (pluginView): Ditto. 20540 (WebFrameLoaderClient::createPlugin): Moved the code from WebFrameBridge here. 20541 205422008-03-04 Darin Adler <darin@apple.com> 20543 20544 Reviewed by Adam. 20545 20546 - remove -[WebCoreFrameBridge dashboardRegionsChanged:] 20547 20548 * WebCoreSupport/WebChromeClient.h: 20549 * WebCoreSupport/WebChromeClient.mm: 20550 (WebChromeClient::dashboardRegionsChanged): Moved code here from the bridge. 20551 The WebCore side now calls this only when there's an actual change. 20552 * WebCoreSupport/WebFrameBridge.h: Removed lastDashboardRegions. 20553 * WebCoreSupport/WebFrameBridge.mm: 20554 (-[WebFrameBridge dealloc]): Removed code to release lastDashboardRegions. 20555 Removed _compareDashboardRegions: and dashboardRegionsChanged: methods. 20556 205572008-03-04 Darin Adler <darin@apple.com> 20558 20559 Reviewed by Adam. 20560 20561 - remove WebCoreFrameBridge issuePasteComand method 20562 20563 * WebCoreSupport/WebFrameBridge.mm: Removed issuePasteCommand method. 20564 * WebView/WebHTMLViewInternal.h: Removed declaration of paste: method. 20565 205662008-03-03 Darin Adler <darin@apple.com> 20567 20568 Reviewed by Adam. 20569 20570 - some "cleanup" on the path to removing WebCoreFrameBridge 20571 20572 * Storage/WebDatabaseManager.mm: Tweak includes. 20573 * Storage/WebDatabaseTrackerClient.mm: Ditto. 20574 * Storage/WebSecurityOrigin.mm: Ditto. 20575 * Storage/WebSecurityOriginInternal.h: Ditto. 20576 20577 * WebView/WebFrame.mm: 20578 (core): Changed to get rid of the requirement that WebKitEditableLinkBehavior exactly 20579 match WebCore::EditableLinkBehavior. 20580 * WebView/WebFrameInternal.h: Removed unused kit function. 20581 20582 * WebView/WebHTMLView.mm: Moved WebHTMLViewPrivate class in here. 20583 * WebView/WebHTMLViewInternal.h: Moved WebHTMLVewPrivate class out of here. 20584 * WebView/WebHTMLViewPrivate.h: Tweaked formatting and removed some unneeded declarations. 20585 20586 * WebView/WebPreferencesPrivate.h: Removed a no-longer-needed comment. 20587 205882008-03-01 Mark Rowe <mrowe@apple.com> 20589 20590 Reviewed by Tim Hatcher. 20591 20592 Update Xcode configuration to support building debug and release from the mysterious future. 20593 20594 * Configurations/DebugRelease.xcconfig: 20595 205962008-02-29 Mark Rowe <mrowe@apple.com> 20597 20598 Reviewed by Anders Carlsson. 20599 20600 Replace use of WKPathFromFont with implementation in terms of public API. 20601 20602 * WebCoreSupport/WebSystemInterface.m: 20603 (InitWebCoreSystemInterface): Remove unused symbol. 20604 206052008-02-29 Mark Rowe <mrowe@apple.com> 20606 20607 Reviewed by Oliver Hunt. 20608 20609 Fix spelling of "request" in name of WKNSURLProtocolClassForRequest. 20610 20611 * Misc/WebNSURLExtras.mm: 20612 (-[NSURL _webkit_canonicalize]): 20613 * WebKit.order: 20614 206152008-02-29 Mark Rowe <mrowe@apple.com> 20616 20617 Reviewed by Oliver Hunt. 20618 20619 Don't use WKSupportsMultipartXMixedReplace on Leopard as multipart/x-mixed-replace is always handled by NSURLRequest. 20620 20621 * WebCoreSupport/WebSystemInterface.m: 20622 (InitWebCoreSystemInterface): 20623 206242008-02-29 Mark Rowe <mrowe@apple.com> 20625 20626 Reviewed by Oliver Hunt. 20627 20628 Remove obsolete code that had been left intact to support users running WebKit with older versions of Safari. 20629 20630 * Misc/WebNSViewExtras.m: Remove _web_superviewOfClass:stoppingAtClass:. 20631 * Misc/WebNSWindowExtras.m: Remove _webkit_displayThrottledWindows. 20632 * Misc/WebSearchableTextView.m: Remove selectionImageForcingWhiteText:. 20633 * WebCoreSupport/WebImageRendererFactory.m: Update comment to mention the last version of Safari that 20634 requires this class. 20635 * WebInspector/WebInspector.mm: Remove sharedWebInspector and update comments to mention the last version 20636 of Safari that calls other obsolete methods. 20637 * WebView/WebDocumentPrivate.h: Remove selectionImageForcingWhiteText:. 20638 * WebView/WebHTMLView.mm: Ditto. 20639 * WebView/WebPDFView.mm: Ditto. 20640 * WebView/WebView.mm: Update comment to mentoin the last version of Safari that requires the obsolete method. 20641 206422008-02-29 Mark Rowe <mrowe@apple.com> 20643 20644 Rubber-stamped by Eric Seidel. 20645 20646 Remove unneeded includes of WebKitSystemInterface.h. 20647 20648 * History/WebHistoryItem.mm: 20649 * Misc/WebNSViewExtras.m: 20650 * WebCoreSupport/WebFrameLoaderClient.mm: 20651 * WebView/WebDataSource.mm: 20652 * WebView/WebPDFView.mm: 20653 206542008-02-29 Mark Rowe <mrowe@apple.com> 20655 20656 Reviewed by Oliver Hunt and Oliver Hunt. 20657 20658 <rdar://problem/4753845> WebKit should use CGEventSourceSecondsSinceLastEventType in place of WKSecondsSinceLastInputEvent SPI. 20659 20660 * WebCoreSupport/WebSystemInterface.m: 20661 (InitWebCoreSystemInterface): Remove unused symbol. 20662 * WebKit.order: Ditto. 20663 206642008-02-28 Mark Rowe <mrowe@apple.com> 20665 20666 Reviewed by Dave Hyatt. 20667 20668 Make use of new CGFont APIs on Leopard rather than making a WebKitSystemInterface call. 20669 20670 * WebCoreSupport/WebSystemInterface.m: 20671 (InitWebCoreSystemInterface): Only initialize wkGetFontMetrics on Tiger. 20672 206732008-02-27 Brady Eidson <beidson@apple.com> 20674 20675 Reviewed by Mark Rowe (code) and Darin (concept) 20676 20677 Much better fix for <rdar://problem/4930688> (see r19549) 20678 Original fix for <rdar://problem/3947312> (and 14 dupes) 20679 20680 Let me tell you a story: 20681 A long time ago, in a cvs repository far, far away, loader code was almost all up in WebKit. 20682 WebArchive code was intertwined with that code in bizarre and complex ways. 20683 During the months long loader re-factoring where we pushed much loader code down into WebCore, 20684 many portions of the WebKit loader were thinned out until they ceased to exist. Others remained 20685 with a sole purpose. 20686 20687 One such section of code whose lineage traces back from WebFrameLoaderClient to WebFrameLoader 20688 to WebLoader was originally rooted in the method [WebLoader loadRequest:]. This method was the 20689 single entry point for almost all loading (network or web archives) 20690 20691 This method would check various headers and other fields on the NSURLRequest and NSURLResponse 20692 to make decisions about the load. If the cache control fields were expired or other conditions 20693 in the headers were met, the load would be forced to go out to the network. 20694 20695 As the loader was moved and tweaked repeatedly, most of this code was pruned or re-factored. 20696 At some point, all that remained was the special cases for loading WebArchives. 20697 20698 Somewhere in the r16,000s, this remaining responsibility was noticed and related methods we renamed 20699 to be WebArchive specific, further cementing the assumed design. 20700 20701 Problem is, the design was bad. A WebArchive is meant to be a static snapshot of a WebPage at a 20702 specific point in time. Referring to the request to see if the resource should be reloaded seems 20703 nonsensical, as does referring to the response headers to see if the resource is "expired". In the 20704 context of loading a WebArchive, available data should *always* be loaded from the WebArchive, at least 20705 during the initial load! 20706 20707 After discovering the secret to reproducing all of these bugs is both emptying our your Foundation 20708 cache and disconnecting your network, it was easy to reproduce the 16 individually reported cases 20709 that were all symptoms of this bug, and easy to verify that they are fixed with this patch. 20710 20711 * WebCoreSupport/WebFrameLoaderClient.h: 20712 * WebCoreSupport/WebFrameLoaderClient.mm: 20713 (WebFrameLoaderClient::willUseArchive): Do not call either form of "canUseArchivedResource()" that 20714 inspect the request or response objects - We are loading from a WebArchive, and we should never 20715 make the decision to go out to the network when we actually have the resource available. 20716 20717 * WebCoreSupport/WebSystemInterface.m: 20718 (InitWebCoreSystemInterface): Remove two methods that are no longer used anywhere in WebKit 20719 207202008-02-27 Matt Lilek <webkit@mattlilek.com> 20721 20722 Reviewed by Adam Roben. 20723 20724 Bug 14348: Messing up the inspector by dragging an URL into it 20725 http://bugs.webkit.org/show_bug.cgi?id=14348 20726 <rdar://problem/5283620> and <rdar://problem/5712808> 20727 20728 * WebCoreSupport/WebInspectorClient.mm: 20729 (-[WebInspectorWindowController init]): Remove duplicate preference setting. 20730 (-[WebInspectorWindowController webView:dragDestinationActionMaskForDraggingInfo:]): 20731 207322008-02-25 Darin Adler <darin@apple.com> 20733 20734 Reviewed by Adam. 20735 20736 * WebView/WebArchiver.mm: 20737 (+[WebArchiver archiveSelectionInFrame:]): Use blankURL. 20738 * WebView/WebFrame.mm: 20739 (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): Avoid the 20740 variable name URL to avoid clashing with the renamed KURL in the future. Also use 20741 blankURL. 20742 (-[WebFrame loadData:MIMEType:textEncodingName:baseURL:]): Ditto. 20743 (-[WebFrame _loadHTMLString:baseURL:unreachableURL:]): Ditto. 20744 (-[WebFrame loadHTMLString:baseURL:]): Ditto. 20745 (-[WebFrame loadAlternateHTMLString:baseURL:forUnreachableURL:]): Ditto. 20746 207472008-02-24 Darin Adler <darin@apple.com> 20748 20749 Reviewed by Sam. 20750 20751 - remove separate client calls for "standard" and "reload' history 20752 20753 * WebCoreSupport/WebFrameLoaderClient.h: 20754 * WebCoreSupport/WebFrameLoaderClient.mm: 20755 (WebFrameLoaderClient::updateGlobalHistory): 20756 207572008-02-23 Alexey Proskuryakov <ap@webkit.org> 20758 20759 Reviewed by Darin Adler. 20760 20761 Move basic threading support from WebCore to WTF. 20762 20763 * ForwardingHeaders/wtf/Threading.h: Added. 20764 * ForwardingHeaders/wtf/Locker.h: Added. 20765 207662008-02-23 David Kilzer <ddkilzer@apple.com> 20767 20768 Please clarify licensing for some files 20769 <http://bugs.webkit.org/show_bug.cgi?id=14970> 20770 20771 Reviewed by Darin Adler. 20772 20773 * Plugins/WebNetscapeDeprecatedFunctions.c: Updated copyright statement 20774 and added Apple BSD-style license. 20775 * Plugins/WebNetscapeDeprecatedFunctions.h: Ditto. 20776 207772008-02-22 John Sullivan <sullivan@apple.com> 20778 20779 Reviewed by Adam Roben 20780 20781 Reverted the changed from yesterday to add pasteAndMatchStyle:, as the existing 20782 pasteAsPlainText: has the same behavior. 20783 20784 * WebView/WebHTMLView.mm: 20785 (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): 20786 (-[WebHTMLView readSelectionFromPasteboard:]): 20787 (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): 20788 (-[WebHTMLView pasteAsRichText:]): 20789 (-[WebHTMLView paste:]): 20790 * WebView/WebView.mm: 20791 * WebView/WebViewPrivate.h: 20792 207932008-02-21 Anders Carlsson <andersca@apple.com> 20794 20795 Reviewed by Sam. 20796 20797 Use BackForwardList::create instead. 20798 20799 * History/WebBackForwardList.mm: 20800 (-[WebBackForwardList init]): 20801 208022008-02-21 John Sullivan <sullivan@apple.com> 20803 20804 Reviewed by Jessica Kahn 20805 20806 support for pasteAndMatchStyle: command (see <rdar://problem/5723952>) 20807 20808 * WebView/WebHTMLView.mm: 20809 (-[WebHTMLView _pasteWithPasteboard:allowPlainText:matchStyle:]): 20810 added matchStyle parameter, passed along to bridge (formerly always passed NO to bridge) 20811 (-[WebHTMLView readSelectionFromPasteboard:]): 20812 pass NO for new matchStyle parameter to match old behavior 20813 (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): 20814 validate pasteAndMatchStyle the same way as pasteAsRichText 20815 (-[WebHTMLView pasteAndMatchStyle:]): 20816 just like pasteAsRichText but passes YES for matchStyle 20817 (-[WebHTMLView pasteAsRichText:]): 20818 pass NO for new matchStyle parameter to match old behavior 20819 (-[WebHTMLView paste:]): 20820 ditto 20821 20822 * WebView/WebView.mm: 20823 added macro(pasteAndMatchStyle) 20824 20825 * WebView/WebViewPrivate.h: 20826 added pasteAndMatchStyle: to WebViewEditingActionsPendingPublic category 20827 208282008-02-20 Sam Weinig <sam@webkit.org> 20829 20830 Reviewed by Darin and Geoff. 20831 20832 - WebKit part of <rdar://problem/5754378> work around missing video on YouTube front page with a site-specific hack 20833 20834 * WebView/WebView.mm: 20835 (-[WebView _preferencesChangedNotification:]): Added a call to Settings::setNeedsSiteSpecificQuirks. 20836 There are currently no site-specific quirks on Mac, but we will propagate the state 20837 to WebCore to avoid possible mistakes later. 20838 208392008-02-19 Anders Carlsson <andersca@apple.com> 20840 20841 Reviewed by Darin Adler. 20842 20843 Move back WebKit methods that were unused in WebCore. 20844 20845 * Misc/WebNSURLExtras.mm: 20846 (+[NSURL _web_URLWithData:]): 20847 (+[NSURL _web_URLWithData:relativeToURL:]): 20848 (-[NSURL _web_originalData]): 20849 (-[NSURL _web_originalDataAsString]): 20850 (-[NSURL _web_isEmpty]): 20851 (-[NSURL _webkit_canonicalize]): 20852 (-[NSURL _webkit_URLByRemovingComponent:]): 20853 (-[NSURL _webkit_URLByRemovingFragment]): 20854 (-[NSURL _webkit_URLByRemovingResourceSpecifier]): 20855 (-[NSURL _webkit_isFileURL]): 20856 (-[NSString _webkit_isFileURL]): 20857 * WebCoreSupport/WebFrameLoaderClient.mm: 20858 (WebFrameLoaderClient::setTitle): 20859 * WebCoreSupport/WebSystemInterface.m: 20860 (InitWebCoreSystemInterface): 20861 208622008-02-18 Darin Adler <darin@apple.com> 20863 20864 Reviewed by Sam. 20865 20866 * Misc/WebNSAttributedStringExtras.mm: 20867 (+[NSAttributedString _web_attributedStringFromRange:]): Eliminate use of 20868 DeprecatedString. 20869 208702008-02-17 Sam Weinig <sam@webkit.org> 20871 20872 Reviewed by Dan Bernstein. 20873 20874 Fix for http://bugs.webkit.org/show_bug.cgi?id=17365 20875 document.createEvent("MessageEvent") throws NOT_SUPPORTED_ERR 20876 20877 * MigrateHeaders.make: Migrate DOMProgressEvent.h and DOMTextPrivate.h which were 20878 mistakenly not migrated. 20879 208802008-02-15 Dan Bernstein <mitz@apple.com> 20881 20882 Reviewed by Alexey Proskuryakov. 20883 20884 - WebKit part of fixing http://bugs.webkit.org/show_bug.cgi?id=17360 20885 <rdar://problem/5743131> REGRESSION: mp4 file downloaded from server is downloaded as html 20886 20887 * WebView/WebDataSource.mm: 20888 (+[WebDataSource _representationClassForMIMEType:]): 20889 (-[WebDataSource _responseMIMEType]): 20890 (-[WebDataSource subresources]): 20891 (-[WebDataSource subresourceForURL:]): 20892 * WebView/WebResource.mm: 20893 (-[WebResource _initWithData:URL:response:]): 20894 * WebView/WebResourcePrivate.h: 20895 208962008-02-15 Adam Roben <aroben@apple.com> 20897 20898 Make WebKit's FEATURE_DEFINES match WebCore's 20899 20900 Reviewed by Mark. 20901 20902 * Configurations/WebKit.xcconfig: 20903 209042008-02-14 Darin Adler <darin@apple.com> 20905 20906 Reviewed by Eric Seidel. 20907 20908 - updated for WebCore KURL changes 20909 20910 * History/WebHistoryItem.mm: 20911 (-[WebHistoryItem URL]): Removed getNSURL call. 20912 * Misc/WebElementDictionary.mm: 20913 (-[WebElementDictionary _absoluteImageURL]): Ditto. 20914 (-[WebElementDictionary _absoluteLinkURL]): Ditto. 20915 * Misc/WebNSAttributedStringExtras.mm: 20916 (fileWrapperForElement): Ditto. 20917 (+[NSAttributedString _web_attributedStringFromRange:]): Ditto. 20918 * Misc/WebNSURLExtras.mm: 20919 (-[NSString _webkit_stringByReplacingValidPercentEscapes]): Updated 20920 for function name change. 20921 * WebCoreSupport/WebContextMenuClient.mm: 20922 (WebContextMenuClient::downloadURL): Removed getNSURL call. 20923 * WebCoreSupport/WebDragClient.mm: 20924 (WebDragClient::createDragImageForLink): Ditto. 20925 * WebCoreSupport/WebFrameLoaderClient.mm: 20926 (WebFrameLoaderClient::dispatchWillPerformClientRedirect): Ditto. 20927 (WebFrameLoaderClient::startDownload): Ditto. 20928 (WebFrameLoaderClient::updateGlobalHistoryForStandardLoad): Ditto. 20929 (WebFrameLoaderClient::updateGlobalHistoryForReload): Ditto. 20930 (WebFrameLoaderClient::cancelledError): Ditto. 20931 (WebFrameLoaderClient::blockedError): Ditto. 20932 (WebFrameLoaderClient::cannotShowURLError): Ditto. 20933 (WebFrameLoaderClient::interruptForPolicyChangeError): Ditto. 20934 (WebFrameLoaderClient::cannotShowMIMETypeError): Ditto. 20935 (WebFrameLoaderClient::fileDoesNotExistError): Ditto. 20936 (WebFrameLoaderClient::willUseArchive): Ditto. 20937 (WebFrameLoaderClient::setTitle): Ditto. 20938 (WebFrameLoaderClient::actionDictionary): Ditto. 20939 (WebFrameLoaderClient::createFrame): Ditto. 20940 (WebFrameLoaderClient::objectContentType): Ditto. 20941 (WebFrameLoaderClient::createPlugin): Ditto. 20942 (WebFrameLoaderClient::createJavaAppletWidget): Ditto. 20943 * WebView/WebDataSource.mm: 20944 (-[WebDataSource _URL]): Ditto. 20945 (-[WebDataSource _initWithDocumentLoader:]): Ditto. 20946 (-[WebDataSource unreachableURL]): Ditto. 20947 * WebView/WebHTMLView.mm: 20948 (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto. 20949 209502008-02-14 Stephanie Lewis <slewis@apple.com> 20951 20952 Reviewed by Geoff. 20953 20954 Update order files. 20955 20956 * WebKit.order: 20957 209582008-02-14 Alexey Proskuryakov <ap@webkit.org> 20959 20960 Reviewed by Adam Roben. 20961 20962 http://bugs.webkit.org/show_bug.cgi?id=17207 20963 Database example doesn't work (requires not-yet-released Safari) 20964 20965 * WebCoreSupport/WebChromeClient.mm: 20966 (WebChromeClient::exceededDatabaseQuota): Check Safari version, and allow 5 megabytes of storage 20967 if it's too old. 20968 209692008-02-11 Darin Adler <darin@apple.com> 20970 20971 - roll out fix for <rdar://problem/5726016> REGRESSION: Xcode News window renders 20972 incorrectly due to visibility fix 20973 20974 Removed the Xcode-specific quirk at the request of some folks on the Xcode team. 20975 20976 * Misc/WebKitVersionChecks.h: Removed the constant. 20977 20978 * WebView/WebView.mm: 20979 (-[WebView _needsXcodeVisibilityQuirk]): Removed. 20980 (-[WebView _preferencesChangedNotification:]): Removed call to 20981 setNeedsXcodeVisibilityQuirk. 20982 209832008-02-12 Anders Carlsson <andersca@apple.com> 20984 20985 Reviewed by Mitz. 20986 20987 * WebCoreSupport/WebFrameBridge.mm: 20988 * WebCoreSupport/WebViewFactory.mm: 20989 (-[WebViewFactory imageTitleForFilename:size:]): 20990 Move implementation from WebFrameBridge to WebViewFactory. 20991 209922008-02-11 Darin Adler <darin@apple.com> 20993 20994 Reviewed by Mitz. 20995 20996 - fix <rdar://problem/5726016> REGRESSION: Xcode News window renders 20997 incorrectly due to visibility fix 20998 20999 Added an Xcode-specific quirk. 21000 21001 * Misc/WebKitVersionChecks.h: Added a constant for the "linked on or after" 21002 part of the check. 21003 21004 * WebView/WebView.mm: 21005 (-[WebView _needsXcodeVisibilityQuirk]): Added. 21006 (-[WebView _preferencesChangedNotification:]): Added a call to 21007 setNeedsXcodeVisibilityQuirk based on _needsXcodeVisibilityQuirk. 21008 210092008-02-10 Darin Adler <darin@apple.com> 21010 21011 - fix http://bugs.webkit.org/show_bug.cgi?id=17274 21012 REGRESSION: User Agent string broken in r30119 21013 21014 * WebView/WebView.mm: 21015 (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): 21016 Fix wrong variable name. Doh! 21017 210182008-02-09 Darin Adler <darin@apple.com> 21019 21020 Reviewed by Tim Hatcher. 21021 21022 - fix <rdar://problem/5725996> crash every time you open the Xcode documentation window 21023 21024 * WebView/WebView.mm: 21025 (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): Work around a bug in the 21026 garbage collector's Objective C++ support by not initializing a static to an object 21027 that needs to be marked when running under GC. 21028 210292008-02-05 Dan Bernstein <mitz@apple.com> 21030 21031 Reviewed by Darin Adler. 21032 21033 - WebKit part of <rdar://problem/5724303> Should implement writing direction shortcuts 21034 21035 The key bindings are Command-Control-left arrow and 21036 Command-Control-right arrow. To match AppKit, the bindings are enabled 21037 only when certain user defaults are set. 21038 21039 * WebView/WebHTMLView.mm: 21040 (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): 21041 (-[WebHTMLView toggleBaseWritingDirection:]): Changed to call 21042 Frame::baseWritingDirectionForSelectionStart() and 21043 Editor::setBaseWritingDirection() directly. 21044 (-[WebHTMLView changeBaseWritingDirection:]): Ditto. 21045 (writingDirectionKeyBindingsEnabled): Added. 21046 (-[WebHTMLView _changeBaseWritingDirectionTo:]): Added this helper 21047 method. 21048 (-[WebHTMLView changeBaseWritingDirectionToLTR:]): Added. 21049 (-[WebHTMLView changeBaseWritingDirectionToRTL:]): Added. 21050 * WebView/WebView.mm: 21051 210522008-02-05 Mark Rowe <mrowe@apple.com> 21053 21054 Unreviewed build fix. 21055 21056 * WebView/WebView.mm: Add missing #import. 21057 210582008-02-05 Mark Rowe <mrowe@apple.com> 21059 21060 Reviewed by Oliver Hunt. 21061 21062 Update versioning to support the mysterious future. 21063 21064 * Configurations/Version.xcconfig: Add SYSTEM_VERSION_PREFIX_1060. 21065 210662008-01-30 Justin Garcia <justin.garcia@apple.com> 21067 21068 Reviewed by Darin Adler. 21069 21070 <rdar://problem/5708115> REGRESSION: Words selected with a double click and copied won't paste into Mail 21071 21072 * WebView/WebHTMLView.mm: 21073 (-[WebHTMLView _smartInsertForString:replacingRange:beforeString:afterString:]): Brought 21074 this back, it's used by Mail. 21075 (-[WebHTMLView _canSmartReplaceWithPasteboard:]): This WebInternal method is 21076 also used by Mail. Moved to WebPrivate. 21077 * WebView/WebHTMLViewPrivate.h: Expose two methods that Mail uses here, so that we don't 21078 accidently remove them in the future. 21079 210802008-01-30 Mark Rowe <mrowe@apple.com> 21081 21082 Reviewed by Oliver Hunt. 21083 21084 Move off deprecated NSTableView methods. 21085 21086 * WebView/WebHTMLView.mm: 21087 (-[WebTextCompleteController _buildUI]): Switch from -setDrawsGrid: to -setGridStyleMask:. 21088 (-[WebTextCompleteController _placePopupWindow:]): Switch from -selectRow:byExtendingSelection: to -selectRowIndexes:byExtendingSelection:. 21089 (-[WebTextCompleteController filterKeyDown:]): Ditto. 21090 210912008-01-26 Mark Rowe <mrowe@apple.com> 21092 21093 Reviewed by Darin Adler. 21094 21095 Fix leaks seen after loading <http://www.funnyordie.com/videos/d70b5a11cb>. 21096 21097 * Misc/WebNSDataExtras.m: 21098 (-[NSString _web_capitalizeRFC822HeaderFieldName]): Transfer ownerhip of the allocated buffers 21099 to the new CFString so that they will be freed when no longer needed. 21100 211012008-01-26 Greg Bolsinga <bolsinga@apple.com> 21102 21103 <rdar://problem/5708388> WebDashboardRegion.h duplicated between WebCore / WebKit 21104 21105 Reviewed by Darin Adler. 21106 21107 * WebCoreSupport/WebDashboardRegion.h: Removed. 21108 * WebView/WebView.mm: Updated #import to use copy of WebDashboardRegion.h from WebCore. 21109 211102008-01-21 Darin Adler <darin@apple.com> 21111 21112 Reviewed by John Sullivan. 21113 21114 - fix <rdar://problem/5644324> Delegate-less WebKit clients should have no databases 21115 - add a missing export of WebDatabaseExpectedSizeKey 21116 - implement deleteOrigin: and remove deleteDatabasesWithOrigin: 21117 21118 * Storage/WebDatabaseManager.mm: 21119 (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Updated to check for a null 21120 name instead of calling isValid(). 21121 (-[WebDatabaseManager deleteOrigin:]): Implemented. 21122 (WebKitInitializeDatabasesIfNecessary): Updated for name change. 21123 21124 * Storage/WebDatabaseManagerPrivate.h: Removed deleteDatabasesWithOrigin:. 21125 21126 * WebCoreSupport/WebChromeClient.h: Updated for changes to ChromeClient. 21127 * WebCoreSupport/WebChromeClient.mm: 21128 (WebChromeClient::exceededDatabaseQuota): Replaced the two different client functions 21129 we had before with a single one. 21130 21131 * WebKit.exp: Added missing export for WebDatabaseExpectedSizeKey. 21132 21133 * WebView/WebPreferenceKeysPrivate.h: Removed WebKitDefaultDatabaseQuotaKey. 21134 * WebView/WebPreferences.m: 21135 (+[WebPreferences initialize]): Removed the default for WebKitDefaultDatabaseQuotaKey. 21136 * WebView/WebPreferencesPrivate.h: Removed defaultDatabaseQuota and 21137 setDefaultDatabaseQuota:. 21138 21139 * WebView/WebUIDelegatePrivate.h: Replaced the two different database quota delegate 21140 methods we had before with a single one. 21141 21142 * WebView/WebView.mm: 21143 (-[WebView _preferencesChangedNotification:]): Removed the code to set the 21144 default database origin quota in WebCore::Settings based on WebPreferences. 21145 21146 * WebView/WebViewInternal.h: Removed delegate method dispatch functions for unusual 21147 types of parameters that the database UI delegate methods had before. 21148 211492008-01-20 Mark Rowe <mrowe@apple.com> 21150 21151 Reviewed by Dan Bernstein. 21152 21153 Remove code bracketed by REMOVE_SAFARI_DOM_TREE_DEBUG_ITEM as we are no longer 21154 interested in supporting Safari 2 with TOT WebKit. 21155 21156 * WebView/WebView.mm: 21157 (+[WebView initialize]): 21158 211592008-01-17 Timothy Hatcher <timothy@apple.com> 21160 21161 Reviewed by Adam Roben. 21162 21163 <rdar://problem/5693558> REGRESSION (r29581): no form field focus rings 21164 and inactive text selection after loading a page 21165 Bug 16917: REGRESSION (r29581/2): Google Maps search box loses focused appearance 21166 21167 The problem was other frames were changing the FocusController's active 21168 status to false after the first responder frame set it to true. The last 21169 frame to call _updateActiveState would win. 21170 21171 * WebView/WebHTMLView.mm: 21172 (-[WebHTMLView _updateActiveState]): Only call page->focusController()->setActive() 21173 if the first responder is the current WebHTMLView or the WebFrameView. 21174 (-[WebHTMLView _web_firstResponderCausesFocusDisplay]): Removed, inlined code in _updateActiveState. 21175 211762008-01-18 Adam Roben <aroben@apple.com> 21177 21178 Rename _updateActiveState to _updateFocusedAndActiveState 21179 21180 Also renamed any related methods/members similarly. 21181 21182 Reviewed by Adele. 21183 21184 * WebView/WebHTMLView.mm: 21185 (-[WebHTMLViewPrivate dealloc]): 21186 (-[WebHTMLView _cancelUpdateFocusedAndActiveStateTimer]): 21187 (-[WebHTMLView close]): 21188 (_updateFocusedAndActiveStateTimerCallback): 21189 (-[WebHTMLView viewWillMoveToWindow:]): 21190 (-[WebHTMLView viewDidMoveToWindow]): 21191 (-[WebHTMLView windowDidBecomeKey:]): 21192 (-[WebHTMLView windowDidResignKey:]): 21193 (-[WebHTMLView becomeFirstResponder]): 21194 (-[WebHTMLView resignFirstResponder]): 21195 * WebView/WebHTMLViewInternal.h: 21196 * WebView/WebHTMLViewPrivate.h: 21197 211982008-01-17 John Sullivan <sullivan@apple.com> 21199 21200 Reviewed by Darin 21201 21202 - fixed <rdar://problem/5692068> -1 WebFrameView world leaks reported after closing view source window 21203 21204 * WebView/WebFrameView.mm: 21205 (-[WebFrameView initWithCoder:]): 21206 override to bump the global WebFrameView count 21207 212082008-01-16 Adam Roben <aroben@apple.com> 21209 21210 Updated for renames/removal of WebCore methods. 21211 21212 Reviewed by Darin Adler. 21213 21214 * Plugins/WebPluginController.mm: 21215 (-[WebPluginController webPlugInContainerSelectionColor]): Changed to 21216 ask isFocusedAndActive directly, instead of going through the frame 21217 bridge. 21218 * WebView/WebHTMLView.mm: 21219 (-[WebHTMLView _updateActiveState]): Updated for method renames. 21220 212212008-01-16 John Sullivan <sullivan@apple.com> 21222 21223 Reviewed by Adam and Dan 21224 21225 - cleaned up some existing logging 21226 21227 * WebView/WebHTMLView.mm: 21228 (-[WebHTMLView setNeedsDisplay:]): 21229 add method name to log, use "YES" and "NO" instead of (int)flag 21230 (-[WebHTMLView setNeedsLayout:]): 21231 ditto 21232 (-[WebHTMLView setNeedsToApplyStyles:]): 21233 ditto 21234 212352008-01-15 Geoffrey Garen <ggaren@apple.com> 21236 21237 Reviewed by Andre Boule. 21238 21239 Fixed <rdar://problem/5667627> [WebCache empty] implementation should 21240 not disable/enable the cache 21241 21242 Toggle the cache model instead -- toggling disable/enable just causes 21243 the cache to forget about resources, not reclaim their memory. 21244 21245 * Misc/WebCache.mm: 21246 (+[WebCache empty]): 21247 * WebView/WebView.mm: 21248 * WebView/WebViewInternal.h: 21249 212502008-01-15 Adele Peterson <adele@apple.com> 21251 21252 Reviewed by Adam and Antti. 21253 21254 WebKit part of fix for <rdar://problem/5619062> Add load progress indicator to video controls 21255 21256 * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): 21257 Removed initialization for GetMediaControlBackgroundImageData. Added initialization for DrawMediaSliderTrack. 21258 212592008-01-10 Geoffrey Garen <ggaren@apple.com> 21260 21261 Reviewed by John Sullivan. 21262 21263 Fixed some world leak reports: 21264 * <rdar://problem/5669436> PLT complains about world leak of 1 JavaScript 21265 Interpreter after running cvs-base suite 21266 21267 * <rdar://problem/5669423> PLT complains about world leak if browser 21268 window is open when PLT starts 21269 21270 These were both bugs in the reporting mechanism, so I took the 21271 opportunity to do some house cleaning there. 21272 21273 * Misc/WebCoreStatistics.h: Did a little renaming, to match 21274 JavaScriptCore better. I kept the methods with the old names around, 21275 though, because old versions of Safari need them. 21276 21277 * Misc/WebCoreStatistics.mm: Removed dependence on 21278 WebCore::JavaScriptStatistics, which is gone now. 21279 21280 These two methods are now distinct, for the sake of world leak reporting: 21281 (+[WebCoreStatistics javaScriptGlobalObjectsCount]): 21282 (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]): 21283 212842008-01-10 Maciej Stachowiak <mjs@apple.com> 21285 21286 Not reviewed. Build fix. 21287 21288 - Attempt to fix mac build. 21289 21290 * Storage/WebDatabaseManager.mm: 21291 212922008-01-10 Maciej Stachowiak <mjs@apple.com> 21293 21294 Reviewed by Sam. 21295 21296 - remove SecurityOriginData and fold its functionality into SecurityOrigin 21297 21298 * Storage/WebDatabaseManager.mm: 21299 (-[WebDatabaseManager origins]): 21300 (-[WebDatabaseManager databasesWithOrigin:]): 21301 (-[WebDatabaseManager detailsForDatabase:withOrigin:]): 21302 (-[WebDatabaseManager deleteDatabasesWithOrigin:]): 21303 (-[WebDatabaseManager deleteDatabase:withOrigin:]): 21304 * Storage/WebDatabaseTrackerClient.h: 21305 * Storage/WebDatabaseTrackerClient.mm: 21306 (WebDatabaseTrackerClient::dispatchDidModifyOrigin): 21307 (WebDatabaseTrackerClient::dispatchDidModifyDatabase): 21308 * Storage/WebSecurityOrigin.mm: 21309 (-[WebSecurityOrigin initWithProtocol:domain:port:]): 21310 (-[WebSecurityOrigin protocol]): 21311 (-[WebSecurityOrigin domain]): 21312 (-[WebSecurityOrigin port]): 21313 (-[WebSecurityOrigin usage]): 21314 (-[WebSecurityOrigin quota]): 21315 (-[WebSecurityOrigin setQuota:]): 21316 (-[WebSecurityOrigin isEqual:]): 21317 (-[WebSecurityOrigin dealloc]): 21318 (-[WebSecurityOrigin finalize]): 21319 (-[WebSecurityOrigin _initWithWebCoreSecurityOrigin:]): 21320 (-[WebSecurityOrigin _core]): 21321 * Storage/WebSecurityOriginInternal.h: 21322 * WebCoreSupport/WebChromeClient.h: 21323 * WebCoreSupport/WebChromeClient.mm: 21324 (WebChromeClient::requestQuotaIncreaseForNewDatabase): 21325 (WebChromeClient::requestQuotaIncreaseForDatabaseOperation): 21326 213272008-01-10 Sam Weinig <sam@webkit.org> 21328 21329 Reviewed by Anders Carlsson. 21330 21331 Fixes: http://bugs.webkit.org/show_bug.cgi?id=16522 21332 <rdar://problem/5657355> 21333 21334 * Plugins/WebBaseNetscapePluginView.mm: 21335 (-[WebBaseNetscapePluginView loadPluginRequest:]): call findFrameForNavigation 21336 to ensure the shouldAllowNavigation check is made. 21337 213382008-01-07 Nikolas Zimmermann <zimmermann@kde.org> 21339 21340 Reviewed by Mark. 21341 21342 Enable SVG_FONTS by default. 21343 21344 * Configurations/WebKit.xcconfig: 21345 213462008-01-07 Adele Peterson <adele@apple.com> 21347 21348 Reviewed by Antti, Adam, and Mitz. 21349 21350 WebKit part of fix for 21351 <rdar://problem/5619073> Updated look for <video> controls 21352 <rdar://problem/5619057> Add volume control to video controls 21353 21354 * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): 21355 213562008-01-07 Dan Bernstein <mitz@apple.com> 21357 21358 Reviewed by Dave Hyatt. 21359 21360 - <rdar://problem/5665216> Support the unicode-range property in @font-face rules 21361 21362 * Misc/WebNSAttributedStringExtras.mm: 21363 213642008-01-03 Alexey Proskuryakov <ap@webkit.org> 21365 21366 Reviewed by Darin Adler. 21367 21368 <rdar://problem/5463489> A number of layout tests should be using execCommand instead of textInputController 21369 21370 * WebView/WebView.mm: 21371 (-[WebView _executeCoreCommandByName:value:]): 21372 * WebView/WebViewPrivate.h: 21373 Added an SPI to implement layoutTestController.execCommand. 21374 213752008-01-03 Kevin Decker <kdecker@apple.com> 21376 21377 Reviewed by Darin Adler. 21378 21379 Fixed: <rdar://problem/4106190> Include "Where from" metadata in drag-and-dropped images 21380 21381 * Misc/WebNSFileManagerExtras.h: 21382 * Misc/WebNSFileManagerExtras.m: 21383 (-[NSFileManager _webkit_setMetadataURL:referrer:atPath:]): Added new method. Uses WebKitSystemInterface to set 21384 "Where from:" metadata information. 21385 * WebView/WebHTMLView.mm: 21386 (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Added "Where from:" metadata for drag and dropped images. 21387 213882008-01-03 Alice Liu <alice.liu@apple.com> 21389 21390 Reviewed by Darin Adler. 21391 21392 This fixes pageup/down in iframes. test for this is fast/frames/iframe-scroll-page-up-down.html 21393 21394 * WebView/WebHTMLView.mm: 21395 (-[WebHTMLView doCommandBySelector:]): 21396 Have the editor handle all the commands it supports instead of just text commands. 21397 If not handled by the editor, the webview will handle the command. 21398 213992008-01-02 Kevin Decker <kdecker@apple.com> 21400 21401 Reviewed by Darin Adler. 21402 21403 Fixed: <rdar://problem/5660603> QuickDraw plug-ins can cause a 100% reproducible assertion failure in AppKit (breaks Safari UI) 21404 21405 * Plugins/WebBaseNetscapePluginView.mm: 21406 (-[WebBaseNetscapePluginView updateAndSetWindow]): Simplified an early return for non-QuickDraw plug-ins and switched 21407 to using the more NSView friendly version of lockFocus, lockFocusIfCanDraw. 21408 214092008-01-01 David D. Kilzer <ddkilzer@webkit.org> 21410 21411 Reviewed by Dan. 21412 21413 - fix http://bugs.webkit.org/show_bug.cgi?id=16700 21414 Fix -[WebDefaultPolicyDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:] 21415 21416 * DefaultDelegates/WebDefaultPolicyDelegate.m: Check return value of 21417 -[NSFileManager fileExistsAtPath:isDirectory:] before using the value 21418 of isDirectory. 21419 214202007-12-29 Nikolas Zimmermann <zimmermann@kde.org> 21421 21422 Reviewed by Eric. 21423 21424 Add DOMSVGFontElement/DOMSVGGlyphElement/DOMSVGMissingGlyphElement to MigrateHeaders.make 21425 21426 * MigrateHeaders.make: 21427 214282007-12-25 Dan Bernstein <mitz@apple.com> 21429 21430 Reviewed by Oliver Hunt. 21431 21432 - fix an assertion failure when pressing the num lock key 21433 21434 * WebView/WebHTMLView.mm: 21435 (-[WebHTMLView flagsChanged:]): Avoid passing key code 10 down to 21436 WebCore. 21437 214382007-12-20 Darin Adler <darin@apple.com> 21439 21440 Reviewed by Oliver. 21441 21442 - fix <rdar://problem/5658787> Selector -[WebView insertLineBreak:] is not implemented 21443 21444 * WebView/WebView.mm: Added all selectors implemented by WebHTMLView to the list of 21445 selectors to forward here. The new ones are: changeBaseWritingDirection:, changeSpelling:, 21446 deleteToMark:, insertLineBreak:, moveParagraphBackwardAndModifySelection:, 21447 moveParagraphForwardAndModifySelection:, pageDownAndModifySelection:, pageUpAndModifySelection:, 21448 selectToMark:, setMark:, swapWithMark:, takeFindStringFromSelection:, toggleBaseWritingDirection:, 21449 and transpose:. 21450 214512007-12-20 Kevin Decker <kdecker@apple.com> 21452 21453 Reviewed by Anders. 21454 21455 Fixed: <rdar://problem/5638288> REGRESSION: Flash movies show up in other tabs above the page (16373) 21456 21457 * Plugins/WebBaseNetscapePluginView.mm: 21458 (-[WebBaseNetscapePluginView updateAndSetWindow]): QuickDraw plug-ins must manually be told when to stop 21459 writing to the window backing store. The problem was that change-set 28400 introduced an early return 21460 which prevented this necessary operation. The fix is to limit the scope of the early return to CG and GL 21461 plug-ins and to tweak the needsFocus check to prevent an exception from occurring in QuickDraw-based plug-ins. 21462 214632007-12-19 Geoffrey Garen <ggaren@apple.com> 21464 21465 Reviewed by Oliver Hunt. 21466 21467 Build fix. 21468 21469 * ForwardingHeaders/kjs/SymbolTable.h: Added. 21470 * ForwardingHeaders/wtf/VectorTraits.h: Added. 21471 214722007-12-16 Mark Rowe <mrowe@apple.com> 21473 21474 Reviewed by Maciej Stachowiak. 21475 21476 Refactor Mac plugin stream code to use the shared NetscapePlugInStreamLoader implementation. 21477 21478 * Plugins/WebBaseNetscapePluginStream.h: 21479 * Plugins/WebNetscapePluginStream.h: 21480 * Plugins/WebNetscapePluginStream.mm: 21481 (-[WebNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]): 21482 (-[WebNetscapePluginStream dealloc]): 21483 (-[WebNetscapePluginStream finalize]): 21484 * Plugins/WebPlugInStreamLoaderDelegate.h: Moved from WebCore. 21485 * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.h: Added. 21486 (WebNetscapePlugInStreamLoaderClient::WebNetscapePlugInStreamLoaderClient): 21487 * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.mm: Added. 21488 (WebNetscapePlugInStreamLoaderClient::didReceiveResponse): Call through to the equivalent WebPlugInStreamLoaderDelegate method. 21489 (WebNetscapePlugInStreamLoaderClient::didReceiveData): Ditto. 21490 (WebNetscapePlugInStreamLoaderClient::didFail): Ditto. 21491 (WebNetscapePlugInStreamLoaderClient::didFinishLoading): Ditto. 21492 214932007-12-16 Alexey Proskuryakov <ap@webkit.org> 21494 21495 Reviewed by Darin Adler. 21496 21497 http://bugs.webkit.org/show_bug.cgi?id=14140 21498 <rdar://problem/5270958> REGRESSION: Complex system KeyBindings don't work properly 21499 21500 * WebView/WebHTMLView.mm: 21501 (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): Made command replaying work 21502 when handling keypress, too. 21503 (-[WebHTMLView doCommandBySelector:]): Adapted for the new way to store commands in events. 21504 (-[WebHTMLView insertText:]): Append a command, not replace the whole existing vector. Also, 21505 restore the state for additional commands to be saved correctly. 21506 215072007-12-14 David D. Kilzer <ddkilzer@apple.com> 21508 21509 <rdar://problem/5647272> Remove user agent string hack for flickr.com 21510 21511 Reviewed by Darin Adler. 21512 21513 * WebView/WebView.mm: 21514 (-[WebView _userAgentForURL:]): Removed hack. 21515 215162007-12-14 David D. Kilzer <ddkilzer@apple.com> 21517 21518 <rdar://problem/5647261> Remove user agent string hack for yahoo.com 21519 21520 Reviewed by Darin Adler. 21521 21522 * WebView/WebView.mm: 21523 (-[WebView _userAgentForURL:]): Removed hack. 21524 215252007-12-14 Darin Adler <darin@apple.com> 21526 21527 Reviewed by Brady. 21528 21529 - fix http://bugs.webkit.org/show_bug.cgi?id=16296 21530 <rdar://problem/5635641> -[WebFrameLoadDelegate didReceiveIcon:forFrame:] never called 21531 21532 * WebView/WebView.mm: 21533 (-[WebView setFrameLoadDelegate:]): Call [WebIconDatabase sharedIconDatabase] if the 21534 a didReceiveIcon method is present. 21535 215362007-12-14 Darin Adler <darin@apple.com> 21537 21538 Reviewed by Alexey. 21539 21540 - Changed a few more editing operations to use WebCore instead of WebKit. 21541 - Removed some obsolete unused code. 21542 21543 * WebCoreSupport/WebFrameBridge.h: Moved declarations of methods that are both 21544 defined and used on the WebKit side to here. These no longer belong on the bridge 21545 and should be moved to the WebFrame class (or elsewhere). 21546 * WebCoreSupport/WebFrameBridge.mm: Removed some unused methods. 21547 21548 * WebView/WebFrameView.mm: 21549 (+[WebFrameView _viewTypesAllowImageTypeOmission:]): Fix typo in comment. 21550 21551 * WebView/WebHTMLView.mm: 21552 (-[WebHTMLViewPrivate dealloc]): Removed unused firstResponderTextViewAtMouseDownTime. 21553 (-[WebHTMLViewPrivate clear]): Ditto. 21554 (-[WebHTMLView _setMouseDownEvent:]): Ditto. 21555 (commandNameForSelector): Added special cases for pageDown:, pageDownAndModifySelection:, 21556 pageUp:, and pageUpAndModifySelection:, since those names probably aren't specific enough 21557 to be used in WebCore (what AppKit calls scrollPageDown: vs. pageDown: needs to be 21558 disambiguated with the word "Move"). Added deleteBackward:, 21559 deleteBackwardByDecomposingPreviousCharacter:, deleteForward:, deleteToBeginningOfLine:, 21560 deleteToBeginningOfParagraph:, deleteToEndOfLine:, deleteToEndOfParagraph:, pageDown:, 21561 pageDownAndModifySelection:, pageUp:, pageUpAndModifySelection:, selectLine:, 21562 selectParagraph:, selectSentence:, and selectWord: to the list of commands that are 21563 forwarded to WebCore. 21564 (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Eliminated the long list of 21565 operations that we forward to WebCore. Instead, look up any command that WebCore can 21566 handle, after any that we handle specially in WebHTMLView. Also fixed a bug where 21567 an item that's not a menu item with changeBaseWritingDirection:NSWritingDirectionNatural 21568 would end up enabled instead of disabled and streamlined the logic for toggleGrammarChecking:. 21569 (-[WebHTMLView mouseDown:]): Removed unused firstResponderTextViewAtMouseDownTime. 21570 (-[WebHTMLView becomeFirstResponder]): Removed unused willBecomeFirstResponderForNodeFocus. 21571 (-[WebHTMLView resignFirstResponder]): Ditto. 21572 (-[WebHTMLView checkSpelling:]): Took unneeded extra initialization of NSSpellChecker. 21573 21574 * WebView/WebHTMLViewInternal.h: Removed unused willBecomeFirstResponderForNodeFocus, 21575 firstResponderTextViewAtMouseDownTime, _textViewWasFirstResponderAtMouseDownTime: and 21576 _willMakeFirstResponderForNodeFocus. 21577 215782007-12-13 Alexey Proskuryakov <ap@webkit.org> 21579 21580 Reviewed by Darin Adler. 21581 21582 Turn on keyboard event processing quirks for feed views and old applications on Mac OS X. 21583 21584 * Misc/WebKitVersionChecks.h: 21585 * WebView/WebView.mm: 21586 (-[WebView _needsKeyboardEventHandlingQuirks]): 21587 (-[WebView _preferencesChangedNotification:]): 21588 215892007-12-12 Brady Eidson <beidson@apple.com> 21590 21591 Reviewed by Sam Weinig 21592 21593 Fix for <rdar://problem/4886844> and lay groundwork for <rdar://problem/4516170> (Back/Forward Cache on Windows) 21594 21595 * WebCoreSupport/WebCachedPagePlatformData.h: Added. 21596 (WebCachedPagePlatformData::WebCachedPagePlatformData): Constructor takes a WebDocumentView for later restoration 21597 (WebCachedPagePlatformData::clear): 21598 (WebCachedPagePlatformData::webDocumentView): 21599 21600 * WebCoreSupport/WebFrameLoaderClient.h: 21601 * WebCoreSupport/WebFrameLoaderClient.mm: 21602 (WebFrameLoaderClient::savePlatformDataToCachedPage): 21603 (WebFrameLoaderClient::transitionToCommittedFromCachedPage): Don't set the DocumentLoader to the Frame here, 21604 because that is now done in WebCore. 21605 (WebFrameLoaderClient::transitionToCommittedForNewPage): 21606 216072007-12-12 Mark Rowe <mrowe@apple.com> 21608 21609 Reviewed by Dave Kilzer. 21610 21611 Remove abuse of projectDirPath from WebKit.xcodeproj to fix Production builds. 21612 21613 * Configurations/WebKit.xcconfig: 21614 216152007-12-11 Sam Weinig <sam@webkit.org> 21616 21617 Reviewed by Darin Adler. 21618 21619 Scrub URL out of the tree in preparation for renaming KURL to URL. 21620 21621 * WebCoreSupport/WebFrameLoaderClient.mm: 21622 (WebFrameLoaderClient::actionDictionary): 21623 * WebView/WebDataSource.mm: 21624 (-[WebDataSource _URL]): 21625 * WebView/WebView.mm: 21626 (-[WebView _dispatchDidReceiveIconFromWebFrame:]): 21627 216282007-12-11 Darin Adler <darin@apple.com> 21629 21630 Reviewed by Geoff. 21631 21632 - change more editing commands to use WebCore::Editor 21633 - change to use the new WebCore::Editor::command() function 21634 21635 * WebView/WebHTMLView.mm: Changed alignCenter, alignJustified, alignLeft, 21636 alignRight, cut, copy, deleteToMark, indent, insertNewlineIgnoringFieldEditor, 21637 insertTabIgnoringFieldEditor, outdent, selectAll, selectToMark, setMark, 21638 subscript, superscript, swapWithMark, underline, unscript, yank, and yankAndSelect 21639 to use the "forward to WebCore" macro instead of having hand-written implementations. 21640 (kit): Added function to change a TriState to an AppKit-style tri-state value. 21641 (-[WebHTMLView coreCommandBySelector:]): Added. No longer converts case of the 21642 first character or copies the selector name, since the Editor commands are not case 21643 sensitive any more. Returns a command object. 21644 (-[WebHTMLView coreCommandByName:]): Added. 21645 (-[WebHTMLView executeCoreCommandBySelector:]): Renamed from callWebCoreCommand:, 21646 and changed to use the new coreCommandBySelector: method. 21647 (-[WebHTMLView executeCoreCommandByName:]): Added. 21648 (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Changed all the 21649 methods that call through to WebCore to also use the state() and isEnabled() 21650 functions on the commands for the menu item state and user interface item enabling. 21651 (-[WebHTMLView _handleStyleKeyEquivalent:]): Use ToggleBold and ToggleItalic by 21652 name rather than having local methods for them; no need for methods with a single 21653 call site. 21654 (-[WebHTMLView insertParagraphSeparator:]): Use executeCoreCommandByName: rather 21655 than the deprecated execCommand(). 21656 (-[WebHTMLView doCommandBySelector:]): Changed to use command().execute() rather 21657 than the deprecated execCommand(). 21658 * WebView/WebHTMLViewInternal.h: Removed some unneeded method declarations. 21659 216602007-12-07 Alexey Proskuryakov <ap@webkit.org> 21661 21662 Reviewed by Darin Adler. 21663 21664 <rdar://problem/5535636> 21665 Have to press 4 times instead of 2 times to get the expected result of ^^ with german keyboard. 21666 21667 http://bugs.webkit.org/show_bug.cgi?id=13916 21668 JavaScript detects Tab as a character input on a textfield validation 21669 21670 * WebCoreSupport/WebEditorClient.h: 21671 Renamed handleKeypress() to handleKeyboardEvent(), as it gets both keydowns and keypresses. 21672 Renamed handleInputMethodKeypress() to handleInputMethodKeydown(). 21673 * WebCoreSupport/WebEditorClient.mm: 21674 (WebEditorClient::handleKeyboardEvent): This change makes sense only remotely, but it helped 21675 to get tests working. I guess Mac keyboard event handling needs further refactoring. 21676 21677 * WebView/WebHTMLView.mm: 21678 (selectorToCommandName): Convert AppKit editing selector name to Editor command name - extracted 21679 from callWebCoreCommand:. 21680 (_interceptEditingKeyEvent:shouldSaveCommand:): Insert text from keypress. 21681 21682 * WebView/WebPDFView.mm: 21683 (-[WebPDFView PDFViewWillClickOnLink:withURL:]): 21684 Convert incoming platform KeyDown into RawKeyDown, as this is what the view is interested in. 21685 216862007-12-10 Brady Eidson <beidson@apple.com> 21687 21688 Reviewed by John Sullivan 21689 21690 Fix for <rdar://problem/5640080> - Database UI delegate calls need to specify WebFrame 21691 21692 This is because a common UI case is to want to know the originating URL of a Database 21693 21694 * WebCoreSupport/WebChromeClient.mm: 21695 (WebChromeClient::requestQuotaIncreaseForNewDatabase): 21696 (WebChromeClient::requestQuotaIncreaseForDatabaseOperation): 21697 21698 * WebView/WebUIDelegatePrivate.h: 21699 21700 * WebView/WebView.mm: 21701 (CallDelegateReturningUnsignedLongLong): 21702 (CallUIDelegateReturningUnsignedLongLong): 21703 * WebView/WebViewInternal.h: 21704 217052007-12-10 Timothy Hatcher <timothy@apple.com> 21706 21707 Reviewed by Mark Rowe. 21708 21709 <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x 21710 21711 * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR, 21712 so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX. 21713 217142007-12-10 Kevin Decker <kdecker@apple.com> 21715 21716 Reviewed by Darin Adler. 21717 21718 Fixed: <rdar://problem/4290098> Right-mouse click on element doesn't call onmousedown handler 21719 21720 * WebView/WebHTMLView.mm: 21721 (-[WebHTMLView menuForEvent:]): Match behavior of other browsers by sending an onmousedown event for right clicks. 21722 217232007-12-08 Oliver Hunt <oliver@apple.com> 21724 21725 Reviewed by Sam W. 21726 21727 Split the ENABLE_SVG_EXPERIMENTAL_FEATURES flag into separate flags. 21728 21729 Fixes <rdar://problem/5620249> Must disable SVG animation 21730 <rdar://problem/5612772> Disable SVG filters on Mac to match Windows behavior 21731 21732 Minor updates to the feature flags used. 21733 21734 * Configurations/WebKit.xcconfig: 21735 * DOM/WebDOMOperations.mm: 21736 217372007-12-07 Darin Adler <darin@apple.com> 21738 21739 Reviewed by Kevin Decker and Tim Hatcher. 21740 21741 - speculative fix for <rdar://problem/5400159> CrashTracer: [USER] 726 crashes 21742 in Safari at com.apple.WebKit: -[WebHTMLView(WebPrivate) _updateMouseoverWithFakeEvent] + 389 21743 21744 * WebView/WebHTMLView.mm: 21745 (-[WebHTMLView _frameOrBoundsChanged]): Only schedule the mouseover timer if we are in a window 21746 and not closed. That's because viewDidMoveToWindow and close are the entry points for cancelling. 21747 (-[WebHTMLView close]): Add code to cancel both timers. Needed for the case where the entire 21748 window goes away, and the view is never removed from the window. 21749 (-[WebHTMLView viewDidMoveToWindow]): Don't do work if the view is closed. 21750 217512007-12-07 Darin Adler <darin@apple.com> 21752 21753 Reviewed by Mitz. 21754 21755 - http://bugs.webkit.org/show_bug.cgi?id=15981 21756 speed up visited-link code a bit 21757 21758 * History/WebHistory.mm: Removed unused Latin-1 code path. 21759 (-[_WebCoreHistoryProvider containsURL:length:]): Updated for method name change. 21760 217612007-12-07 Geoffrey Garen <ggaren@apple.com> 21762 21763 Reviewed by Sam Weinig. 21764 21765 Added a forwarding header, since we now #include nodes.h through some 21766 JavaScriptCore headers. 21767 21768 * ForwardingHeaders/wtf/ListRefPtr.h: Added. 21769 217702007-12-06 Brady Eidson <beidson@apple.com> 21771 21772 Reviewed by Oliver's rubber stamp 21773 21774 Let's go ahead and call the correct UI Delegate method, shall we? 21775 21776 * WebCoreSupport/WebChromeClient.mm: 21777 (WebChromeClient::requestQuotaIncreaseForDatabaseOperation): Call the correct UI delegate 21778 217792007-12-06 Adam Roben <aroben@apple.com> 21780 21781 Remove some assertions we know can fire and replace them with a FIXME 21782 21783 Reviewed by Anders. 21784 21785 * WebCoreSupport/WebFrameLoaderClient.mm: 21786 217872007-12-06 Timothy Hatcher <timothy@apple.com> 21788 21789 Change the ASSERT added for the previous fix. The ASSERT was firing for 10.5.0. 21790 Only assert if the major version is zero, since zero is handled in the other cases. 21791 21792 * WebView/WebView.mm: 21793 (callGestalt): Remove the ASSERT. 21794 (createMacOSXVersionString): ASSERT that major is not zero. 21795 217962007-12-06 Darin Adler <darin@apple.com> 21797 21798 Reviewed by Tim Hatcher. 21799 21800 - fix <rdar://problem/5513394> No way to detect Tiger vs Leopard from Safari's user agent string 21801 21802 * WebView/WebView.mm: 21803 (callGestalt): Added. 21804 (createMacOSXVersionString): Added. 21805 (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): Added Mac OS X version string, 21806 right after the string "Mac OS X", but with underscores instead of dots to avoid the dreaded 21807 "4." problem (old libraries that think a "4." anywhere in the user agent means Netscape 4). 21808 (-[WebView _userAgentForURL:]): Fixed incorrect bug numbers. 21809 218102007-12-04 Geoffrey Garen <ggaren@apple.com> 21811 21812 Reviewed by Darin Adler. 21813 21814 Third step in refactoring JSGlobalObject: Moved data members and data 21815 member access from Interpreter to JSGlobalObject. 21816 21817 * WebView/WebFrame.mm: 21818 (-[WebFrame _attachScriptDebugger]): 21819 218202007-12-04 Kevin McCullough <kmccullough@apple.com> 21821 21822 Reviewed by Darin Adler. 21823 21824 - <rdar://5621435> 21825 - Security Fix. Instead of having it off by default, WebKit now must 21826 explicitly turn off local-resource restriction when needed for backwards 21827 coimpatibility reasons. 21828 21829 * WebView/WebView.mm: 21830 (-[WebView _commonInitializationWithFrameName:groupName:]): 21831 218322007-12-05 Brady Eidson <beidson@apple.com> 21833 21834 Reviewed by Kevin Deckers rubberstamp 21835 21836 Disclose and export the Databases Directory defaults key 21837 21838 * Storage/WebDatabaseManager.mm: 21839 * Storage/WebDatabaseManagerPrivate.h: 21840 * WebKit.exp: 21841 218422007-12-04 Kevin Decker <kdecker@apple.com> 21843 21844 Reviewed by Anders. 21845 21846 <rdar://problem/5629125> PluginInfoStore needs the ability to return the name of a plug-in for a given MIME type 21847 21848 * WebCoreSupport/WebViewFactory.mm: 21849 (-[WebViewFactory pluginNameForMIMEType:]): Added. 21850 218512007-12-04 Brady Eidson <beidson@apple.com> 21852 21853 Reviewed by Mark Rowe 21854 21855 Tweaked the way we typedef and cast these objc_msgSend calls 21856 21857 * WebView/WebView.mm: 21858 (CallDelegateReturningUnsignedLongLong): 21859 218602007-12-04 John Sullivan <sullivan@apple.com> 21861 21862 Reviewed by Brady Eidson (with help from Mark Rowe) 21863 21864 Fixed return values for unsigned-long-long delegate methods 21865 21866 * WebView/WebView.mm: 21867 (CallDelegateReturningUnsignedLongLong): 21868 redid the change that Brady did at home over the weekend but forgot to check in 21869 218702007-11-27 Adam Roben <aroben@apple.com> 21871 21872 Remove -[WebFrameBridge setNeedsReapplyStyles] 21873 21874 This functionality is now WebCore's responsibility. 21875 21876 Reviewed by Hyatt. 21877 21878 * WebCoreSupport/WebFrameBridge.mm: 21879 * WebKit.order: 21880 218812007-12-04 John Sullivan <sullivan@apple.com> 21882 21883 Reviewed by Darin 21884 21885 Added deleteOrigin: SPI, which isn't fully implemented 21886 21887 * Storage/WebDatabaseManagerPrivate.h: 21888 * Storage/WebDatabaseManager.mm: 21889 (-[WebDatabaseManager deleteOrigin:]): 21890 just calls deleteDatabasesWithOrigin: for now, but needs to delete origin itself too 21891 218922007-12-04 Timothy Hatcher <timothy@apple.com> 21893 21894 Reviewed by Mark Rowe. 21895 21896 Remove a check for early versions of Leopard CFNetwork now that 21897 Leopard has shipped. 21898 21899 * Misc/WebKitVersionChecks.h: Remove WEBKIT_FIRST_CFNETWORK_VERSION_WITH_LARGE_DISK_CACHE_FIX. 21900 * WebView/WebView.mm: 21901 (+[WebView _setCacheModel:]): Remove the early Leopard CFNetwork check. 21902 219032007-12-04 Kevin Decker <kdecker@apple.com> 21904 21905 Reviewed by Darin Adler. 21906 21907 Revised fix for: <rdar://problem/5586978> REGRESSION (Safari 2-3): WebKit sometimes doesn't invoke Flash's NPP_SetWindow function and causes a hang 21908 21909 This fix is exactly the same as chageset 28359 with the exception of an added early return in 21910 updateAndSetWindow to cover the additional case of when a plug-in isn't drawable. 21911 21912 The CG-based Flash player would sometimes hang because (for CoreGraphics-based plug-ins) our code would 21913 only call into the NPP_SetWindow() function when we tell the plug-in to draw. This created havoc with 21914 Flash because Flash expects the browser to call NPP_SetWindow() and provide a valid graphics context 21915 regardless of whether or not it actually needs to draw. 21916 21917 * Plugins/WebBaseNetscapePluginView.mm: 21918 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Removed an incorrect comment and toned 21919 down an ASSERT that was too strict. 21920 (-[WebBaseNetscapePluginView updateAndSetWindow]): Removed an early return for CoreGraphics-based plug-ins 21921 which would sometimes altogether prevent updating the PortState and calling into a plug-ins NPP_SetWindow() 21922 function. Also tweaked a comment and added an early return if the plug-in can't draw. 21923 219242007-12-04 Darin Adler <darin@apple.com> 21925 21926 Reviewed by Kevin Decker. 21927 21928 * WebCoreSupport/WebFrameLoaderClient.h: Removed obsolete privateBrowsingEnabled. 21929 * WebCoreSupport/WebFrameLoaderClient.mm: Ditto. 21930 * WebKit.order: Ditto. 21931 219322007-12-03 Dan Bernstein <mitz@apple.com> 21933 21934 Reviewed by Dave Hyatt. 21935 21936 - fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame 21937 21938 * WebView/WebHTMLView.mm: 21939 (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Removed the code 21940 that checked if the view had resized and sent the resize event, since 21941 FrameView sends resize events now. 21942 * WebView/WebHTMLViewInternal.h: 21943 219442007-12-03 Timothy Hatcher <timothy@apple.com> 21945 21946 Reviewed by Darin Adler. 21947 21948 Change WebViewGetResourceLoadDelegateImplementations and WebViewGetFrameLoadDelegateImplementations 21949 to return a pointer to the implementation struct instead of a copy of the struct. This changes 21950 all of the callers to dereference the pointer to access the struct fields. 21951 21952 * Plugins/WebNullPluginView.mm: 21953 (-[WebNullPluginView reportFailure]): 21954 * WebCoreSupport/WebFrameBridge.mm: 21955 * WebCoreSupport/WebFrameLoaderClient.mm: 21956 (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache): 21957 (WebFrameLoaderClient::assignIdentifierToInitialRequest): 21958 (WebFrameLoaderClient::dispatchWillSendRequest): 21959 (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): 21960 (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge): 21961 (WebFrameLoaderClient::dispatchDidReceiveResponse): 21962 (WebFrameLoaderClient::willCacheResponse): 21963 (WebFrameLoaderClient::dispatchDidReceiveContentLength): 21964 (WebFrameLoaderClient::dispatchDidFinishLoading): 21965 (WebFrameLoaderClient::dispatchDidFailLoading): 21966 (WebFrameLoaderClient::dispatchDidHandleOnloadEvents): 21967 (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): 21968 (WebFrameLoaderClient::dispatchDidCancelClientRedirect): 21969 (WebFrameLoaderClient::dispatchWillPerformClientRedirect): 21970 (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage): 21971 (WebFrameLoaderClient::dispatchWillClose): 21972 (WebFrameLoaderClient::dispatchDidStartProvisionalLoad): 21973 (WebFrameLoaderClient::dispatchDidReceiveTitle): 21974 (WebFrameLoaderClient::dispatchDidCommitLoad): 21975 (WebFrameLoaderClient::dispatchDidFailProvisionalLoad): 21976 (WebFrameLoaderClient::dispatchDidFailLoad): 21977 (WebFrameLoaderClient::dispatchDidFinishDocumentLoad): 21978 (WebFrameLoaderClient::dispatchDidFinishLoad): 21979 (WebFrameLoaderClient::dispatchDidFirstLayout): 21980 * WebView/WebView.mm: 21981 (WebViewGetResourceLoadDelegateImplementations): 21982 (WebViewGetFrameLoadDelegateImplementations): 21983 (-[WebView _dispatchDidReceiveIconFromWebFrame:]): 21984 * WebView/WebViewInternal.h: 21985 219862007-12-03 Timothy Hatcher <timothy@apple.com> 21987 21988 Reviewed by Brady Eidson. 21989 21990 <rdar://problem/5539913> 188 crashes in WebViewGetFrameLoadDelegateImplementations 21991 <rdar://problem/5586095> CrashTracer: [USER] 5000+ crashes in Safari and Dashboard in dispatchDidFailLoading 21992 <rdar://problem/5607081> CrashTracer: [USER] 2150 crashes in Safari at com.apple.WebKit: 21993 WebViewGetResourceLoadDelegateImplementations + 28 21994 21995 * WebView/WebView.mm: 21996 (-[WebView _cacheResourceLoadDelegateImplementations]): If the delegate is nil, bzero the 21997 implementation cache. This just prevents us from calling getMethod() multiple times just to zero. 21998 (-[WebView _cacheFrameLoadDelegateImplementations]): Ditto. 21999 (WebViewGetResourceLoadDelegateImplementations): Return a zeroed implementations struct 22000 if the WebView is nil. This fixes the crashes. 22001 (WebViewGetFrameLoadDelegateImplementations): Ditto. 22002 220032007-12-02 Geoffrey Garen <ggaren@apple.com> 22004 22005 Reviewed by Eric Seidel. 22006 22007 Updated to match the JavaScriptCore change to move virtual methods from 22008 Interpreter to JSGlobalObject. 22009 22010 * WebView/WebFrame.mm: 22011 (-[WebFrame globalContext]): Use the toRef function instead of manually 22012 casting. 22013 220142007-12-01 Brady Eidson <beidson@apple.com> 22015 22016 Reviewed by Tim 22017 22018 Added a default database quota of 5mb to the default WebPreferences 22019 22020 * WebView/WebPreferences.m: 22021 (+[WebPreferences initialize]): 22022 220232007-11-30 John Sullivan <sullivan@apple.com> 22024 22025 Reviewed by Geoff Garen 22026 22027 Added another symbol for WebDatabaseManager clients 22028 22029 * WebKit.exp: 22030 added .objc_class_name_WebSecurityOrigin 22031 220322007-11-30 Brady Eidson <beidson@apple.com> 22033 22034 Reviewed by Geoff 22035 22036 Add isEqual operator to WebSecurityOrigin 22037 22038 * Storage/WebSecurityOrigin.mm: 22039 (-[WebSecurityOrigin isEqual:]): 22040 220412007-11-30 John Sullivan <sullivan@apple.com> 22042 22043 Reviewed by Darin 22044 22045 Tweaks to newly-declared NSString * constants to make them usable from clients 22046 22047 * Storage/WebDatabaseManagerPrivate.h: 22048 * Storage/WebDatabaseManager.mm: 22049 removed "const" from new NSNotification names and userInfo keys; these generate compiler warnings when used 22050 22051 * WebKit.exp: 22052 export new NSNotification names and userInfo keys so clients can use them 22053 220542007-11-29 Anders Carlsson <andersca@apple.com> 22055 22056 Reviewed by John. 22057 22058 Rename WebKitShrinksStandaloneImagesToFitKey to WebKitShrinksStandaloneImagesToFit. 22059 22060 This is safe to do because the preference is off by default and Safari 3, which is the only client that turns it on, 22061 is using the setter and not messing around with NSUserDefaults. 22062 22063 * WebView/WebPreferenceKeysPrivate.h: 22064 * WebView/WebPreferences.m: 22065 (+[WebPreferences initialize]): 22066 (-[WebPreferences shrinksStandaloneImagesToFit]): 22067 (-[WebPreferences setShrinksStandaloneImagesToFit:]): 22068 220692007-11-29 Brady Eidson <beidson@apple.com> 22070 22071 Reviewed by Anders 22072 22073 Support for <rdar://problem/5556381> and <rdar://problem/5556379> 22074 22075 Hook up UI Delegate calls for the database engine feature and other small tweaks 22076 22077 * Storage/WebDatabaseManager.mm: 22078 (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Renamed databaseName parameter to databaseIdentifier for clarity 22079 (-[WebDatabaseManager deleteDatabase:withOrigin:]): Renamed databaseName parameter to databaseIdentifier for clarity 22080 * Storage/WebDatabaseManagerPrivate.h: 22081 22082 * Storage/WebDatabaseTrackerClient.h: 22083 * Storage/WebDatabaseTrackerClient.mm: 22084 (WebDatabaseTrackerClient::dispatchDidModifyDatabase): Renamed databaseName parameter to databaseIdentifier for clarity 22085 22086 * WebCoreSupport/WebChromeClient.h: 22087 * WebCoreSupport/WebChromeClient.mm: 22088 (WebChromeClient::requestQuotaIncreaseForNewDatabase): Call through to the UI Delegate 22089 (WebChromeClient::requestQuotaIncreaseForDatabaseOperation): Ditto 22090 22091 * WebView/WebUIDelegatePrivate.h: Added the two UI Delegate methods 22092 22093 * WebView/WebView.mm: 22094 (CallDelegateReturningUnsignedLongLong): 22095 (CallUIDelegateReturningUnsignedLongLong): 22096 * WebView/WebViewInternal.h: 22097 220982007-11-28 Kevin McCullough <kmccullough@apple.com> 22099 22100 Reviewed by Sam. 22101 22102 - Added recursive runloop guards. 22103 22104 * DefaultDelegates/WebScriptDebugServer.m: 22105 (-[WebScriptDebugServer suspendProcessIfPaused]): 22106 221072007-11-29 Mark Rowe <mrowe@apple.com> 22108 22109 Reviewed by Oliver Hunt. 22110 22111 Fix an assertion failure seen on the layout tests, and when closing the window after 22112 visiting <http://www.coudal.com/losalamos/>. 22113 22114 * Plugins/WebBaseNetscapePluginStream.mm: 22115 (-[WebBaseNetscapePluginStream _destroyStream]): Unlink the file and close the file 22116 descriptor even when the stream is being destroyed without the load completing. This 22117 avoids leaking the path and file descriptor, and leaving the temporary file on disk. 22118 221192007-11-28 Adele Peterson <adele@apple.com> 22120 22121 Reviewed by Darin Adler. 22122 22123 Fix for <rdar://problem/5524216> CrashTracer: [USER] 496 crashes in Safari at com.apple.WebCore: WebCore::Frame::eventHandler const + 6 22124 22125 The CrashTracer shows a variety of crashes in different methods (including keyDown and keyUp). This change adds nil checks for the frame in 22126 WebHTMLView to prevent future problems in other methods as well. 22127 22128 * WebView/WebHTMLView.mm: 22129 (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): 22130 (-[WebHTMLView keyDown:]): 22131 (-[WebHTMLView keyUp:]): 22132 (-[WebHTMLView flagsChanged:]): 22133 (-[WebHTMLView _selectionStartFontAttributesAsRTF]): 22134 (-[WebHTMLView _changeCSSColorUsingSelector:inRange:]): 22135 (-[WebHTMLView checkSpelling:]): 22136 (-[WebHTMLView showGuessPanel:]): 22137 (-[WebHTMLView indent:]): 22138 (-[WebHTMLView outdent:]): 22139 (-[WebHTMLView paste:]): 22140 (-[WebHTMLView _lookUpInDictionaryFromMenu:]): 22141 (-[WebHTMLView insertText:]): 22142 (-[WebHTMLView selectionTextRects]): 22143 221442007-11-28 Dan Bernstein <mitz@apple.com> 22145 22146 Reviewed by Maciej Stachowiak. 22147 22148 - fix <rdar://problem/5596160> fast/events/objc-event-api.html fails when run alone (or first) 22149 22150 * WebView/WebHTMLView.mm: 22151 (-[WebHTMLView setDataSource:]): This method calls addMouseMovedObserver 22152 because addMouseMovedObserver returns early if the dataSource 22153 is not nil. But if the dataSource is already set (which happens when 22154 a WebHTMLView is being reused) then addMouseMovedObserver must not 22155 be called again. 22156 221572007-11-27 Anders Carlsson <andersca@apple.com> 22158 22159 Reviewed by Brady. 22160 22161 * Storage/WebDatabaseManager.mm: 22162 * Storage/WebDatabaseManagerPrivate.h: 22163 * Storage/WebDatabaseTrackerClient.mm: 22164 (WebDatabaseTrackerClient::dispatchDidModifyOrigin): 22165 (WebDatabaseTrackerClient::dispatchDidModifyDatabase): 22166 * Storage/WebSecurityOrigin.mm: 22167 (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:]): 22168 * Storage/WebSecurityOriginInternal.h: 22169 221702007-11-27 Kevin Decker <kdecker@apple.com> 22171 22172 Reviewed by Darin, landed by Anders. 22173 22174 Fixed: <rdar://problem/4610818> CrashTracer: 1533 crashes in Safari at com.macromedia.Flash Player.plugin: native_ShockwaveFlash_TCallLabel + 271131 22175 22176 The problem was that some Leopard users were still inadvertently using the old Flash 8 plug-in, even though Leopard 22177 shipped with Flash 9. To avoid loading an older version of a plug-in when a newer version is installed, the plug-in 22178 database will compare bundle versions and always load the latest version. 22179 22180 * Plugins/WebBasePluginPackage.h: 22181 * Plugins/WebBasePluginPackage.m: 22182 (-[WebBasePluginPackage versionNumber]): New method. CFBundleGetVersionNumber doesn't work with all possible versioning schemes, 22183 but we think for now it's good enough for us. 22184 * Plugins/WebPluginDatabase.m: 22185 (considerCandidate): Added a C utility function which compares the current plug-in against a candidate plug-in's version number. 22186 If both plug-ins have the same bundle ID and the candiate is newer, the current plug-in becomes the candidate. 22187 (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]): Calls the new considerCandidate() function. 22188 221892007-11-26 Timothy Hatcher <timothy@apple.com> 22190 22191 Reviewed by Dave Hyatt. 22192 22193 <rdar://problem/5569233> Add the ability to disable author and user CSS styles 22194 22195 * WebView/WebPreferenceKeysPrivate.h: Define WebKitRespectStandardStyleKeyEquivalentsPreferenceKey. 22196 * WebView/WebPreferences.m: 22197 (+[WebPreferences initialize]): Default WebKitRespectStandardStyleKeyEquivalentsPreferenceKey to YES. 22198 (-[WebPreferences authorAndUserStylesEnabled]): Return the setting's BOOL value. 22199 (-[WebPreferences setAuthorAndUserStylesEnabled:]): Set the setting's BOOL value. 22200 * WebView/WebPreferencesPrivate.h: Add authorAndUserStylesEnabled and setAuthorAndUserStylesEnabled:. 22201 * WebView/WebView.mm: 22202 (-[WebView _preferencesChangedNotification:]): Update WebCore::Settings::authorAndUserStylesEnabled. 22203 222042007-11-26 Brady Eidson <beidson@apple.com> 22205 22206 Reviewed by Mark Rowe 22207 22208 Provide API for setting the default storage quota per database origin 22209 22210 * Misc/WebNSDictionaryExtras.h: 22211 * Misc/WebNSDictionaryExtras.m: 22212 (-[NSMutableDictionary _webkit_setUnsignedLongLong:forKey:]): Helper for UINT64 preferences 22213 22214 * WebView/WebPreferenceKeysPrivate.h: 22215 * WebView/WebPreferences.m: 22216 (-[WebPreferences _unsignedLongLongValueForKey:]): Helper for UINT64 prefs 22217 (-[WebPreferences _setUnsignedLongLongValue:forKey:]): Ditto 22218 (-[WebPreferences defaultDatabaseQuota]): 22219 (-[WebPreferences setDefaultDatabaseQuota:]): 22220 * WebView/WebPreferencesPrivate.h: 22221 22222 * WebView/WebView.mm: 22223 (-[WebView _preferencesChangedNotification:]): Set the WebCore Settings version of the default storage pref 22224 222252007-11-26 Darin Adler <darin@apple.com> 22226 22227 Reviewed by Adele. 22228 22229 - some middle-mouse-button-related fixes 22230 22231 These don't affect Safari since it maps the middle mouse button to the command key, 22232 but that might not always be the case for future versions. 22233 22234 * WebView/WebHTMLView.mm: 22235 (-[WebHTMLView otherMouseDown:]): Pass through middle mouse down events to WebCore. 22236 (-[WebHTMLView otherMouseDragged:]): Ditto, for drag events. 22237 (-[WebHTMLView otherMouseUp:]): Ditto, for up events. 22238 22239 * WebView/WebPolicyDelegate.h: Fixed inaccurate documentation of WebActionButtonKey. 22240 222412007-11-26 Anders Carlsson <andersca@apple.com> 22242 22243 Reviewed by Brady. 22244 22245 Get rid of the WebSecurityOriginPrivate object and store 22246 the WebCore::SecurityOriginData pointer in the _private field of 22247 the WebSecurityOrigin object instead. 22248 22249 * Storage/WebDatabaseManager.mm: 22250 (-[WebDatabaseManager databasesWithOrigin:]): 22251 (-[WebDatabaseManager detailsForDatabase:withOrigin:]): 22252 (-[WebDatabaseManager deleteDatabasesWithOrigin:]): 22253 (-[WebDatabaseManager deleteDatabase:withOrigin:]): 22254 * Storage/WebSecurityOrigin.mm: 22255 (-[WebSecurityOrigin initWithProtocol:domain:port:]): 22256 (-[WebSecurityOrigin protocol]): 22257 (-[WebSecurityOrigin domain]): 22258 (-[WebSecurityOrigin port]): 22259 (-[WebSecurityOrigin usage]): 22260 (-[WebSecurityOrigin quota]): 22261 (-[WebSecurityOrigin setQuota:]): 22262 (-[WebSecurityOrigin dealloc]): 22263 (-[WebSecurityOrigin finalize]): 22264 (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:]): 22265 (-[WebSecurityOrigin _core]): 22266 * Storage/WebSecurityOriginInternal.h: 22267 222682007-11-26 Timothy Hatcher <timothy@apple.com> 22269 22270 Reviewed by Adam Roben. 22271 22272 Bug 16137: Web Inspector window on Leopard should have a unified toolbar and window title 22273 http://bugs.webkit.org/show_bug.cgi?id=16137 22274 22275 Create the Web Inspector window with the textured style. Set the content border 22276 thickness for the top of the window or the height of the toolbar. Also make the 22277 window's bottom corners square, since a normal textured window normally has 22278 rounded bottom corners. 22279 22280 * WebCoreSupport/WebInspectorClient.mm: 22281 (-[WebInspectorWindowController window]): 22282 222832007-11-24 Mark Rowe <mrowe@apple.com> 22284 22285 Tiger build fix. 22286 22287 * Plugins/WebBaseNetscapePluginStream.mm: 22288 (CarbonPathFromPOSIXPath): Use WebCFAutorelease as this also works on Tiger. 22289 222902007-11-24 Mark Rowe <mrowe@apple.com> 22291 22292 Reviewed by Tim Hatcher. 22293 22294 Fix <rdar://problem/5432686> 333MB RPRVT seems to leak @ www.43folders.com (1hr plug-in stream). 22295 http://bugs.webkit.org/show_bug.cgi?id=13705 22296 22297 Have NP_ASFILE and NP_ASFILEONLY streams write the data to disk as they receive it rather than 22298 dumping the data to disk in a single go when the stream has completed loading. On a test case 22299 involving a 150MB Flash movie being streamed from a local web server this reduces memory consumption 22300 on page load from around 400MB to 22MB. 22301 22302 The only plugin I have found that uses NP_ASFILE or NP_ASFILEONLY on the Mac is our NetscapeMoviePlugin 22303 example code so the NP_ASFILE portion of this change has not had any testing with a real-world plugin. 22304 22305 * Plugins/WebBaseNetscapePluginStream.h: 22306 * Plugins/WebBaseNetscapePluginStream.mm: 22307 (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]): 22308 (-[WebBaseNetscapePluginStream dealloc]): 22309 (-[WebBaseNetscapePluginStream finalize]): 22310 (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]): 22311 (-[WebBaseNetscapePluginStream _destroyStream]): Update to work with paths as NSStrings. 22312 (-[WebBaseNetscapePluginStream _deliverDataToFile:]): Open the file if it is not already open, and write any data 22313 to disk. 22314 (-[WebBaseNetscapePluginStream finishedLoading]): If the stream is NP_ASFILE or NP_ASFILEONLY we need to ensure 22315 that the file exists before _destroyStream passes it to the plugin. Simulating the arrival of an empty data block 22316 ensure that the file will be created if it has not already. 22317 (-[WebBaseNetscapePluginStream receivedData:]): 22318 (CarbonPathFromPOSIXPath): 22319 * Plugins/WebBaseNetscapePluginView.mm: 22320 (-[WebBaseNetscapePluginView pluginViewFinishedLoading:]): Data is dealt with incrementally so there's no need to pass 22321 it to finishedLoading. 22322 (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): Ditto. 22323 223242007-11-23 Oliver Hunt <oliver@apple.com> 22325 22326 Reviewed by Mark Rowe. 22327 22328 Fixed <rdar://problem/3759190> allow input methods the option of processing mouse events themselves 22329 22330 * WebView/WebHTMLView.mm: 22331 (-[WebHTMLView mouseDown:]): 22332 223332007-11-22 Dan Bernstein <mitz@apple.com> 22334 22335 Reviewed by Antti Koivisto. 22336 22337 - http://bugs.webkit.org/show_bug.cgi?id=15811 22338 WebKit plug-ins can re-enter WebKit under attach() 22339 <rdar://problem/5577978> 22340 22341 * Plugins/WebNullPluginView.mm: 22342 (-[WebNullPluginView viewDidMoveToWindow]): Removed workaround for the 22343 above bug that added as part of fixing 22344 <http://bugs.webkit.org/show_bug.cgi?id=15804>. 22345 223462007-11-21 Mark Rowe <mrowe@apple.com> 22347 22348 Reviewed by Eric. 22349 22350 Fix WebKit to build without warnings under GCC 4.2. 22351 22352 * Configurations/Base.xcconfig: 22353 223542007-11-21 Mark Rowe <mrowe@apple.com> 22355 22356 Reviewed by Tim Hatcher. 22357 22358 Changes due to <rdar://problem/5602936> Need to resolve new GCC 4.2 warnings 22359 22360 Update format strings to use format specifiers that match the argument types. 22361 22362 * Misc/WebGraphicsExtras.c: 22363 (WebConvertBGRAToARGB): 22364 223652007-11-19 Brady Eidson <beidson@apple.com> 22366 22367 Reviewed by Maciej 22368 22369 Finished hooking up the WebKit API for database management. 22370 Most of the API is actually implemented in WebCore and some of those methods might 22371 only be stubs for now. 22372 22373 * Storage/WebDatabaseManager.mm: 22374 (-[WebDatabaseManager origins]): Call through to the WebCore tracker and construct an API result 22375 (-[WebDatabaseManager databasesWithOrigin:]): Ditto 22376 (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Ditto 22377 22378 * Storage/WebSecurityOrigin.mm: 22379 (-[WebSecurityOrigin usage]): Call through to WebCore 22380 (-[WebSecurityOrigin quota]): Ditto 22381 (-[WebSecurityOrigin setQuota:]): Ditto 22382 (-[WebSecurityOrigin _core]): Get WebCore version of this object 22383 * Storage/WebSecurityOriginInternal.h: 22384 223852007-11-17 Timothy Hatcher <timothy@apple.com> 22386 22387 Reviewed by Mark Rowe. 22388 22389 Bug 13470: i18n: The Web Inspector is not localizable 22390 http://bugs.webkit.org/show_bug.cgi?id=13470 22391 22392 Implement the localizedStringsURL() client method to return the 22393 localized URL of InspectorLocalizedStrings.js in WebCore. 22394 22395 * WebCoreSupport/WebInspectorClient.h: Added localizedStringsURL. 22396 * WebCoreSupport/WebInspectorClient.mm: 22397 (WebInspectorClient::localizedStringsURL): Added. 22398 (WebInspectorClient::updateWindowTitle): Localized the window title. 22399 (-[WebInspectorWindowController init]): Remove a FIXME that dosen't make sense anymore. 22400 (-[WebInspectorWindowController initWithInspectedWebView:]): Code style cleanup. 22401 224022007-11-17 Alexey Proskuryakov <ap@webkit.org> 22403 22404 Reviewed by Darin Adler. 22405 22406 http://bugs.webkit.org/show_bug.cgi?id=15969 22407 Eliminate Editor::deleteRange() 22408 22409 * WebView/WebHTMLView.mm: 22410 (+[WebHTMLView initialize]): 22411 (-[WebHTMLView yank:]): 22412 (-[WebHTMLView yankAndSelect:]): 22413 (-[WebHTMLView setMark:]): 22414 (-[WebHTMLView deleteToMark:]): 22415 (-[WebHTMLView selectToMark:]): 22416 (-[WebHTMLView swapWithMark:]): 22417 Pushed all kill ring methods to WebCore. They were guilty of using Editor::deleteRange()! 22418 224192007-11-16 Mark Rowe <mrowe@apple.com> 22420 22421 Reviewed by Tim Hatcher. 22422 22423 Build WebCore as a sub-framework of WebKit in all configurations. 22424 22425 * Configurations/WebKit.xcconfig: 22426 224272007-11-16 John Sullivan <sullivan@apple.com> 22428 22429 Reviewed by Brady 22430 22431 * WebKit.exp: 22432 Exported some new database-related symbols 22433 224342007-11-16 Brady Eidson <beidson@apple.com> 22435 22436 Reviewed by John 22437 22438 Database management API tweaks 22439 22440 Fleshed out "WebSecurityOrigin" to be the API object representing an origin. This relieves some 22441 burden off WebDatabaseManager and allows usage/quota operations on the SecurityOrigin object itself 22442 22443 Also added a new subdirectory for Storage related API - Why are we afraid to add new directories to 22444 the WebKit tree? 22445 22446 * Misc/WebSecurityOrigin.mm: Removed. 22447 * Misc/WebSecurityOriginInternal.h: Removed. 22448 * Misc/WebSecurityOriginPrivate.h: Removed. 22449 22450 * Storage/WebDatabaseManager.mm: Work in terms of WebSecurityOrigin 22451 * Storage/WebDatabaseManagerPrivate.h: 22452 22453 * Storage/WebSecurityOrigin.mm: Added. 22454 (-[WebSecurityOriginPrivate initWithProtocol:domain:port:]): 22455 (-[WebSecurityOriginPrivate initWithWebCoreSecurityOrigin:]): 22456 (-[WebSecurityOriginPrivate finalize]): 22457 (-[WebSecurityOriginPrivate dealloc]): 22458 (-[WebSecurityOrigin initWithProtocol:domain:]): 22459 (-[WebSecurityOrigin initWithProtocol:domain:port:]): 22460 (-[WebSecurityOrigin protocol]): 22461 (-[WebSecurityOrigin domain]): 22462 (-[WebSecurityOrigin port]): 22463 (-[WebSecurityOrigin usage]): 22464 (-[WebSecurityOrigin quota]): 22465 (-[WebSecurityOrigin setQuota:]): Clients will set quotas on the WebSecurityOrigin object itself 22466 (-[WebSecurityOrigin dealloc]): 22467 (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:]): 22468 * Storage/WebSecurityOriginInternal.h: Added. 22469 * Storage/WebSecurityOriginPrivate.h: Added. 22470 224712007-11-15 Brady Eidson <beidson@apple.com> 22472 22473 Reviewed by John 22474 22475 Stubbing out everything required for a WebKit API for databases 22476 22477 These interfaces seem to provide everything we need for UI and management at the browser level 22478 22479 * Misc/WebDatabaseManager.h: Removed. 22480 * Misc/WebDatabaseManager.mm: Removed. 22481 * Misc/WebDatabaseManagerPrivate.h: Removed. 22482 22483 * Misc/WebSecurityOrigin.mm: Added. Object that acts as a container for the "SecurityOrigin tuple" 22484 (protocol, domain, and port) 22485 (-[WebSecurityOriginPrivate initWithProtocol:domain:port:]): 22486 (-[WebSecurityOriginPrivate dealloc]): 22487 (-[WebSecurityOrigin initWithProtocol:domain:]): 22488 (-[WebSecurityOrigin initWithProtocol:domain:port:]): 22489 (-[WebSecurityOrigin protocol]): 22490 (-[WebSecurityOrigin domain]): 22491 (-[WebSecurityOrigin port]): 22492 (-[WebSecurityOrigin dealloc]): 22493 (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:WebCore::]): 22494 * Misc/WebSecurityOriginInternal.h: Added. 22495 * Misc/WebSecurityOriginPrivate.h: Added. 22496 22497 * Storage/WebDatabaseManager.mm: Added. 22498 (+[WebDatabaseManager sharedWebDatabaseManager]): 22499 (-[WebDatabaseManager origins]): Get a list of all origins currently tracked 22500 (-[WebDatabaseManager detailsForOrigin:]): Get the current usage and current quota for the given origin 22501 (-[WebDatabaseManager databasesWithOrigin:]): Get all databases for a certain origin 22502 (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Get all details about a specific database 22503 (-[WebDatabaseManager setQuota:forOrigin:]): Change origin-wide quota 22504 (-[WebDatabaseManager deleteAllDatabases]): 22505 (-[WebDatabaseManager deleteAllDatabasesWithOrigin:]): 22506 (-[WebDatabaseManager deleteDatabase:withOrigin:]): 22507 * Storage/WebDatabaseManagerPrivate.h: Added. 22508 * Storage/WebDatabaseManagerInternal.h: Added. 22509 (WebKitInitializeDatabasesIfNecessary): One-time initialization of database-related things 22510 22511 * Storage/WebDatabaseTrackerClient.h: Added. Stubbed out client for notifications 22512 * Storage/WebDatabaseTrackerClient.mm: Added. 22513 (WebDatabaseTrackerClient::sharedWebDatabaseTrackerClient): 22514 (WebDatabaseTrackerClient::WebDatabaseTrackerClient): 22515 (WebDatabaseTrackerClient::~WebDatabaseTrackerClient): 22516 (WebDatabaseTrackerClient::dispatchDidModifyOrigin): 22517 (WebDatabaseTrackerClient::dispatchDidModifyDatabase): 22518 22519 * WebView/WebView.mm: 22520 (-[WebView _commonInitializationWithFrameName:groupName:]): Do one-time initialization of 22521 Database-related things here 22522 225232007-11-13 Geoffrey Garen <ggaren@apple.com> 22524 22525 Reviewed by Anders Carlsson. 22526 22527 Renamed Shared to RefCounted. 22528 22529 * ForwardingHeaders/wtf/RefCounted.h: Copied from WebKit/mac/ForwardingHeaders/wtf/Shared.h. 22530 * ForwardingHeaders/wtf/Shared.h: Removed. 22531 * WebCoreSupport/WebContextMenuClient.h: 22532 225332007-11-13 Geoffrey Garen <ggaren@apple.com> 22534 22535 Reviewed by Sam Weinig. 22536 22537 Moved Shared.h into wtf so it could be used in more places. 22538 22539 * ChangeLog: 22540 * WebCoreSupport/WebContextMenuClient.h: 22541 225422007-11-13 John Sullivan <sullivan@apple.com> 22543 22544 Reviewed by Darin Adler. 22545 22546 removed recently-added PreferredType concept; we found a better way to do what 22547 ths was accomplishing 22548 22549 * WebCoreSupport/WebChromeClient.mm: 22550 (WebChromeClient::createWindow): 22551 removed use of PreferredType 22552 225532007-11-13 John Sullivan <sullivan@apple.com> 22554 22555 Reviewed by Dan Bernstein. 22556 22557 - fixed <rdar://problem/5567954> REGRESSION (Safari 2-3): Autofill no longer automatically fills in 22558 form fields other than the one you're typing into 22559 22560 * WebCoreSupport/WebEditorClient.mm: 22561 (selectorForKeyEvent): 22562 correct the key identifier strings for Tab and Esc; these were updated in WebCore as part of r21445 22563 but didn't get updated here. 22564 225652007-11-12 Josh Aas <joshmoz@gmail.com> 22566 22567 Reviewed by Darin Adler. 22568 22569 - http://bugs.webkit.org/show_bug.cgi?id=15946 22570 add NPPValue NPPVpluginDrawingModel (Mozilla bug 403418 compat) 22571 22572 * Plugins/WebBaseNetscapePluginView.mm: 22573 (-[WebBaseNetscapePluginView setVariable:value:]): 22574 225752007-11-12 Alexey Proskuryakov <ap@webkit.org> 22576 22577 Reviewed by Darin Adler. 22578 22579 http://bugs.webkit.org/show_bug.cgi?id=15954 22580 Move DOM Selection operations out of SelectionController 22581 22582 * WebView/WebHTMLView.mm: 22583 (-[WebHTMLView _expandSelectionToGranularity:]): 22584 (-[WebHTMLView selectToMark:]): 22585 (-[WebHTMLView swapWithMark:]): 22586 * WebView/WebView.mm: 22587 (-[WebView setSelectedDOMRange:affinity:]): 22588 Adapted for SelectionController::setSelectedRange() now returning a bool. 22589 225902007-11-12 Oliver Hunt <oliver@apple.com> 22591 22592 Reviewed by Darin and Geoff. 22593 22594 <rdar://problem/5522011> The content of the password field of 22595 Safari is displayed by reconversion. 22596 22597 Some input methods (notably Kotoeri) can incorrectly provide 22598 access to the raw text of a password field. To work around 22599 this we forcefully override the inputContext whenever a password 22600 field is active. 22601 22602 * WebView/WebHTMLView.mm: 22603 (-[WebHTMLView inputContext]): 22604 226052007-11-12 John Sullivan <sullivan@apple.com> 22606 22607 Reviewed by Tim Hatcher 22608 22609 - speculative fix for <rdar://problem/5509989> CrashTracer: [USER] 1 crash in Safari at com.apple.WebKit: 22610 -[WebPDFView(FileInternal) _updatePreferencesSoon] + 56 22611 22612 The crash is probably due to messaging a dealloc'ed dataSource ivar. The dataSource ivar isn't retained 22613 by this class, but should be. (It is retained by WebHTMLView, e.g.). 22614 22615 * WebView/WebPDFView.mm: 22616 (-[WebPDFView dealloc]): 22617 release dataSource ivar 22618 (-[WebPDFView setDataSource:]): 22619 retain dataSource ivar 22620 226212007-11-09 Tristan O'Tierney <tristan@apple.com> 22622 22623 Reviewed by Timothy Hatcher. 22624 22625 This patch is for the WebKit side of <rdar://problem/5591115>. 22626 We need a way to tell context menu navigations, such as "Open in New Window" 22627 to override any sort of browser preference for tab based navigation. 22628 22629 * WebCoreSupport/WebChromeClient.mm: 22630 (WebChromeClient::createWindow): 22631 Pass up the new preferredType parameter as a string. 22632 226332007-11-09 Timothy Hatcher <timothy@apple.com> 22634 22635 Reviewed by John. 22636 22637 <rdar://problem/5103720> REGRESSION: [WebView stringByEvaluatingJavaScriptFromString:] fails if "return" is used 22638 22639 Extend the linked on or after check to every application when a script passed to 22640 stringByEvaluatingJavaScriptFromString: has a return statement. Before the check 22641 was limited to VitalSource Bookshelf, but other developers are running into this. 22642 22643 * Misc/WebKitVersionChecks.h: Add the WEBKIT_FIRST_VERSION_WITHOUT_JAVASCRIPT_RETURN_QUIRK define. 22644 * WebView/WebDocumentLoaderMac.mm: 22645 (needsDataLoadWorkaround): Use WEBKIT_FIRST_VERSION_WITHOUT_ADOBE_INSTALLER_QUIRK sicne the 22646 WebKitLinkedOnOrAfter check here was about the Adobe installer, not VitalSource. 22647 * WebView/WebView.mm: 22648 (-[WebView stringByEvaluatingJavaScriptFromString:]): Remove the bundle ID check and use 22649 WEBKIT_FIRST_VERSION_WITHOUT_JAVASCRIPT_RETURN_QUIRK for the WebKitLinkedOnOrAfter call. 22650 226512007-11-08 Kevin McCullough <kmccullough@apple.com> 22652 22653 Build Fix. 22654 22655 * WebCoreSupport/WebFrameLoaderClient.h: 22656 * WebCoreSupport/WebFrameLoaderClient.mm: 22657 (WebFrameLoaderClient::windowObjectCleared): 22658 226592007-11-07 Darin Adler <darin@apple.com> 22660 22661 Reviewed by Steve. 22662 22663 - removed some unused WebCore bridge methods 22664 22665 * WebCoreSupport/WebFrameBridge.mm: Removed issueTransposeCommand and overrideMediaType. 22666 22667 * WebCoreSupport/WebFrameLoaderClient.mm: 22668 (WebFrameLoaderClient::overrideMediaType): Changed to call WebView directly instead of 22669 using the bridge object. 22670 226712007-11-06 Mark Rowe <mrowe@apple.com> 22672 22673 Rubber-stamped by Dave Kilzer. 22674 22675 Move Mac files from WebKit into WebKit/mac. 22676 22677 * Carbon: Copied from WebKit/Carbon. 22678 * ChangeLog: Copied from WebKit/ChangeLog. 22679 * ChangeLog-2002-12-03: Copied from WebKit/ChangeLog-2002-12-03. 22680 * ChangeLog-2006-02-09: Copied from WebKit/ChangeLog-2006-02-09. 22681 * ChangeLog-2007-10-14: Copied from WebKit/ChangeLog-2007-10-14. 22682 * Configurations: Copied from WebKit/Configurations. 22683 * DOM: Copied from WebKit/DOM. 22684 * DefaultDelegates: Copied from WebKit/DefaultDelegates. 22685 * ForwardingHeaders: Copied from WebKit/ForwardingHeaders. 22686 * History: Copied from WebKit/History. 22687 * Info.plist: Copied from WebKit/Info.plist. 22688 * MigrateHeaders.make: Copied from WebKit/MigrateHeaders.make. 22689 * Misc: Copied from WebKit/Misc. 22690 * Panels: Copied from WebKit/Panels. 22691 * Plugins: Copied from WebKit/Plugins. 22692 * PublicHeaderChangesFromTiger.txt: Copied from WebKit/PublicHeaderChangesFromTiger.txt. 22693 * Resources: Copied from WebKit/Resources. 22694 * WebCoreSupport: Copied from WebKit/WebCoreSupport. 22695 * WebInspector: Copied from WebKit/WebInspector. 22696 * WebKit.exp: Copied from WebKit/WebKit.exp. 22697 * WebKit.order: Copied from WebKit/WebKit.order. 22698 * WebKitPrefix.h: Copied from WebKit/WebKitPrefix.h. 22699 * WebView: Copied from WebKit/WebView. 22700 * icu: Copied from WebKit/icu. 22701 227022007-11-06 Alexey Proskuryakov <ap@webkit.org> 22703 22704 Reviewed by Darin Adler. 22705 22706 http://bugs.webkit.org/show_bug.cgi?id=15847 22707 Some editing cleanup 22708 22709 No change in functionality. 22710 22711 * WebView/WebHTMLView.mm: 22712 (-[WebHTMLView deleteToEndOfLine:]): 22713 (-[WebHTMLView deleteToEndOfParagraph:]): 22714 WebCore had a duplicate of the same logic already. We are passing a boundary value to 22715 a function that expects granularity, this may need to be straightened out in the future. 22716 227172007-11-05 John Sullivan <sullivan@apple.com> 22718 22719 * WebView/WebView.mm: 22720 (-[WebView _searchWithSpotlightFromMenu:]): 22721 22722 Teeny style tweak to test svn access on other machine 22723 227242007-11-05 John Sullivan <sullivan@apple.com> 22725 22726 * WebView/WebView.mm: 22727 (-[WebView computedStyleForElement:pseudoElement:]): 22728 22729 Teeny style tweak to test svn access 22730 227312007-11-02 Tristan O'Tierney <tristan@apple.com> 22732 22733 Reviewed by Darin Adler. 22734 22735 * DefaultDelegates/WebDefaultUIDelegate.m: 22736 (-[WebDefaultUIDelegate webView:createWebViewWithRequest:windowFeatures:]): 22737 Forward the UI delegate to call webView:createWebViewWithRequest: if 22738 this method doesn't exist. 22739 22740 * WebCoreSupport/WebFrameLoaderClient.mm: 22741 (WebFrameLoaderClient::dispatchCreatePage): 22742 * Plugins/WebBaseNetscapePluginView.mm: 22743 (-[WebBaseNetscapePluginView loadPluginRequest:]): 22744 * WebView/WebView.mm: 22745 (-[WebView _openNewWindowWithRequest:]): 22746 Revised to use new webView:createWebViewWithRequest:windowFeatures: callback. 22747 22748 * WebCoreSupport/WebChromeClient.h: 22749 * WebCoreSupport/WebChromeClient.mm: 22750 (WebChromeClient::createWindow): 22751 Added a new createWindow that accepts 3 parameters, so we can pass up windowFeatures to the chrome. 22752 Removed createModalDialog to use new createWindow function. 22753 22754 * WebView/WebUIDelegatePrivate.h: 22755 Added new webView:createWebViewWithRequest:windowFeatures: method. 22756 227572007-11-05 Geoffrey Garen <ggaren@apple.com> 22758 22759 Reviewed by Darin Adler. 22760 22761 http://bugs.webkit.org/show_bug.cgi?id=15835 22762 22763 Small adaptations to new KJS::List class. 22764 22765 * ForwardingHeaders/kjs/value.h: Added. 22766 227672007-11-03 David D. Kilzer <ddkilzer@webkit.org> 22768 22769 Sort files(...); sections of Xcode project files. 22770 22771 Rubber-stamped by Darin Adler. 22772 22773 * WebKit.xcodeproj/project.pbxproj: 22774 227752007-11-02 Antti Koivisto <antti@apple.com> 22776 22777 Reviewed by Darin Adler. 22778 22779 Add method to enable video composition. 22780 22781 * WebCoreSupport/WebSystemInterface.m: 22782 (InitWebCoreSystemInterface): 22783 227842007-11-02 Darin Adler <darin@apple.com> 22785 22786 Reviewed by Mitz. 22787 22788 - fix problem I ran into while doing some testing on Mac for 22789 <rdar://problem/5530185> WebKit does not show <object> 22790 fallback content when both URL and MIME type is omitted 22791 22792 I don't know how to reproduce this failure in DumpRenderTree, so there is no 22793 regression test. 22794 22795 * Plugins/WebNullPluginView.h: Removed some unneeded declarations, including 22796 the didSendError local variable. Instead we just set the error to nil once 22797 we've sent it. 22798 * Plugins/WebNullPluginView.mm: 22799 (-[WebNullPluginView initWithFrame:error:DOMElement:]): Refactored so that 22800 the null plug-in image code is separate from the rest of the function and 22801 so that the whole thing is not inside an if statement. Also don't hold a 22802 reference to the DOM element if there is no error to report. 22803 (-[WebNullPluginView reportFailure]): Added. Does the actual delegate 22804 callback. Happens back at the top level of the run loop so it doesn't 22805 fire deep inside layout. Also wrote this so that it is guaranteed not to 22806 reenter and so that it can handle the case where the delegate destroys 22807 the world (including this object). NOTE: This is not a real, general 22808 solution to the problem of plug-ins that do work inside layout. We will need 22809 a more general fix that works for other plug-ins, and we'll track that with 22810 a separate bug report. 22811 (-[WebNullPluginView viewDidMoveToWindow]): Removed most of the code; 22812 changed so it just does a performSelector:afterDelay:0. 22813 228142007-11-02 Mark Rowe <mrowe@apple.com> 22815 22816 Reviewed by Darin Adler. 22817 22818 Fix http://bugs.webkit.org/show_bug.cgi?id=15780 22819 Bug 15780: WebFrameLoaderClient: WebActionElementKey wrong if view is scrolled 22820 22821 * WebCoreSupport/WebFrameLoaderClient.mm: 22822 (WebFrameLoaderClient::actionDictionary): Retrieve the mouse event coordinates 22823 in the page coordinate system rather than the client area coordinate system. 22824 228252007-11-01 Dan Bernstein <mitz@apple.com> 22826 22827 Reviewed by Oliver Hunt. 22828 22829 - fix an assertion failure when Command-Tabbing out of Safari 22830 22831 * WebView/WebHTMLView.mm: 22832 (-[WebHTMLView flagsChanged:]): Avoid passing key code 0 down to 22833 WebCore. 22834 228352007-11-01 Justin Garcia <justin.garcia@apple.com> 22836 22837 Reviewed by Oliver Hunt. 22838 22839 <rdar://problem/5195056> Huge plain text pastes are slow, time spent in ApplyStyleCommand::doApply 22840 22841 No need to match style when pasting plain text, since the fragment we build for plain text 22842 won't have any style information on it. 22843 22844 * WebView/WebHTMLView.mm: 22845 (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]): There's no 22846 longer a need to know whether this function chosePlaintext. 22847 (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): 22848 (-[WebHTMLView _documentFragmentFromPasteboard:]): 22849 228502007-10-31 Timothy Hatcher <timothy@apple.com> 22851 22852 Reviewed by John Sullivan. 22853 22854 Move the developer extras preference to WebPreferences. 22855 22856 * WebView/WebPreferenceKeysPrivate.h: Add WebKitDeveloperExtrasEnabledPreferenceKey 22857 * WebView/WebPreferences.m: 22858 (+[WebPreferences initialize]): Initialize WebKitDeveloperExtrasEnabledPreferenceKey to NO. 22859 (-[WebPreferences developerExtrasEnabled]): Check DisableWebKitDeveloperExtras, WebKitDeveloperExtras 22860 and IncludeDebugMenu in addition to WebKitDeveloperExtrasEnabledPreferenceKey. 22861 (-[WebPreferences setDeveloperExtrasEnabled:]): Set WebKitDeveloperExtrasEnabledPreferenceKey. 22862 * WebView/WebPreferencesPrivate.h: Add developerExtrasEnabled and setDeveloperExtrasEnabled:. 22863 * WebView/WebView.mm: 22864 (+[WebView _developerExtrasEnabled]): Removed. 22865 (-[WebView _preferencesChangedNotification:]): Check the WebPreferences object for developerExtrasEnabled. 22866 * WebView/WebViewPrivate.h: Removed _developerExtrasEnabled. 22867 228682007-10-30 David D. Kilzer <ddkilzer@webkit.org> 22869 22870 Generated files missing from WebCore's Xcode project file 22871 <http://bugs.webkit.org/show_bug.cgi?id=15406> 22872 22873 Reviewed by Darin Adler. 22874 22875 Added the following private header files to MigrateHeaders.make: 22876 22877 - DOMCSSStyleSheetPrivate.h 22878 - DOMEventPrivate.h 22879 - DOMHTMLCollectionPrivate.h 22880 - DOMHTMLEmbedElementPrivate.h 22881 - DOMHTMLIFrameElementPrivate.h 22882 - DOMHTMLObjectElementPrivate.h 22883 - DOMHTMLSelectElementPrivate.h 22884 22885 * MigrateHeaders.make: 22886 228872007-10-29 Antti Koivisto <antti@apple.com> 22888 22889 Reviewed by Maciej. 22890 22891 Some SPIs for media support. 22892 22893 * WebCoreSupport/WebSystemInterface.m: 22894 (InitWebCoreSystemInterface): 22895 228962007-10-29 Timothy Hatcher <timothy@apple.com> 22897 22898 Reviewed by John Sullivan. 22899 22900 Various semi-related changes: 22901 - A WebView can now be asked for it's WebInspector. There is one 22902 WebInspector per WebView. 22903 - Refactor the WebInspector class and move obsolete methods to 22904 a special category. 22905 - Add new WebInspector methods to show, hide and show the 22906 console/timeline panels. 22907 - Add an isDisabled method to WebCache. 22908 - Allow WebLocalizableStrings.h to be used in C files. 22909 22910 * Misc/WebCache.h: Add isDisabled. 22911 * Misc/WebCache.mm: 22912 (+[WebCache isDisabled]): New method. 22913 22914 * Misc/WebLocalizableStrings.h: Changes to allow use in plain C files. 22915 22916 * WebCoreSupport/WebInspectorClient.mm: 22917 (-[WebInspectorWindowController showWindow:]): Call super if already visible 22918 so the window will be ordered front. 22919 (-[WebInspectorWindowController showWebInspector:]): Method used by menu items, 22920 so they are enabled and work when the Inspector window is key. 22921 (-[WebInspectorWindowController showErrorConsole:]): Ditto. 22922 (-[WebInspectorWindowController showNetworkTimeline:]): Ditto. 22923 22924 * WebInspector/WebInspector.h: Add and remove methods. 22925 * WebInspector/WebInspector.mm: 22926 (-[WebInspector webViewClosed]): Called when the WebView is closed/dealloced. 22927 Clears the _webView pointer. 22928 (-[WebInspector show:]): Calls thru to the Page's InspectorController. 22929 (-[WebInspector showConsole:]): Ditto. 22930 (-[WebInspector showTimeline:]): Ditto. 22931 (-[WebInspector close:]): Ditto. 22932 (-[WebInspector attach:]): Ditto. 22933 (-[WebInspector detach:]): Ditto. 22934 (+[WebInspector sharedWebInspector]): Moved to the obsolete category. 22935 (+[WebInspector webInspector]): Ditto. 22936 (-[WebInspector setWebFrame:]): Ditto. 22937 (-[WebInspector window]): Ditto. 22938 (-[WebInspector showWindow:]): Ditto. 22939 22940 * WebView/WebView.mm: 22941 (-[WebViewPrivate dealloc]): Release the WebInspector. 22942 (-[WebView _close]): Call webViewClosed on the WebInspector. 22943 (-[WebView inspector]): Create a WebInspector if needed and return it. 22944 * WebView/WebViewPrivate.h: Add the inspector method. 22945 229462007-10-30 Adele Peterson <adele@apple.com> 22947 22948 Reviewed by Darin Adler. 22949 22950 WebKit part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577 22951 <rdar://problem/5103625> REGRESSION: Caps lock icon should show in password fields 22952 22953 * WebView/WebHTMLView.mm: 22954 (-[WebHTMLView flagsChanged:]): Call capsLockStateMayHaveChanged so WebCore knows it may have to update a password field. 22955 (+[WebHTMLView _postFlagsChangedEvent:]): Added a comment with a Radar number for why this isn't just in flagsChanged. 22956 (-[WebHTMLView scrollWheel:]): Instead of calling the next responder explicitly, we can just call super, which will take care of this. 22957 229582007-10-27 Mark Ambachtsheer <mark.a@apple.com> 22959 22960 Reviewed by Darin Adler. 22961 22962 Fix for bug 15710, When QD plugins draw to an offscreen bitmap and the plugin is not at 22963 (0, 0) the clipping rectangle is not correct. 22964 Added the origin to the window clip rectangle coordinates to account for plugins that 22965 don't originate at (0,0); affects code for offscreen GWorlds only. 22966 22967 * Plugins/WebBaseNetscapePluginView.mm: 22968 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): 22969 229702007-10-26 Adele Peterson <adele@apple.com> 22971 22972 Reviewed by Oliver. 22973 22974 Adding WebKitSystemInterface support for the caps lock indicator 22975 22976 * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): 22977 229782007-10-25 David Hyatt <hyatt@apple.com> 22979 22980 Fix for bug 15672, backgrounds don't tile properly inside transforms. This patch fixes tiling 22981 of backgrounds inside CSS transforms and also of HTML content with background images inside SVG 22982 transforms. 22983 22984 Reviewed by aroben and mmitz 22985 22986 * WebCoreSupport/WebSystemInterface.m: 22987 (InitWebCoreSystemInterface): 22988 * WebKit.xcodeproj/project.pbxproj: 22989 229902007-10-25 John Sullivan <sullivan@apple.com> 22991 22992 Reviewed by Tim Hatcher 22993 22994 Removed the support for toggling whether WebKit uses the 10.5 PDFKit improvements. Now it 22995 always does, when available. 22996 22997 * WebView/WebPreferencesPrivate.h: 22998 removed _usePDFPreviewView and _setUsePDFPreviewView:. Note that these were guarded with 22999 a comment that says that they can be removed when no longer needed. That time is now. 23000 23001 * WebView/WebPreferences.m: 23002 (+[WebPreferences initialize]): 23003 removed WebKitUsePDFPreviewViewPreferenceKey 23004 (-[WebPreferences _usePDFPreviewView]): 23005 removed 23006 (-[WebPreferences _setUsePDFPreviewView:]): 23007 removed 23008 23009 * WebView/WebPDFView.mm: 23010 (-[WebPDFView initWithFrame:]): 23011 don't check _usePDFPreviewView 23012 23013 * WebView/WebPreferenceKeysPrivate.h: 23014 removed WebKitUsePDFPreviewViewPreferenceKey 23015 230162007-10-24 Timothy Hatcher <timothy@apple.com> 23017 23018 Reviewed by Mark Rowe. 23019 23020 <rdar://problem/5069711> OpenSource version of libWebKitSystemInterface.a is Tiger only, causes issues if used on Leopard 23021 23022 Use the WebKitSystemInterface that matches the system version. 23023 23024 * Configurations/DebugRelease.xcconfig: 23025 * WebKit.xcodeproj/project.pbxproj: 23026 230272007-10-24 Brady Eidson <beidson@apple.com> 23028 23029 Reviewed by Anders 23030 23031 <rdar://problem/5554130> DatabaseTracker.o has a global initializer 23032 23033 * Misc/WebDatabaseManager.mm: 23034 (WebKitSetWebDatabasesPathIfNecessary): Call the member function instead of a static one 23035 230362007-10-23 Mark Rowe <mrowe@apple.com> 23037 23038 Build fix for Eric's build fix in r26916. 23039 23040 * MigrateHeaders.make: 23041 230422007-10-22 Eric Seidel <eric@webkit.org> 23043 23044 Reviewed by Maciej. 23045 23046 * MigrateHeaders.make: copy over font-face related DOM headers 23047 230482007-10-22 Andrew Wellington <proton@wiretapped.net> 23049 23050 Reviewed by Mark Rowe. 23051 23052 Fix for local database support after r26879 23053 Ensure that ENABLE_DATABASE and ENABLE_ICONDATABASE are correctly set 23054 23055 * Configurations/WebKit.xcconfig: 23056 230572007-10-19 Brady Eidson <beidson@apple.com> 23058 23059 Reviewed by Tim Hatcher 23060 23061 Added support for Chrome prompts required by the Storage API 23062 Added support API for future managing of databases from the WebKit client 23063 Added preference and initialization for the databases path 23064 23065 * Misc/WebDatabaseManager.h: Added. WebDatabaseManager is how a WebKit application can list and 23066 remove the current available databases 23067 * Misc/WebDatabaseManager.mm: Added. 23068 (+[WebDatabaseManager origins]): 23069 (+[WebDatabaseManager databasesWithOrigin:]): 23070 (+[WebDatabaseManager deleteAllDatabases]): 23071 (+[WebDatabaseManager deleteAllDatabasesWithOrigin:]): 23072 (+[WebDatabaseManager deleteDatabaseWithOrigin:named:]): 23073 (WebKitSetWebDatabasesPathIfNecessary): Setup the database path 23074 * Misc/WebDatabaseManagerPrivate.h: Added. 23075 23076 * WebCoreSupport/WebChromeClient.h: Support for calling the delegate to run the prompt for 23077 an origin exceeding its size limit 23078 * WebCoreSupport/WebChromeClient.mm: 23079 (WebChromeClient::runDatabaseSizeLimitPrompt): 23080 * WebKit.xcodeproj/project.pbxproj: 23081 * WebView/WebUIDelegate.h: 23082 23083 * WebView/WebView.mm: 23084 (-[WebView _commonInitializationWithFrameName:groupName:]): Setup the database path 23085 * WebView/WebViewInternal.h: 23086 230872007-10-19 John Sullivan <sullivan@apple.com> 23088 23089 Reviewed by Tim Hatcher 23090 23091 - fixed <rdar://problem/5540325> REGRESSION (2.0.4-3): History menu looks odd after clearing history 23092 23093 * History/WebHistory.mm: 23094 (-[WebHistoryPrivate removeAllItems]): 23095 This was fallout from r25275. We need to clear the orderedLastVisitedDays cache here, in addition 23096 to the other places where it's cleared. 23097 230982007-10-18 Dan Bernstein <mitz@apple.com> 23099 23100 Tiger build fix. 23101 23102 * WebView/WebDataSource.mm: 23103 (-[WebDataSource _MIMETypeOfResponse:]): 23104 231052007-10-18 Dan Bernstein <mitz@apple.com> 23106 23107 Reviewed by Adam Roben. 23108 23109 - fix <rdar://problem/5313523> 23110 REGRESSION(Leopard): http/tests/incremental/slow-utf8-text.pl fails on Leopard 23111 23112 * WebCoreSupport/WebFrameLoaderClient.mm: 23113 (WebFrameLoaderClient::makeDocumentView): Changed to use _responseMIMEType. 23114 * WebView/WebDataSource.mm: 23115 (-[WebDataSource _MIMETypeOfResponse:]): Added. Works around 23116 <rdar://problem/5321972> by testing for the case of an NSHTTPURLResponse 23117 with a MIMEType of application/octet-stream and a Content-Type header 23118 starting with text/plain and returning text/plain as the MIME type in 23119 that case. 23120 (-[WebDataSource _responseMIMEType]): Added. Used to get the correct 23121 response MIME type. 23122 (-[WebDataSource _isDocumentHTML]): Changed to use _responseMIMEType. 23123 (-[WebDataSource _makeRepresentation]): Ditto. 23124 (-[WebDataSource mainResource]): Ditto. 23125 (-[WebDataSource subresources]): Changed to use _MIMETypeOfResponse and 23126 pass the MIME type explicitly. 23127 (-[WebDataSource subresourceForURL:]): Ditto. 23128 * WebView/WebDataSourcePrivate.h: 23129 * WebView/WebFrameView.mm: 23130 (-[WebFrameView _makeDocumentViewForDataSource:]): Changed to use 23131 _responseMIMEType. 23132 * WebView/WebResource.mm: 23133 (-[WebResource _initWithData:URL:response:MIMEType:]): Changed this 23134 method to take a MIME type instead of extracting it from the response, 23135 so that WebDataSource could pass the correct MIME type. 23136 * WebView/WebResourcePrivate.h: 23137 231382007-10-17 Darin Adler <darin@apple.com> 23139 23140 Reviewed by Mark Rowe. 23141 23142 - fix <rdar://problem/5183775> Uninitialized memory in -[WebDynamicScrollBarsView updateScrollers] 23143 23144 * WebView/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView updateScrollers]): 23145 Change code path so it doesn't dispatch a method that returns an NSSize passing a nil object. 23146 It's safe to do that for functions that return integers or pointers, but not structures. 23147 231482007-10-16 David Kilzer <ddkilzer@apple.com> 23149 23150 Reviewed by Timothy. 23151 23152 <rdar://problem/5544354> Wrong delegate method called in 23153 WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad() 23154 23155 * WebCoreSupport/WebFrameLoaderClient.mm: 23156 (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): Fixed selector name. 23157 231582007-10-16 Darin Adler <darin@apple.com> 23159 23160 Reviewed by Adele. 23161 23162 - moved transpose command implementation into WebCore 23163 23164 * WebView/WebHTMLView.mm: Removed transpose: and replaced it with standard WebCore forwarding. 23165 231662007-10-16 Darin Adler <darin@apple.com> 23167 23168 Reviewed by Maciej and Geoff (and looked over by Eric). 23169 23170 - http://bugs.webkit.org/show_bug.cgi?id=15519 23171 eliminate use of <ctype.h> for processing ASCII 23172 23173 * ForwardingHeaders/wtf/ASCIICType.h: Added. 23174 * ForwardingHeaders/wtf/DisallowCType.h: Added. 23175 23176 * WebKitPrefix.h: Include DisallowCType.h. 23177 23178 * Misc/WebNSURLExtras.mm: (-[NSURL _web_URLWithLowercasedScheme]): Use toASCIILower. 23179 * WebView/WebHTMLView.mm: 23180 (-[WebHTMLView callWebCoreCommand:]): Use toASCIIUpper. 23181 (-[WebTextCompleteController filterKeyDown:]): Add a list of specific character codes, 23182 instead of using ispunct. 23183 231842007-10-16 John Sullivan <sullivan@apple.com> 23185 23186 Reviewed by Adam Roben 23187 23188 Cleaned up localizable strings 23189 23190 * English.lproj/Localizable.strings: 23191 updated 23192 * StringsNotToBeLocalized.txt: 23193 updated 23194 * WebKit.xcodeproj/project.pbxproj: 23195 StringsNotToBeLocalized.txt recently moved but project file wasn't updated to match; now it is 23196 231972007-10-15 Kevin Decker <kdecker@apple.com> 23198 23199 Reviewed by Darin Adler. 23200 23201 Fixed: <rdar://problem/5520541> REGRESSION: Broken image when forwarding certain email on Tiger 23202 23203 * WebCoreSupport/WebFrameBridge.mm: The problem was that we were loading Mail's WebKit plug-in 23204 too soon, which borked some necessary housekeeping on behalf of Mail. The fix is to add a quirk 23205 that treats Tiger Mail's WebKit plug-in like a Netscape plug-in, thus ensuring the plug-in will 23206 load during first layout and not attach time. For this plug-in, loading at first layout is 23207 expected and is consistent with Safari 2 behavior. 23208 232092007-10-15 John Sullivan <sullivan@apple.com> 23210 23211 Reviewed by Geoff Garen 23212 23213 Replaced NS_DURING/NS_HANDLER with @try/@catch throughout WebKit 23214 23215 I made the following changes: 23216 - replaced NS_DURING with @try, and added opening brace if there wasn't one 23217 - replaced NS_HANDLER with @catch (NSException *localException), and added braces if there weren't any 23218 - removed NS_ENDHANDLER, and added a closing brace if there wasn't one 23219 - in a couple of places, fixed indentation therein 23220 23221 * Misc/WebIconDatabase.mm: 23222 (objectFromPathForKey): 23223 * WebView/WebHTMLView.mm: 23224 (-[WebHTMLView drawSingleRect:]): 23225 (-[WebHTMLView beginDocument]): 23226 (-[WebHTMLView deleteToMark:]): 23227 * WebView/WebView.mm: 23228 (-[WebView initWithCoder:]): 23229 23230== Rolled over to ChangeLog-2007-10-14 == 23231