1 2010-02-12 Dan Bernstein <mitz (a] apple.com> 2 3 Reviewed by Simon Fraser. 4 5 <rdar://problem/7609268> REGRESSION (r50301): Problem selecting text in a Devanagari website 6 https://bugs.webkit.org/show_bug.cgi?id=34865 7 8 Test: fast/text/glyph-reordering.html 9 10 * platform/graphics/mac/ComplexTextController.cpp: 11 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): 12 (WebCore::ComplexTextController::ComplexTextRun::setIsNonMonotonic): Added. Sets m_isMonotonic 13 and populates m_glyphEndOffsets with the end offsets of each glyphs corresponding character range. 14 (WebCore::ComplexTextController::advance): For non-monotonic runs, use endOffsetAt() to get 15 glyphs end offsets. 16 (WebCore::ComplexTextController::adjustGlyphsAndAdvances): Check for monotonicity and call 17 setIsNonMonotonic() if needed. 18 * platform/graphics/mac/ComplexTextController.h: 19 (WebCore::ComplexTextController::ComplexTextRun::lastIndexAt): Added this getter. 20 (WebCore::ComplexTextController::ComplexTextRun::isMonotonic): Ditto. 21 * platform/graphics/mac/ComplexTextControllerATSUI.cpp: 22 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): Initialize m_isMonotonic. 23 * platform/graphics/mac/ComplexTextControllerCoreText.cpp: 24 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): Ditto. 25 26 2010-02-12 Alexey Proskuryakov <ap (a] apple.com> 27 28 Reviewed by David Levin. 29 30 https://bugs.webkit.org/show_bug.cgi?id=34866 31 Leopard Debug Bot crashed on fast/forms/old-names.html 32 33 * html/HTMLFormCollection.cpp: (WebCore::HTMLFormCollection::formCollectionInfo): Removed 34 a misplaced checkConsistency() call. We are not looking at cache content at this point, and 35 caches will be reset on next access. 36 37 2010-02-12 Pavel Feldman <pfeldman (a] chromium.org> 38 39 Reviewed by Timothy Hatcher. 40 41 Web Inspector: restore highlighting animation, bring back 42 keyboard navigation, beautify search results. 43 44 https://bugs.webkit.org/show_bug.cgi?id=34853 45 46 * inspector/front-end/TextViewer.js: 47 (WebInspector.TextViewer): 48 (WebInspector.TextViewer.prototype.highlightLine): 49 * inspector/front-end/textViewer.css: 50 51 2010-02-12 Anton Muhin <antonm (a] chromium.org> 52 53 Reviewed by Adam Barth. 54 55 [v8] handle to the document can only own Objects, not Values 56 https://bugs.webkit.org/show_bug.cgi?id=34854 57 58 * bindings/v8/V8DOMWindowShell.cpp: 59 (WebCore::V8DOMWindowShell::updateDocumentWrapper): 60 (WebCore::V8DOMWindowShell::updateDocumentWrapperCache): 61 * bindings/v8/V8DOMWindowShell.h: 62 * bindings/v8/custom/V8DocumentCustom.cpp: 63 (WebCore::toV8): 64 65 2010-02-12 Simon Hausmann <simon.hausmann (a] nokia.com> 66 67 Reviewed by Holger Freyther. 68 69 Replaced stray CRLF with LF. 70 71 * wml/WMLInputElement.cpp: 72 (WebCore::WMLInputElement::suggestedValue): 73 * wml/WMLInputElement.h: 74 75 2010-02-10 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 76 77 Reviewed by Tor Arne Vestb. 78 79 [Qt] Make qtlauncher and qgvlauncher use the generated headers 80 path to make sure they are correctly generated. 81 82 * WebCore.pro: 83 84 2010-02-10 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 85 86 Reviewed by Tor Arne Vestb. 87 88 [Qt] Ensure relative paths in generated .pri files to ensure that 89 a source package with pre-generated derived sources can be compiled. 90 91 - Re-add a separate headers.pri file for WEBKIT_API_HEADERS 92 - Rename the generated headers.pri to classheaders.pri to avoid 93 confusion with the one generated by synqt since they don't have the 94 same content. 95 - Remove private headers list variable from classheaders.pri 96 - Use $$PWD in classheaders.pri 97 - Remove classheaders.pri from the installed files 98 99 * WebCore.pro: 100 101 2010-02-10 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 102 103 Reviewed by Tor Arne Vestb. 104 105 [Qt] Manually add support for the install target on Symbian. 106 107 This is required to copy the headers over the ones in Qt. 108 109 * WebCore.pro: 110 111 2010-02-10 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 112 113 Reviewed by Tor Arne Vestb. 114 115 [Qt] Minor fixes on QtWebKit headers generation. 116 117 - Adds QtWebKit to the generated headers destination path 118 - Improve compatibility with MinGW 119 120 * WebCore.pro: 121 122 2010-02-11 Fumitoshi Ukai <ukai (a] chromium.org> 123 124 Reviewed by Alexey Proskuryakov. 125 126 WebSocket ignores HttpOnly cookies, but should use in Handshake. 127 https://bugs.webkit.org/show_bug.cgi?id=34289 128 129 Test: websocket/tests/cookies/httponly-cookie.pl 130 131 * platform/CookieJar.h: add cookieRequestHeaderFieldValue() 132 * platform/chromium/ChromiumBridge.h: 133 * platform/haiku/CookieJarHaiku.cpp: 134 (WebCore::cookieRequestHeaderFieldValue): 135 * platform/mac/CookieJar.mm: 136 (WebCore::cookies): 137 (WebCore::cookieRequestHeaderFieldValue): 138 * platform/network/android/CookieJarAndroid.cpp: 139 (WebCore::cookieRequestHeaderFieldValue): 140 * platform/network/chromium/CookieJarChromium.cpp: 141 (WebCore::cookieRequestHeaderFieldValue): 142 * platform/network/curl/CookieJarCurl.cpp: 143 (WebCore::cookieRequestHeaderFieldValue): 144 * platform/network/soup/CookieJarSoup.cpp: 145 (WebCore::cookieRequestHeaderFieldValue): 146 * platform/network/win/CookieJarCFNetWin.cpp: 147 (WebCore::cookieRequestHeaderFieldValue): 148 * platform/network/win/CookieJarWin.cpp: 149 (WebCore::cookieRequestHeaderFieldValue): 150 * platform/qt/CookieJarQt.cpp: 151 (WebCore::cookieRequestHeaderFieldValue): 152 * websockets/WebSocketHandshake.cpp: 153 (WebCore::WebSocketHandshake::clientHandshakeMessage): use cookieRequestHeaderFieldValue() instead of cookies() to include HttpOnly cookies. 154 155 2010-02-11 Ariya Hidayat <ariya.hidayat (a] gmail.com> 156 157 Reviewed by Kenneth Rohde Christiansen. 158 159 [Qt] Use clipRegion instead of clipPath to save lots of CPU cycles. 160 161 https://bugs.webkit.org/show_bug.cgi?id=32375 162 163 * platform/graphics/qt/GraphicsContextQt.cpp: 164 (WebCore::GraphicsContext::clipOut): 165 (WebCore::GraphicsContext::clipOutEllipseInRect): 166 167 2010-02-11 Yuzo Fujishima <yuzo (a] google.com> 168 169 Reviewed by Shinichiro Hamaji. 170 171 Rename underscored identifiers in WebCore/css/CSSParser.cpp. 172 https://bugs.webkit.org/show_bug.cgi?id=34877 173 Also fix whitespace erros that surface due to the above fix. 174 175 This doesn't change the code logic. Hence no new tests are required. 176 177 * css/CSSParser.cpp: 178 (WebCore::CSSParser::parseValue): 179 180 2010-02-11 Joseph Pecoraro <joepeck (a] webkit.org> 181 182 Reviewed by Timothy Hatcher. 183 184 Web Inspector: Focusing a resource in the inspector should default to content not header 185 https://bugs.webkit.org/show_bug.cgi?id=34861 186 187 * inspector/front-end/Settings.js: 188 (WebInspector.Settings.prototype._load): changed initial default to content tab 189 190 2010-02-11 Joseph Pecoraro <joepeck (a] webkit.org> 191 192 Reviewed by Timothy Hatcher. 193 194 Web Inspector: Editing Styles Cannot Tab Backwards from a New Style Item 195 https://bugs.webkit.org/show_bug.cgi?id=34872 196 197 * inspector/front-end/StylesSidebarPane.js: 198 (WebInspector.StylePropertiesSection.prototype.update): triggers afterUpdate 199 (WebInspector.StylePropertiesSection.prototype.afterUpdate): factored out _afterUpdate handling 200 201 2010-02-11 Nikolas Zimmermann <nzimmermann (a] rim.com> 202 203 Reviewed by Eric Seidel. 204 205 Add roundedIntSize() convenience method converting FloatSize to IntSize, just like roundedIntPoint() converting FloatPoint to IntPoint. 206 207 * platform/graphics/FloatSize.h: 208 (WebCore::roundedIntSize): 209 210 2010-02-11 Kent Tamura <tkent (a] chromium.org> 211 212 Reviewed by Darin Adler. 213 214 Fix two issues on maxLength. 215 https://bugs.webkit.org/show_bug.cgi?id=34783 216 217 - ValidityState.tooLong behavior was inconsistent with UIs of 218 <input> and <textarea>. tooLong checked Unicode code point length 219 though the UIs checks grapheme cluster length. 220 221 - Setting HTMLTextAreaElement::value didn't update the dirty flag. 222 223 * html/HTMLInputElement.cpp: 224 (WebCore::HTMLInputElement::tooLong): Use numGraphemeClusters() instead of length(). 225 * html/HTMLTextAreaElement.cpp: 226 Rename setValue() to setNonDirtyValue(), and introduce setValue() 227 which calls setNonDirtyValue() and sets the dirty flag. 228 (WebCore::HTMLTextAreaElement::childrenChanged): 229 (WebCore::HTMLTextAreaElement::reset): 230 (WebCore::HTMLTextAreaElement::setValue): 231 (WebCore::HTMLTextAreaElement::setNonDirtyValue): 232 (WebCore::HTMLTextAreaElement::setDefaultValue): 233 (WebCore::HTMLTextAreaElement::tooLong): Use numGraphemeClusters() instead of length(). 234 * html/HTMLTextAreaElement.h: 235 236 2010-02-11 Fumitoshi Ukai <ukai (a] chromium.org> 237 238 Reviewed by Alexey Proskuryakov. 239 240 WebSocket bufferedAmount should not be 0 when send after close. 241 https://bugs.webkit.org/show_bug.cgi?id=34633 242 243 Test: websocket/tests/bufferedAmount-after-close.html 244 245 * websockets/ThreadableWebSocketChannelClientWrapper.h: 246 (WebCore::ThreadableWebSocketChannelClientWrapper::didClose): 247 * websockets/WebSocket.cpp: 248 (WebCore::WebSocket::WebSocket): 249 (WebCore::WebSocket::send): 250 (WebCore::WebSocket::close): 251 (WebCore::WebSocket::bufferedAmount): 252 (WebCore::WebSocket::didConnect): 253 (WebCore::WebSocket::didClose): 254 * websockets/WebSocket.h: 255 * websockets/WebSocketChannel.cpp: 256 (WebCore::WebSocketChannel::WebSocketChannel): 257 (WebCore::WebSocketChannel::send): 258 (WebCore::WebSocketChannel::bufferedAmount): 259 (WebCore::WebSocketChannel::didClose): 260 * websockets/WebSocketChannel.h: 261 * websockets/WebSocketChannelClient.h: 262 (WebCore::WebSocketChannelClient::didClose): 263 * websockets/WorkerThreadableWebSocketChannel.cpp: 264 (WebCore::workerContextDidClose): 265 (WebCore::WorkerThreadableWebSocketChannel::Peer::didClose): 266 * websockets/WorkerThreadableWebSocketChannel.h: 267 268 2010-02-11 Fumitoshi Ukai <ukai (a] chromium.org> 269 270 Reviewed by Alexey Proskuryakov. 271 272 WebSocket in Worker failed to close 273 https://bugs.webkit.org/show_bug.cgi?id=34785 274 275 Tests: websocket/tests/workers/close-in-shared-worker.html 276 websocket/tests/workers/close-in-worker.html 277 278 * websockets/WorkerThreadableWebSocketChannel.cpp: 279 (WebCore::WorkerThreadableWebSocketChannel::close): 280 281 2010-02-11 Kwang Yul Seo <skyul (a] company100.net> 282 283 Reviewed by Eric Seidel. 284 285 [BREWMP] Add dummy Cursor 286 https://bugs.webkit.org/show_bug.cgi?id=34672 287 288 * platform/brew/CursorBrew.cpp: Added. 289 (WebCore::Cursor::Cursor): 290 (WebCore::Cursor::~Cursor): 291 (WebCore::Cursor::operator=): 292 (WebCore::dummyCursor): 293 (WebCore::pointerCursor): 294 (WebCore::crossCursor): 295 (WebCore::handCursor): 296 (WebCore::moveCursor): 297 (WebCore::iBeamCursor): 298 (WebCore::waitCursor): 299 (WebCore::helpCursor): 300 (WebCore::eastResizeCursor): 301 (WebCore::northResizeCursor): 302 (WebCore::northEastResizeCursor): 303 (WebCore::northWestResizeCursor): 304 (WebCore::southResizeCursor): 305 (WebCore::southEastResizeCursor): 306 (WebCore::southWestResizeCursor): 307 (WebCore::westResizeCursor): 308 (WebCore::northSouthResizeCursor): 309 (WebCore::eastWestResizeCursor): 310 (WebCore::northEastSouthWestResizeCursor): 311 (WebCore::northWestSouthEastResizeCursor): 312 (WebCore::columnResizeCursor): 313 (WebCore::rowResizeCursor): 314 (WebCore::verticalTextCursor): 315 (WebCore::cellCursor): 316 (WebCore::contextMenuCursor): 317 (WebCore::noDropCursor): 318 (WebCore::copyCursor): 319 (WebCore::progressCursor): 320 (WebCore::aliasCursor): 321 (WebCore::noneCursor): 322 (WebCore::notAllowedCursor): 323 (WebCore::zoomInCursor): 324 (WebCore::zoomOutCursor): 325 (WebCore::middlePanningCursor): 326 (WebCore::eastPanningCursor): 327 (WebCore::northPanningCursor): 328 (WebCore::northEastPanningCursor): 329 (WebCore::northWestPanningCursor): 330 (WebCore::southPanningCursor): 331 (WebCore::southEastPanningCursor): 332 (WebCore::southWestPanningCursor): 333 (WebCore::westPanningCursor): 334 (WebCore::grabCursor): 335 (WebCore::grabbingCursor): 336 337 2010-02-11 Nate Chapin <japhet (a] chromium.org> 338 339 Reviewed by Dimitri Glazkov. 340 341 [V8] Add back in a fast path for v8 object wrapping 342 when it's not possible we're in a WorkerContext (the fast 343 path is important for performance). 344 345 https://bugs.webkit.org/show_bug.cgi?id=34805 346 347 * bindings/scripts/CodeGeneratorV8.pm: 348 * bindings/v8/V8DOMWrapper.cpp: 349 (WebCore::V8DOMWrapper::instantiateV8ObjectInWorkerContext): 350 (WebCore::V8DOMWrapper::instantiateV8Object): 351 * bindings/v8/V8DOMWrapper.h: 352 353 2010-02-11 Nikolas Zimmermann <nzimmermann (a] rim.com> 354 355 Reviewed by Dirk Schulze. 356 357 Small cleanups in SVG render tree code. 358 Centralize calls to inflateShadow(), in SVGRenderSupport::computeRectForRepaint, 359 instead of spreading them around the subclasses. All classes should inherit 360 protected from SVGRenderBase, made it consistent. 361 362 Doesn't affect layout tests. 363 364 * rendering/RenderSVGImage.cpp: 365 (WebCore::RenderSVGImage::computeRectForRepaint): 366 * rendering/RenderSVGImage.h: 367 * rendering/RenderSVGModelObject.cpp: 368 (WebCore::RenderSVGModelObject::computeRectForRepaint): 369 * rendering/RenderSVGRoot.h: 370 * rendering/RenderSVGText.cpp: 371 (WebCore::RenderSVGText::computeRectForRepaint): 372 (WebCore::RenderSVGText::layout): 373 * rendering/SVGRenderSupport.cpp: 374 (WebCore::SVGRenderBase::computeRectForRepaint): 375 * rendering/SVGRootInlineBox.h: 376 377 2010-02-11 David Hyatt <hyatt (a] apple.com> 378 379 Reviewed by Dan Bernstein. 380 381 https://bugs.webkit.org/show_bug.cgi?id=34857 382 Move InlineIterator and BidiRun into new files so subclasses can access them. 383 384 * GNUmakefile.am: 385 * WebCore.gypi: 386 * WebCore.pro: 387 * WebCore.vcproj/WebCore.vcproj: 388 * WebCore.xcodeproj/project.pbxproj: 389 * rendering/BidiRun.cpp: Added. 390 (WebCore::BidiRun::destroy): 391 (WebCore::throw): 392 (WebCore::BidiRun::operator delete): 393 * rendering/BidiRun.h: Added. 394 (WebCore::BidiRun::BidiRun): 395 (WebCore::BidiRun::next): 396 * rendering/InlineIterator.h: Added. 397 (WebCore::InlineIterator::InlineIterator): 398 (WebCore::operator==): 399 (WebCore::operator!=): 400 (WebCore::bidiNext): 401 (WebCore::bidiFirst): 402 (WebCore::InlineIterator::increment): 403 (WebCore::InlineIterator::atEnd): 404 (WebCore::InlineIterator::current): 405 (WebCore::InlineIterator::direction): 406 (WebCore::InlineBidiResolver::increment): 407 (WebCore::InlineBidiResolver::appendRun): 408 * rendering/RenderBlock.h: 409 * rendering/RenderBlockLineLayout.cpp: 410 (WebCore::RenderBlock::appendRunsForObject): 411 (WebCore::RenderBlock::requiresLineBox): 412 413 2010-02-11 Steve Block <steveblock (a] google.com> 414 415 Reviewed by Dimitri Glazkov. 416 417 Fixes CodeGeneratorV8.pm to include the header for the indexer type when using setCollectionIndexedGetter() 418 https://bugs.webkit.org/show_bug.cgi?id=34836 419 420 setCollectionIndexedGetter() uses getIndexedPropertyOfCollection(), 421 which in turn uses toV8() with the indexer type, which is declared in 422 the header for the indexer type. 423 424 No new tests, build fix only. 425 426 * bindings/scripts/CodeGeneratorV8.pm: 427 428 2010-02-11 Pavel Feldman <pfeldman (a] chromium.org> 429 430 Reviewed by Timothy Hatcher. 431 432 Web Inspector: split source code into chunks in order to improve text 433 viewer performance on large files. 434 435 https://bugs.webkit.org/show_bug.cgi?id=34816 436 437 This change brings back SourceFrame's canvas+style magic, restores line 438 wrapping and makes things a lot like they used to be. 439 It removes TextEditor for now and renames NativeTextViewer into TextViewer. 440 TextViewer is no longer derived from TextEditor. 441 This TextViewer is still based on TextEditorModel, no iframes are involved. 442 443 Instead of creating div per line, TextViewer splits source code into 50 line 444 chunks. Upon scroll event, visible chunks are sharded into lines and individual 445 lines are highlighted. Whenever highlighted region gets outside of the visible 446 area, highlight spans are thrown away and region is replaced with the original 447 plain text chunk. 448 449 Complex stuff: 450 - Whenever there is a need to manipulate individual lines (add message bubble / 451 set breakpoint / reveal / etc.), individual chunks for such lines are created. 452 - There is also an implicit machinery that is maintaining selection when it 453 goes beyond the visible area. 454 - Search occurrences are implemented as artificial spans interweaving 455 highlighting markup. 456 457 * WebCore.gypi: 458 * WebCore.vcproj/WebCore.vcproj: 459 * inspector/front-end/NativeTextViewer.js: Removed. 460 * inspector/front-end/ScriptView.js: 461 (WebInspector.ScriptView): 462 * inspector/front-end/Settings.js: 463 * inspector/front-end/SourceFrame.js: 464 (WebInspector.SourceFrame): 465 (WebInspector.SourceFrame.prototype.set visible): 466 (WebInspector.SourceFrame.prototype.set executionLine): 467 (WebInspector.SourceFrame.prototype.revealLine): 468 (WebInspector.SourceFrame.prototype.addBreakpoint): 469 (WebInspector.SourceFrame.prototype.removeBreakpoint): 470 (WebInspector.SourceFrame.prototype.addMessage): 471 (WebInspector.SourceFrame.prototype.clearMessages): 472 (WebInspector.SourceFrame.prototype.sizeToFitContentHeight): 473 (WebInspector.SourceFrame.prototype.setContent): 474 (WebInspector.SourceFrame.prototype.highlightLine): 475 (WebInspector.SourceFrame.prototype._createViewerIfNeeded): 476 (WebInspector.SourceFrame.prototype.markAndRevealRange): 477 (WebInspector.SourceFrame.prototype.clearMarkedRange): 478 (WebInspector.SourceFrame.prototype._breakpointChanged): 479 (WebInspector.SourceFrame.prototype._updateExecutionLine): 480 (WebInspector.SourceFrame.prototype._addMessageToSource): 481 (WebInspector.SourceFrame.prototype._addExistingBreakpointsToSource): 482 (WebInspector.SourceFrame.prototype._addBreakpointToSource): 483 (WebInspector.SourceFrame.prototype._removeBreakpointFromSource): 484 (WebInspector.SourceFrame.prototype._mouseDown): 485 (WebInspector.SourceFrame.prototype._editBreakpointCondition.committed): 486 (WebInspector.SourceFrame.prototype._editBreakpointCondition.dismissed): 487 (WebInspector.SourceFrame.prototype._editBreakpointCondition): 488 (WebInspector.SourceFrame.prototype._showBreakpointConditionPopup): 489 (WebInspector.SourceFrame.prototype._createConditionElement): 490 (WebInspector.SourceFrame.prototype._keyDown): 491 (WebInspector.SourceFrame.prototype.resize): 492 (WebInspector.SourceFrame.prototype._drawProgramCounterInContext): 493 (WebInspector.SourceFrame.prototype._drawProgramCounterImageIfNeeded): 494 (WebInspector.SourceFrame.prototype._drawBreakpointImagesIfNeeded.drawBreakpoint): 495 (WebInspector.SourceFrame.prototype._drawBreakpointImagesIfNeeded): 496 * inspector/front-end/SourceView.js: 497 (WebInspector.SourceView): 498 (WebInspector.SourceView.prototype._removeBreakpoint): 499 (WebInspector.SourceView.prototype.searchCanceled): 500 (WebInspector.SourceView.prototype._jumpToSearchResult): 501 * inspector/front-end/TextEditor.js: Removed. 502 * inspector/front-end/TextViewer.js: Added. 503 (WebInspector.TextViewer): 504 (WebInspector.TextViewer.prototype.set mimeType): 505 (WebInspector.TextViewer.prototype.get textModel): 506 (WebInspector.TextViewer.prototype.revealLine): 507 (WebInspector.TextViewer.prototype.addDecoration): 508 (WebInspector.TextViewer.prototype.removeDecoration): 509 (WebInspector.TextViewer.prototype.markAndRevealRange): 510 (WebInspector.TextViewer.prototype.highlightLine): 511 (WebInspector.TextViewer.prototype._textChanged): 512 (WebInspector.TextViewer.prototype._createChunkRow): 513 (WebInspector.TextViewer.prototype._makeLineAChunk): 514 (WebInspector.TextViewer.prototype._indexChunks): 515 (WebInspector.TextViewer.prototype._highlightChanged): 516 (WebInspector.TextViewer.prototype._scroll): 517 (WebInspector.TextViewer.prototype.setCoalescingUpdate): 518 (WebInspector.TextViewer.prototype._repaintAll): 519 (WebInspector.TextViewer.prototype._chunkForOffset): 520 (WebInspector.TextViewer.prototype._chunkNumberForLine): 521 (WebInspector.TextViewer.prototype._chunkStartLine): 522 (WebInspector.TextViewer.prototype._restoreChunks): 523 (WebInspector.TextViewer.prototype._repaint): 524 (WebInspector.TextViewer.prototype._getSelection): 525 (WebInspector.TextViewer.prototype._restoreSelection): 526 (WebInspector.TextViewer.prototype._selectionToPosition): 527 (WebInspector.TextViewer.prototype._createLineRow): 528 (WebInspector.TextViewer.prototype._paintLine): 529 (WebInspector.TextViewer.prototype._createSpan): 530 (WebInspector.TextViewer.prototype._createLink): 531 (WebInspector.TextViewer.prototype._rewriteHref): 532 (WebInspector.TextViewer.prototype._markRange): 533 (WebInspector.TextViewer.prototype._decimalDigits): 534 (WebInspector.TextViewer.prototype.resize): 535 * inspector/front-end/WebKit.qrc: 536 * inspector/front-end/inspector.css: 537 * inspector/front-end/inspector.html: 538 * inspector/front-end/textEditor.css: Removed. 539 * inspector/front-end/textViewer.css: Added. 540 * inspector/front-end/utilities.js: 541 (Node.prototype.traverseNextTextNode): 542 (Node.prototype.rangeBoundaryForOffset): 543 544 2010-02-11 Csaba Osztrogonc <ossy (a] webkit.org> 545 546 Reviewed by Tor Arne Vestb. 547 548 [Qt] ENABLE_RUBY flag was restored by r54649, but default value wasn't added for Qt port. 549 https://bugs.webkit.org/show_bug.cgi?id=34698 550 551 * WebCore.pri: Add ENABLE_RUBY=1 as default setting. 552 553 2010-02-11 Steve Block <steveblock (a] google.com> 554 555 Reviewed by Jeremy Orlow. 556 557 Updates Android V8 Makefile to generate Notifications and WebSockets headers required by V8DOMWrapper.cpp 558 https://bugs.webkit.org/show_bug.cgi?id=34815 559 560 No new tests, build fix only. 561 562 * Android.derived.v8bindings.mk: 563 564 2010-02-11 Steve Block <steveblock (a] google.com> 565 566 Reviewed by Jeremy Orlow. 567 568 Updates Android V8 Makefile to generate XPath header required by V8Proxy.cpp 569 https://bugs.webkit.org/show_bug.cgi?id=34814 570 571 No new tests, build fix only. 572 573 * Android.derived.v8bindings.mk: 574 575 2010-02-11 Steve Block <steveblock (a] google.com> 576 577 Reviewed by Nate Chapin. 578 579 Update Android V8 Makefile to generate Inspector headers required by V8 ScriptObject.cpp 580 https://bugs.webkit.org/show_bug.cgi?id=34806 581 582 No new tests, build fix only. 583 584 * Android.derived.v8bindings.mk: 585 586 2010-02-11 Steve Block <steveblock (a] google.com> 587 588 Reviewed by David Levin. 589 590 Guards SVG code in V8 bindings with ENABLE(SVG) 591 https://bugs.webkit.org/show_bug.cgi?id=34812 592 593 Also updates Android V8 Makefile to generate required SVG headers. 594 595 No new tests, build fix only. 596 597 * Android.derived.v8bindings.mk: 598 * bindings/v8/custom/V8CSSValueCustom.cpp: 599 (WebCore::toV8): 600 * bindings/v8/custom/V8DocumentCustom.cpp: 601 (WebCore::toV8): 602 * bindings/v8/custom/V8ElementCustom.cpp: 603 (WebCore::toV8): 604 605 2010-02-08 Maciej Stachowiak <mjs (a] apple.com> 606 607 Reviewed by Cameron Zwarich. 608 609 Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose. 610 https://bugs.webkit.org/show_bug.cgi?id=34698 611 612 * Configurations/FeatureDefines.xcconfig: 613 * DerivedSources.make: 614 * GNUmakefile.am: 615 * html/HTMLTagNames.in: Make the ruby-related tag names conditional. 616 * rendering/RenderObject.cpp: 617 (WebCore::RenderObject::createObject): ifdef the code that would create ruby elements. 618 * rendering/RenderObject.h: ditto above 619 * rendering/RenderRuby.cpp: ifdef this whole file 620 * rendering/RenderRuby.h: ditto 621 * rendering/RenderRubyBase.cpp: ditto 622 * rendering/RenderRubyBase.h: ditto 623 * rendering/RenderRubyRun.cpp: ditto 624 * rendering/RenderRubyRun.h: ditto 625 * rendering/RenderRubyText.cpp: ditto 626 * rendering/RenderRubyText.h: ditto 627 628 2010-02-11 Kent Tamura <tkent (a] chromium.org> 629 630 Reviewed by Darin Adler. 631 632 Step attribute support for date&time types. 633 https://bugs.webkit.org/show_bug.cgi?id=30847 634 635 - Add implementation for ValidityState.stepMismatch, stepUp() and 636 stepDown() for date, datetime, datetime-local, month, time, week types. 637 - Fix string representation of DateComponents. 638 639 Tests: fast/forms/ValidityState-stepMismatch.html 640 fast/forms/input-stepup-stepdown.html 641 642 * html/HTMLInputElement.cpp: 643 - Change monthDefaultMaximum so that DateComponents::m_year doesn't overflow. 644 (WebCore::HTMLInputElement::stepBase): 645 (WebCore::HTMLInputElement::stepMismatch): 646 (WebCore::HTMLInputElement::getStepParameters): 647 (WebCore::HTMLInputElement::getAllowedValueStep): 648 (WebCore::HTMLInputElement::applyStep): 649 Renamed from applyStepForNumberOrRange(), and add support for other types. 650 (WebCore::HTMLInputElement::stepUp): Rename applyStepForNumberOrRange(). 651 (WebCore::HTMLInputElement::stepDown): Rename applyStepForNumberOrRange(). 652 (WebCore::HTMLInputElement::setValueAsDate): Use setDateValue(). 653 (WebCore::HTMLInputElement::setDateValue): 654 A helper function to make the best representation of DateComponents. 655 (WebCore::HTMLInputElement::setValueAsNumber): Use setDateValue(). 656 * html/HTMLInputElement.h: 657 658 2010-02-10 Oliver Hunt <oliver (a] apple.com> 659 660 Reviewed by Gavin Barraclough. 661 662 postMessage does not send ImageData 663 https://bugs.webkit.org/show_bug.cgi?id=34825 664 665 Implement serialisation of ImageData, and for testing reasons 666 expose the ImageData constructor (which should already have 667 been exposed). 668 669 * bindings/js/SerializedScriptValue.cpp: 670 (WebCore::SerializedImageData::create): 671 (WebCore::SerializedImageData::width): 672 (WebCore::SerializedImageData::height): 673 (WebCore::SerializedImageData::data): 674 (WebCore::SerializedImageData::SerializedImageData): 675 (WebCore::SerializedScriptValueData::SerializedScriptValueData): 676 (WebCore::SharedSerializedData::asImageData): 677 (WebCore::SerializingTreeWalker::convertIfTerminal): 678 (WebCore::DeserializingTreeWalker::convertIfTerminal): 679 (WebCore::TeardownTreeWalker::convertIfTerminal): 680 * bindings/js/SerializedScriptValue.h: 681 (WebCore::SerializedScriptValueData::): 682 (WebCore::SerializedScriptValueData::asImageData): 683 * html/canvas/CanvasPixelArray.h: 684 (WebCore::CanvasPixelArray::data): 685 * page/DOMWindow.idl: 686 687 2010-02-10 Adam Barth <abarth (a] webkit.org> 688 689 Reviewed by Darin Adler. 690 691 Address last round of review comments on r53607 692 https://bugs.webkit.org/show_bug.cgi?id=33940 693 694 Mostly renaming and cleaning up. 695 696 * css/CSSImportRule.cpp: 697 (WebCore::CSSImportRule::insertedIntoParent): 698 * css/CSSStyleSheet.h: 699 (WebCore::CSSStyleSheet::create): 700 (WebCore::CSSStyleSheet::createInline): 701 * css/StyleBase.cpp: 702 (WebCore::StyleBase::baseURL): 703 * css/StyleSheet.cpp: 704 (WebCore::StyleSheet::StyleSheet): 705 * css/StyleSheet.h: 706 (WebCore::StyleSheet::href): 707 (WebCore::StyleSheet::setFinalURL): 708 (WebCore::StyleSheet::finalURL): 709 * dom/Document.cpp: 710 (WebCore::Document::updateBaseURL): 711 * dom/ProcessingInstruction.cpp: 712 (WebCore::ProcessingInstruction::checkStyleSheet): 713 * xml/XSLImportRule.cpp: 714 (WebCore::XSLImportRule::loadSheet): 715 * xml/XSLStyleSheet.h: 716 (WebCore::XSLStyleSheet::create): 717 (WebCore::XSLStyleSheet::createInline): 718 * xml/XSLStyleSheetLibxslt.cpp: 719 (WebCore::XSLStyleSheet::XSLStyleSheet): 720 (WebCore::XSLStyleSheet::parseString): 721 (WebCore::XSLStyleSheet::loadChildSheets): 722 * xml/XSLStyleSheetQt.cpp: 723 (WebCore::XSLStyleSheet::XSLStyleSheet): 724 725 2010-02-10 Noam Rosenthal <noam.rosenthal (a] nokia.com> 726 727 Reviewed by Ariya Hidayat. 728 729 [Qt] GraphicsLayer: somtimes the item flickers at the end of an animation 730 This is because we try to delete the animation when finished: that is 731 unnecessary. WebCore manages the animation's lifecycle and makes sure 732 to call the right function when the animation can be deleted. 733 734 https://bugs.webkit.org/show_bug.cgi?id=34761 735 736 No new tests. 737 738 * platform/graphics/qt/GraphicsLayerQt.cpp: 739 (WebCore::GraphicsLayerQt::addAnimation): No need to delete here 740 (WebCore::GraphicsLayerQt::removeAnimationsForProperty): deleteLater 741 742 2010-02-10 Kevin Ollivier <kevino (a] theolliviers.com> 743 744 [wx] Build fix for wxMac/Cocoa. 745 746 * platform/wx/wxcode/mac/carbon/fontprops.cpp: Removed. 747 * platform/wx/wxcode/mac/carbon/fontprops.mm: Copied from WebCore/platform/wx/wxcode/mac/carbon/fontprops.cpp. 748 * wscript: 749 750 2010-02-10 Jon Honeycutt <jhoneycutt (a] apple.com> 751 752 REGRESSION(24929): PDF page doesn't load in background tab 753 754 Reviewed by Dan Bernstein. 755 756 * plugins/PluginView.cpp: 757 (WebCore::PluginView::startOrAddToUnstartedList): 758 Only delay loading of the plug-in if we'll kick off our own load of the 759 plug-in data later, in start(). 760 761 2010-02-10 Enrica Casucci <enrica (a] apple.com> 762 763 Reviewed by Simon Fraser. 764 765 Crash in WebKit!WebCore::RenderTextControlSingleLine::createInnerTextStyle doing anything in Safari after sitting on a page with 3D site 766 <rdar://problem/7557201> 767 https://bugs.webkit.org/show_bug.cgi?id=34823 768 769 No tests added because the code is exercised by the existing tests. 770 771 The root cause was the fact that we were not releasing a reference that was held by CA. 772 In debug builds we had an assert in the destructor of WKCACFLayer. 773 774 * platform/graphics/win/GraphicsLayerCACF.cpp: 775 (WebCore::GraphicsLayerCACF::~GraphicsLayerCACF): 776 777 2010-02-10 Kwang Yul Seo <skyul (a] company100.net> 778 779 Reviewed by Eric Seidel. 780 781 [BREWMP] Typedef DragImageRef 782 https://bugs.webkit.org/show_bug.cgi?id=34791 783 784 Use IImage* as it is the BREW's image type. 785 786 * platform/DragImage.h: 787 788 2010-02-10 Beth Dakin <bdakin (a] apple.com> 789 790 Reviewed by Simon Fraser and Darin Adler. 791 792 Fix for https://bugs.webkit.org/show_bug.cgi?id=34185 REGRESSION: 793 Mask not invalidating 794 795 SVGMaskElement is the only class that keeps a HashMap of canvas 796 resources rather than just a pointer to a resource. This 797 patch makes SVGMaskElement invalidate all of its resources in the 798 HashMap instead of just one. 799 800 * svg/SVGMaskElement.cpp: 801 (WebCore::SVGMaskElement::svgAttributeChanged): 802 (WebCore::SVGMaskElement::childrenChanged): 803 (WebCore::SVGMaskElement::invalidateCanvasResources): 804 * svg/SVGMaskElement.h: 805 * svg/SVGStyledElement.cpp: 806 (WebCore::SVGStyledElement::invalidateResourcesInAncestorChain): 807 (WebCore::SVGStyledElement::invalidateCanvasResources): 808 * svg/SVGStyledElement.h: 809 810 2010-02-10 Stephan Amus <superstippi (a] gmx.de> 811 812 Reviewed by David Levin. 813 814 Fixes to rect conversion and image rendering on Haiku 815 https://bugs.webkit.org/show_bug.cgi?id=34684 816 817 Covered by existing tests. 818 819 The changes to the rect conversions are indeed correct. In Haiku (to stay 820 compatibly with BeOS), a BRect specifies the left/top and bottom/right pixel 821 *indices*, even though the values are floating point. So a rectangle covering 822 just one pixel would be specified as BRect(0, 0, 0, 0). In WebCore and other 823 frame works, such rectangles would be expressed as 0, 0, 1, 1. In WebCore, the 824 width and height of rectangles refer to the distance between pixels, while on 825 Haiku, a one pixel rect has indeed a width and height of 0, as confusing as 826 that may be. 827 828 The part of the patch that affects 829 WebCore/platform/graphics/haiku/ImageHaiku.cpp also implements the drawing 830 methods more correctly. Image observers are notified, and pattern drawing takes 831 the "phase" into account which makes scrolled backgrounds render correctly. 832 Transformations are still not supported, since the Haiku drawing backend itself 833 does not yet support them. 834 835 Use OwnPtr when creating the BBitmap to avoid future leaks with early returns. 836 837 Convert the bitmap data to non pre-multiplied until Haiku supports drawing 838 pre-multiplied bitmaps. 839 840 * platform/graphics/haiku/FloatRectHaiku.cpp: Fixed conversion 841 * platform/graphics/haiku/ImageHaiku.cpp: 842 (WebCore::BitmapImage::draw): Fixed placement, notify observers 843 (WebCore::Image::drawPattern): Implemented using "phase" to fix scrolling, notify observers 844 * platform/graphics/haiku/IntRectHaiku.cpp: Fixed conversion 845 * platform/image-decoders/haiku/ImageDecoderHaiku.cpp: Fixed conversion 846 847 2010-02-10 Simon Fraser <simon.fraser (a] apple.com> 848 849 Reviewed by David Levin. 850 851 Clean up unused member var and initialization in Document 852 https://bugs.webkit.org/show_bug.cgi?id=34820 853 854 Remove unused m_secureForms member variable in Document. 855 856 * dom/Document.cpp: 857 (WebCore::Document::Document): 858 * dom/Document.h: 859 860 2010-02-10 Kevin Watters <kevinwatters (a] gmail.com> 861 862 Reviewed by Kevin Ollivier. 863 864 [wx] Add Windows complex text support and Mac support for containsCharacters. 865 866 https://bugs.webkit.org/show_bug.cgi?id=34759 867 868 * platform/graphics/SimpleFontData.h: 869 * platform/graphics/wx/FontPlatformData.h: 870 (WebCore::FontPlatformData::roundsGlyphAdvances): 871 * platform/graphics/wx/FontPlatformDataWx.cpp: 872 (WebCore::FontPlatformData::useGDI): 873 (WebCore::FontPlatformData::hfont): 874 * platform/graphics/wx/FontWx.cpp: 875 (WebCore::Font::canReturnFallbackFontsForComplexText): 876 (WebCore::Font::selectionRectForComplexText): 877 (WebCore::Font::drawComplexText): 878 (WebCore::Font::floatWidthForComplexText): 879 (WebCore::Font::offsetForPositionForComplexText): 880 * platform/graphics/wx/SimpleFontDataWx.cpp: 881 (WebCore::SimpleFontData::platformInit): 882 (WebCore::SimpleFontData::platformDestroy): 883 (WebCore::SimpleFontData::containsCharacters): 884 (WebCore::SimpleFontData::platformWidthForGlyph): 885 (WebCore::SimpleFontData::scriptFontProperties): 886 (WebCore::SimpleFontData::initGDIFont): 887 (WebCore::SimpleFontData::platformCommonDestroy): 888 (WebCore::SimpleFontData::widthForGDIGlyph): 889 * platform/wx/wxcode/fontprops.h: 890 * platform/wx/wxcode/gtk/fontprops.cpp: 891 (wxFontContainsCharacters): 892 * platform/wx/wxcode/mac/carbon/fontprops.cpp: 893 (wxFontContainsCharacters): 894 * platform/wx/wxcode/win/fontprops.cpp: 895 (wxFontContainsCharacters): 896 * platform/wx/wxcode/win/non-kerned-drawing.cpp: 897 (WebCore::drawTextWithSpacing): 898 * wscript: 899 900 2010-02-10 Kwang Yul Seo <skyul (a] company100.net> 901 Reviewed by Eric Seidel. 902 903 [BREWMP] Add dummy Frame::dragImageForSelection 904 https://bugs.webkit.org/show_bug.cgi?id=34792 905 906 Add FrameBrew.cpp which contains a dummy implementation of 907 Frame::dragImageForSelection. 908 909 * page/brew/FrameBrew.cpp: Added. 910 (WebCore::Frame::dragImageForSelection): 911 912 2010-02-10 Kevin Ollivier <kevino (a] theolliviers.com> 913 914 [wx] Build fix. Switch drawPattern to Image class like other platforms. 915 916 * platform/graphics/BitmapImage.h: 917 * platform/graphics/wx/ImageWx.cpp: 918 (WebCore::Image::drawPattern): 919 920 2010-02-10 Chris Marrin <cmarrin (a] apple.com> 921 922 Reviewed by Darin Adler. 923 924 Added CA_PRINT_TREE functionality to WKCACFLayer implementation 925 https://bugs.webkit.org/show_bug.cgi?id=34779 926 927 I've tried to duplicate the look of the output on Mac, but 928 it's not quite the same. It shows all the useful information though. 929 It is enabled by setting the environment variable CA_PRINT_TREE=1 930 931 * platform/graphics/win/WKCACFLayer.cpp:Implementation of printTree 932 (WebCore::WKCACFLayer::isTransformLayer): 933 Moved function to cpp file because it needs to use the function form 934 of kCACFTransformLayer because the DLL is delay loaded, and that function 935 can only be called from the cpp file. 936 (WebCore::WKCACFLayer::sublayerAtIndex): 937 (WebCore::printIndent): 938 (WebCore::printTransform): 939 (WebCore::WKCACFLayer::printTree):Prints from this layer down 940 (WebCore::WKCACFLayer::printLayer):Prints this layer and recursively calls sublayers 941 * platform/graphics/win/WKCACFLayer.h: 942 * platform/graphics/win/WKCACFLayerRenderer.cpp: 943 (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): 944 (WebCore::WKCACFLayerRenderer::createRenderer):Adds a name to the root layers 945 (WebCore::WKCACFLayerRenderer::render):Calls printTree when CA_PRINT_TREE is 1 946 * platform/graphics/win/WKCACFLayerRenderer.h: 947 948 2010-02-10 Nate Chapin <japhet (a] chromium.org> 949 950 Reviewed by Adam Barth. 951 952 Change V8DOMWrapper::lookupDOMWrapper() and configureTemplate() 953 to not use V8ClassIndex. 954 955 https://bugs.webkit.org/show_bug.cgi?id=34768 956 957 * bindings/scripts/CodeGeneratorV8.pm: 958 * bindings/v8/V8Binding.cpp: 959 * bindings/v8/V8Binding.h: 960 * bindings/v8/V8DOMWindowShell.cpp: 961 * bindings/v8/V8DOMWrapper.cpp: 962 * bindings/v8/V8DOMWrapper.h: 963 * bindings/v8/V8Proxy.cpp: 964 * bindings/v8/WorkerContextExecutionProxy.cpp: 965 * bindings/v8/custom/V8DOMWindowCustom.cpp: 966 * bindings/v8/custom/V8LocationCustom.cpp: 967 * bindings/v8/custom/V8MessageEventCustom.cpp: 968 969 2010-02-10 Nate Chapin <japhet (a] chromium.org> 970 971 Reviewed by Dimitri Glazkov. 972 973 [V8] Handle the possibility that ScheduledAction::execute() may 974 retrieve a null V8Proxy* even if not in a WorkerContext (e.g., if 975 JS was disallowed). 976 977 * bindings/v8/ScheduledAction.cpp: 978 (WebCore::ScheduledAction::execute): 979 980 2010-02-10 Kenneth Russell <kbr (a] google.com> 981 982 Reviewed by Oliver Hunt. 983 984 Remove automatic viewport resizing 985 https://bugs.webkit.org/show_bug.cgi?id=34766 986 987 Removed automatic viewport resizing per conclusions on the WebGL 988 mailing list. Added test verifying new behavior and updated a 989 couple of previous tests failing after this change. 990 991 Test: fast/canvas/webgl/viewport-unchanged-upon-resize.html 992 993 * platform/graphics/mac/GraphicsContext3DMac.cpp: 994 (WebCore::GraphicsContext3D::reshape): 995 996 2010-02-10 Ariya Hidayat <ariya.hidayat (a] gmail.com> 997 998 Reviewed by Kenneth Rohde Christiansen. 999 1000 [Qt] Implement image interpolation quality. 1001 1002 https://bugs.webkit.org/show_bug.cgi?id=34629 1003 1004 * platform/graphics/qt/GraphicsContextQt.cpp: 1005 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 1006 (WebCore::GraphicsContext::setImageInterpolationQuality): 1007 (WebCore::GraphicsContext::imageInterpolationQuality): 1008 1009 2010-02-10 Eric Seidel <eric (a] webkit.org> 1010 1011 No review, Mac build fix. 1012 1013 Crash in Flash at http://www.cctv.com/ 1014 https://bugs.webkit.org/show_bug.cgi?id=34673 1015 1016 * plugins/PluginViewNone.cpp: 1017 (WebCore::PluginView::getValueStatic): 1018 1019 2010-02-10 Gustavo Noronha Silva <gns (a] gnome.org> 1020 1021 Reviewed by Xan Lopez. 1022 1023 [GTK] Hits assertion on history back, with page cache enabled, in specific conditions 1024 https://bugs.webkit.org/show_bug.cgi?id=34773 1025 1026 When unsetting the adjustments from a ScrollView, also disconnect 1027 them from the Scrollbars. 1028 1029 Test: fast/frames/frame-crash-with-page-cache.html 1030 1031 * platform/gtk/ScrollViewGtk.cpp: 1032 (WebCore::ScrollView::setGtkAdjustments): 1033 * platform/gtk/ScrollbarGtk.cpp: 1034 (ScrollbarGtk::~ScrollbarGtk): 1035 (ScrollbarGtk::detachAdjustment): 1036 * platform/gtk/ScrollbarGtk.h: 1037 1038 2010-02-09 Alexey Proskuryakov <ap (a] apple.com> 1039 1040 Reviewed by Geoffrey Garen. 1041 1042 https://bugs.webkit.org/show_bug.cgi?id=34490 1043 WebCore::ImageEventSender::dispatchPendingEvents() crashes in certain conditions 1044 1045 Test: fast/images/destroyed-image-load-event.html 1046 1047 * ForwardingHeaders/wtf/ValueCheck.h: Added. 1048 1049 * loader/ImageLoader.cpp: 1050 (WTF::ValueCheck): Special case value check for ImageLoader - it's allocated inside elements, 1051 so check the owner instead. 1052 (WebCore::ImageEventSender::hasPendingEvents): Added a debugging aid for ImageLoader destructor. 1053 (WebCore::ImageLoader::~ImageLoader): Assert that we're not going to leave dangling pointers 1054 in ImageEventSender. 1055 (WebCore::ImageLoader::setImage): Cancel events that could be dispatched for the previous 1056 image. The only client using this method that I could find was DeleteButton, which doesn't 1057 care about load events for the new image, so I didn't add any code for firing those. 1058 (WebCore::ImageLoader::setLoadingImage): This method only existed to confuse readers - 1059 there wasn't any meaningful code shared (callers just undid most assignments made there). 1060 Merged the logic into callers. 1061 (WebCore::ImageLoader::updateFromElement): We're forgetting the old image, so forget its 1062 old events, too. 1063 (WebCore::ImageLoader::notifyFinished): This can be called from setImage(), in which case 1064 no one is going to dispatch the event "soon". So, don't queue it. 1065 (WebCore::ImageEventSender::dispatchPendingEvents): Call checkConsistency(). This didn't 1066 help catch this particuar bug, but seems like a useful check anyway. 1067 1068 * loader/ImageLoader.h: Removed setLoadingImage(). 1069 1070 2010-02-10 Jon Honeycutt <jhoneycutt (a] apple.com> 1071 1072 Mac build fix. Unreviewed. 1073 1074 * WebCore.xcodeproj/project.pbxproj: 1075 Add PluginViewNone.cpp to the Mac project. 1076 1077 2010-02-10 Adam Roben <aroben (a] apple.com> 1078 1079 Optimize ImageBuffer::toDataURL's CG implementation 1080 1081 There was some unused code that could have been removed in r31830 when 1082 this function was changed not to flip the CG image anymore. 1083 1084 Fixes <http://webkit.org/b/34808> ImageBuffer::toDataURL allocates 1085 unnecessary memory under CoreGraphics 1086 1087 Reviewed by Sam Weinig. 1088 1089 * platform/graphics/cg/ImageBufferCG.cpp: 1090 (WebCore::ImageBuffer::toDataURL): Don't allocate an unused CGImageRef 1091 and buffer, and switch to the new overload of base64Encode that 1092 doesn't require us to copy all the image data into a Vector first. 1093 1094 * platform/text/Base64.cpp: 1095 (WebCore::base64Encode): 1096 * platform/text/Base64.h: 1097 Added an overload that takes a raw data pointer and length, just like 1098 we have for base64Decode. The overload that takes a Vector as input 1099 just calls through to the new overload. 1100 1101 2010-02-10 Dan Bernstein <mitz (a] apple.com> 1102 1103 Reviewed by Dave Hyatt. 1104 1105 Complete the fix for <rdar://problem/7577604> Drag and Drop: background elements are bleeding through 1106 https://bugs.webkit.org/show_bug.cgi?id=34546 1107 1108 * manual-tests/drag-image-table-part-decorations.html: 1109 * rendering/RenderTableCell.cpp: 1110 (WebCore::RenderTableCell::paint): Dont paint collapsed borders if this object shouldnt 1111 paint within the current painting root. 1112 1113 2010-02-08 Jon Honeycutt <jhoneycutt (a] apple.com> 1114 1115 <rdar://problem/7436875> Crash in Flash when visiting 1116 http://www.cctv.com/default.shtml (WER ID 819298200) [watson 2502260] 1117 1118 Reviewed by Darin Adler. 1119 1120 Test: platform/win/plugins/plugin-delayed-destroy.html 1121 1122 * bridge/NP_jsobject.cpp: 1123 (_NPN_Evaluate): 1124 If Flash calls this to evaluate a script that destroys the PluginView, 1125 we crash when returning to Flash code. Before evaluating the script, 1126 call PluginView::keepAlive() to hold a ref to this instance (and release 1127 it asynchronously). 1128 1129 * plugins/PluginView.cpp: 1130 (WebCore::instanceMap): 1131 Return a map from the NPP to the PluginView. 1132 (WebCore::PluginView::~PluginView): 1133 Assert that the keep alive timer is not running; remove ourselves from 1134 the instance map. 1135 (WebCore::PluginView::performRequest): 1136 The parent Frame is now a RefPtr; use .get(). 1137 (WebCore::PluginView::status): 1138 Ditto. 1139 (WebCore::PluginView::didReceiveResponse): 1140 Ditto. 1141 (WebCore::PluginView::PluginView): 1142 Add the view to the instance map. 1143 (WebCore::PluginView::lifeSupportTimerFired): 1144 Deref the PluginView. 1145 (WebCore::PluginView::keepAlive): 1146 Ref the PluginView, then start a time to release the reference 1147 asynchronously. 1148 (WebCore::PluginView::keepAlive): 1149 Find the PluginView in the map, and call its keepAlive() function. 1150 1151 * plugins/PluginView.h: 1152 Made m_parentFrame a RefPtr, so that it will remain valid when the 1153 keep alive timer fires. 1154 (WebCore::PluginView::parentFrame): 1155 Use .get(). 1156 1157 * plugins/gtk/PluginViewGtk.cpp: 1158 (WebCore::PluginView::updatePluginWidget): 1159 Use .get(). 1160 (WebCore::PluginView::handleKeyboardEvent): 1161 Use .get(). 1162 (WebCore::PluginView::handleMouseEvent): 1163 Use .get(). 1164 1165 * plugins/PluginViewNone.cpp: 1166 (WebCore::PluginView::keepAlive): 1167 Stubbed. 1168 1169 2010-02-10 Jesus Sanchez-Palencia <jesus.palencia (a] openbossa.org> 1170 1171 Reviewed by Kenneth Rohde Christiansen. 1172 1173 Support frameset flattening 1174 https://bugs.webkit.org/show_bug.cgi?id=32717 1175 1176 Add support for enabling/disabling FrameSet Flattening on the Mac port. 1177 1178 * WebCore.base.exp: 1179 1180 2010-02-10 Jeremy Orlow <jorlow (a] chromium.org> 1181 1182 Revert 54599 because it breaks a lot of tests on Windows Chrome 1183 1184 * inspector/front-end/DOMAgent.js: 1185 (WebInspector.DOMNode.prototype._insertChild): 1186 * inspector/front-end/ElementsPanel.js: 1187 (WebInspector.ElementsPanel.prototype.updateModifiedNodes): 1188 * inspector/front-end/ElementsTreeOutline.js: 1189 (WebInspector.ElementsTreeOutline.prototype.revealAndSelectNode): 1190 (WebInspector.ElementsTreeElement): 1191 (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode): 1192 (WebInspector.ElementsTreeElement.prototype._updateChildren): 1193 (): 1194 * inspector/front-end/inspector.css: 1195 1196 2010-02-10 Adam Roben <aroben (a] apple.com> 1197 1198 Fix bad paths in WebCore.vcproj 1199 1200 These were harmless in VS2005, but cause project conversion errors in 1201 VS2010 RC. 1202 1203 Fixes <http://webkit.org/b/34801>. 1204 1205 Reviewed by Dan Bernstein. 1206 1207 * WebCore.vcproj/WebCore.vcproj: Removed leading "." from paths to 1208 JSHTMLFrameSetElement.{cpp,h}. 1209 1210 2010-02-10 Julien Chaffraix <jchaffraix (a] webkit.org> 1211 1212 Not reviewed (build fix). 1213 1214 * platform/graphics/win/FontCacheWin.cpp: 1215 (WebCore::FontCache::getLastResortFallbackFont): Return a 1216 SimpleFontData here. 1217 1218 2010-02-10 Julien Chaffraix <jchaffraix (a] pleyo.com> 1219 1220 Reviewed by Eric Seidel. 1221 1222 Bug 23287 - Avoid using FontPlatformData outside the FontCache 1223 1224 No functional change, only refactored the code using FontPlatformData to use SimpleFontData. 1225 1226 This change leaves the class FontCached as it needs some thoughts and more refactoring. 1227 1228 * css/CSSFontFaceSource.cpp: 1229 (WebCore::CSSFontFaceSource::getFontData): Call getCachedFontData with the 2 parameters directly. 1230 * css/CSSFontSelector.cpp: 1231 (WebCore::fontDataForGenericFamily): Ditto. 1232 * platform/graphics/FontCache.cpp: 1233 (WebCore::FontCache::getCachedFontData): This method is meant to replace getCachedFontPlatformData 1234 that was moved in the private section of the class. It calls getCachedFontPlatformData and cache 1235 the returned FontPlatformData if it is not null. 1236 (WebCore::FontCache::getFontData): Updated to use the new getCachedFontData. 1237 * platform/graphics/FontCache.h: Updated several methods to return a SimpleFontData in lieu of a 1238 FontPlatformData. Moved some method in the private sections. 1239 1240 * platform/graphics/chromium/FontCacheChromiumWin.cpp: 1241 (WebCore::FontCache::getSimilarFontPlatformData): 1242 (WebCore::FontCache::getLastResortFallbackFont): 1243 * platform/graphics/chromium/FontCacheLinux.cpp: 1244 (WebCore::FontCache::getSimilarFontPlatformData): 1245 (WebCore::FontCache::getLastResortFallbackFont): 1246 * platform/graphics/gtk/FontCacheGtk.cpp: 1247 (WebCore::FontCache::getSimilarFontPlatformData): 1248 (WebCore::FontCache::getLastResortFallbackFont): 1249 * platform/graphics/haiku/FontCacheHaiku.cpp: 1250 (WebCore::FontCache::getSimilarFontPlatformData): 1251 (WebCore::FontCache::getLastResortFallbackFont): 1252 * platform/graphics/qt/FontCacheQt.cpp: 1253 (WebCore::FontCache::getLastResortFallbackFont): 1254 * platform/graphics/win/FontCacheWin.cpp: 1255 (WebCore::FontCache::getSimilarFontPlatformData): 1256 (WebCore::FontCache::getLastResortFallbackFont): 1257 * platform/graphics/wince/FontCacheWince.cpp: 1258 * platform/graphics/wx/FontCacheWx.cpp: 1259 (WebCore::FontCache::getSimilarFontPlatformData): 1260 (WebCore::FontCache::getLastResortFallbackFont): 1261 Updated all the previous platform methods to return a SimpleFontData. 1262 1263 * platform/graphics/mac/FontCacheMac.mm: 1264 (WebCore::FontCache::getSimilarFontPlatformData): Updated to return a SimpleFontData. 1265 (WebCore::FontCache::getLastResortFallbackFont): Ditto. Also refactored the code 1266 and moved a DEFINE_STATIC_LOCAL where it is needed. 1267 1268 2010-02-10 Alexander Pavlov <apavlov (a] chromium.org> 1269 1270 Reviewed by Pavel Feldman. 1271 1272 Web Inspector: Elements Panel: Limit the number of initially loaded element children 1273 https://bugs.webkit.org/show_bug.cgi?id=34421 1274 1275 Test: inspector/elements-panel-limited-children.html 1276 1277 * English.lproj/localizedStrings.js: 1278 * inspector/front-end/DOMAgent.js: 1279 (WebInspector.DOMNode.prototype._insertChild): 1280 * inspector/front-end/ElementsPanel.js: 1281 (WebInspector.ElementsPanel.prototype.updateModifiedNodes): 1282 * inspector/front-end/ElementsTreeOutline.js: 1283 (WebInspector.ElementsTreeOutline.prototype.createTreeElementFor): 1284 (WebInspector.ElementsTreeOutline.prototype.revealAndSelectNode): 1285 (WebInspector.ElementsTreeElement): 1286 (WebInspector.ElementsTreeElement.prototype.get expandedChildrenLimit): 1287 (WebInspector.ElementsTreeElement.prototype.set expandedChildrenLimit): 1288 (WebInspector.ElementsTreeElement.prototype.get expandedChildCount): 1289 (WebInspector.ElementsTreeElement.prototype.showChild): 1290 (WebInspector.ElementsTreeElement.prototype.insertChildElement): 1291 (WebInspector.ElementsTreeElement.prototype.moveChild): 1292 (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode): 1293 (WebInspector.ElementsTreeElement.prototype._updateChildren): 1294 (WebInspector.ElementsTreeElement.prototype.adjustCollapsedRange): 1295 (WebInspector.ElementsTreeElement.prototype.handleLoadAllChildren): 1296 (): 1297 * inspector/front-end/inspector.css: 1298 1299 2010-02-10 Mikhail Naganov <mnaganov (a] chromium.org> 1300 1301 Reviewed by Pavel Feldman. 1302 1303 Remove several #if USE(JSC) branches. Introduce ScriptDebugServer class for 1304 making JavaScriptDebugServer engine-agnostic. 1305 1306 https://bugs.webkit.org/show_bug.cgi?id=34795 1307 1308 * GNUmakefile.am: 1309 * WebCore.gypi: 1310 * WebCore.pro: 1311 * WebCore.xcodeproj/project.pbxproj: 1312 * bindings/js/JSBindingsAllInOne.cpp: 1313 * bindings/js/ScriptDebugServer.cpp: Added. 1314 (WebCore::ScriptDebugServer::recompileAllJSFunctions): 1315 (WebCore::ScriptDebugServer::recompileAllJSFunctionsSoon): 1316 * bindings/js/ScriptDebugServer.h: Added. 1317 * bindings/v8/ScriptDebugServer.cpp: Added. 1318 (WebCore::ScriptDebugServer::recompileAllJSFunctions): 1319 (WebCore::ScriptDebugServer::recompileAllJSFunctionsSoon): 1320 * bindings/v8/ScriptDebugServer.h: Added. 1321 * inspector/InspectorController.cpp: 1322 (WebCore::InspectorController::startUserInitiatedProfiling): 1323 (WebCore::InspectorController::enableProfiler): 1324 (WebCore::InspectorController::disableProfiler): 1325 * page/Console.cpp: 1326 (WebCore::Console::profile): 1327 (WebCore::Console::profileEnd): 1328 1329 2009-10-06 Yongjun Zhang <yongjun.zhang (a] nokia.com> 1330 1331 Reviewed by Simon Hausmann. 1332 1333 Make JObjectWrapper::ref() and deref() public accessible to derefIfNull(). 1334 1335 Will be reverted when the following winscw compiler bug is fixed. 1336 https://xdabug001.ext.nokia.com/bugzilla/show_bug.cgi?id=9812 1337 1338 https://bugs.webkit.org/show_bug.cgi?id=28054 1339 1340 * bridge/jni/jsc/JavaInstanceJSC.h: 1341 * bridge/jni/v8/JavaInstanceV8.h: 1342 1343 2010-02-10 Yaar Schnitman <yaar (a] chromium.org> 1344 1345 Reviewed by Adam Barth. 1346 1347 Simplified RuntimeEnabledFeatures and corresponding v8 generated code 1348 https://bugs.webkit.org/show_bug.cgi?id=34667 1349 1350 * WebCore.gypi: 1351 * bindings/generic/RuntimeEnabledFeatures.cpp: Added. 1352 (WebCore::RuntimeEnabledFeatures::audioEnabled): 1353 (WebCore::RuntimeEnabledFeatures::htmlMediaElementEnabled): 1354 (WebCore::RuntimeEnabledFeatures::htmlAudioElementEnabled): 1355 (WebCore::RuntimeEnabledFeatures::htmlVideoElementEnabled): 1356 (WebCore::RuntimeEnabledFeatures::mediaErrorEnabled): 1357 (WebCore::RuntimeEnabledFeatures::sharedWorkerEnabled): 1358 (WebCore::RuntimeEnabledFeatures::webSocketEnabled): 1359 (WebCore::RuntimeEnabledFeatures::openDatabaseEnabled): 1360 * bindings/generic/RuntimeEnabledFeatures.h: Added. 1361 (WebCore::RuntimeEnabledFeatures::setLocalStorageEnabled): 1362 (WebCore::RuntimeEnabledFeatures::localStorageEnabled): 1363 (WebCore::RuntimeEnabledFeatures::setSessionStorageEnabled): 1364 (WebCore::RuntimeEnabledFeatures::sessionStorageEnabled): 1365 (WebCore::RuntimeEnabledFeatures::setWebkitNotificationsEnabled): 1366 (WebCore::RuntimeEnabledFeatures::webkitNotificationsEnabled): 1367 (WebCore::RuntimeEnabledFeatures::setApplicationCacheEnabled): 1368 (WebCore::RuntimeEnabledFeatures::applicationCacheEnabled): 1369 (WebCore::RuntimeEnabledFeatures::setGeolocationEnabled): 1370 (WebCore::RuntimeEnabledFeatures::geolocationEnabled): 1371 (WebCore::RuntimeEnabledFeatures::setIndexedDBEnabled): 1372 (WebCore::RuntimeEnabledFeatures::indexedDBEnabled): 1373 (WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures): 1374 * bindings/scripts/CodeGenerator.pm: 1375 * bindings/scripts/CodeGeneratorV8.pm: 1376 * bindings/v8/RuntimeEnabledFeatures.cpp: Removed. 1377 * bindings/v8/RuntimeEnabledFeatures.h: Removed. 1378 * bindings/v8/custom/V8DOMWindowCustom.cpp: 1379 * bindings/v8/custom/V8NavigatorCustom.cpp: 1380 * bindings/v8/custom/V8WorkerContextCustom.cpp: 1381 1382 2010-02-09 Alexander Pavlov <apavlov (a] chromium.org> 1383 1384 Reviewed by Pavel Feldman. 1385 1386 Web Inspector: Add two basic categories for the Audits panel 1387 https://bugs.webkit.org/show_bug.cgi?id=32930 1388 1389 * WebCore.gypi: 1390 * WebCore.vcproj/WebCore.vcproj: 1391 * inspector/front-end/AuditCategories.js: Added. 1392 (WebInspector.AuditCategories.PagePerformance): 1393 (WebInspector.AuditCategories.PagePerformance.prototype.initialize): 1394 (WebInspector.AuditCategories.NetworkUtilization): 1395 (WebInspector.AuditCategories.NetworkUtilization.prototype.initialize): 1396 * inspector/front-end/AuditLauncherView.js: 1397 (WebInspector.AuditLauncherView.prototype.updateResourceTrackingState): 1398 (WebInspector.AuditLauncherView.prototype._createLauncherUI): 1399 (WebInspector.AuditLauncherView.prototype.show): 1400 * inspector/front-end/AuditRules.js: Added. 1401 (WebInspector.AuditRules.arrayAsUL): 1402 (WebInspector.AuditRules.getDomainToResourcesMap): 1403 (WebInspector.AuditRules.evaluateInTargetWindow): 1404 (WebInspector.AuditRules.GzipRule): 1405 (WebInspector.AuditRules.GzipRule.prototype.doRun): 1406 (WebInspector.AuditRules.GzipRule.prototype._isCompressed): 1407 (WebInspector.AuditRules.GzipRule.prototype._shouldCompress): 1408 (WebInspector.AuditRules.CombineExternalResourcesRule): 1409 (WebInspector.AuditRules.CombineExternalResourcesRule.prototype.doRun): 1410 (WebInspector.AuditRules.CombineJsResourcesRule): 1411 (WebInspector.AuditRules.CombineCssResourcesRule): 1412 (WebInspector.AuditRules.MinimizeDnsLookupsRule): 1413 (WebInspector.AuditRules.MinimizeDnsLookupsRule.prototype.doRun): 1414 (WebInspector.AuditRules.ParallelizeDownloadRule): 1415 (WebInspector.AuditRules.ParallelizeDownloadRule.prototype.doRun): 1416 (WebInspector.AuditRules.UnusedCssRule): 1417 (WebInspector.AuditRules.UnusedCssRule.prototype._getUnusedStylesheetRatioMessage): 1418 (WebInspector.AuditRules.UnusedCssRule.prototype._getUnusedTotalRatioMessage): 1419 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback): 1420 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.routine): 1421 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun): 1422 (WebInspector.AuditRules.CacheControlRule): 1423 (WebInspector.AuditRules.CacheControlRule.prototype.InfoCheck.1.FailCheck.0.WarningCheck.1.SevereCheck.2.doRun): 1424 (WebInspector.AuditRules.CacheControlRule.prototype.handleNonCacheableResources): 1425 (WebInspector.AuditRules.CacheControlRule.prototype._cacheableAndNonCacheableResources): 1426 (WebInspector.AuditRules.CacheControlRule.prototype.execCheck): 1427 (WebInspector.AuditRules.CacheControlRule.prototype.freshnessLifetimeGreaterThan): 1428 (WebInspector.AuditRules.CacheControlRule.prototype.responseHeader): 1429 (WebInspector.AuditRules.CacheControlRule.prototype.hasResponseHeader): 1430 (WebInspector.AuditRules.CacheControlRule.prototype.isCompressible): 1431 (WebInspector.AuditRules.CacheControlRule.prototype.isPubliclyCacheable): 1432 (WebInspector.AuditRules.CacheControlRule.prototype.responseHeaderMatch): 1433 (WebInspector.AuditRules.CacheControlRule.prototype.hasExplicitExpiration): 1434 (WebInspector.AuditRules.CacheControlRule.prototype._isExplicitlyNonCacheable): 1435 (WebInspector.AuditRules.CacheControlRule.prototype.isCacheableResource): 1436 (WebInspector.AuditRules.BrowserCacheControlRule): 1437 (WebInspector.AuditRules.BrowserCacheControlRule.prototype.handleNonCacheableResources): 1438 (WebInspector.AuditRules.BrowserCacheControlRule.prototype.runChecks): 1439 (WebInspector.AuditRules.BrowserCacheControlRule.prototype._missingExpirationCheck): 1440 (WebInspector.AuditRules.BrowserCacheControlRule.prototype._varyCheck): 1441 (WebInspector.AuditRules.BrowserCacheControlRule.prototype._oneMonthExpirationCheck): 1442 (WebInspector.AuditRules.BrowserCacheControlRule.prototype._oneYearExpirationCheck): 1443 (WebInspector.AuditRules.ProxyCacheControlRule): 1444 (WebInspector.AuditRules.ProxyCacheControlRule.prototype.runChecks): 1445 (WebInspector.AuditRules.ProxyCacheControlRule.prototype._questionMarkCheck): 1446 (WebInspector.AuditRules.ProxyCacheControlRule.prototype._publicCachingCheck): 1447 (WebInspector.AuditRules.ProxyCacheControlRule.prototype._setCookieCacheableCheck): 1448 (WebInspector.AuditRules.ImageDimensionsRule): 1449 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun): 1450 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.routine.hasDimension): 1451 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.routine.hasWidth): 1452 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.routine.hasHeight): 1453 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.routine): 1454 (WebInspector.AuditRules.CssInHeadRule): 1455 (WebInspector.AuditRules.CssInHeadRule.prototype.doRun): 1456 (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.routine.allViews): 1457 (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.routine): 1458 (WebInspector.AuditRules.StylesScriptsOrderRule): 1459 (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun): 1460 (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun.routine): 1461 (WebInspector.AuditRules.CookieRuleBase): 1462 (WebInspector.AuditRules.CookieRuleBase.prototype.doRun.resultCallback): 1463 (WebInspector.AuditRules.CookieRuleBase.prototype.doRun): 1464 (WebInspector.AuditRules.CookieRuleBase.prototype.mapResourceCookies): 1465 (WebInspector.AuditRules.CookieRuleBase.prototype._callbackForResourceCookiePairs): 1466 (WebInspector.AuditRules.CookieSizeRule): 1467 (WebInspector.AuditRules.CookieSizeRule.prototype._average): 1468 (WebInspector.AuditRules.CookieSizeRule.prototype._max): 1469 (WebInspector.AuditRules.CookieSizeRule.prototype.processCookies): 1470 (WebInspector.AuditRules.CookieSizeRule.prototype.processCookies.avgSizeSorter): 1471 (WebInspector.AuditRules.StaticCookielessRule): 1472 (WebInspector.AuditRules.StaticCookielessRule.prototype.processCookies): 1473 (WebInspector.AuditRules.StaticCookielessRule.prototype._collectorCallback): 1474 * inspector/front-end/AuditsPanel.js: 1475 (WebInspector.AuditsPanel.prototype._constructCategories): 1476 (WebInspector.AuditsPanel.prototype._reloadResources): 1477 (WebInspector.AuditsPanel.prototype.show): 1478 (WebInspector.AuditsPanel.prototype._updateLauncherViewControls): 1479 (WebInspector.AuditCategory): 1480 (WebInspector.AuditCategory.prototype.get id): 1481 (WebInspector.AuditCategory.prototype.get ruleCount): 1482 (WebInspector.AuditCategory.prototype.runRules): 1483 (WebInspector.AuditCategory.prototype._ensureInitialized): 1484 (WebInspector.AuditCategoryResult): 1485 * inspector/front-end/WebKit.qrc: 1486 * inspector/front-end/audits.css: 1487 * inspector/front-end/inspector.html: 1488 * inspector/front-end/inspector.js: 1489 (WebInspector.loaded): 1490 (WebInspector.addPanelToolbarIcon): 1491 (WebInspector.documentKeyDown): 1492 1493 2010-02-10 Adam Barth <abarth (a] webkit.org> 1494 1495 Reviewed by Darin Adler. 1496 1497 Freeze sandbox attributes on creation 1498 https://bugs.webkit.org/show_bug.cgi?id=34184 1499 1500 This is how the spec works now. 1501 1502 Test: fast/frames/sandboxed-iframe-forms-dynamic.html 1503 1504 * bindings/ScriptControllerBase.cpp: 1505 (WebCore::ScriptController::canExecuteScripts): 1506 * bindings/generic/BindingDOMWindow.h: 1507 (WebCore::::createWindow): 1508 * bindings/js/JSDOMWindowCustom.cpp: 1509 (WebCore::createWindow): 1510 * dom/Document.cpp: 1511 * dom/Document.h: 1512 * loader/FrameLoader.cpp: 1513 (WebCore::FrameLoader::submitForm): 1514 (WebCore::FrameLoader::requestObject): 1515 (WebCore::FrameLoader::shouldAllowNavigation): 1516 (WebCore::FrameLoader::updateSandboxFlags): 1517 * page/SecurityOrigin.cpp: 1518 * page/SecurityOrigin.h: 1519 1520 2010-02-09 Ariya Hidayat <ariya.hidayat (a] gmail.com> 1521 1522 Rubber-stamped by Kenneth Rohde Christiansen. 1523 1524 [Qt] Remove old, outdated unused code block. 1525 1526 * platform/graphics/qt/GraphicsContextQt.cpp: 1527 1528 2010-02-09 Chris Guillory <ctguil (a] google.com> 1529 1530 Reviewed by Darin Fisher. 1531 1532 [Chromium] Notify ChromeClientChromium of state change notifications. 1533 1534 https://bugs.webkit.org/show_bug.cgi?id=34464 1535 1536 * accessibility/chromium/AXObjectCacheChromium.cpp: 1537 (WebCore::toChromeClientChromium): 1538 (WebCore::AXObjectCache::postPlatformNotification): 1539 * page/chromium/ChromeClientChromium.h: 1540 1541 2010-02-09 Kwang Yul Seo <skyul (a] company100.net> 1542 1543 Reviewed by Adam Barth. 1544 1545 [BREWMP] Port PlatformMouseEvent 1546 https://bugs.webkit.org/show_bug.cgi?id=34600 1547 1548 Retrieve the event type, position, key modifiers, time stamp 1549 and click count from AEEEvent. 1550 1551 * platform/PlatformMouseEvent.h: 1552 * platform/brew/PlatformMouseEventBrew.cpp: Added. 1553 (WebCore::PlatformMouseEvent::PlatformMouseEvent): 1554 1555 2010-02-09 Avi Drissman <avi (a] chromium.org> 1556 1557 Reviewed by Timothy Hatcher. 1558 1559 [Chromium] RenderTheme does not draw focus rings on SL for checkboxes, radio buttons 1560 https://bugs.webkit.org/show_bug.cgi?id=34544 1561 1562 Covered by layout tests when run on SL. 1563 1564 * platform/chromium/ThemeChromiumMac.mm: 1565 (-[TCMVisibleView _focusRingVisibleRect]): 1566 (-[TCMVisibleView _focusRingClipAncestor]): 1567 (FocusIndicationFix::currentOSHasSetFocusRingStyleInBitmapBug): 1568 (FocusIndicationFix::swizzleFocusView): 1569 (FocusIndicationFix::ScopedFixer::ScopedFixer): 1570 (FocusIndicationFix::ScopedFixer::~ScopedFixer): 1571 (+[NSView TCMInterposing_focusView]): 1572 (WebCore::paintCheckbox): 1573 (WebCore::paintRadio): 1574 (WebCore::paintButton): 1575 1576 2010-02-09 Anton Muhin <antonm (a] chromium.org> 1577 1578 Reviewed by Nate Chapin. 1579 1580 [v8] Check if returned wrapper is empty before operating on it. 1581 https://bugs.webkit.org/show_bug.cgi?id=34746 1582 1583 * bindings/v8/custom/V8DocumentCustom.cpp: 1584 (WebCore::toV8): 1585 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: 1586 (WebCore::toV8): 1587 * bindings/v8/custom/V8SVGDocumentCustom.cpp: 1588 (WebCore::toV8): 1589 1590 2010-02-09 Mikhail Naganov <mnaganov (a] chromium.org> 1591 1592 Reviewed by Pavel Feldman. 1593 1594 Continuing debugger and profiler unforking: narrow scope of JSC-specific ifdefs. 1595 Also, enable JAVASCRIPT_DEBUGGER explicitly in features, it appears to be required 1596 for really enabling it in V8 bindings generation. 1597 1598 https://bugs.webkit.org/show_bug.cgi?id=34706 1599 1600 * inspector/InjectedScriptHost.idl: 1601 * inspector/InspectorBackend.cpp: 1602 (WebCore::InspectorBackend::currentCallFrame): 1603 (WebCore::InspectorBackend::getProfile): 1604 * inspector/InspectorBackend.h: 1605 * inspector/InspectorBackend.idl: 1606 * inspector/InspectorController.cpp: 1607 (WebCore::InspectorController::InspectorController): 1608 (WebCore::InspectorController::addProfile): 1609 (WebCore::InspectorController::getProfile): 1610 (WebCore::InspectorController::startUserInitiatedProfiling): 1611 (WebCore::InspectorController::stopUserInitiatedProfiling): 1612 (WebCore::InspectorController::enableProfiler): 1613 (WebCore::InspectorController::disableProfiler): 1614 * inspector/InspectorController.h: 1615 * inspector/InspectorFrontend.cpp: 1616 (WebCore::InspectorFrontend::pausedScript): 1617 (WebCore::InspectorFrontend::resumedScript): 1618 (WebCore::InspectorFrontend::profilerWasEnabled): 1619 (WebCore::InspectorFrontend::profilerWasDisabled): 1620 (WebCore::InspectorFrontend::didGetProfile): 1621 * inspector/InspectorFrontend.h: 1622 * page/Console.idl: 1623 1624 2010-02-09 Gavin Barraclough <barraclough (a] apple.com> 1625 1626 Rubber Stamped by Geoff Garen. 1627 1628 Rename StringBuilder::release && JSStringBuilder::releaseJSString 1629 to 'build()'. 1630 1631 * bindings/js/ScriptString.h: 1632 (WebCore::ScriptString::operator+=): 1633 1634 2010-02-09 Dan Bernstein <mitz (a] apple.com> 1635 1636 Reviewed by Anders Carlsson. 1637 1638 <rdar://problem/7400160> Netscape plug-ins are not instantiated on property access if there are pending stylesheets 1639 https://bugs.webkit.org/show_bug.cgi?id=34776 1640 1641 Tests: plugins/instance-available-before-stylesheets-loaded-object.html 1642 plugins/instance-available-before-stylesheets-loaded.html 1643 1644 * html/HTMLEmbedElement.cpp: 1645 (WebCore::HTMLEmbedElement::renderWidgetForJSBindings): Call 1646 updateLayoutIgnorePendingStylesheets() before checking for a renderer. 1647 * html/HTMLObjectElement.cpp: 1648 (WebCore::HTMLObjectElement::renderWidgetForJSBindings): Ditto. 1649 1650 2010-02-09 Alejandro G. Castro <alex (a] igalia.com> 1651 1652 Reviewed by Darin Adler. 1653 1654 Problems navigating by caret in links whose text wraps onto 1655 subsequent lines. 1656 https://bugs.webkit.org/show_bug.cgi?id=25676 1657 1658 We should not search ahead if we are not in the last element. 1659 1660 * dom/Position.cpp: 1661 1662 2010-02-09 Dirk Schulze <krit (a] webkit.org> 1663 1664 Reviewed by Nikolas Zimmermann. 1665 1666 More optimization for AffineTransform with SVG 1667 https://bugs.webkit.org/show_bug.cgi?id=34774 1668 1669 Some optimizations to safe unnecessary summations and multiplications. 1670 Optimize AffineTransform to handle an identity or translation matrix 1671 more efficient. 1672 Added translationRight to avoid multiplications of matrices as much as 1673 possible. 1674 1675 No tests added, no change of functionality. 1676 1677 * platform/graphics/transforms/AffineTransform.cpp: 1678 (WebCore::AffineTransform::inverse): 1679 (WebCore::AffineTransform::translate): 1680 (WebCore::AffineTransform::translateRight): 1681 * platform/graphics/transforms/AffineTransform.h: 1682 * rendering/RenderForeignObject.cpp: 1683 (WebCore::RenderForeignObject::translationForAttributes): 1684 (WebCore::RenderForeignObject::localToParentTransform): 1685 * rendering/RenderForeignObject.h: 1686 * rendering/RenderSVGRoot.cpp: 1687 (WebCore::RenderSVGRoot::localToBorderBoxTransform): 1688 (WebCore::RenderSVGRoot::localToRepaintContainerTransform): 1689 (WebCore::RenderSVGRoot::localToParentTransform): 1690 * rendering/RenderSVGViewportContainer.cpp: 1691 (WebCore::RenderSVGViewportContainer::localToParentTransform): 1692 * rendering/SVGRootInlineBox.cpp: 1693 (WebCore::applyTextLengthCorrectionToTextChunk): 1694 1695 2010-02-09 Dirk Schulze <krit (a] webkit.org> 1696 1697 Reviewed by Nikolas Zimmermann. 1698 1699 SVG patterns with some scale patternTransform are not displayed correctly for small elements 1700 https://bugs.webkit.org/show_bug.cgi?id=25484 1701 1702 SVG Pattern size was clipped to the size of the target, if the pattern is bigger than the target. This 1703 causes problems, if the patternTransform scales the pattern. This patch deletes the clipping. 1704 1705 Tests: svg/custom/pattern-excessive-malloc.svg 1706 svg/custom/pattern-size-bigger-than-target-size.svg 1707 svg/custom/pattern-skew-transformed.svg 1708 1709 * svg/SVGPatternElement.cpp: 1710 (WebCore::SVGPatternElement::buildPattern): 1711 1712 2010-02-09 Darin Adler <darin (a] apple.com> 1713 1714 * rendering/RenderObject.cpp: 1715 (WebCore::RenderObject::styleDidChange): Fixed typo in comment. 1716 1717 2010-02-09 MORITA Hajime <morrita (a] gmail.com> 1718 1719 Reviewed by Nikolas Zimmermann. 1720 1721 SVG selection text foreground colour does not respect user settings 1722 https://bugs.webkit.org/show_bug.cgi?id=15997 1723 1724 Add two subphases SVGTextPaintSubphaseGlyphFillSelection and 1725 SVGTextPaintSubphaseGlyphStrokeSelection for painting selected 1726 text on SVG. Selected texts are painted with style from 1727 getCachedPseudoStyle() instead of style(). 1728 1729 Tests: svg/text/selection-styles.xhtml 1730 1731 * rendering/SVGCharacterLayoutInfo.h: 1732 (WebCore::SVGTextChunkWalker::SVGTextChunkWalker): 1733 (WebCore::SVGTextChunkWalker::setupFillSelection): 1734 (WebCore::SVGTextChunkWalker::setupStrokeSelection): 1735 * rendering/SVGRootInlineBox.cpp: 1736 (WebCore::SVGRootInlineBoxPaintWalker::mayHaveSelection): 1737 (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupFillSelectionCallback): 1738 (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupStrokeSelectionCallback): 1739 (WebCore::SVGRootInlineBoxPaintWalker::activePaintServer): 1740 (WebCore::SVGRootInlineBox::paint): 1741 (WebCore::SVGRootInlineBox::walkTextChunks): 1742 * rendering/SVGInlineTextBox.h: 1743 (WebCore::): 1744 Add callback hooks and its implementation for handle new 1745 subphases. 1746 1747 * rendering/SVGInlineTextBox.cpp: 1748 (WebCore::SVGInlineTextBox::chunkSelectionStartEnd): 1749 (WebCore::SVGInlineTextBox::paintCharacters): 1750 Split box text into selected part and non-selected part, and use 1751 separate subphases to paint them. 1752 1753 * svg/SVGFont.cpp: 1754 (WebCore::SVGTextRunWalker::walk): 1755 Relax ASSERT() condition to accept a part of text. 1756 1757 * svg/graphics/SVGPaintServer.cpp: 1758 (WebCore::applyStrokeStyleToContext): 1759 (WebCore::SVGPaintServer::setup): 1760 * svg/graphics/SVGPaintServer.h: 1761 * svg/graphics/SVGPaintServerGradient.cpp: 1762 (WebCore::SVGPaintServerGradient::setup): 1763 * svg/graphics/SVGPaintServerGradient.h: 1764 * svg/graphics/SVGPaintServerPattern.cpp: 1765 (WebCore::SVGPaintServerPattern::setup): 1766 * svg/graphics/SVGPaintServerPattern.h: 1767 * svg/graphics/SVGPaintServerSolid.cpp: 1768 (WebCore::SVGPaintServerSolid::setup): 1769 * svg/graphics/SVGPaintServerSolid.h: 1770 Change setup() signature to accept RenderStyle instead of always 1771 using RenderObject::style(). 1772 1773 2010-02-09 Nikolas Zimmermann <nzimmermann (a] rim.com> 1774 1775 Reviewed by Dirk Schulze. 1776 1777 No scroll bars are displayed for standalone SVG image 1778 https://bugs.webkit.org/show_bug.cgi?id=11225 1779 1780 Height and width defined for svg element are not honored 1781 https://bugs.webkit.org/show_bug.cgi?id=24033 1782 1783 SVG file does not pan and has no scroll bars 1784 https://bugs.webkit.org/show_bug.cgi?id=24448 1785 1786 Adapt to SVG 1.1 errata to change the overflow handling: 1787 Replace "svg { overflow: hidden }" by "svg:not(:root) { overflow: hidden }" to allow standalone SVG documents to contain scrolllbars. 1788 Agreed by SVG WG to make this the default behaviour, already implemented by Opera & FireFox (partial support). 1789 1790 Add new tests in svg/overflow covering all special SVG css overflow handling rules on inner/outer svg elements. 1791 1792 Tests: svg/overflow/overflow-on-inner-svg-element-defaults.svg 1793 svg/overflow/overflow-on-inner-svg-element.svg 1794 svg/overflow/overflow-on-outermost-svg-element-defaults.svg 1795 svg/overflow/overflow-on-outermost-svg-element-ignore-attribute-1.svg 1796 svg/overflow/overflow-on-outermost-svg-element-ignore-attribute-2.svg 1797 svg/overflow/overflow-on-outermost-svg-element-ignore-attribute-3.svg 1798 svg/overflow/overflow-on-outermost-svg-element-in-xhtml-auto.xhtml 1799 svg/overflow/overflow-on-outermost-svg-element-in-xhtml-defaults.xhtml 1800 svg/overflow/overflow-on-outermost-svg-element-in-xhtml-hidden.xhtml 1801 svg/overflow/overflow-on-outermost-svg-element-in-xhtml-scroll.xhtml 1802 svg/overflow/overflow-on-outermost-svg-element-in-xhtml-visible.xhtml 1803 1804 * css/svg.css: Change default <svg> overflow rule to only apply to inner <svg> elements. 1805 * page/FrameView.cpp: 1806 (WebCore::FrameView::layout): Only apply overflow rules for non-standalone SVG documents. 1807 * rendering/RenderSVGRoot.cpp: Remove all calls to isOverflowHidden - it's always the case for the outermost SVG element, see spec + errata. 1808 (WebCore::RenderSVGRoot::paint): Always clip to initial viewport size. 1809 (WebCore::RenderSVGRoot::computeRectForRepaint): Ditto. 1810 (WebCore::RenderSVGRoot::nodeAtPoint): Simplify. 1811 * rendering/RenderSVGViewportContainer.cpp: 1812 (WebCore::RenderSVGViewportContainer::applyViewportClip): Use isOverflowHidden() instead of a manual oveflow query and clip in float precision. 1813 * rendering/SVGRenderSupport.cpp: 1814 (WebCore::SVGRenderBase::isOverflowHidden): Simplify implementation, assure the function is not called anymore for RenderSVGRoot objects. 1815 1816 2010-02-09 Kwang Yul Seo <skyul (a] company100.net> 1817 1818 Reviewed by Eric Seidel. 1819 1820 [BREWMP] Port KURL::fileSystemPath 1821 https://bugs.webkit.org/show_bug.cgi?id=34516 1822 1823 Convert a file URL to a file path by prefixing 1824 AEEFS_HOME_DIR to access files relative to the current 1825 module directory in a case-sensitive manner. 1826 1827 As IWeb "file:" engine opens files in BREW's application-relative 1828 file namespace, we follow the same policy here. 1829 1830 * platform/brew/KURLBrew.cpp: Added. 1831 (WebCore::KURL::fileSystemPath): 1832 1833 2010-02-09 Noam Rosenthal <noam.rosenthal (a] nokia.com> 1834 1835 Reviewed by Kenneth Rohde Christiansen. 1836 1837 [Qt] the above website does not render properly when in compositing mode 1838 https://bugs.webkit.org/show_bug.cgi?id=34681 1839 1840 http://media.24ways.org/2009/15/spinner-alt.html now renders correctly 1841 1842 * platform/graphics/qt/GraphicsLayerQt.cpp: 1843 (WebCore::MaskEffectQt::MaskEffectQt): implement mask as 1844 QGraphicsEffect 1845 (WebCore::MaskEffectQt::draw): reimp 1846 (WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl): init the effect 1847 (WebCore::GraphicsLayerQtImpl::paint): no need for drawContents 1848 (WebCore::GraphicsLayerQtImpl::flushChanges): make sure to update the 1849 mask layer, not just the actual children 1850 1851 2010-02-09 Kwang Yul Seo <skyul (a] company100.net> 1852 1853 Reviewed by Laszlo Gombos. 1854 1855 [BREWMP] Fix macro redefinition error in BREWMP simulator build. 1856 https://bugs.webkit.org/show_bug.cgi?id=34738 1857 1858 Remove warning: 'FAR' macro redefinition. 1859 1860 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: 1861 1862 2010-02-07 Yuzo Fujishima <yuzo (a] google.com> 1863 1864 Reviewed by Dan Bernstein. 1865 1866 Fix the following bugs: 1867 https://bugs.webkit.org/show_bug.cgi?id=18926 - dt:after generate a line break. Boost documentation page renders poorly 1868 https://bugs.webkit.org/show_bug.cgi?id=7276 - Most W3C padding related tests fail 1869 1870 Tests: fast/css/inline-element-line-break.html 1871 fast/css/pseudo-element-line-break.html 1872 1873 findNextLineBreak() unconditionally allowed lines to break between elements when no other line breaking opportunity had been found, 1874 but that was unnecessary and led to incorrect layout. Disallow that kind of line breaks. 1875 1876 * rendering/RenderBlockLineLayout.cpp: 1877 (WebCore::RenderBlock::findNextLineBreak): 1878 1879 2010-02-09 Shinichiro Hamaji <hamaji (a] chromium.org> 1880 1881 Reviewed by Darin Adler. 1882 1883 Provide a way to get total number of pages to be printed 1884 https://bugs.webkit.org/show_bug.cgi?id=34699 1885 1886 Test: printing/numberOfPages.html 1887 1888 * WebCore.base.exp: 1889 * page/PrintContext.cpp: 1890 (WebCore::PrintContext::pageNumberForElement): 1891 (WebCore::PrintContext::numberOfPages): 1892 * page/PrintContext.h: 1893 (WebCore::PrintContext::pageRects): 1894 1895 2010-02-08 Dominic Cooney <dominicc (a] google.com> 1896 1897 Reviewed by Adam Barth. 1898 1899 [V8] Move Element custom methods into generic bindings 1900 1901 This patch moves the security checks in setAttribute, 1902 setAttributeNode, setAttributeNS and setAttributeNodeNS from 1903 V8ElementCustom into the generic bindings so that they can be 1904 reused in other bindings. This is in a similar vein to 1905 <https://bugs.webkit.org/attachment.cgi?id=45872>. 1906 1907 https://bugs.webkit.org/show_bug.cgi?id=34554 1908 1909 LayoutTests: None 1910 1911 * WebCore.gypi: 1912 * bindings/generic/BindingElement.h: Added. 1913 (WebCore::::setAttribute): 1914 (WebCore::::setAttributeNode): 1915 (WebCore::::setAttributeNS): 1916 (WebCore::::setAttributeNodeNS): 1917 * bindings/v8/V8Binding.h: 1918 * bindings/v8/custom/V8ElementCustom.cpp: 1919 (WebCore::V8Element::setAttributeCallback): 1920 (WebCore::V8Element::setAttributeNodeCallback): 1921 (WebCore::V8Element::setAttributeNSCallback): 1922 (WebCore::V8Element::setAttributeNodeNSCallback): 1923 1924 2010-02-08 Hayato Ito <hayato (a] chromium.org> 1925 1926 Reviewed by Darin Adler. 1927 1928 Schedule a loading request when there are many in-flight requests beyond 1929 the limit to avoid forever page loading. 1930 1931 https://bugs.webkit.org/show_bug.cgi?id=31227 1932 1933 Test: http/tests/loading/load-javascript-after-many-xhrs.html 1934 1935 * loader/loader.cpp: 1936 (WebCore::Loader::Host::servePendingRequests): 1937 1938 2010-02-08 David Levin <levin (a] chromium.org> 1939 1940 Reviewed by Gavin Barraclough. 1941 1942 REGRESSION (before r54472): Various tests in fast/workers are crashing on the buildbot. 1943 https://bugs.webkit.org/show_bug.cgi?id=34728 1944 1945 The core part of the fix is to change WebCoreJSClientData::m_normalWorld 1946 from DOMWrapperWorld to RefPtr<DOMWrapperWorld> so that the DOMWrapperWorld 1947 is really ref counted. 1948 1949 No new tests because current tests sufficiently cover this as evidenced as 1950 the buildbot crashes. 1951 1952 * bindings/js/JSDOMBinding.cpp: 1953 (WebCore::DOMWrapperWorld::~DOMWrapperWorld): Made this robust to m_globalData 1954 being 0. 1955 * bindings/js/JSDOMBinding.h: 1956 (WebCore::DOMWrapperWorld::create): Made this class follow the standard 1957 create pattern for RefCounted classes. 1958 (WebCore::DOMWrapperWorld::detachFromGlobalData): Since this class can 1959 now outlive JSGlobalData, this method tells it to stop using its JSGlobalData. 1960 (WebCore::WebCoreJSClientData::WebCoreJSClientData): Adjusted due to 1961 m_normalWorld being a RefPtr. 1962 (WebCore::WebCoreJSClientData::~WebCoreJSClientData): Ditto (and added 1963 asserts for the FIXME). 1964 (WebCore::WebCoreJSClientData::normalWorld): Ditto. 1965 * bindings/js/ScriptController.cpp: 1966 (WebCore::IsolatedWorld::create): Made the constructor protected. 1967 (WebCore::IsolatedWorld::IsolatedWorld): Made the constructor protected, so 1968 that code would have to use the create method. 1969 1970 2010-02-08 Kinuko Yasuda <kinuko (a] chromium.org> 1971 1972 Reviewed by David Levin. 1973 1974 Remove special utf-8 tag from Chromium cilpboard code because 1975 we now have the corresponding code in generic clipboard framework 1976 code in chromium (since it's needed by other places than in Web 1977 page rendering) and no longer need the separate workaround code in 1978 WebKit. 1979 https://bugs.webkit.org/show_bug.cgi?id=34567 1980 1981 Test: (for regression) editing/pasteboard 1982 1983 * platform/chromium/ClipboardChromium.cpp: 1984 (WebCore::ClipboardChromium::writeRange): 1985 * platform/chromium/PasteboardChromium.cpp: 1986 (WebCore::Pasteboard::writeSelection): 1987 (WebCore::Pasteboard::documentFragment): 1988 1989 2010-02-08 Darin Adler <darin (a] apple.com> 1990 1991 Reviewed by Dan Bernstein. 1992 1993 Crash due to layout not done in case involving removal of absolute positioning 1994 https://bugs.webkit.org/show_bug.cgi?id=34734 1995 rdar://problem/7588280 1996 1997 Test: fast/dynamic/position-change-layout.html 1998 1999 * rendering/RenderObject.cpp: 2000 (WebCore::RenderObject::styleDidChange): Call markContainingBlocksForLayout in 2001 a case where the object already needs layout, but might have a new containing 2002 block and so needs to mark the new containing block. 2003 2004 2010-02-08 Charlie Reis <creis (a] chromium.org> 2005 2006 Reviewed by Darin Adler. 2007 2008 onbeforeunload not called at window close + frame or iframe focused 2009 https://bugs.webkit.org/show_bug.cgi?id=27481 2010 2011 Chromium and WebKit on Windows will now fire beforeunload handlers 2012 even if an inner frame is focused. 2013 2014 Layout tests aren't able to test this bug, since it requires closing 2015 the actual browser window, not calling window.close(). Instead, 2016 test with WebCore/manual-tests/onbeforeunload-focused-iframe.html. 2017 2018 * manual-tests/onbeforeunload-focused-iframe.html: Added. 2019 * manual-tests/resources/focused-iframe.html: Added. 2020 2021 2010-02-08 Alexey Proskuryakov <ap (a] apple.com> 2022 2023 Addressing review feedback. 2024 2025 * bridge/c/c_instance.h: Removed argument name. 2026 2027 2010-02-08 Alexey Proskuryakov <ap (a] apple.com> 2028 2029 Reviewed by Darin Adler. 2030 2031 https://bugs.webkit.org/show_bug.cgi?id=34727 2032 Assertion crashes and freezes when plug-in property access results in an exception 2033 2034 Test: plugins/netscape-plugin-property-access-exception.html 2035 2036 * bridge/c/c_instance.h: Made moveGlobalExceptionToExecState public, since it also need to 2037 be called from CField. 2038 2039 * bridge/c/c_runtime.cpp: 2040 (JSC::Bindings::CField::valueFromInstance): Call moveGlobalExceptionToExecState(). Without 2041 this, not only didn't we get exceptions, but we also got an assertion failure because of 2042 dangling global exception on next call into plug-in. 2043 (JSC::Bindings::CField::setValueToInstance): Ditto. 2044 2045 2010-02-08 Dirk Schulze <krit (a] webkit.org> 2046 2047 Unreviewed build fix of ChromiumWin. 2048 2049 * platform/graphics/chromium/TransparencyWin.cpp: 2050 (WebCore::): 2051 (WebCore::TransparencyWin::setupLayerForOpaqueCompositeLayer): 2052 (WebCore::TransparencyWin::setupTransformForKeepTransform): 2053 * platform/graphics/chromium/TransparencyWin.h: 2054 * rendering/RenderThemeChromiumWin.cpp: 2055 (WebCore::): 2056 2057 2010-02-05 Dumitru Daniliuc <dumi (a] chromium.org> 2058 2059 Reviewed by Jeremy Orlow. 2060 2061 Adding a way to get the set of all open database handles pointing 2062 to a given database. 2063 https://bugs.webkit.org/show_bug.cgi?id=34619 2064 2065 Sometimes we need to be able to close all handles to a database as 2066 soon as possible (to delete the DB file, for example). 2067 2068 * storage/DatabaseTracker.cpp: 2069 (WebCore::DatabaseTracker::getOpenDatabases): 2070 * storage/DatabaseTracker.h: 2071 * storage/chromium/DatabaseTrackerChromium.cpp: 2072 (WebCore::DatabaseTracker::addOpenDatabase): 2073 (WebCore::DatabaseTracker::removeOpenDatabase): 2074 (WebCore::DatabaseTracker::getOpenDatabases): 2075 2076 2010-02-08 Dirk Schulze <krit (a] webkit.org> 2077 2078 Unreviewed windows build-fix. 2079 2080 * page/win/FrameCGWin.cpp: 2081 (WebCore::drawRectIntoContext): 2082 2083 2010-02-08 Dirk Schulze <krit (a] webkit.org> 2084 2085 Reviewed by Nikolas Zimmermann. 2086 2087 Add back an AffineTransform class for use by SVG 2088 https://bugs.webkit.org/show_bug.cgi?id=33750 2089 2090 This adds back AffineTransform. This saves additional 4% memory consumption 2091 on the 50k rects stress test: https://bugs.webkit.org/attachment.cgi?id=46721 2092 It also makes it possible to optimize the calculations internally of 2093 AffineTransform to the needs of 2D transformations (the second benefit for SVG, 2094 which uses transformations relative often at the moment. 2095 Everything that is 2D related (like images, patterns, gradients, fonts), uses 2096 AffineTransform now. 2097 2098 * WebCore.xcodeproj/project.pbxproj: 2099 * bindings/js/JSSVGMatrixCustom.cpp: 2100 (WebCore::JSSVGMatrix::multiply): 2101 (WebCore::JSSVGMatrix::inverse): 2102 (WebCore::JSSVGMatrix::rotateFromVector): 2103 * bindings/js/JSSVGPODTypeWrapper.h: 2104 * bindings/scripts/CodeGeneratorJS.pm: 2105 * bindings/scripts/CodeGeneratorObjC.pm: 2106 * bindings/scripts/CodeGeneratorV8.pm: 2107 * bindings/v8/V8Index.h: 2108 * bindings/v8/custom/V8SVGMatrixCustom.cpp: 2109 (WebCore::V8SVGMatrix::multiplyCallback): 2110 (WebCore::V8SVGMatrix::inverseCallback): 2111 (WebCore::V8SVGMatrix::rotateFromVectorCallback): 2112 * html/HTMLCanvasElement.cpp: Changed to AffineTransform now 2113 (WebCore::HTMLCanvasElement::baseTransform): 2114 * html/HTMLCanvasElement.h: 2115 * platform/graphics/FloatPoint.cpp: 2116 (WebCore::FloatPoint::matrixTransform): 2117 * platform/graphics/FloatPoint.h: 2118 * platform/graphics/GeneratedImage.cpp: 2119 (WebCore::GeneratedImage::drawPattern): 2120 * platform/graphics/GeneratedImage.h: 2121 * platform/graphics/Gradient.cpp: 2122 (WebCore::Gradient::setGradientSpaceTransform): 2123 (WebCore::Gradient::setPlatformGradientSpaceTransform): 2124 * platform/graphics/Gradient.h: 2125 (WebCore::Gradient::gradientSpaceTransform): 2126 * platform/graphics/GraphicsContext.h: 2127 * platform/graphics/Image.cpp: 2128 (WebCore::Image::drawTiled): 2129 * platform/graphics/Image.h: 2130 * platform/graphics/ImageBuffer.h: 2131 (WebCore::ImageBuffer::baseTransform): 2132 * platform/graphics/Path.h: 2133 * platform/graphics/Pattern.cpp: 2134 (WebCore::Pattern::setPatternSpaceTransform): 2135 * platform/graphics/Pattern.h: 2136 (WebCore::Pattern::create): 2137 (WebCore::Pattern::tileImage): 2138 * platform/graphics/cairo/FontCairo.cpp: 2139 (WebCore::Font::drawGlyphs): 2140 * platform/graphics/cairo/GraphicsContextCairo.cpp: 2141 (WebCore::setPlatformFill): 2142 (WebCore::setPlatformStroke): 2143 (WebCore::GraphicsContext::getCTM): 2144 * platform/graphics/cairo/ImageCairo.cpp: 2145 (WebCore::Image::drawPattern): 2146 * platform/graphics/cairo/PathCairo.cpp: 2147 * platform/graphics/cairo/PatternCairo.cpp: 2148 (WebCore::Pattern::createPlatformPattern): 2149 * platform/graphics/cg/GraphicsContextCG.cpp: 2150 (WebCore::GraphicsContext::getCTM): 2151 * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h: 2152 (WebCore::GraphicsContextPlatformPrivate::concatCTM): 2153 * platform/graphics/cg/ImageCG.cpp: 2154 (WebCore::Image::drawPattern): 2155 * platform/graphics/cg/PathCG.cpp: 2156 * platform/graphics/cg/PatternCG.cpp: 2157 (WebCore::Pattern::createPlatformPattern): 2158 * platform/graphics/haiku/GraphicsContextHaiku.cpp: 2159 (WebCore::GraphicsContext::getCTM): 2160 * platform/graphics/haiku/ImageHaiku.cpp: 2161 (WebCore::Image::drawPattern): 2162 * platform/graphics/haiku/PathHaiku.cpp: 2163 * platform/graphics/qt/FontQt.cpp: 2164 (WebCore::Font::drawComplexText): 2165 * platform/graphics/qt/GraphicsContextQt.cpp: 2166 (WebCore::GraphicsContext::getCTM): 2167 (WebCore::GraphicsContext::fillPath): 2168 (WebCore::GraphicsContext::strokePath): 2169 (WebCore::GraphicsContext::fillRect): 2170 * platform/graphics/qt/ImageQt.cpp: 2171 (WebCore::Image::drawPattern): 2172 * platform/graphics/qt/PathQt.cpp: 2173 * platform/graphics/qt/PatternQt.cpp: 2174 (WebCore::Pattern::createPlatformPattern): 2175 * platform/graphics/skia/GradientSkia.cpp: 2176 (WebCore::Gradient::setPlatformGradientSpaceTransform): 2177 * platform/graphics/skia/GraphicsContextSkia.cpp: 2178 (WebCore::GraphicsContext::getCTM): 2179 * platform/graphics/skia/ImageSkia.cpp: 2180 (WebCore::Image::drawPattern): 2181 * platform/graphics/skia/PathSkia.cpp: 2182 * platform/graphics/skia/PatternSkia.cpp: 2183 (WebCore::Pattern::platformPattern): 2184 * platform/graphics/skia/SkiaFontWin.cpp: 2185 (WebCore::windowsCanHandleTextDrawing): 2186 * platform/graphics/transforms/AffineTransform.cpp: 2187 (WebCore::AffineTransform::makeIdentity): needed by some parts of WebCore 2188 (WebCore::AffineTransform::scale): Didn't scale the complete matrix 2189 (WebCore::AffineTransform::translate): Didn't respect other transformations 2190 (WebCore::AffineTransform::shear): direct calculation, no extra multiply of matrices 2191 (WebCore::AffineTransform::map): 2192 (WebCore::AffineTransform::mapPoint): 2193 (WebCore::AffineTransform::mapRect): 2194 * platform/graphics/transforms/AffineTransform.h: 2195 (WebCore::AffineTransform::isIdentityOrTranslation): 2196 * platform/graphics/transforms/TransformationMatrix.cpp: 2197 (WebCore::TransformationMatrix::toAffineTransform): 2198 * platform/graphics/transforms/TransformationMatrix.h: 2199 * platform/graphics/win/FontCGWin.cpp: 2200 (WebCore::drawGDIGlyphs): 2201 * platform/graphics/win/GraphicsContextCGWin.cpp: 2202 * platform/graphics/win/GraphicsContextCairoWin.cpp: 2203 * platform/graphics/win/GraphicsContextWin.cpp: 2204 (WebCore::GraphicsContextPlatformPrivate::concatCTM): 2205 * platform/graphics/wince/FontWince.cpp: 2206 * platform/graphics/wince/GraphicsContextWince.cpp: 2207 (WebCore::GraphicsContextPlatformPrivate::concatCTM): 2208 (WebCore::GraphicsContext::fillPath): 2209 (WebCore::GraphicsContext::strokePath): 2210 (WebCore::GraphicsContext::getCTM): 2211 (WebCore::GraphicsContext::drawBitmapPattern): 2212 * platform/graphics/wince/ImageBufferWince.cpp: 2213 (WebCore::): 2214 (WebCore::BufferedImage::drawPattern): 2215 * platform/graphics/wince/PathWince.cpp: 2216 (WebCore::Path::transform): 2217 * platform/graphics/wince/PlatformPathWince.cpp: 2218 (WebCore::drawPolygons): 2219 (WebCore::PathPolygon::transform): 2220 (WebCore::PlatformPathElement::transform): 2221 (WebCore::PlatformPath::strokePath): 2222 (WebCore::PlatformPath::fillPath): 2223 (WebCore::PlatformPath::transform): 2224 * platform/graphics/wince/PlatformPathWince.h: 2225 (WebCore::): 2226 * platform/graphics/wx/GraphicsContextWx.cpp: 2227 (WebCore::GraphicsContext::getCTM): 2228 * platform/graphics/wx/ImageWx.cpp: 2229 (WebCore::BitmapImage::drawPattern): 2230 (WebCore::Image::drawPattern): 2231 * platform/graphics/wx/PathWx.cpp: 2232 * platform/gtk/RenderThemeGtk.cpp: 2233 (WebCore::paintMozillaGtkWidget): 2234 * plugins/win/PluginViewWin.cpp: 2235 (WebCore::PluginView::paintWindowedPluginIntoContext): 2236 * rendering/RenderBox.cpp: 2237 (WebCore::RenderBox::localTransform): 2238 * rendering/RenderBox.h: 2239 * rendering/RenderBoxModelObject.cpp: 2240 (WebCore::RenderBoxModelScaleData::RenderBoxModelScaleData): 2241 (WebCore::RenderBoxModelScaleData::transform): 2242 (WebCore::RenderBoxModelScaleData::setTransform): 2243 (WebCore::RenderBoxModelScaleObserver::shouldPaintBackgroundAtLowQuality): 2244 (WebCore::RenderBoxModelObject::paintBoxShadow): 2245 * rendering/RenderForeignObject.cpp: 2246 (WebCore::RenderForeignObject::translationForAttributes): 2247 (WebCore::RenderForeignObject::localToParentTransform): 2248 * rendering/RenderForeignObject.h: 2249 (WebCore::RenderForeignObject::localTransform): 2250 * rendering/RenderLayer.cpp: 2251 (WebCore::RenderLayer::paintLayer): 2252 * rendering/RenderObject.cpp: 2253 (WebCore::RenderObject::localTransform): 2254 (WebCore::RenderObject::localToParentTransform): 2255 (WebCore::RenderObject::absoluteTransform): 2256 * rendering/RenderObject.h: 2257 * rendering/RenderPath.cpp: 2258 (WebCore::RenderPath::localToParentTransform): 2259 (WebCore::RenderPath::localTransform): 2260 * rendering/RenderPath.h: 2261 * rendering/RenderSVGHiddenContainer.h: 2262 (WebCore::RenderSVGHiddenContainer::absoluteTransform): 2263 * rendering/RenderSVGImage.h: 2264 (WebCore::RenderSVGImage::localToParentTransform): 2265 (WebCore::RenderSVGImage::localTransform): 2266 * rendering/RenderSVGRoot.cpp: 2267 (WebCore::RenderSVGRoot::localToBorderBoxTransform): 2268 (WebCore::RenderSVGRoot::localToRepaintContainerTransform): 2269 (WebCore::RenderSVGRoot::localToParentTransform): 2270 (WebCore::RenderSVGRoot::absoluteTransform): 2271 (WebCore::RenderSVGRoot::localTransform): 2272 * rendering/RenderSVGRoot.h: 2273 * rendering/RenderSVGText.h: 2274 (WebCore::RenderSVGText::localToParentTransform): 2275 (WebCore::RenderSVGText::localTransform): 2276 * rendering/RenderSVGTransformableContainer.cpp: 2277 (WebCore::RenderSVGTransformableContainer::localToParentTransform): 2278 (WebCore::RenderSVGTransformableContainer::localTransform): 2279 (WebCore::RenderSVGTransformableContainer::calculateLocalTransform): 2280 * rendering/RenderSVGTransformableContainer.h: 2281 * rendering/RenderSVGViewportContainer.cpp: 2282 (WebCore::RenderSVGViewportContainer::markerBoundaries): 2283 (WebCore::RenderSVGViewportContainer::markerContentTransformation): 2284 (WebCore::RenderSVGViewportContainer::viewportTransform): 2285 (WebCore::RenderSVGViewportContainer::localToParentTransform): 2286 (WebCore::RenderSVGViewportContainer::absoluteTransform): 2287 * rendering/RenderSVGViewportContainer.h: 2288 * rendering/SVGCharacterLayoutInfo.cpp: 2289 (WebCore::SVGChar::characterTransform): 2290 * rendering/SVGCharacterLayoutInfo.h: 2291 (WebCore::SVGTextChunkWalker::operator()): 2292 * rendering/SVGInlineTextBox.cpp: 2293 (WebCore::SVGInlineTextBox::calculateGlyphBoundaries): 2294 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback): 2295 (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback): 2296 (WebCore::SVGInlineTextBox::paintCharacters): 2297 (WebCore::SVGInlineTextBox::paintDecoration): 2298 * rendering/SVGMarkerLayoutInfo.h: 2299 (WebCore::MarkerLayout::MarkerLayout): 2300 * rendering/SVGRenderSupport.cpp: 2301 (WebCore::applyTransformToPaintInfo): 2302 * rendering/SVGRenderSupport.h: 2303 * rendering/SVGRenderTreeAsText.cpp: 2304 (WebCore::operator<<): 2305 * rendering/SVGRenderTreeAsText.h: 2306 * rendering/SVGRootInlineBox.cpp: 2307 (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback): 2308 (WebCore::applyTextLengthCorrectionToTextChunk): 2309 (WebCore::SVGRootInlineBox::buildLayoutInformation): 2310 * rendering/TransformState.cpp: 2311 (WebCore::TransformState::applyTransform): 2312 * rendering/TransformState.h: 2313 * svg/GradientAttributes.h: 2314 (WebCore::GradientAttributes::gradientTransform): 2315 (WebCore::GradientAttributes::setGradientTransform): 2316 * svg/PatternAttributes.h: 2317 (WebCore::PatternAttributes::patternTransform): 2318 (WebCore::PatternAttributes::setPatternTransform): 2319 * svg/SVGAnimateMotionElement.cpp: 2320 (WebCore::SVGAnimateMotionElement::resetToBaseValue): 2321 (WebCore::SVGAnimateMotionElement::calculateAnimatedValue): 2322 (WebCore::SVGAnimateMotionElement::applyResultsToTarget): 2323 * svg/SVGAnimateMotionElement.h: 2324 * svg/SVGAnimateTransformElement.cpp: 2325 * svg/SVGAnimateTransformElement.h: 2326 * svg/SVGElement.h: 2327 (WebCore::SVGElement::supplementalTransform): 2328 * svg/SVGFitToViewBox.cpp: 2329 (WebCore::SVGFitToViewBox::viewBoxToViewTransform): 2330 * svg/SVGFitToViewBox.h: 2331 * svg/SVGLocatable.cpp: 2332 (WebCore::SVGLocatable::getCTM): 2333 (WebCore::SVGLocatable::getScreenCTM): 2334 (WebCore::SVGLocatable::getTransformToElement): 2335 * svg/SVGLocatable.h: 2336 * svg/SVGMarkerElement.cpp: 2337 (WebCore::SVGMarkerElement::viewBoxToViewTransform): 2338 * svg/SVGMarkerElement.h: 2339 * svg/SVGMaskElement.cpp: 2340 (WebCore::SVGMaskElement::drawMaskerContent): 2341 * svg/SVGMatrix.idl: 2342 * svg/SVGPatternElement.cpp: 2343 (WebCore::SVGPatternElement::buildPattern): 2344 * svg/SVGPreserveAspectRatio.cpp: 2345 (WebCore::SVGPreserveAspectRatio::getCTM): 2346 * svg/SVGPreserveAspectRatio.h: 2347 * svg/SVGSVGElement.cpp: 2348 (WebCore::SVGSVGElement::viewport): 2349 (WebCore::SVGSVGElement::createSVGMatrix): 2350 (WebCore::SVGSVGElement::createSVGTransformFromMatrix): 2351 (WebCore::SVGSVGElement::getCTM): 2352 (WebCore::SVGSVGElement::getScreenCTM): 2353 (WebCore::SVGSVGElement::viewBoxToViewTransform): 2354 * svg/SVGSVGElement.h: 2355 * svg/SVGStyledLocatableElement.cpp: 2356 (WebCore::SVGStyledLocatableElement::getCTM): 2357 (WebCore::SVGStyledLocatableElement::getScreenCTM): 2358 * svg/SVGStyledLocatableElement.h: 2359 * svg/SVGStyledTransformableElement.cpp: 2360 (WebCore::SVGStyledTransformableElement::getCTM): 2361 (WebCore::SVGStyledTransformableElement::getScreenCTM): 2362 (WebCore::SVGStyledTransformableElement::animatedLocalTransform): 2363 (WebCore::SVGStyledTransformableElement::supplementalTransform): 2364 * svg/SVGStyledTransformableElement.h: 2365 (WebCore::SVGStyledTransformableElement::isStyledTransformable): 2366 (WebCore::SVGStyledTransformableElement::toPathData): 2367 * svg/SVGTextContentElement.cpp: 2368 (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback): 2369 * svg/SVGTextElement.cpp: 2370 (WebCore::SVGTextElement::getScreenCTM): 2371 (WebCore::SVGTextElement::getCTM): 2372 (WebCore::SVGTextElement::animatedLocalTransform): 2373 (WebCore::SVGTextElement::supplementalTransform): 2374 * svg/SVGTextElement.h: 2375 * svg/SVGTextPathElement.cpp: 2376 * svg/SVGTransform.cpp: 2377 (SVGTransform::SVGTransform): 2378 (SVGTransform::matrix): 2379 (SVGTransform::setMatrix): 2380 * svg/SVGTransform.h: 2381 * svg/SVGTransformDistance.cpp: 2382 (WebCore::SVGTransformDistance::SVGTransformDistance): 2383 (WebCore::SVGTransformDistance::scaledDistance): 2384 (WebCore::SVGTransformDistance::isZero): 2385 * svg/SVGTransformDistance.h: 2386 * svg/SVGTransformList.cpp: 2387 (SVGTransformList::createSVGTransformFromMatrix): 2388 (SVGTransformList::concatenate): 2389 (SVGTransformList::valueAsString): 2390 * svg/SVGTransformList.h: 2391 * svg/SVGTransformable.cpp: 2392 (WebCore::SVGTransformable::getCTM): 2393 (WebCore::SVGTransformable::getScreenCTM): 2394 (WebCore::SVGTransformable::parseTransformValue): 2395 * svg/SVGTransformable.h: 2396 (WebCore::SVGTransformable::): 2397 * svg/graphics/SVGPaintServerGradient.cpp: 2398 (WebCore::SVGPaintServerGradient::gradientTransform): 2399 (WebCore::SVGPaintServerGradient::setGradientTransform): 2400 (WebCore::clipToTextMask): 2401 (WebCore::SVGPaintServerGradient::setup): 2402 * svg/graphics/SVGPaintServerGradient.h: 2403 * svg/graphics/SVGPaintServerPattern.cpp: 2404 (WebCore::SVGPaintServerPattern::patternTransform): 2405 (WebCore::SVGPaintServerPattern::setPatternTransform): 2406 (WebCore::SVGPaintServerPattern::setup): 2407 * svg/graphics/SVGPaintServerPattern.h: 2408 * svg/graphics/SVGResourceClipper.cpp: 2409 (WebCore::SVGResourceClipper::applyClip): 2410 * svg/graphics/SVGResourceMarker.cpp: 2411 (WebCore::SVGResourceMarker::markerTransformation): 2412 (WebCore::SVGResourceMarker::draw): 2413 * svg/graphics/SVGResourceMarker.h: 2414 * svg/graphics/filters/SVGFEImage.cpp: 2415 * svg/graphics/filters/SVGFETile.cpp: 2416 (WebCore::FETile::apply): 2417 2418 2010-02-08 Stephen White <senorblanco (a] chromium.org> 2419 2420 Reviewed by Dimitri Glazkov. 2421 2422 Make an inline function containing a static var out-of-line. This is 2423 a workaround for Xcode 3.1 bug radar 7070016. We tripped on this in 2424 deviceRGBColorSpaceRef on the Chromium canaries. This is a proactive 2425 fix for the same problem in sRGBColorSpaceRef(). 2426 2427 https://bugs.webkit.org/show_bug.cgi?id=34663 2428 2429 * platform/graphics/cg/GraphicsContextCG.cpp: 2430 (WebCore::sRGBColorSpaceRef): 2431 * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h: 2432 2433 2010-02-08 Nate Chapin <japhet (a] chromium.org> 2434 2435 Reviewed by Dimitri Glazkov. 2436 2437 [V8] Unify the WorkerContext V8 object wrapping code with 2438 the standard V8 object wrapping code. 2439 2440 https://bugs.webkit.org/show_bug.cgi?id=34658 2441 2442 * bindings/scripts/CodeGeneratorV8.pm: 2443 * bindings/v8/V8DOMWrapper.cpp: 2444 (WebCore::V8DOMWrapper::instantiateV8Object): 2445 (WebCore::V8DOMWrapper::convertEventTargetToV8Object): 2446 * bindings/v8/V8WorkerContextEventListener.cpp: 2447 (WebCore::V8WorkerContextEventListener::handleEvent): 2448 (WebCore::V8WorkerContextEventListener::getReceiverObject): 2449 * bindings/v8/WorkerContextExecutionProxy.cpp: 2450 * bindings/v8/WorkerContextExecutionProxy.h: 2451 * bindings/v8/custom/V8NotificationCenterCustom.cpp: 2452 (WebCore::V8NotificationCenter::createHTMLNotificationCallback): 2453 (WebCore::V8NotificationCenter::createNotificationCallback): 2454 * bindings/v8/custom/V8WorkerContextCustom.cpp: 2455 (WebCore::toV8): 2456 2457 2010-02-08 Kwang Yul Seo <skyul (a] company100.net> 2458 2459 Reviewed by Darin Adler. 2460 2461 Use fastStrDup instead of strdup 2462 https://bugs.webkit.org/show_bug.cgi?id=33943 2463 2464 Replace strdup/free with fastStrDup/fastFree. 2465 2466 * bridge/IdentifierRep.h: 2467 (WebCore::IdentifierRep::IdentifierRep): 2468 * bridge/jni/JNIBridge.cpp: 2469 (JavaMethod::~JavaMethod): 2470 (appendClassName): 2471 (JavaMethod::signature): 2472 * bridge/jni/jsc/JavaClassJSC.cpp: 2473 (JavaClass::JavaClass): 2474 (JavaClass::~JavaClass): 2475 * platform/network/curl/ResourceHandleCurl.cpp: 2476 (WebCore::ResourceHandleInternal::~ResourceHandleInternal): 2477 * platform/network/curl/ResourceHandleManager.cpp: 2478 (WebCore::ResourceHandleManager::~ResourceHandleManager): 2479 (WebCore::ResourceHandleManager::setCookieJarFileName): 2480 (WebCore::ResourceHandleManager::initializeHandle): 2481 * plugins/PluginStream.cpp: 2482 (WebCore::PluginStream::~PluginStream): 2483 (WebCore::PluginStream::startStream): 2484 * xml/XSLTProcessorLibxslt.cpp: 2485 (WebCore::xsltParamArrayFromParameterMap): 2486 (WebCore::freeXsltParamArray): 2487 2488 2010-02-08 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 2489 2490 Reviewed by Simon Hausmann. 2491 2492 Fix Qt build on Windows. 2493 2494 nmake fails to pick the right cpp file, so we have to 2495 rename the file to to a unique name. 2496 2497 * WebCore.pro: 2498 * platform/graphics/qt/FontCustomPlatformDataQt.cpp: Renamed from WebCore/platform/graphics/qt/FontCustomPlatformData.cpp. 2499 2500 2010-02-08 Nikolas Zimmermann <nzimmermann (a] rim.com> 2501 2502 Reviewed by Dirk Schulze. 2503 2504 All SVG *-expected.txt files contain wrong results 2505 https://bugs.webkit.org/show_bug.cgi?id=34703 2506 2507 Finally dump meaningful information for SVG layout tests. 2508 Use 'absoluteClippedOverflowRect' which goes through the same code paths used 2509 to actually calculate repaint rects etc - instead of the legacy CSS-unaware 2510 code path that mapped 'repaintRectInLocalCoordinates' through 'absoluteTransform'. 2511 Remove absoluteTransform() - a long standing TODO, finally not needed anymore. 2512 2513 Despite SVGRenderTreeAsText, SVGPaintServerGradient was also using absoluteTransform(). 2514 Rewrite the code in question, fixing svg/W3C-SVG-1.1/pserver-grad-08-b.svg alignment issues 2515 when scaling/panning text using gradient on stroke/fill. Affects some other gradient tests as well. 2516 2517 As we're now dumping clipped overflow rects any problems with repaint rects will become 2518 immediate visible - it turns out we're not supporting the overflow rules on the outermost <svg> 2519 element properly (repaint rects and bounding boxes need to take special SVG overflow rules into account). 2520 Fixing that magically gives pixel-perfect clipped overflow rects for all types of shapes/text/containers. 2521 2522 Note: This will break any overriden platform-specific SVG results, need to wait for build bots in order to update them. 2523 2524 * rendering/RenderObject.cpp: Remove absoluteTransform() method, centralize overflow query code in SVGRenderSupport::isOverflowHidden(). 2525 * rendering/RenderObject.h: Remove absoluteTransform() method. 2526 * rendering/RenderSVGHiddenContainer.h: Ditto. 2527 * rendering/RenderSVGRoot.cpp: 2528 (WebCore::RenderSVGRoot::paint): Use SVGRenderSupport::isOverflowHidden() to query SVG overflow mode. 2529 (WebCore::RenderSVGRoot::computeRectForRepaint): Respect SVG overflow rules here: clip repaintRect against overflow rect _before_ passing 2530 along to RenderBox. This is the key issue behind wrong absoluteClippedOverflowRect() values. 2531 (WebCore::RenderSVGRoot::nodeAtPoint): Use SVGRenderSupport::isOverflowHidden() to query SVG overflow mode. 2532 * rendering/RenderSVGRoot.h: Remove absoluteTransform(). Don't expose viewportSize() anymore. 2533 * rendering/RenderSVGText.cpp: 2534 (WebCore::RenderSVGText::strokeBoundingBox): Fix default stroke width to 1. This was the only wrong place -> fixes repaint rects for stroked text. 2535 * rendering/RenderSVGViewportContainer.cpp: Remove absoluteTransform() method. 2536 (WebCore::RenderSVGViewportContainer::pointIsInsideViewportClip): Use SVGRenderSupport::isOverflowHidden() to query SVG overflow mode. 2537 * rendering/RenderSVGViewportContainer.h: Remove absoluteTransform() method. 2538 * rendering/SVGRenderSupport.cpp: Refactored overflow queries in one place, centralizing SVG specific assumptions about overflowX/Y. 2539 (WebCore::SVGRenderBase::isOverflowHidden): 2540 * rendering/SVGRenderSupport.h: 2541 * rendering/SVGRenderTreeAsText.cpp: Dump absoluteClippedOverflowRect() instead of absoluteTransform().mapRect(repaintRectInLocalCoordinates()). 2542 (WebCore::writePositionAndStyle): Affects all layout tests dumping render trees. 2543 * svg/graphics/SVGPaintServerGradient.cpp: Rewrite Gradient on text fill/stroke support on Cg, to avoid using absoluteTransform(). 2544 (WebCore::absoluteTransformForRenderer): 2545 (WebCore::createMaskAndSwapContextForTextGradient): 2546 (WebCore::clipToTextMask): 2547 (WebCore::SVGPaintServerGradient::setup): 2548 2549 2010-02-07 Daniel Bates <dbates (a] webkit.org> 2550 2551 Reviewed by Darin Adler. 2552 2553 https://bugs.webkit.org/show_bug.cgi?id=34402 2554 2555 Implements all of the numeric CSS3 list-style-types as per 2556 section 4.3 of the CSS3 Lists module <http://www.w3.org/TR/css3-lists/#numeric>. 2557 2558 Test: fast/lists/w3-css3-list-styles-numeric.html 2559 2560 * css/CSSPrimitiveValueMappings.h: 2561 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): 2562 * css/CSSValueKeywords.in: 2563 * inspector/front-end/SourceCSSTokenizer.re2js: 2564 * platform/text/CharacterNames.h: Added constant hyphenMinus. 2565 * rendering/RenderListMarker.cpp: 2566 (WebCore::): Defined enum SequenceType. 2567 (WebCore::toAlphabeticOrNumeric): Added. 2568 (WebCore::toAlphabetic): Modified to call WebCore::toAlphabeticOrNumeric. 2569 (WebCore::toNumeric): Added. 2570 (WebCore::listMarkerSuffix): 2571 (WebCore::listMarkerText): 2572 (WebCore::RenderListMarker::paint): 2573 (WebCore::RenderListMarker::calcPrefWidths): 2574 (WebCore::RenderListMarker::getRelativeMarkerRect): 2575 * rendering/style/RenderStyle.h: 2576 (WebCore::): 2577 * rendering/style/RenderStyleConstants.h: Added numeric list style types 2578 and fixed indent level for the enum values. 2579 (WebCore::): 2580 2581 2010-02-07 Ismail Donmez <ismail (a] namtrac.org> 2582 2583 Reviewed by Darin Adler. 2584 2585 Include wtf/StringExtras.h for strdup definition, which 2586 is needed for WinCE. 2587 2588 * bridge/IdentifierRep.h: 2589 2590 2010-02-07 Pavel Feldman <pfeldman (a] chromium.org> 2591 2592 Reviewed by Timothy Hatcher. 2593 2594 Web Inspector: Fragment-held Elements Not Shown in Inspector. 2595 2596 https://bugs.webkit.org/show_bug.cgi?id=34680 2597 2598 * inspector/InspectorDOMAgent.cpp: 2599 (WebCore::InspectorDOMAgent::pushChildNodesToFrontend): 2600 (WebCore::InspectorDOMAgent::buildObjectForNode): 2601 * inspector/front-end/ElementsTreeOutline.js: 2602 (WebInspector.ElementsTreeElement.prototype._nodeTitleInfo): 2603 2604 2010-02-07 Jian Li <jianli (a] chromium.org> 2605 2606 Reviewed by Darin Fisher. 2607 2608 [chromium] Change chromium interface to handle DownloadURL format. 2609 https://bugs.webkit.org/show_bug.cgi?id=34655 2610 2611 * platform/chromium/ChromiumDataObject.cpp: 2612 (WebCore::ChromiumDataObject::clear): 2613 (WebCore::ChromiumDataObject::hasData): 2614 (WebCore::ChromiumDataObject::ChromiumDataObject): 2615 * platform/chromium/ChromiumDataObject.h: 2616 * platform/chromium/ClipboardChromium.cpp: 2617 (WebCore::ClipboardChromium::setData): 2618 2619 2010-02-06 Dimitri Glazkov <dglazkov (a] chromium.org> 2620 2621 No review, rolling out r54364. 2622 http://trac.webkit.org/changeset/54364 2623 https://bugs.webkit.org/show_bug.cgi?id=34464 2624 2625 Introduced asserts in layout tests, needs more testing 2626 locally. 2627 2628 * accessibility/chromium/AXObjectCacheChromium.cpp: 2629 (WebCore::AXObjectCache::postPlatformNotification): 2630 * page/chromium/ChromeClientChromium.h: 2631 2632 2010-02-06 Dimitri Glazkov <dglazkov (a] chromium.org> 2633 2634 Reviewed by Adam Barth. 2635 2636 Using inlines and function-level statics don't mix, according to gcc. 2637 https://bugs.webkit.org/show_bug.cgi?id=34663 2638 2639 De-inline deviceRGBColorSpaceRef to avoid gcc-bug landmines. 2640 2641 It appears that the initialization check, generated by gcc doesn't account 2642 for a possibility that the function may be inlined, resulting in lazy 2643 initialization failure for more than one inlined instance of the function. 2644 2645 No behavior change, so no new tests. 2646 2647 * platform/graphics/cg/GraphicsContextCG.cpp: 2648 (WebCore::deviceRGBColorSpaceRef): 2649 * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h: 2650 2651 2010-02-05 Geoffrey Garen <ggaren (a] apple.com> 2652 2653 Reviewed by Dan Bernstein. 2654 2655 Added an ASSERT to catch an implausible but theoretically possible leak. 2656 2657 In theory, if malloc allocated a UChar buffer directly after a StringImpl, 2658 the StringImpl might incorrecly assume that the UChar buffer was inline, 2659 and fail to delete it. 2660 2661 This ASSERT is somewhat academic, since we don't use the same allocator 2662 in debug builds, but oh well. 2663 2664 * platform/text/StringImpl.cpp: 2665 (WebCore::StringImpl::StringImpl): 2666 (WebCore::StringImpl::createUninitialized): 2667 * platform/text/StringImpl.h: Separated the inline buffer StringImpl 2668 constructor from the out-of-line buffer StringImpl constructor. Made 2669 the former ASSERT that its buffer was indeed inline, and the latter ASSERT 2670 that its buffer was indeed not inline. 2671 2672 2010-02-05 Chris Marrin <cmarrin (a] apple.com> 2673 2674 Reviewed by Simon Fraser. 2675 2676 Fixed changed virtual function in GraphicsLayerCACF and call order issues 2677 https://bugs.webkit.org/show_bug.cgi?id=34348 2678 2679 The correct virtual function in GraphicsLayerCACF is now being 2680 called. We also fixed an issue in QTMovieWin where the size 2681 of the movie was not being set correctly because the call order 2682 was changed. 2683 2684 I also changed the order of a couple of calls in QTMovieWin to account 2685 for changed calling order from the logic above. 2686 2687 * platform/graphics/win/GraphicsLayerCACF.cpp:Update to new virtual function API 2688 (WebCore::GraphicsLayerCACF::setContentsToMedia): 2689 (WebCore::GraphicsLayerCACF::updateContentsMedia): 2690 * platform/graphics/win/GraphicsLayerCACF.h:Update to new virtual function API 2691 (WebCore::GraphicsLayerCACF::): 2692 * platform/graphics/win/QTMovieWin.cpp: 2693 (QTMovieWinPrivate::cacheMovieScale):Fix a bug where ratio was computed wrong because it was using integer math 2694 (QTMovieWinPrivate::task):Compute movie scale before computing movie size so values are correct 2695 (QTMovieWinPrivate::setSize):Move movie size update to updateMovieSize() 2696 (QTMovieWinPrivate::updateMovieSize):Wrap size update in a new call so it can be used from multiple places 2697 2698 2010-02-05 Enrica Casucci <enrica (a] apple.com> 2699 2700 Reviewed by Simon Fraser. 2701 2702 Horizontal scrollbar works in reverse at milliondollarcu.be 2703 <rdar://problem/7556121> 2704 https://bugs.webkit.org/show_bug.cgi?id=33848 2705 2706 Added a manual test. 2707 2708 * manual-tests/win: Added. 2709 * manual-tests/win/horizontal-scroll-composited.html: Added. 2710 * platform/graphics/win/WKCACFLayerRenderer.cpp: 2711 (WebCore::WKCACFLayerRenderer::setScrollFrame): 2712 (WebCore::WKCACFLayerRenderer::setRootChildLayer): 2713 2714 2010-02-05 Ryan Leavengood <leavengood (a] gmail.com> 2715 2716 Reviewed by David Levin. 2717 2718 Implementation of GlyphPage::fill() for Haiku port. 2719 https://bugs.webkit.org/show_bug.cgi?id=34527 2720 2721 Covered by existing tests. 2722 2723 * platform/graphics/haiku/GlyphPageTreeNodeHaiku.cpp 2724 2725 2010-01-19 Kenneth Rohde Christiansen <kenneth (a] webkit.org> 2726 2727 Reviewed by Dave Hyatt. 2728 2729 Implement flattening of framesets 2730 https://bugs.webkit.org/show_bug.cgi?id=32717 2731 2732 The following patch, builds ontop of Antti Koivisto's frameset 2733 flattening code from the iPhone source, which itself is based on 2734 the old Nokia Series 60 source. 2735 2736 Layout tests have been added to test the functionality and the original 2737 code which has then been fixed to make these pass, as well as support 2738 frameset grids. 2739 2740 Tests: fast/frames/flattening/frameset-flattening-advanced.html 2741 fast/frames/flattening/frameset-flattening-grid.html 2742 fast/frames/flattening/frameset-flattening-simple.html 2743 fast/frames/flattening/frameset-flattening-subframe-resize.html 2744 fast/frames/flattening/frameset-flattening-subframesets.html 2745 2746 * page/FrameView.cpp: 2747 (WebCore::FrameView::layout): 2748 (WebCore::FrameView::scheduleRelayout): 2749 * page/Settings.cpp: 2750 (WebCore::Settings::Settings): 2751 (WebCore::Settings::setFrameSetFlatteningEnabled): 2752 * page/Settings.h: 2753 (WebCore::Settings::frameSetFlatteningEnabled): 2754 * rendering/RenderFrame.cpp: 2755 (WebCore::RenderFrame::layoutWithFlattening): 2756 * rendering/RenderFrame.h: 2757 * rendering/RenderFrameSet.cpp: 2758 (WebCore::RenderFrameSet::layout): 2759 (WebCore::RenderFrameSet::positionFramesWithFlattening): 2760 (WebCore::RenderFrameSet::flattenFrameSet): 2761 (WebCore::RenderFrameSet::userResize): 2762 * rendering/RenderFrameSet.h: 2763 2764 2010-02-05 Simon Fraser <simon.fraser (a] apple.com> 2765 2766 Reviewed by Dan Bernstein. 2767 2768 Changing display type of parent of input on focus causes input field to not receive key events 2769 https://bugs.webkit.org/show_bug.cgi?id=34620 2770 <rdar://problem/7584572> 2771 2772 When layout affects a text input, the RenderTextControl gets destroyed and 2773 recreated, which in turn makes a new innerTextElement. However, if the text field was 2774 focused, the VisibleSelection is left pointing to the old innerTextElement, so text 2775 input no longer works. 2776 2777 The fix is to call updateFocusAppearanceSoon() when attaching the input element, 2778 which will update the selection if necessary. 2779 2780 Test: fast/forms/restore-selection-after-layout.html 2781 2782 * dom/Document.h: Add a paramter to updateFocusAppearanceSoon() and a member variable, 2783 m_updateFocusAppearanceRestoresSelection, to store its value until the timer fires. 2784 * dom/Document.cpp: 2785 (WebCore::Document::Document): Initialize m_updateFocusAppearanceRestoresSelection 2786 (WebCore::Document::updateFocusAppearanceSoon): New restorePreviousSelection parameter. 2787 (WebCore::Document::updateFocusAppearanceTimerFired): Pass m_updateFocusAppearanceRestoresSelection down. 2788 * dom/Element.cpp: 2789 (WebCore::Element::attach): Call updateFocusAppearanceSoon() with false. 2790 * dom/Element.h: The updateFocusAppearanceSoonAfterAttach() was undefined. 2791 * html/HTMLInputElement.cpp: 2792 (WebCore::HTMLInputElement::attach): Call document()->updateFocusAppearanceSoon() with true. 2793 2794 2010-02-05 Pavel Feldman <pfeldman (a] chromium.org> 2795 2796 Reviewed by Timothy Hatcher. 2797 2798 Web Inspector: simplify cookies view, introduce DataGrid::autoSizeColumns. 2799 2800 https://bugs.webkit.org/show_bug.cgi?id=34646 2801 2802 * inspector/front-end/CookieItemsView.js: 2803 (WebInspector.CookieItemsView): 2804 (WebInspector.CookieItemsView.prototype.show): 2805 (WebInspector.CookieItemsView.prototype._update): 2806 (WebInspector.CookieItemsView.prototype._updateWithCookies): 2807 (WebInspector.CookieItemsView.prototype._filterCookiesForDomain): 2808 (WebInspector.CookieItemsView.prototype._createDataGrid): 2809 (WebInspector.CookieItemsView.prototype._populateDataGrid.expiresCompare): 2810 (WebInspector.CookieItemsView.prototype._populateDataGrid): 2811 (WebInspector.CookieItemsView.prototype._createSimpleDataGrid): 2812 (WebInspector.CookieItemsView.prototype._populateSimpleDataGrid): 2813 (WebInspector.CookieItemsView.prototype._deleteCookieCallback): 2814 (WebInspector.CookieItemsView.prototype._refreshButtonClicked): 2815 * inspector/front-end/DOMStorageItemsView.js: 2816 (WebInspector.DOMStorageItemsView.prototype._showDOMStorageEntries): 2817 (WebInspector.DOMStorageItemsView.prototype._dataGridForDOMStorageEntries): 2818 * inspector/front-end/DataGrid.js: 2819 (WebInspector.DataGrid): 2820 (WebInspector.DataGrid.prototype.autoSizeColumns): 2821 * inspector/front-end/DatabaseQueryView.js: 2822 (WebInspector.DatabaseQueryView.prototype._queryFinished): 2823 * inspector/front-end/DatabaseTableView.js: 2824 (WebInspector.DatabaseTableView.prototype._queryFinished): 2825 * inspector/front-end/StoragePanel.js: 2826 (WebInspector.StoragePanel.prototype.dataGridForResult): 2827 2828 2010-02-04 Pavel Feldman <pfeldman (a] chromium.org> 2829 2830 Reviewed by Timothy Hatcher. 2831 2832 Web Inspector: group cookies by frame, show total 2833 cookies size, allow sorting cookie table. 2834 2835 https://bugs.webkit.org/show_bug.cgi?id=34617 2836 2837 * English.lproj/localizedStrings.js: 2838 * inspector/InspectorController.cpp: 2839 (WebCore::InspectorController::deleteCookie): 2840 * inspector/front-end/CookieItemsView.js: 2841 (WebInspector.CookieItemsView): 2842 (WebInspector.CookieItemsView.prototype.update): 2843 (WebInspector.CookieItemsView.prototype._updateWithCookies): 2844 (WebInspector.CookieItemsView.prototype._cookiesForDomain): 2845 (WebInspector.CookieItemsView.prototype.dataGridForCookies): 2846 (WebInspector.CookieItemsView.prototype._createNodes): 2847 (WebInspector.CookieItemsView.prototype._sortData.localeCompare): 2848 (WebInspector.CookieItemsView.prototype._sortData.numberCompare): 2849 (WebInspector.CookieItemsView.prototype._sortData.expiresCompare): 2850 (WebInspector.CookieItemsView.prototype._sortData): 2851 * inspector/front-end/StoragePanel.js: 2852 (WebInspector.StoragePanel.prototype.showCookies): 2853 (WebInspector.CookieSidebarTreeElement): 2854 (WebInspector.CookieSidebarTreeElement.prototype.onselect): 2855 (WebInspector.CookieSidebarTreeElement.prototype.get subtitle): 2856 (WebInspector.CookieSidebarTreeElement.prototype.set subtitle): 2857 * inspector/front-end/inspector.js: 2858 (WebInspector.updateResource): 2859 2860 2010-02-05 Maxime Simone <simon.maxime (a] gmail.com> 2861 2862 Reviewed by David Levin. 2863 2864 More robust conversion from BString to String for Haiku port. 2865 https://bugs.webkit.org/show_bug.cgi?id=34527 2866 2867 Covered by existing tests. 2868 2869 * platform/text/haiku/StringHaiku.cpp: Fixed include order, Improved coversion from BString. 2870 2871 2010-02-05 Steve Falkenburg <sfalken (a] apple.com> 2872 2873 Reviewed by Adam Roben. 2874 2875 Windows build fix. 2876 2877 * WebCore.vcproj/WebCore.make: 2878 2879 2010-02-05 Csaba Osztrogonc <ossy (a] webkit.org> 2880 2881 Reviewed by Dirk Schulze. 2882 Rubber-stamped by Kenneth Rohde Christiansen. 2883 2884 [Qt] Modifying SVG path dumping to equal to other ports 2885 https://bugs.webkit.org/show_bug.cgi?id=33784 2886 2887 * platform/graphics/qt/PathQt.cpp: 2888 (WebCore::Path::debugString): Path dumping style is aproached to Mac. 2889 2890 2010-02-05 Sebastian Drge <sebastian.droege (a] collabora.co.uk> 2891 2892 Reviewed by Gustavo Noronha. 2893 2894 Add a GStreamer HTTP/HTTPS source, using WebKit infrastructure 2895 https://bugs.webkit.org/show_bug.cgi?id=34317 2896 2897 * GNUmakefile.am: 2898 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: 2899 (WebCore::mediaPlayerPrivateSourceChangedCallback): 2900 (WebCore::doGstInit): 2901 * platform/graphics/gtk/WebKitWebSourceGStreamer.cpp: 2902 * platform/graphics/gtk/WebKitWebSourceGStreamer.h: 2903 Add a GStreamer HTTP/HTTPS source, using the WebKit infrastructure. 2904 This makes sure that referer, cookies, authentication information 2905 and all kinds of other context are passed to GStreamer for websites 2906 like Vimeo or YouTube. 2907 2908 2010-02-05 Nate Chapin <japhet (a] chromium.org> 2909 2910 Reviewed by Dimitri Glazkov. 2911 2912 [V8] Clean up code for getting a v8::FunctionTemplate. 2913 2914 https://bugs.webkit.org/show_bug.cgi?id=34606 2915 2916 * bindings/scripts/CodeGeneratorV8.pm: Making GetTemplate() public 2917 * bindings/v8/V8Binding.cpp: 2918 (WebCore::configureTemplate): 2919 * bindings/v8/V8DOMWrapper.cpp: Remove getTemplate(), use V8ClassIndex::getTemplate() instead. 2920 (WebCore::V8DOMWrapper::getConstructor): 2921 (WebCore::V8DOMWrapper::instantiateV8Object): 2922 * bindings/v8/V8DOMWrapper.h: 2923 (WebCore::V8DOMWrapper::lookupDOMWrapper): 2924 * bindings/v8/V8Index.cpp: Remove duplicate caching of FunctionTemplates. 2925 (WebCore::V8ClassIndex::getTemplate): 2926 * bindings/v8/V8Index.h: 2927 * bindings/v8/WorkerContextExecutionProxy.cpp: 2928 (WebCore::WorkerContextExecutionProxy::toV8): 2929 * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp: 2930 (WebCore::v8HTMLAudioElementConstructorCallback): 2931 (WebCore::V8HTMLAudioElementConstructor::GetTemplate): 2932 * bindings/v8/custom/V8HTMLAudioElementConstructor.h: 2933 * bindings/v8/custom/V8HTMLImageElementConstructor.cpp: 2934 (WebCore::v8HTMLImageElementConstructorCallback): 2935 (WebCore::V8HTMLImageElementConstructor::GetTemplate): 2936 * bindings/v8/custom/V8HTMLImageElementConstructor.h: 2937 * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp: 2938 (WebCore::v8HTMLOptionElementConstructorCallback): 2939 (WebCore::V8HTMLOptionElementConstructor::GetTemplate): 2940 * bindings/v8/custom/V8HTMLOptionElementConstructor.h: 2941 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: 2942 (WebCore::createInjectedScriptHostV8Wrapper): 2943 2944 2010-02-05 Siddharth Mathur <siddharth.mathur (a] nokia.com> 2945 2946 Reviewed by Ariya Hidayat. 2947 2948 [Qt] Build break in QtWebkit on Symbian 2949 https://bugs.webkit.org/show_bug.cgi?id=34597 2950 2951 * plugins/PluginView.h: 2952 2953 2010-02-05 Yury Semikhatsky <yurys (a] chromium.org> 2954 2955 Reviewed by Pavel Feldman. 2956 2957 - Use SerializedScriptValue for passing data between injected script and 2958 inspector frontend. 2959 - Remove custom JSON implementation from the instpector utility script. 2960 - Make sure that only objects created in the same ScriptState can be values 2961 of ScriptObject/Array properties and arguments to ScriptFunctionCall. We don't 2962 want ScriptObjects to leak between contexts. 2963 - Use ScriptState of the 'this' object in ScriptFunctionCall instead of passing 2964 it as additional parameter. 2965 2966 https://bugs.webkit.org/show_bug.cgi?id=33592 2967 2968 * bindings/js/JSInjectedScriptHostCustom.cpp: 2969 (WebCore::JSInjectedScriptHost::reportDidDispatchOnInjectedScript): 2970 * bindings/js/ScriptArray.cpp: 2971 (WebCore::ScriptArray::set): 2972 * bindings/js/ScriptFunctionCall.cpp: 2973 (WebCore::ScriptFunctionCall::ScriptFunctionCall): 2974 (WebCore::ScriptFunctionCall::appendArgument): 2975 * bindings/js/ScriptFunctionCall.h: 2976 * bindings/js/ScriptObject.cpp: 2977 (WebCore::ScriptObject::set): 2978 * bindings/js/ScriptValue.cpp: 2979 (WebCore::ScriptValue::serialize): 2980 (WebCore::ScriptValue::deserialize): 2981 * bindings/js/ScriptValue.h: 2982 * bindings/v8/ScriptArray.cpp: 2983 (WebCore::ScriptArray::set): 2984 * bindings/v8/ScriptFunctionCall.cpp: 2985 (WebCore::ScriptFunctionCall::ScriptFunctionCall): 2986 (WebCore::ScriptFunctionCall::appendArgument): 2987 * bindings/v8/ScriptFunctionCall.h: 2988 * bindings/v8/ScriptObject.cpp: 2989 (WebCore::ScriptObject::set): 2990 * bindings/v8/ScriptState.h: 2991 * bindings/v8/ScriptValue.cpp: 2992 (WebCore::ScriptValue::serialize): 2993 (WebCore::deserialize): 2994 * bindings/v8/ScriptValue.h: 2995 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: 2996 (WebCore::V8InjectedScriptHost::reportDidDispatchOnInjectedScriptCallback): 2997 * inspector/InjectedScript.cpp: 2998 (WebCore::InjectedScript::dispatch): 2999 (WebCore::InjectedScript::callFrames): 3000 (WebCore::InjectedScript::wrapForConsole): 3001 (WebCore::InjectedScript::releaseWrapperObjectGroup): 3002 * inspector/InjectedScript.h: 3003 * inspector/InjectedScriptHost.cpp: 3004 (WebCore::InjectedScriptHost::reportDidDispatchOnInjectedScript): 3005 * inspector/InjectedScriptHost.h: 3006 * inspector/InjectedScriptHost.idl: 3007 * inspector/InspectorBackend.cpp: 3008 (WebCore::InspectorBackend::dispatchOnInjectedScript): 3009 * inspector/InspectorController.cpp: 3010 (WebCore::InspectorController::setFrontendProxyObject): 3011 (WebCore::InspectorController::didPause): 3012 (WebCore::InspectorController::didEvaluateForTestInFrontend): 3013 * inspector/InspectorFrontend.cpp: 3014 (WebCore::InspectorFrontend::InspectorFrontend): 3015 (WebCore::InspectorFrontend::newScriptArray): 3016 (WebCore::InspectorFrontend::newScriptObject): 3017 (WebCore::InspectorFrontend::populateFrontendSettings): 3018 (WebCore::InspectorFrontend::updateConsoleMessageExpiredCount): 3019 (WebCore::InspectorFrontend::addConsoleMessage): 3020 (WebCore::InspectorFrontend::updateConsoleMessageRepeatCount): 3021 (WebCore::InspectorFrontend::updateResource): 3022 (WebCore::InspectorFrontend::removeResource): 3023 (WebCore::InspectorFrontend::didGetResourceContent): 3024 (WebCore::InspectorFrontend::updateFocusedNode): 3025 (WebCore::InspectorFrontend::setAttachedWindow): 3026 (WebCore::InspectorFrontend::addRecordToTimeline): 3027 (WebCore::InspectorFrontend::parsedScriptSource): 3028 (WebCore::InspectorFrontend::failedToParseScriptSource): 3029 (WebCore::InspectorFrontend::addProfileHeader): 3030 (WebCore::InspectorFrontend::setRecordingProfile): 3031 (WebCore::InspectorFrontend::didGetProfileHeaders): 3032 (WebCore::InspectorFrontend::didGetProfile): 3033 (WebCore::InspectorFrontend::pausedScript): 3034 (WebCore::InspectorFrontend::setDocument): 3035 (WebCore::InspectorFrontend::setDetachedRoot): 3036 (WebCore::InspectorFrontend::setChildNodes): 3037 (WebCore::InspectorFrontend::childNodeCountUpdated): 3038 (WebCore::InspectorFrontend::childNodeInserted): 3039 (WebCore::InspectorFrontend::childNodeRemoved): 3040 (WebCore::InspectorFrontend::attributesUpdated): 3041 (WebCore::InspectorFrontend::didRemoveNode): 3042 (WebCore::InspectorFrontend::didGetChildNodes): 3043 (WebCore::InspectorFrontend::didApplyDomChange): 3044 (WebCore::InspectorFrontend::didGetEventListenersForNode): 3045 (WebCore::InspectorFrontend::didGetCookies): 3046 (WebCore::InspectorFrontend::didDispatchOnInjectedScript): 3047 (WebCore::InspectorFrontend::addDatabase): 3048 (WebCore::InspectorFrontend::selectDatabase): 3049 (WebCore::InspectorFrontend::didGetDatabaseTableNames): 3050 (WebCore::InspectorFrontend::addDOMStorage): 3051 (WebCore::InspectorFrontend::selectDOMStorage): 3052 (WebCore::InspectorFrontend::didGetDOMStorageEntries): 3053 (WebCore::InspectorFrontend::didSetDOMStorageItem): 3054 (WebCore::InspectorFrontend::didRemoveDOMStorageItem): 3055 (WebCore::InspectorFrontend::updateDOMStorage): 3056 (WebCore::InspectorFrontend::addNodesToSearchResult): 3057 (WebCore::InspectorFrontend::contextMenuItemSelected): 3058 (WebCore::InspectorFrontend::evaluateForTestInFrontend): 3059 (WebCore::InspectorFrontend::callSimpleFunction): 3060 * inspector/InspectorFrontend.h: 3061 (WebCore::InspectorFrontend::scriptState): 3062 * inspector/front-end/InjectedScript.js: 3063 (injectedScriptConstructor): 3064 (injectedScriptConstructor.): 3065 * inspector/front-end/InjectedScriptAccess.js: 3066 (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName.myCallback): 3067 (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName): 3068 (InjectedScriptAccess._installHandler): 3069 * inspector/front-end/inspector.js: 3070 (WebInspector.pausedScript): 3071 (WebInspector.addConsoleMessage): 3072 3073 2010-02-05 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 3074 3075 Reviewed by Simon Hausmann. 3076 3077 [Qt] Generate convenience headers (QWebView, etc) using qmake 3078 3079 In Qt this is done using syncqt, but we use a pro-file instead 3080 that generates makefile-rules for each of the extra headers. 3081 3082 These extra headers are installed alongside the normal headers. 3083 3084 * WebCore.pro: Use headers.pri based on DerivedSources instead 3085 of the one previously checked in in the source tree. 3086 3087 2010-02-05 Mikhail Naganov <mnaganov (a] chromium.org> 3088 3089 Reviewed by Pavel Feldman. 3090 3091 Enable JAVASCRIPT_DEBUGGER in chromium port. 3092 3093 https://bugs.webkit.org/show_bug.cgi?id=34638 3094 3095 * page/Console.cpp: 3096 * page/Console.h: 3097 * page/Console.idl: 3098 3099 2010-02-05 Pavel Feldman <pfeldman (a] chromium.org> 3100 3101 Reviewed by Timothy Hatcher. 3102 3103 Web Inspector: Tab width for javascript source is 8, should be 4 3104 3105 https://bugs.webkit.org/show_bug.cgi?id=31248 3106 3107 * inspector/front-end/SourceFrame.js: 3108 (WebInspector.SourceFrame): 3109 * inspector/front-end/TextEditorModel.js: 3110 (WebInspector.TextEditorModel.prototype.set replaceTabsWithSpaces): 3111 (WebInspector.TextEditorModel.prototype._innerSetText): 3112 (WebInspector.TextEditorModel.prototype._replaceTabsIfNeeded): 3113 3114 2010-02-05 Tony Chang <tony (a] chromium.org> 3115 3116 Reviewed by Eric Seidel. 3117 3118 https://bugs.webkit.org/show_bug.cgi?id=24872 3119 When pasting a list into another list should not indent another level. 3120 If the cursor is at the beginning of the line, it should insert the 3121 list items before the current list item. If the cursor is at the end 3122 of the line, it should insert the list items after the current list item. 3123 3124 This matches Firefox and IE and makes the common activity of reordering a list 3125 work as expected. 3126 3127 This also adds a small helper method (isListItem) to htmlediting.h. 3128 3129 Test: editing/pasteboard/paste-list-002.html 3130 3131 * editing/ReplaceSelectionCommand.cpp: 3132 (WebCore::ReplaceSelectionCommand::doApply): 3133 (WebCore::ReplaceSelectionCommand::insertAsListItems): 3134 * editing/ReplaceSelectionCommand.h: 3135 * editing/htmlediting.cpp: 3136 (WebCore::isListItem): 3137 (WebCore::appendedSublist): 3138 * editing/htmlediting.h: 3139 3140 2010-02-04 Mark Rowe <mrowe (a] apple.com> 3141 3142 Reviewed by Timothy Hatcher. 3143 3144 Build fix. Remove a symbol corresponding to an inline function from the linker export 3145 file to prevent a weak external failure. 3146 3147 * WebCore.base.exp: Remove symbol. 3148 * WebCore.xcodeproj/project.pbxproj: Accommodate rename of script. 3149 3150 2010-02-04 Geoffrey Garen <ggaren (a] apple.com> 3151 3152 Reviewed by Oliver Hunt. 3153 3154 Updated to use new WeakGCPtr::clear interface. 3155 3156 * bindings/js/JSEventListener.cpp: 3157 * bindings/js/JSEventListener.h: 3158 (WebCore::JSEventListener::invalidateJSFunction): 3159 3160 2010-02-04 Geoffrey Garen <ggaren (a] apple.com> 3161 3162 Build fix: Added a forwarding header. 3163 3164 * ForwardingHeaders/runtime/WeakGCPtr.h: Added. 3165 3166 2010-02-04 Geoffrey Garen <ggaren (a] apple.com> 3167 3168 Reviewed by Alexey Proskuryakov and Darin Adler. 3169 3170 REGRESSION (r52082): Missing event handlers on JQuery demo page (33383) 3171 https://bugs.webkit.org/show_bug.cgi?id=33383 3172 <rdar://problem/7559449> 3173 3174 There were two bugs here: 3175 3176 1. A stale wrapper would invalidate a node's event listeners, even if 3177 the node had a fresh wrapper keeping it alive. 3178 3179 The fix for this is for an event listener to keep a WeakGCPtr back-pointer 3180 to the wrapper it expects to mark it. The wrapper destructor checks this 3181 back-pointer, and only invalidates the event listener in the case of a match. 3182 3183 2. Conversely, a stale wrapper would not invalidate a node's event 3184 listeners soon enough, if its destructor didn't have a chance to run 3185 before an event fired on the node. (This can only happen in cases where 3186 we've made some other error and failed to mark a wrapper that was circuitously 3187 observable in the DOM. But we know we have edge case bugs like this, and 3188 we don't want them to be crashes.) 3189 3190 The fix for this is to check the wrapper back-pointer before firing the 3191 event listener. As long as the the wrapper back-pointer is not null, 3192 it's safe to fire the listener. 3193 3194 * ForwardingHeaders/runtime/WeakGCPtr.h: Added. Appease build gods. 3195 3196 * bindings/js/JSAbstractWorkerCustom.cpp: 3197 (WebCore::JSAbstractWorker::addEventListener): 3198 (WebCore::JSAbstractWorker::removeEventListener): 3199 * bindings/js/JSDOMApplicationCacheCustom.cpp: 3200 (WebCore::JSDOMApplicationCache::addEventListener): 3201 (WebCore::JSDOMApplicationCache::removeEventListener): 3202 * bindings/js/JSDOMWindowCustom.cpp: 3203 (WebCore::JSDOMWindow::markChildren): 3204 (WebCore::JSDOMWindow::addEventListener): 3205 (WebCore::JSDOMWindow::removeEventListener): Updated to pass a wrapper 3206 to the JSEventListener constructor. 3207 3208 * bindings/js/JSEventListener.cpp: 3209 (WebCore::JSEventListener::JSEventListener): 3210 (WebCore::JSEventListener::initializeJSFunction): 3211 (WebCore::JSEventListener::invalidateJSFunction): 3212 * bindings/js/JSEventListener.h: 3213 (WebCore::JSEventListener::create): 3214 (WebCore::JSEventListener::isolatedWorld): 3215 (WebCore::JSEventListener::wrapper): 3216 (WebCore::JSEventListener::setWrapper): 3217 (WebCore::JSEventListener::jsFunction): 3218 (WebCore::createJSAttributeEventListener): Implemented the back-pointer 3219 described above. Refactored the jsFunction() accessor to return 0 if 3220 the wrapper back-pointer is 0. 3221 3222 * bindings/js/JSEventSourceCustom.cpp: 3223 (WebCore::JSEventSource::addEventListener): 3224 (WebCore::JSEventSource::removeEventListener): 3225 * bindings/js/JSLazyEventListener.cpp: 3226 (WebCore::JSLazyEventListener::JSLazyEventListener): 3227 (WebCore::JSLazyEventListener::initializeJSFunction): 3228 * bindings/js/JSLazyEventListener.h: 3229 (WebCore::JSLazyEventListener::create): 3230 * bindings/js/JSMessagePortCustom.cpp: 3231 (WebCore::JSMessagePort::markChildren): 3232 (WebCore::JSMessagePort::addEventListener): 3233 (WebCore::JSMessagePort::removeEventListener): 3234 * bindings/js/JSNodeCustom.cpp: 3235 (WebCore::JSNode::addEventListener): 3236 (WebCore::JSNode::removeEventListener): 3237 (WebCore::JSNode::markChildren): 3238 * bindings/js/JSSVGElementInstanceCustom.cpp: 3239 (WebCore::JSSVGElementInstance::addEventListener): 3240 (WebCore::JSSVGElementInstance::removeEventListener): 3241 * bindings/js/JSWebSocketCustom.cpp: 3242 (WebCore::JSWebSocket::addEventListener): 3243 (WebCore::JSWebSocket::removeEventListener): 3244 * bindings/js/JSWorkerContextCustom.cpp: 3245 (WebCore::JSWorkerContext::markChildren): 3246 (WebCore::JSWorkerContext::addEventListener): 3247 (WebCore::JSWorkerContext::removeEventListener): 3248 * bindings/js/JSXMLHttpRequestCustom.cpp: 3249 (WebCore::JSXMLHttpRequest::markChildren): 3250 (WebCore::JSXMLHttpRequest::addEventListener): 3251 (WebCore::JSXMLHttpRequest::removeEventListener): 3252 * bindings/js/JSXMLHttpRequestUploadCustom.cpp: 3253 (WebCore::JSXMLHttpRequestUpload::markChildren): 3254 (WebCore::JSXMLHttpRequestUpload::addEventListener): 3255 (WebCore::JSXMLHttpRequestUpload::removeEventListener): Updated to pass a wrapper 3256 to the JSEventListener constructor. 3257 3258 3259 * bindings/js/ScriptEventListener.cpp: 3260 (WebCore::createAttributeEventListener): Updated to pass a wrapper 3261 to the JSEventListener constructor. 3262 (WebCore::getEventListenerHandlerBody): Updated for the fact that jsFunction() 3263 is no longer a virtual accessor on the EventHandler base class. 3264 3265 * bindings/scripts/CodeGeneratorJS.pm: Updated for the fact that jsFunction() 3266 is no longer a virtual accessor on the EventHandler base class. Added a "JS" 3267 to invalidateEventListeners and markEventListeners to clarify that these 3268 actions are for JS event listeners only. Added a wrapper parameter to 3269 invalidateEventListeners for the back-pointer check explained above. 3270 3271 * dom/EventListener.h: 3272 (WebCore::EventListener::invalidateJSFunction): ditto 3273 3274 * dom/EventTarget.h: 3275 (WebCore::EventTarget::markJSEventListeners): 3276 (WebCore::EventTarget::invalidateJSEventListeners): ditto 3277 3278 2010-02-04 Tony Chang <tony (a] chromium.org> 3279 3280 Reviewed by Eric Seidel. 3281 3282 https://bugs.webkit.org/show_bug.cgi?id=25002 3283 When inserting a new paragraph, avoid nesting empty divs. When 3284 pasting near the end of a paragraph, this prevents each paste 3285 command for getting nested one level deeper. 3286 3287 Test: editing/inserting/paragraph-outside-nested-divs.html 3288 3289 * editing/InsertParagraphSeparatorCommand.cpp: 3290 (WebCore::highestVisuallyEquivalentDiv): 3291 (WebCore::InsertParagraphSeparatorCommand::doApply): 3292 3293 2010-02-04 Dumitru Daniliuc <dumi (a] chromium.org> 3294 3295 Reviewed by Eric Seidel. 3296 3297 1. Fix a bug in SQLiteTransaction: do not assume that COMMIT always 3298 succeeds. 3299 2. Jump straight to the transaction error callback when a 3300 statement fails in a way that makes sqlite automatically rollback 3301 the transaction. 3302 3. Fix the code that handles the "quota reached" failure, as it is 3303 one of the failures that lead to an automatic transaction 3304 rollback. 3305 3306 https://bugs.webkit.org/show_bug.cgi?id=34280 3307 3308 * platform/sql/SQLiteDatabase.cpp: 3309 (WebCore::SQLiteDatabase::isAutoCommitOn): 3310 * platform/sql/SQLiteDatabase.h: 3311 * platform/sql/SQLiteTransaction.cpp: 3312 (WebCore::SQLiteTransaction::begin): 3313 (WebCore::SQLiteTransaction::commit): 3314 (WebCore::SQLiteTransaction::rollback): 3315 (WebCore::SQLiteTransaction::transactionWasRolledBackBySqlite): 3316 * platform/sql/SQLiteTransaction.h: 3317 * storage/SQLTransaction.cpp: 3318 (WebCore::SQLTransaction::SQLTransaction): 3319 (WebCore::SQLTransaction::runStatements): 3320 (WebCore::SQLTransaction::runCurrentStatement): 3321 (WebCore::SQLTransaction::handleCurrentStatementError): 3322 (WebCore::SQLTransaction::deliverQuotaIncreaseCallback): 3323 3324 2010-02-04 Peter Kasting <pkasting (a] google.com> 3325 3326 Not reviewed, rollback. 3327 3328 Rollback r54387, it doesn't fix builds and Chromium doesn't want this behavior. 3329 3330 * platform/chromium/ScrollbarThemeChromiumMac.h: 3331 3332 2010-02-04 Stephen White <senorblanco (a] chromium.org> 3333 3334 Unreviewed, build fix. 3335 3336 Fix for Chromium/Mac after palindromic scrollbar change (54345). 3337 3338 Covered by many layout tests. 3339 3340 * platform/chromium/ScrollbarThemeChromiumMac.h: 3341 (WebCore::ScrollbarThemeChromiumMac::maxOverlapBetweenPages): 3342 3343 2010-02-04 Clemmitt Sigler <cmsigler (a] gmail.com> 3344 3345 Reviewed by David Levin. 3346 3347 WebKitGTK doesn't build GtkLauncher when --enable-mathml is specified. 3348 Updated WebCore/GNUmakefile.am to include needed files in build. 3349 3350 https://bugs.webkit.org/show_bug.cgi?id=34387 3351 3352 No new tests. 3353 3354 * GNUmakefile.am: 3355 3356 2010-02-04 Stephan Amus <superstippi (a] gmx.de> 3357 3358 Reviewed by David Levin. 3359 3360 Misc coding style fixes in Haiku port code. 3361 https://bugs.webkit.org/show_bug.cgi?id=34527 3362 3363 No tests needed. 3364 3365 * platform/haiku/ContextMenuItemHaiku.cpp: Trailing white space, NULL -> 0 3366 * platform/haiku/DragImageHaiku.cpp: Trailing white space. 3367 * platform/haiku/FileChooserHaiku.cpp: Sorted headers. 3368 * platform/haiku/LocalizedStringsHaiku.cpp: Needed to include NotImplemented.h 3369 3370 2010-02-04 Enrica Casucci <enrica (a] apple.com> 3371 3372 Reviewed by Csaba Osztrogonac. 3373 3374 Fixed crash on QT introduced with the fix for 3375 https://bugs.webkit.org/show_bug.cgi?id=34609 3376 3377 The test has been added with the original patch. 3378 3379 * platform/qt/ClipboardQt.cpp: 3380 (WebCore::ClipboardQt::writePlainText): Added missing allocation of m_writeData. 3381 3382 2010-02-04 Christian Dywan <christian (a] twotoasts.de> 3383 3384 Reviewed by Xan Lopez. 3385 3386 Conditionalize third party cookie policy for libsoup 2.29.90. 3387 3388 * platform/network/soup/CookieJarSoup.cpp: 3389 (WebCore::setCookies): 3390 * platform/network/soup/DNSSoup.cpp: 3391 (WebCore::prefetchDNS): 3392 * platform/network/soup/ResourceHandleSoup.cpp: 3393 (WebCore::restartedCallback): 3394 (WebCore::startHttp): 3395 * platform/network/soup/ResourceRequestSoup.cpp: 3396 (WebCore::ResourceRequest::toSoupMessage): 3397 (WebCore::ResourceRequest::updateFromSoupMessage): 3398 3399 2010-02-04 Christian Dywan <christian (a] twotoasts.de> 3400 3401 Rubber-stamped by Gustavo Noronha Silva. 3402 3403 Add ENABLE(VIDEO) guards around freeOwnedGPtr<GstElement> implementation. 3404 3405 * platform/gtk/GOwnPtrGtk.cpp: 3406 3407 2010-02-04 Alexey Proskuryakov <ap (a] apple.com> 3408 3409 Reviewed by Darin Adler. 3410 3411 Assertion failure in CheckedRadioButtons::removeButton when using jQuery 1.4.1 3412 https://bugs.webkit.org/show_bug.cgi?id=34520 3413 3414 Test: fast/dom/HTMLInputElement/cloned-input-checked-state.html 3415 3416 * dom/Element.cpp: (WebCore::Element::cloneElementWithoutChildren): Copy non-attribute 3417 properties before attributes. Otherwise, copying "checked" attribute would make the cloned 3418 node checked, unchecking original (they share a name, and are thus in the same radio group). 3419 We do want the original to be unchecked, but we also want to know its original state in 3420 HTMLInputElement::copyNonAttributeProperties(). 3421 3422 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::copyNonAttributeProperties): 3423 Use setChecked instead of plain assignment to prevent m_checked getting out of sync with 3424 checkedRadioButtons. Also, copy field related to default checked state, so that m_checked 3425 won't be overridden when copying attributes. 3426 3427 2010-02-04 Kevin Ollivier <kevino (a] theolliviers.com> 3428 3429 [wx] Build fix after addition of Clipboard::writePlainText method. 3430 3431 * platform/wx/ClipboardWx.cpp: 3432 (WebCore::ClipboardWx::writePlainText): 3433 * platform/wx/ClipboardWx.h: 3434 3435 2010-02-04 Enrica Casucci <enrica (a] apple.com> 3436 3437 Reviewed by Oliver Hunt. 3438 3439 REGRESSION: Dragging plain text into a styled text region does not acquire the correct style info. 3440 <rdar://problem/7595685> 3441 https://bugs.webkit.org/show_bug.cgi?id=34609 3442 3443 Test: editing/pasteboard/drop-inputtext-acquires-style.html 3444 3445 The dragging code did not distinguish the case of dragging the content of an input control 3446 as a special case. The markup placed in the pasteboard included the style information. 3447 I've modified the Clipboard class interface adding a new method writePlainText to match the 3448 behavior of the copy and cut commands and modified the drag code to detect the special case. 3449 I've modified all the platform specific implementations of the Clipboard class. 3450 3451 * dom/Clipboard.h: Added writePlainText pure virtual function. 3452 * editing/Editor.cpp: 3453 (WebCore::Editor::cut): Renamed nodeIsTextFormControl to isNodeInTextFormControl. 3454 (WebCore::Editor::copy): Renamed nodeIsTextFormControl to isNodeInTextFormControl. 3455 * editing/htmlediting.cpp: 3456 (WebCore::isNodeInTextFormControl): Added, after removing the implementation with the old name 3457 in Editor.cpp 3458 * editing/htmlediting.h: 3459 * page/DragController.cpp: 3460 (WebCore::DragController::startDrag): 3461 * platform/Pasteboard.h: 3462 * platform/android/ClipboardAndroid.cpp: 3463 (WebCore::ClipboardAndroid::writePlainText): Added. 3464 * platform/android/ClipboardAndroid.h: 3465 * platform/chromium/ClipboardChromium.cpp: 3466 (WebCore::ClipboardChromium::writePlainText): Added. 3467 * platform/chromium/ClipboardChromium.h: 3468 * platform/gtk/ClipboardGtk.cpp: 3469 (WebCore::ClipboardGtk::writePlainText): Added. 3470 * platform/gtk/ClipboardGtk.h: 3471 * platform/haiku/ClipboardHaiku.cpp: 3472 (WebCore::ClipboardHaiku::writePlainText): Added. 3473 * platform/haiku/ClipboardHaiku.h: 3474 * platform/mac/ClipboardMac.h: 3475 * platform/mac/ClipboardMac.mm: 3476 (WebCore::ClipboardMac::writePlainText): Added. 3477 * platform/mac/PasteboardMac.mm: 3478 (WebCore::Pasteboard::writePlainText): Added helper function. 3479 * platform/qt/ClipboardQt.cpp: 3480 (WebCore::ClipboardQt::writePlainText): Added. 3481 * platform/qt/ClipboardQt.h: 3482 * platform/win/ClipboardWin.cpp: 3483 (WebCore::ClipboardWin::writePlainText): Added. 3484 * platform/win/ClipboardWin.h: 3485 3486 2010-02-04 Steve Block <steveblock (a] google.com> 3487 3488 Reviewed by Nate Chapin. 3489 3490 Fix bug in V8 convertNPVariantToJValue when converting float and double types 3491 https://bugs.webkit.org/show_bug.cgi?id=34593 3492 3493 No new tests, build fix only. 3494 3495 * bridge/jni/v8/JNIUtilityPrivate.cpp: Modified. 3496 (JSC::Bindings::convertNPVariantToJValue): Modified. Use correct members of 'result' enum. 3497 3498 2010-02-04 Chris Guillory <chris.guillory (a] google.com> 3499 3500 Reviewed by Darin Fisher. 3501 3502 [Chromium] Notify ChromeClientChromium of AccessibilityObject state 3503 change notifications. 3504 3505 https://bugs.webkit.org/show_bug.cgi?id=34464 3506 3507 * accessibility/chromium/AXObjectCacheChromium.cpp: 3508 (WebCore::toChromeClientChromium): 3509 (WebCore::AXObjectCache::postPlatformNotification): 3510 * page/chromium/ChromeClientChromium.h: 3511 3512 2010-02-04 Stephen White <senorblanco (a] chromium.org> 3513 3514 Unreviewed, build fix for Chromium. 3515 3516 Revert r54341 ("[v8] Remove clear method from DOM object maps"), 3517 since it causes the worker tests to fail on Chromium. 3518 3519 * bindings/v8/DOMData.h: 3520 (WebCore::DOMData::removeObjectsFromWrapperMap): 3521 * bindings/v8/DOMDataStore.h: 3522 (WebCore::ChunkedTable::clear): 3523 (WebCore::ChunkedTable::clearEntries): 3524 (WebCore::DOMDataStore::IntrusiveDOMWrapperMap::clear): 3525 (WebCore::DOMDataStore::IntrusiveDOMWrapperMap::ChunkedTableTraits::clear): 3526 * bindings/v8/V8DOMMap.cpp: 3527 (WebCore::removeAllDOMObjectsInCurrentThreadHelper): 3528 (WebCore::removeAllDOMObjectsInCurrentThread): 3529 * bindings/v8/V8DOMMap.h: 3530 (WebCore::WeakReferenceMap::clear): 3531 * bindings/v8/WorkerScriptController.cpp: 3532 (WebCore::WorkerScriptController::~WorkerScriptController): 3533 3534 2010-02-04 Gustavo Noronha Silva <gustavo.noronha (a] collabora.co.uk> 3535 3536 Reviewed by Xan Lopez. 3537 3538 [GTK] Crashes when an invalid hostname is pre-fetched 3539 https://bugs.webkit.org/show_bug.cgi?id=34602 3540 3541 * platform/network/soup/DNSSoup.cpp: 3542 (WebCore::prefetchDNS): NULL-check the SoupURI that is created 3543 from the hostname; that will happen for invalid hostnames. 3544 3545 2010-02-04 Jos Milln Soto <jmillan (a] igalia.com> 3546 3547 Reviewed by Xan Lopez. 3548 3549 [Gtk] webkitgtk crashed when Orca open 3550 https://bugs.webkit.org/show_bug.cgi?id=34463 3551 3552 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 3553 (textForObject): 3554 Checking if render objects are texts before calling toRenderText 3555 3556 2010-02-04 Xan Lopez <xlopez (a] igalia.com> 3557 3558 Reviewed by Gustavo Noronha. 3559 3560 Set first party URI in all SoupMessages. This allows libsoup to 3561 implement a "no third party cookies" policy in case it wants 3562 to. Also start a non-JSC-specific, gtk-specific GOwnPtr module and 3563 use it for SoupURI. 3564 3565 * platform/network/soup/CookieJarSoup.cpp: 3566 (WebCore::setCookies): 3567 * platform/network/soup/ResourceHandleSoup.cpp: 3568 (WebCore::restartedCallback): 3569 (WebCore::startHttp): 3570 * platform/network/soup/ResourceRequestSoup.cpp: 3571 (WebCore::ResourceRequest::toSoupMessage): 3572 (WebCore::ResourceRequest::updateFromSoupMessage): 3573 3574 2010-02-04 Pavel Feldman <pfeldman (a] chromium.org> 3575 3576 Reviewed by Timothy Hatcher. 3577 3578 Web Inspector: group cookies by domains, not frame's domains. 3579 3580 https://bugs.webkit.org/show_bug.cgi?id=34599 3581 3582 * inspector/front-end/CookieItemsView.js: 3583 (WebInspector.CookieItemsView.prototype._cookiesForDomain): 3584 * inspector/front-end/inspector.js: 3585 (WebInspector.updateResource): 3586 (WebInspector._addCookieDomain): 3587 3588 2010-02-04 Nate Chapin <japhet (a] chromium.org> 3589 3590 Reviewed by Dimitri Glazkov. 3591 3592 [V8] Delete V8CustomBinding.h and all references to V8Custom 3593 3594 https://bugs.webkit.org/show_bug.cgi?id=32638 3595 3596 * bindings/v8/NPV8Object.cpp: 3597 * bindings/v8/V8DOMWindowShell.h: 3598 * bindings/v8/V8NPObject.cpp: 3599 * bindings/v8/V8Utilities.cpp: 3600 * bindings/v8/custom/V8AbstractWorkerCustom.cpp: 3601 * bindings/v8/custom/V8AttrCustom.cpp: 3602 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp: 3603 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: 3604 * bindings/v8/custom/V8ClipboardCustom.cpp: 3605 * bindings/v8/custom/V8CoordinatesCustom.cpp: 3606 * bindings/v8/custom/V8CustomBinding.h: Removed. 3607 * bindings/v8/custom/V8DOMApplicationCacheCustom.cpp: 3608 * bindings/v8/custom/V8DOMWindowCustom.cpp: 3609 * bindings/v8/custom/V8DataGridColumnListCustom.cpp: 3610 * bindings/v8/custom/V8DatabaseCustom.cpp: 3611 * bindings/v8/custom/V8ElementCustom.cpp: 3612 * bindings/v8/custom/V8EventSourceConstructor.cpp: 3613 * bindings/v8/custom/V8EventSourceCustom.cpp: 3614 * bindings/v8/custom/V8GeolocationCustom.cpp: 3615 * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp: 3616 * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp: 3617 (WebCore::v8HTMLAudioElementConstructorCallback): 3618 (WebCore::V8HTMLAudioElementConstructor::GetTemplate): 3619 * bindings/v8/custom/V8HTMLCollectionCustom.cpp: 3620 * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp: 3621 * bindings/v8/custom/V8HTMLFrameElementCustom.cpp: 3622 * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp: 3623 * bindings/v8/custom/V8HTMLImageElementConstructor.cpp: 3624 (WebCore::v8HTMLImageElementConstructorCallback): 3625 (WebCore::V8HTMLImageElementConstructor::GetTemplate): 3626 * bindings/v8/custom/V8HTMLInputElementCustom.cpp: 3627 * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp: 3628 (WebCore::v8HTMLOptionElementConstructorCallback): 3629 (WebCore::V8HTMLOptionElementConstructor::GetTemplate): 3630 * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp: 3631 * bindings/v8/custom/V8HistoryCustom.cpp: 3632 * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp: 3633 * bindings/v8/custom/V8LocationCustom.cpp: 3634 * bindings/v8/custom/V8MessagePortCustom.cpp: 3635 * bindings/v8/custom/V8NodeCustom.cpp: 3636 * bindings/v8/custom/V8NodeFilterCustom.cpp: 3637 * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp: 3638 * bindings/v8/custom/V8SQLTransactionCustom.cpp: 3639 * bindings/v8/custom/V8SVGElementInstanceCustom.cpp: 3640 * bindings/v8/custom/V8SVGLengthCustom.cpp: 3641 * bindings/v8/custom/V8SharedWorkerCustom.cpp: 3642 * bindings/v8/custom/V8StorageCustom.cpp: 3643 * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp: 3644 * bindings/v8/custom/V8WebGLArrayCustom.h: 3645 * bindings/v8/custom/V8WebGLByteArrayCustom.cpp: 3646 * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp: 3647 * bindings/v8/custom/V8WebGLIntArrayCustom.cpp: 3648 * bindings/v8/custom/V8WebGLShortArrayCustom.cpp: 3649 * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp: 3650 * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp: 3651 * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp: 3652 * bindings/v8/custom/V8WebKitPointConstructor.cpp: 3653 * bindings/v8/custom/V8WorkerContextCustom.cpp: 3654 * bindings/v8/custom/V8WorkerCustom.cpp: 3655 * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp: 3656 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: 3657 * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp: 3658 3659 2010-02-04 Ariya Hidayat <ariya.hidayat (a] gmail.com> 3660 3661 Reviewed by Simon Hausmann. 3662 3663 [Qt] Unnecessary QBrush construction for doing a solid fill 3664 https://bugs.webkit.org/show_bug.cgi?id=34559 3665 3666 Use the similar trick like r37421, i.e. use the special brush for 3667 solid color to avoid creating QBrush again and again. 3668 3669 * platform/graphics/qt/GraphicsContextQt.cpp: 3670 (WebCore::GraphicsContext::setPlatformFillColor): 3671 3672 2010-02-04 Dan Bernstein <mitz (a] apple.com> 3673 3674 Reviewed by Simon Fraser. 3675 3676 REGRESSION (r53718): When scrolling a tall window by page, the overlap between pages is too big 3677 https://bugs.webkit.org/show_bug.cgi?id=34371 3678 3679 Allow ScrollbarTheme to cap the overlap between pages, and set a cap of 3680 40 in ScrollbarThemeMac. 3681 3682 * WebCore.base.exp: Export Scrollbar::maxOverlapBetweenPages(). 3683 * editing/EditorCommand.cpp: 3684 (WebCore::verticalScrollDistance): Use Scrollbar methods instead of 3685 constants, and cap the scroll distance if needed. 3686 * platform/ScrollView.cpp: 3687 (WebCore::ScrollView::updateScrollbars): Ditto. 3688 (WebCore::ScrollView::wheelEvent): Ditto. 3689 * platform/Scrollbar.cpp: 3690 (WebCore::Scrollbar::maxOverlapBetweenPages): Added. Returns the 3691 value from the native scrollbar theme. 3692 * platform/Scrollbar.h: Replaced scroll amount constants with static methods. 3693 (WebCore::Scrollbar::pixelsPerLineStep): Replaces cScrollbarPixelsPerLineStep. 3694 (WebCore::Scrollbar::minFractionToStepWhenPaging): Replaces cFractionToStepWhenPaging. 3695 * platform/ScrollbarTheme.h: 3696 (WebCore::ScrollbarTheme::maxOverlapBetweenPages): A base implementation 3697 that returns the largest int. 3698 * platform/gtk/WheelEventGtk.cpp: 3699 (WebCore::PlatformWheelEvent::PlatformWheelEvent): Use Scrollbar methods instead of 3700 constants. 3701 * platform/haiku/PlatformWheelEventHaiku.cpp: 3702 (WebCore::PlatformWheelEvent::PlatformWheelEvent): Use Scrollbar methods instead of 3703 constants. 3704 * platform/mac/ScrollbarThemeMac.h: 3705 (WebCore::ScrollbarThemeMac::maxOverlapBetweenPages): An override 3706 that returns 40. 3707 * platform/mac/WheelEventMac.mm: 3708 (WebCore::PlatformWheelEvent::PlatformWheelEvent): Use 3709 Scrollbar::pixelsPerLineStep() instead of cScrollbarPixelsPerLineStep. 3710 * platform/wx/MouseWheelEventWx.cpp: 3711 (WebCore::PlatformWheelEvent::PlatformWheelEvent): Use Scrollbar methods instead of 3712 constants. 3713 * platform/wx/ScrollViewWx.cpp: 3714 (WebCore::ScrollView::ScrollViewPrivate::OnScrollWinEvents): Use Scrollbar 3715 methods instead of constants, and cap the scroll distance if needed. 3716 * rendering/RenderLayer.cpp: 3717 (WebCore::RenderLayer::updateScrollInfoAfterLayout): Ditto. 3718 3719 2010-02-04 No'am Rosenthal <noam.rosenthal (a] nokia.com> 3720 3721 Reviewed by Ariya Hidayat. 3722 3723 [Qt] Tuning and optimizations to GraphicsLayerQt. Reduce unnecessary 3724 recaching, remove QTimer::singleShot and QPixmap::scaled, more 3725 accurate strategy of handling transform operation blends. Rotating a 3726 bordered-table, for example, now runs at 50FPS instead of 40FPS on Maemo5. 3727 3728 https://bugs.webkit.org/show_bug.cgi?id=34062 3729 3730 This is tested by https://bugs.webkit.org/show_bug.cgi?id=34450, fps measurements. 3731 3732 * platform/graphics/qt/GraphicsLayerQt.cpp: 3733 (WebCore::GraphicsLayerQtImpl::flushChanges): Fine-tune caching 3734 (WebCore::TransformAnimationQt::TransformAnimationQt): transform bugs 3735 (WebCore::OpacityAnimationQt::updateState): style change 3736 3737 2010-02-04 Pavel Feldman <pfeldman (a] chromium.org> 3738 3739 Reviewed by Timothy Hatcher. 3740 3741 Web Inspector: Cookies for resources are not shown in storage panel. 3742 3743 https://bugs.webkit.org/show_bug.cgi?id=34594 3744 3745 * inspector/InspectorController.cpp: 3746 (WebCore::InspectorController::getCookies): 3747 * inspector/InspectorResource.cpp: 3748 (WebCore::InspectorResource::updateScriptObject): 3749 (WebCore::InspectorResource::cachedResource): 3750 * inspector/InspectorResource.h: 3751 (WebCore::InspectorResource::requestURL): 3752 3753 2010-02-04 Anton Muhin <antonm (a] chromium.org> 3754 3755 Reviewed by Adam Barth. 3756 3757 [v8] Remove clear method from DOM object maps 3758 https://bugs.webkit.org/show_bug.cgi?id=34530 3759 3760 No new tests. Should be covered by existent testing infrastructure. 3761 3762 * bindings/v8/DOMData.h: 3763 * bindings/v8/DOMDataStore.h: 3764 * bindings/v8/V8DOMMap.cpp: 3765 * bindings/v8/V8DOMMap.h: 3766 * bindings/v8/WorkerScriptController.cpp: 3767 (WebCore::WorkerScriptController::~WorkerScriptController): 3768 3769 2010-02-04 Holger Hans Peter Freyther <zecke (a] selfish.org> 3770 3771 Reviewed by Xan Lopez. 3772 3773 [Gtk] Check if the renderer() exists in textForObject. 3774 3775 This is fixing a crash in the textForObject method. It can 3776 happen when inspecting AtkObjects in the accerciser, then 3777 navigating to a new page and still inspecting the old tree. 3778 3779 In this case the AccessibilityObjectWrapperAtk was still 3780 valid but the included renderer() was returning 0. Add a 3781 check for the accObject->renderer() before trying to use 3782 the result. 3783 3784 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 3785 (textForObject): 3786 3787 2010-02-04 Yury Semikhatsky <yurys (a] chromium.org> 3788 3789 Reviewed by Pavel Feldman. 3790 3791 Provide strongly typed C++ interface for inspector's injected script. 3792 3793 https://bugs.webkit.org/show_bug.cgi?id=33616 3794 3795 * GNUmakefile.am: 3796 * WebCore.gypi: 3797 * WebCore.pro: 3798 * WebCore.vcproj/WebCore.vcproj: 3799 * WebCore.xcodeproj/project.pbxproj: 3800 * bindings/js/JSInjectedScriptHostCustom.cpp: 3801 (WebCore::InjectedScriptHost::injectedScriptFor): 3802 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: 3803 (WebCore::InjectedScriptHost::injectedScriptFor): 3804 * inspector/InjectedScript.cpp: Added. 3805 (WebCore::InjectedScript::InjectedScript): 3806 (WebCore::InjectedScript::dispatch): 3807 (WebCore::InjectedScript::callFrames): 3808 (WebCore::InjectedScript::wrapAndStringifyForConsole): 3809 (WebCore::InjectedScript::releaseWrapperObjectGroup): 3810 * inspector/InjectedScript.h: Added. 3811 (WebCore::InjectedScript::InjectedScript): 3812 (WebCore::InjectedScript::~InjectedScript): 3813 (WebCore::InjectedScript::hasNoValue): 3814 * inspector/InjectedScriptHost.cpp: 3815 (WebCore::InjectedScriptHost::injectedScriptForId): 3816 (WebCore::InjectedScriptHost::releaseWrapperObjectGroup): 3817 * inspector/InjectedScriptHost.h: 3818 * inspector/InspectorBackend.cpp: 3819 (WebCore::InspectorBackend::dispatchOnInjectedScript): 3820 * inspector/InspectorController.cpp: 3821 (WebCore::InspectorController::InspectorController): 3822 (WebCore::InspectorController::~InspectorController): 3823 (WebCore::InspectorController::inspectedPageDestroyed): 3824 (WebCore::InspectorController::windowScriptObjectAvailable): 3825 (WebCore::InspectorController::scriptObjectReady): 3826 (WebCore::InspectorController::setFrontendProxyObject): 3827 (WebCore::InspectorController::close): 3828 (WebCore::InspectorController::getProfile): 3829 (WebCore::InspectorController::enableDebugger): 3830 (WebCore::InspectorController::didPause): 3831 (WebCore::InspectorController::injectedScriptForNodeId): 3832 * inspector/InspectorController.h: 3833 (WebCore::InspectorController::frontendScriptState): 3834 * inspector/InspectorFrontend.cpp: 3835 (WebCore::InspectorFrontend::addConsoleMessage): 3836 * inspector/front-end/InjectedScript.js: 3837 (injectedScriptConstructor): 3838 3839 2010-02-04 Philippe Normand <pnormand (a] igalia.com> 3840 3841 Rubber stamped by Xan Lopez. 3842 3843 Missing include, build fix after landing of patch from the bug 34435. 3844 3845 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: 3846 3847 2010-02-02 Philippe Normand <pnormand (a] igalia.com> 3848 3849 Reviewed by Gustavo Noronha Silva. 3850 3851 [Gtk] libsoup critical warning in media player http cookies injection code 3852 https://bugs.webkit.org/show_bug.cgi?id=34435 3853 3854 Fixed the critical warning and refactored the 3855 User-Agent/Referer/cookies injection code, in that order. Previous 3856 order (cookies first) was wrong because if cookies injection could 3857 not be done neither the User-Agent nor Referer were injected. Also 3858 started a non-JSC-specific, gtk-specific GOwnPtr module. 3859 3860 * GNUmakefile.am: 3861 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: 3862 (WebCore::mediaPlayerPrivateSourceChangedCallback): 3863 * platform/gtk/GOwnPtrGtk.cpp: Added. 3864 (WTF::SoupURI): 3865 (WTF::GstElement): 3866 * platform/gtk/GOwnPtrGtk.h: Added. 3867 3868 2010-02-04 Mikhail Naganov <mnaganov (a] chromium.org> 3869 3870 Reviewed by Timothy Hatcher. 3871 3872 Put JSC-specific debugger & profiler code under "USE(JSC)" defines. 3873 The plan is to enable "JAVASCRIPT_DEBUGGER" in Chromium and then 3874 make this code engine-agnostic. 3875 3876 https://bugs.webkit.org/show_bug.cgi?id=34531 3877 3878 * inspector/InjectedScriptHost.cpp: 3879 * inspector/InjectedScriptHost.h: 3880 * inspector/InspectorBackend.cpp: 3881 * inspector/InspectorBackend.h: 3882 * inspector/InspectorController.cpp: 3883 (WebCore::InspectorController::InspectorController): 3884 (WebCore::InspectorController::setWindowVisible): 3885 (WebCore::InspectorController::scriptObjectReady): 3886 (WebCore::InspectorController::close): 3887 (WebCore::InspectorController::didCommitLoad): 3888 * inspector/InspectorController.h: 3889 * inspector/InspectorFrontend.cpp: 3890 * inspector/InspectorFrontend.h: 3891 * inspector/JavaScriptCallFrame.cpp: 3892 * inspector/JavaScriptCallFrame.h: 3893 * inspector/JavaScriptDebugListener.h: 3894 * inspector/JavaScriptDebugServer.cpp: 3895 * inspector/JavaScriptDebugServer.h: 3896 * inspector/JavaScriptProfile.cpp: 3897 * inspector/JavaScriptProfile.h: 3898 * inspector/JavaScriptProfileNode.cpp: 3899 * inspector/JavaScriptProfileNode.h: 3900 * loader/FrameLoader.cpp: 3901 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): 3902 * page/Page.cpp: 3903 (WebCore::Page::Page): 3904 3905 2010-02-03 Nicholas Young <nicholas.young (a] nokia.com> 3906 3907 Reviewed by Eric Carlson. 3908 3909 Defer formatting of times displayed on media controls to the current theme. 3910 https://bugs.webkit.org/show_bug.cgi?id=34405 3911 3912 No new tests needed. Refactoring Only. 3913 3914 * rendering/MediaControlElements.cpp: Removed formatTime() 3915 (WebCore::MediaControlTimeDisplayElement::setCurrentValue): No longer sets inner text 3916 * rendering/MediaControlElements.h: 3917 * rendering/RenderMedia.cpp: 3918 (WebCore::RenderMedia::updateTimeDisplay): Asks the theme to format the time display elements 3919 * rendering/RenderTheme.cpp: 3920 (WebCore::RenderTheme::formatMediaControlsTime): new virtual method 3921 (WebCore::RenderTheme::formatMediaControlsCurrentTime): new virtual method 3922 (WebCore::RenderTheme::formatMediaControlsRemainingTime): new virtual method 3923 * rendering/RenderTheme.h: 3924 3925 2010-02-03 Steve Falkenburg <sfalken (a] apple.com> 3926 3927 Windows Debug_All build fix. 3928 3929 * platform/graphics/win/WKCACFLayer.cpp: 3930 3931 2010-02-03 Brady Eidson <beidson (a] apple.com> 3932 3933 Reviewed by Alexey Proskuryakov. 3934 3935 REGRESSION (r51644): WebCore/manual-tests/linkjump-1.html fails 3936 <rdar://problem/7595694> and https://bugs.webkit.org/show_bug.cgi?id=34550 3937 3938 Tests: fast/loader/document-with-fragment-url-1.html 3939 fast/loader/document-with-fragment-url-2.html 3940 fast/loader/document-with-fragment-url-3.html 3941 fast/loader/document-with-fragment-url-4.html 3942 3943 * platform/KURL.cpp: 3944 (WebCore::KURL::init): When resolving new URL from an empty reference relative to an absolute URL, 3945 any fragment identifier from the absolute URL should be removed from the resulting resolution. 3946 3947 2010-02-03 Kwang Yul Seo <skyul (a] company100.net> 3948 3949 Reviewed by Eric Seidel. 3950 3951 [BREWMP] Port TextBreakIteratorInternalICU 3952 https://bugs.webkit.org/show_bug.cgi?id=34515 3953 3954 Port TextBreakIteratorInternalICU. 3955 3956 * platform/text/brew/TextBreakIteratorInternalICUBrew.cpp: Added. 3957 (WebCore::currentSearchLocaleID): 3958 (WebCore::currentTextBreakLocaleID): 3959 3960 2010-02-03 Adele Peterson <adele (a] apple.com> 3961 3962 Reviewed by Simon Fraser. 3963 3964 Fix for <rdar://problem/7594212> 3965 https://bugs.webkit.org/show_bug.cgi?id=34549 - CSS counters crash at http://www.w3.org/TR/css3-content/ 3966 CrashTracer: [USER] 20 crashes in Safari at com.apple.WebCore: WebCore::CounterNode::insertAfter + 319 3967 3968 Test: fast/css/counters/counter-before-selector-crash.html 3969 3970 * rendering/RenderCounter.cpp: (WebCore::updateCounters): nil check. 3971 3972 2010-02-03 Adele Peterson <adele (a] apple.com> 3973 3974 Reviewed by Brady Eidson. 3975 3976 Initialize the variable in the last checkin to false. I didn't realize DRT relies on this being false. 3977 So ports that want visited link tracking need to set that flag. 3978 3979 * page/PageGroup.cpp: 3980 3981 2010-02-03 Adele Peterson <adele (a] apple.com> 3982 3983 Reviewed by Brady Eidson. 3984 3985 Fix for https://bugs.webkit.org/show_bug.cgi?id=34547 3986 static shouldTrackVisitedLinks is not initialized 3987 3988 For ports that don't call into WebKit to initialize this, 3989 we should initialize to true so they get the visited link behavior by default. 3990 3991 * page/PageGroup.cpp: 3992 3993 2010-02-03 Dan Bernstein <mitz (a] apple.com> 3994 3995 Reviewed by Simon Fraser. 3996 3997 <rdar://problem/7577604> Drag and Drop: background elements are bleeding through 3998 https://bugs.webkit.org/show_bug.cgi?id=34546 3999 4000 * manual-tests/drag-image-table-part-decorations.html: Added. 4001 * rendering/RenderFieldset.cpp: 4002 (WebCore::RenderFieldset::paintBoxDecorations): Bail out if this object shouldnt 4003 paint within the current painting root. 4004 * rendering/RenderTable.cpp: 4005 (WebCore::RenderTable::paintBoxDecorations): Ditto. 4006 * rendering/RenderTableCell.cpp: 4007 (WebCore::RenderTableCell::paintBackgroundsBehindCell): Ditto. 4008 (WebCore::RenderTableCell::paintBoxDecorations): Ditto. 4009 4010 2010-02-03 Nate Chapin <japhet (a] chromium.org> 4011 4012 Unreviewed, Chromium mac build fix. 4013 4014 [V8] Remove unused V8Proxy* variable from generated wrapping code. 4015 4016 * bindings/scripts/CodeGeneratorV8.pm: 4017 4018 2010-02-03 Nate Chapin <japhet (a] chromium.org> 4019 4020 Reviewed by Dimitri Glazkov. 4021 4022 [V8] Use toV8() to wrap in the custom bindings, and remove 4023 the old wrapping code from V8DOMWrapper. 4024 4025 https://bugs.webkit.org/show_bug.cgi?id=32563 4026 4027 * bindings/scripts/CodeGeneratorV8.pm: 4028 * bindings/v8/ScriptController.cpp: 4029 * bindings/v8/ScriptObject.cpp: 4030 * bindings/v8/V8AbstractEventListener.cpp: 4031 * bindings/v8/V8Collection.h: 4032 * bindings/v8/V8DOMWindowShell.cpp: 4033 * bindings/v8/V8DOMWrapper.cpp: 4034 * bindings/v8/V8DOMWrapper.h: 4035 * bindings/v8/V8NodeFilterCondition.cpp: 4036 * bindings/v8/V8Proxy.cpp: 4037 * bindings/v8/WorkerContextExecutionProxy.h 4038 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: 4039 * bindings/v8/custom/V8CustomPositionCallback.cpp: 4040 * bindings/v8/custom/V8CustomPositionErrorCallback.cpp: 4041 * bindings/v8/custom/V8CustomSQLStatementCallback.cpp: 4042 * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp: 4043 * bindings/v8/custom/V8CustomSQLTransactionCallback.cpp: 4044 * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.cpp: 4045 * bindings/v8/custom/V8DOMWindowCustom.cpp: 4046 * bindings/v8/custom/V8DataGridColumnListCustom.cpp: 4047 * bindings/v8/custom/V8DocumentCustom.cpp: 4048 * bindings/v8/custom/V8DocumentLocationCustom.cpp: 4049 * bindings/v8/custom/V8ElementCustom.cpp: 4050 * bindings/v8/custom/V8EventCustom.cpp: 4051 * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp: 4052 * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp: 4053 * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp: 4054 * bindings/v8/custom/V8HTMLCollectionCustom.cpp: 4055 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: 4056 * bindings/v8/custom/V8HTMLFormElementCustom.cpp: 4057 * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp: 4058 * bindings/v8/custom/V8HTMLImageElementConstructor.cpp: 4059 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp: 4060 * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: 4061 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: 4062 * bindings/v8/custom/V8MessageChannelConstructor.cpp: 4063 * bindings/v8/custom/V8MessageEventCustom.cpp: 4064 * bindings/v8/custom/V8NamedNodeMapCustom.cpp: 4065 * bindings/v8/custom/V8NodeIteratorCustom.cpp: 4066 * bindings/v8/custom/V8NodeListCustom.cpp: 4067 * bindings/v8/custom/V8NotificationCenterCustom.cpp: 4068 * bindings/v8/custom/V8SVGMatrixCustom.cpp: 4069 * bindings/v8/custom/V8StyleSheetListCustom.cpp: 4070 * bindings/v8/custom/V8TreeWalkerCustom.cpp: 4071 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: 4072 * bindings/v8/custom/V8XSLTProcessorCustom.cpp: 4073 4074 2010-02-03 Sam Weinig <sam (a] webkit.org> 4075 4076 Reviewed by Anders Carlsson. 4077 4078 Fix drawing buttons in viewless WebKit. 4079 4080 * platform/mac/ThemeMac.mm: 4081 (WebCore::paintButton): If there is no view, make sure to flip the 4082 context so that the button is drawn correctly. 4083 4084 2010-02-03 Yael Aharon <yael.aharon (a] nokia.com> 4085 4086 Reviewed by Kenneth Rohde Christiansen. 4087 4088 [Qt] WebSockets : Buffer the data in WebKit instead of QtNetwork 4089 https://bugs.webkit.org/show_bug.cgi?id=34425 4090 4091 Reverting r54279, it was a misunderstanding. 4092 4093 * platform/network/qt/SocketStreamHandlePrivate.h: 4094 * platform/network/qt/SocketStreamHandleQt.cpp: 4095 (WebCore::SocketStreamHandlePrivate::SocketStreamHandlePrivate): 4096 (WebCore::SocketStreamHandlePrivate::send): 4097 (WebCore::SocketStreamHandlePrivate::close): 4098 4099 2010-02-03 Drew Wilson <atwilson (a] chromium.org> 4100 4101 Reviewed by Alexey Proskuryakov. 4102 4103 SharedWorkerScriptLoader should not be an ActiveDOMObject 4104 https://bugs.webkit.org/show_bug.cgi?id=34513 4105 4106 Test: Existing tests suffice (fixes test downstream in Chrome). 4107 4108 * workers/DefaultSharedWorkerRepository.cpp: 4109 (WebCore::SharedWorkerScriptLoader::SharedWorkerScriptLoader): 4110 Changed to no longer derive from ActiveDOMObject (handles its own refcounting). 4111 (WebCore::SharedWorkerScriptLoader::load): 4112 Now increments own refcount when a load is pending. 4113 (WebCore::SharedWorkerScriptLoader::notifyFinished): 4114 Changed to decrement refcount when load is complete. 4115 * workers/WorkerScriptLoaderClient.h: 4116 Documentation change about reliability of notifyFinished() when used from worker context. 4117 4118 2010-02-03 Pavel Feldman <pfeldman (a] chromium.org> 4119 4120 Reviewed by Timothy Hatcher. 4121 4122 Web Inspector: Inspector renders blank scripts on reloading the webpage. 4123 4124 https://bugs.webkit.org/show_bug.cgi?id=34537 4125 4126 * inspector/front-end/ResourcesPanel.js: 4127 (WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded): 4128 4129 2010-02-03 Yury Semikhatsky <yurys (a] chromium.org> 4130 4131 Reviewed by Pavel Feldman. 4132 4133 Provide strongly typed C++ interface for inspector's injected script. 4134 4135 https://bugs.webkit.org/show_bug.cgi?id=33616 4136 4137 * WebCore.gypi: 4138 * WebCore.pro: 4139 * WebCore.vcproj/WebCore.vcproj: 4140 * WebCore.xcodeproj/project.pbxproj: 4141 * bindings/js/JSInjectedScriptHostCustom.cpp: 4142 (WebCore::InjectedScriptHost::injectedScriptFor): 4143 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: 4144 (WebCore::InjectedScriptHost::injectedScriptFor): 4145 * inspector/InjectedScript.cpp: Added. 4146 (WebCore::InjectedScript::InjectedScript): 4147 (WebCore::InjectedScript::dispatch): 4148 (WebCore::InjectedScript::callFrames): 4149 (WebCore::InjectedScript::wrapAndStringify): 4150 (WebCore::InjectedScript::releaseWrapperObjectGroup): 4151 * inspector/InjectedScript.h: Added. 4152 (WebCore::InjectedScript::InjectedScript): 4153 (WebCore::InjectedScript::~InjectedScript): 4154 (WebCore::InjectedScript::hasNoValue): 4155 * inspector/InjectedScriptHost.cpp: 4156 (WebCore::InjectedScriptHost::injectedScriptForId): 4157 (WebCore::InjectedScriptHost::releaseWrapperObjectGroup): 4158 * inspector/InjectedScriptHost.h: 4159 * inspector/InspectorBackend.cpp: 4160 (WebCore::InspectorBackend::dispatchOnInjectedScript): 4161 * inspector/InspectorController.cpp: 4162 (WebCore::InspectorController::InspectorController): 4163 (WebCore::InspectorController::~InspectorController): 4164 (WebCore::InspectorController::inspectedPageDestroyed): 4165 (WebCore::InspectorController::windowScriptObjectAvailable): 4166 (WebCore::InspectorController::scriptObjectReady): 4167 (WebCore::InspectorController::setFrontendProxyObject): 4168 (WebCore::InspectorController::close): 4169 (WebCore::InspectorController::getProfile): 4170 (WebCore::InspectorController::enableDebugger): 4171 (WebCore::InspectorController::didPause): 4172 (WebCore::InspectorController::injectedScriptForNodeId): 4173 * inspector/InspectorController.h: 4174 (WebCore::InspectorController::frontendScriptState): 4175 * inspector/InspectorFrontend.cpp: 4176 (WebCore::InspectorFrontend::addConsoleMessage): 4177 4178 2010-02-03 Andras Becsi <abecsi (a] webkit.org> 4179 4180 Unreviewed build fix. 4181 4182 [Qt] Roll-out r54281 because it broke the build on the Qt Release bot. 4183 4184 * platform/graphics/qt/GraphicsLayerQt.cpp: 4185 (WebCore::GraphicsLayerQtImpl::State::State): 4186 (WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl): 4187 (WebCore::GraphicsLayerQtImpl::setBaseTransform): 4188 (WebCore::GraphicsLayerQtImpl::drawContents): 4189 (WebCore::GraphicsLayerQtImpl::notifyChange): 4190 (WebCore::GraphicsLayerQtImpl::flushChanges): 4191 (WebCore::GraphicsLayerQt::setNeedsDisplayInRect): 4192 (WebCore::applyTimingFunction): 4193 (WebCore::webkitAnimationToQtAnimationValue): 4194 (WebCore::AnimationQtBase::updateState): 4195 (WebCore::AnimationQt::updateCurrentTime): 4196 (WebCore::TransformAnimationQt::TransformAnimationQt): 4197 (WebCore::TransformAnimationQt::~TransformAnimationQt): 4198 (WebCore::TransformAnimationQt::applyFrame): 4199 (WebCore::TransformAnimationQt::updateState): 4200 (WebCore::OpacityAnimationQt::updateState): 4201 (WebCore::GraphicsLayerQt::pauseAnimation): 4202 4203 2010-02-02 Bryan Yeung <bryeung (a] google.com> 4204 4205 Reviewed by Darin Adler. 4206 4207 Avoid using an invalidated KURL object in baseURI. 4208 4209 https://bugs.webkit.org/show_bug.cgi?id=34492 4210 4211 This change fixes baseURI for Chromium (where the KURL implementation 4212 does not allow invalid KURLs to carry relative paths). This is 4213 regression tested by 4214 LayoutTests/svg/W3C-SVG-1.1/struct-image-07-t.svg 4215 4216 This is a re-application of this patch since it was mistakenly identified as 4217 the cause of a big chromium test regression and rolled out in r54264. 4218 4219 * dom/Element.cpp: 4220 (WebCore::Element::baseURI): 4221 4222 2010-02-02 Joel Stanley <joel (a] jms.id.au> 4223 4224 Reviewed by David Levin. 4225 4226 [Chromium] Make setCaretBlinkInterval static. 4227 https://bugs.webkit.org/show_bug.cgi?id=31704 4228 4229 This is so it can be called from the newly exposed Chromium API setter 4230 method. 4231 4232 * rendering/RenderThemeChromiumLinux.cpp: 4233 * rendering/RenderThemeChromiumLinux.h: 4234 4235 2010-02-02 Yael Aharon <yael.aharon (a] nokia.com> 4236 4237 Reviewed by Kenneth Rohde Christiansen. 4238 4239 [Qt] WebSockets : Buffer the data in WebKit instead of QtNetwork 4240 https://bugs.webkit.org/show_bug.cgi?id=34425 4241 4242 Buffer the sent data in SocketStreamHandlePrivate instead of relying on 4243 the network layer to do it. This is more robust and more consistent with how 4244 Qt's HTTP stack works. 4245 Close the socket in SocketStreamHandlePrivate::close() regardless of its state. 4246 4247 No new tests, since no new functionality is introduced. 4248 4249 * platform/network/qt/SocketStreamHandlePrivate.h: 4250 * platform/network/qt/SocketStreamHandleQt.cpp: 4251 (WebCore::SocketStreamHandlePrivate::SocketStreamHandlePrivate): 4252 (WebCore::SocketStreamHandlePrivate::send): 4253 (WebCore::SocketStreamHandlePrivate::close): 4254 (WebCore::SocketStreamHandlePrivate::socketBytesWritten): 4255 4256 2010-02-03 Shinichiro Hamaji <hamaji (a] chromium.org> 4257 4258 Unreviewed revert of r54259 as it seems to break chromium's unit tests. 4259 The tests pass with r54257 but fail with r54260. 4260 As r54258 and r54260 don't touch code, I'm reverting this change. 4261 4262 [V8] Generate toV8 conversion helpers, a la JSC bindings. 4263 https://bugs.webkit.org/show_bug.cgi?id=32563 4264 4265 * bindings/v8/ScriptController.cpp: 4266 (WebCore::ScriptController::processingUserGesture): 4267 (WebCore::createScriptObject): 4268 (WebCore::ScriptController::createScriptObjectForPluginElement): 4269 * bindings/v8/ScriptObject.cpp: 4270 (WebCore::ScriptGlobalObject::set): 4271 * bindings/v8/V8AbstractEventListener.cpp: 4272 (WebCore::V8AbstractEventListener::handleEvent): 4273 * bindings/v8/V8Collection.h: 4274 (WebCore::getV8Object): 4275 (WebCore::toNativeCollection): 4276 (WebCore::getNamedPropertyOfCollection): 4277 (WebCore::collectionNamedPropertyGetter): 4278 (WebCore::getIndexedPropertyOfCollection): 4279 (WebCore::collectionIndexedPropertyGetter): 4280 (WebCore::nodeCollectionIndexedPropertyEnumerator): 4281 (WebCore::collectionIndexedPropertyEnumerator): 4282 (WebCore::collectionStringOrNullIndexedPropertyGetter): 4283 (WebCore::collectionStringIndexedPropertyGetter): 4284 (WebCore::setCollectionIndexedGetter): 4285 (WebCore::setCollectionNamedGetter): 4286 (WebCore::setCollectionStringOrNullIndexedGetter): 4287 (WebCore::setCollectionStringIndexedGetter): 4288 * bindings/v8/V8DOMWindowShell.cpp: 4289 (WebCore::V8DOMWindowShell::updateDocumentWrapperCache): 4290 * bindings/v8/V8DOMWrapper.cpp: 4291 (WebCore::downcastSVGPathSeg): 4292 (WebCore::V8DOMWrapper::convertSVGElementInstanceToV8Object): 4293 (WebCore::V8DOMWrapper::convertSVGObjectWithContextToV8Object): 4294 (WebCore::V8DOMWrapper::convertToV8Object): 4295 (WebCore::V8DOMWrapper::instantiateV8Object): 4296 (WebCore::V8DOMWrapper::isDOMEventWrapper): 4297 (WebCore::V8DOMWrapper::htmlElementType): 4298 (WebCore::V8DOMWrapper::svgElementType): 4299 (WebCore::V8DOMWrapper::convertEventToV8Object): 4300 (WebCore::): 4301 (WebCore::V8DOMWrapper::convertDocumentToV8Object): 4302 (WebCore::V8DOMWrapper::convertNodeToV8Object): 4303 (WebCore::V8DOMWrapper::convertNewNodeToV8Object): 4304 (WebCore::V8DOMWrapper::convertEventListenerToV8Object): 4305 (WebCore::V8DOMWrapper::convertDOMImplementationToV8Object): 4306 (WebCore::V8DOMWrapper::convertStyleSheetToV8Object): 4307 (WebCore::V8DOMWrapper::convertCSSValueToV8Object): 4308 (WebCore::V8DOMWrapper::convertCSSRuleToV8Object): 4309 (WebCore::V8DOMWrapper::convertWindowToV8Object): 4310 (WebCore::V8DOMWrapper::convertNamedNodeMapToV8Object): 4311 * bindings/v8/V8DOMWrapper.h: 4312 (WebCore::V8DOMWrapper::convertToV8Object): 4313 (WebCore::V8DOMWrapper::convertNodeToV8Object): 4314 (WebCore::V8DOMWrapper::convertNewNodeToV8Object): 4315 (WebCore::V8DOMWrapper::convertEventToV8Object): 4316 (WebCore::V8DOMWrapper::convertEventListenerToV8Object): 4317 (WebCore::V8DOMWrapper::instantiateV8Object): 4318 * bindings/v8/V8NodeFilterCondition.cpp: 4319 (WebCore::V8NodeFilterCondition::acceptNode): 4320 * bindings/v8/V8Proxy.cpp: 4321 (WebCore::V8Proxy::setDOMException): 4322 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: 4323 (WebCore::toV8Object): 4324 (WebCore::V8CanvasRenderingContext2D::createPatternCallback): 4325 * bindings/v8/custom/V8CustomPositionCallback.cpp: 4326 (WebCore::V8CustomPositionCallback::handleEvent): 4327 * bindings/v8/custom/V8CustomPositionErrorCallback.cpp: 4328 (WebCore::V8CustomPositionErrorCallback::handleEvent): 4329 * bindings/v8/custom/V8CustomSQLStatementCallback.cpp: 4330 (WebCore::V8CustomSQLStatementCallback::handleEvent): 4331 * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp: 4332 (WebCore::V8CustomSQLStatementErrorCallback::handleEvent): 4333 * bindings/v8/custom/V8CustomSQLTransactionCallback.cpp: 4334 (WebCore::V8CustomSQLTransactionCallback::handleEvent): 4335 * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.cpp: 4336 (WebCore::V8CustomSQLTransactionErrorCallback::handleEvent): 4337 * bindings/v8/custom/V8DOMWindowCustom.cpp: 4338 (WebCore::V8DOMWindow::openCallback): 4339 (WebCore::V8DOMWindow::indexedPropertyGetter): 4340 (WebCore::V8DOMWindow::namedPropertyGetter): 4341 * bindings/v8/custom/V8DataGridColumnListCustom.cpp: 4342 (WebCore::NAMED_PROPERTY_GETTER): 4343 * bindings/v8/custom/V8DocumentCustom.cpp: 4344 (WebCore::V8Document::evaluateCallback): 4345 (WebCore::V8Document::getCSSCanvasContextCallback): 4346 (WebCore::V8Document::implementationAccessorGetter): 4347 * bindings/v8/custom/V8DocumentLocationCustom.cpp: 4348 (WebCore::V8Document::locationAccessorGetter): 4349 * bindings/v8/custom/V8ElementCustom.cpp: 4350 (WebCore::V8Element::setAttributeNodeCallback): 4351 (WebCore::V8Element::setAttributeNodeNSCallback): 4352 * bindings/v8/custom/V8EventCustom.cpp: 4353 (WebCore::V8Event::dataTransferAccessorGetter): 4354 (WebCore::V8Event::clipboardDataAccessorGetter): 4355 * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp: 4356 (WebCore::getNamedItems): 4357 (WebCore::getItem): 4358 (WebCore::V8HTMLAllCollection::callAsFunctionCallback): 4359 * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp: 4360 (WebCore::V8Custom::v8HTMLAudioElementConstructorCallback): 4361 * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp: 4362 (WebCore::V8HTMLCanvasElement::getContextCallback): 4363 * bindings/v8/custom/V8HTMLCollectionCustom.cpp: 4364 (WebCore::getNamedItems): 4365 (WebCore::getItem): 4366 (WebCore::V8HTMLCollection::callAsFunctionCallback): 4367 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: 4368 (WebCore::V8HTMLDocument::namedPropertyGetter): 4369 (WebCore::V8HTMLDocument::allAccessorGetter): 4370 * bindings/v8/custom/V8HTMLFormElementCustom.cpp: 4371 (WebCore::V8HTMLFormElement::indexedPropertyGetter): 4372 (WebCore::V8HTMLFormElement::namedPropertyGetter): 4373 * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp: 4374 (WebCore::V8HTMLFrameSetElement::namedPropertyGetter): 4375 * bindings/v8/custom/V8HTMLImageElementConstructor.cpp: 4376 (WebCore::V8Custom::v8HTMLImageElementConstructorCallback): 4377 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp: 4378 (WebCore::V8HTMLOptionsCollection::indexedPropertyGetter): 4379 * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: 4380 (WebCore::V8HTMLSelectElement::namedPropertyGetter): 4381 (WebCore::V8HTMLSelectElement::indexedPropertyGetter): 4382 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: 4383 (WebCore::createInjectedScript): 4384 (WebCore::V8InjectedScriptHost::nodeForIdCallback): 4385 (WebCore::V8InjectedScriptHost::databaseForIdCallback): 4386 * bindings/v8/custom/V8MessageChannelConstructor.cpp: 4387 (WebCore::V8MessageChannel::constructorCallback): 4388 * bindings/v8/custom/V8MessageEventCustom.cpp: 4389 (WebCore::V8MessageEvent::portsAccessorGetter): 4390 * bindings/v8/custom/V8NamedNodeMapCustom.cpp: 4391 (WebCore::V8NamedNodeMap::indexedPropertyGetter): 4392 (WebCore::V8NamedNodeMap::namedPropertyGetter): 4393 * bindings/v8/custom/V8NodeIteratorCustom.cpp: 4394 (WebCore::toV8): 4395 * bindings/v8/custom/V8NodeListCustom.cpp: 4396 (WebCore::V8NodeList::namedPropertyGetter): 4397 (WebCore::V8NodeList::callAsFunctionCallback): 4398 * bindings/v8/custom/V8NotificationCenterCustom.cpp: 4399 (WebCore::V8NotificationCenter::createHTMLNotificationCallback): 4400 (WebCore::V8NotificationCenter::createNotificationCallback): 4401 * bindings/v8/custom/V8SVGMatrixCustom.cpp: 4402 (WebCore::V8SVGMatrix::multiplyCallback): 4403 (WebCore::V8SVGMatrix::inverseCallback): 4404 (WebCore::V8SVGMatrix::rotateFromVectorCallback): 4405 * bindings/v8/custom/V8StyleSheetListCustom.cpp: 4406 (WebCore::V8StyleSheetList::namedPropertyGetter): 4407 * bindings/v8/custom/V8TreeWalkerCustom.cpp: 4408 (WebCore::toV8Object): 4409 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: 4410 (WebCore::toV8Object): 4411 * bindings/v8/custom/V8XSLTProcessorCustom.cpp: 4412 (WebCore::V8XSLTProcessor::transformToFragmentCallback): 4413 (WebCore::V8XSLTProcessor::transformToDocumentCallback): 4414 4415 2010-02-03 Mikhail Naganov <mnaganov (a] chromium.org> 4416 4417 Reviewed by Pavel Feldman. 4418 4419 Start unforking debugger and profiler code. 4420 4421 Remove custom implementation of Console. 4422 Add 'ScriptProfiler' and 'ScriptProfile' types. 4423 Start migration to engine-neutral types in InspectorController. 4424 4425 https://bugs.webkit.org/show_bug.cgi?id=34481 4426 4427 * GNUmakefile.am: 4428 * WebCore.gypi: 4429 * WebCore.pro: 4430 * WebCore.xcodeproj/project.pbxproj: 4431 * bindings/js/JSBindingsAllInOne.cpp: 4432 * bindings/js/JSConsoleCustom.cpp: 4433 * bindings/js/ScriptProfile.h: Added. 4434 * bindings/js/ScriptProfiler.cpp: Added. 4435 (WebCore::ScriptProfiler::start): 4436 (WebCore::ScriptProfiler::stop): 4437 * bindings/js/ScriptProfiler.h: Added. 4438 * bindings/scripts/CodeGeneratorV8.pm: 4439 * bindings/v8/ScriptProfile.h: Added. 4440 (WebCore::ScriptProfile::create): 4441 (WebCore::ScriptProfile::~ScriptProfile): 4442 (WebCore::ScriptProfile::title): 4443 (WebCore::ScriptProfile::uid): 4444 (WebCore::ScriptProfile::ScriptProfile): 4445 * bindings/v8/ScriptProfiler.cpp: Added. 4446 (WebCore::ScriptProfiler::start): 4447 (WebCore::ScriptProfiler::stop): 4448 * bindings/v8/ScriptProfiler.h: Added. 4449 * bindings/v8/custom/V8ConsoleCustom.cpp: Removed. 4450 * inspector/InspectorController.cpp: 4451 (WebCore::InspectorController::endGroup): 4452 (WebCore::InspectorController::show): 4453 (WebCore::InspectorController::setDOMStorageItem): 4454 (WebCore::InspectorController::addProfile): 4455 (WebCore::InspectorController::addProfileFinishedMessageToConsole): 4456 (WebCore::InspectorController::addStartProfilingMessageToConsole): 4457 (WebCore::InspectorController::createProfileHeader): 4458 (WebCore::InspectorController::getCurrentUserInitiatedProfileName): 4459 (WebCore::InspectorController::startUserInitiatedProfiling): 4460 (WebCore::InspectorController::stopUserInitiatedProfiling): 4461 (WebCore::InspectorController::enableDebugger): 4462 (WebCore::InspectorController::specialPanelForJSName): 4463 * inspector/InspectorController.h: 4464 (WebCore::InspectorController::searchingForNodeInPage): 4465 * page/Console.cpp: 4466 (WebCore::Console::profile): 4467 (WebCore::Console::profileEnd): 4468 * page/Console.h: 4469 (WebCore::): 4470 (WebCore::Console::create): 4471 (WebCore::Console::profiles): 4472 * page/Console.idl: 4473 4474 2010-02-02 Kent Tamura <tkent (a] chromium.org> 4475 4476 Reviewed by Darin Adler. 4477 4478 Fix a bug that changes for some constraint attributes doesn't 4479 update validation CSS selectors. 4480 https://bugs.webkit.org/show_bug.cgi?id=31716 4481 4482 - Rename HTMLFormControlElement::updateValidity() to setNeedsValidityCheck() 4483 - Introduce HTMLFormControlElement::setNeedsWillValidate() 4484 - Introduce HTMLFormControlElement::m_hasName to make willValidate() 4485 work in parseMappedAttribute(). 4486 - We need to call setNeedsValidityCheck() when HTMLInputElement::step or 4487 HTMLTextAreaElement::maxLength is changed. 4488 4489 * html/HTMLFormControlElement.cpp: 4490 (WebCore::HTMLFormControlElement::HTMLFormControlElement): 4491 (WebCore::HTMLFormControlElement::parseMappedAttribute): 4492 (WebCore::HTMLFormControlElement::insertedIntoTree): 4493 (WebCore::HTMLFormControlElement::removedFromTree): 4494 (WebCore::HTMLFormControlElement::formDestroyed): 4495 (WebCore::HTMLFormControlElement::willValidate): Avoids function calls. 4496 (WebCore::HTMLFormControlElement::setNeedsWillValidateCheck): 4497 (WebCore::HTMLFormControlElement::setNeedsValidityCheck): 4498 * html/HTMLFormControlElement.h: 4499 (WebCore::HTMLFormControlElement::disabled): Move the code from .cpp. 4500 * html/HTMLInputElement.cpp: 4501 (WebCore::HTMLInputElement::setInputType): 4502 (WebCore::HTMLInputElement::parseMappedAttribute): 4503 (WebCore::HTMLInputElement::setValue): 4504 (WebCore::HTMLInputElement::setValueFromRenderer): 4505 (WebCore::HTMLInputElement::setFileListFromRenderer): 4506 * html/HTMLTextAreaElement.cpp: 4507 (WebCore::HTMLTextAreaElement::parseMappedAttribute): 4508 (WebCore::HTMLTextAreaElement::setValue): 4509 * rendering/RenderTextControlMultiLine.cpp: 4510 (WebCore::RenderTextControlMultiLine::subtreeHasChanged): 4511 4512 2010-02-02 Roland Steiner <rolandsteiner (a] chromium.org> 4513 4514 Reviewed by Adele Peterson. 4515 4516 Bug 34198 - Ruby text should not inherit line-height 4517 (https://bugs.webkit.org/show_bug.cgi?id=34198) 4518 4519 Resetting line-height to 'normal' in the default UA style sheet. 4520 Adding layout-test to check for this. 4521 4522 Test: fast/ruby/ruby-line-height.html 4523 4524 * css/html.css: 4525 4526 2010-02-02 James Robinson <jamesr (a] chromium.org> 4527 4528 Reviewed by Dmitry Titov. 4529 4530 Add a null check for image, which might be NULL if tileSize is empty 4531 https://bugs.webkit.org/show_bug.cgi?id=34510 4532 4533 Test: fast/gradients/crash-on-1px-border.html 4534 4535 * rendering/RenderBoxModelObject.cpp: 4536 (WebCore::RenderBoxModelScaleObserver::shouldPaintBackgroundAtLowQuality): 4537 4538 2010-02-02 Kent Tamura <tkent (a] chromium.org> 4539 4540 Reviewed by Darin Adler. 4541 4542 rangeOverflow/rangeUnderflow support for type=datetime, datetime-local, 4543 month, time and week 4544 https://bugs.webkit.org/show_bug.cgi?id=34483 4545 4546 Tests: fast/forms/ValidityState-rangeOverflow.html 4547 fast/forms/ValidityState-rangeUnderflow.html 4548 4549 * html/HTMLInputElement.cpp: 4550 Defines the hard limits for the types as double values. 4551 (WebCore::HTMLInputElement::rangeUnderflow): Supports the types. 4552 (WebCore::HTMLInputElement::rangeOverflow): Supports the types. 4553 (WebCore::HTMLInputElement::minimum): Supports the types. 4554 (WebCore::HTMLInputElement::maximum): Supports the types. 4555 4556 2010-02-02 Fumitoshi Ukai <ukai (a] chromium.org> 4557 4558 Reviewed by Alexey Proskuryakov. 4559 4560 WebSocket set pending activity to avoid unexpected GC. 4561 https://bugs.webkit.org/show_bug.cgi?id=34014 4562 4563 Test: websocket/tests/websocket-pending-activity.html 4564 4565 * websockets/WebSocket.cpp: 4566 (WebCore::WebSocket::connect): set pending activity until it receives didClose. 4567 (WebCore::WebSocket::contextDestroyed): check socket is already closed. 4568 (WebCore::WebSocket::stop): close the connection and unset pending activity when it stops. 4569 (WebCore::WebSocket::didClose): unset pending activity. 4570 * websockets/WebSocket.h: 4571 * websockets/WebSocketChannel.cpp: 4572 (WebCore::WebSocketChannel::didReceiveData): protect this while it processes received data. 4573 4574 2010-02-02 Gustavo Noronha Silva <gns (a] gnome.org> 4575 4576 No review, rolling out r54261. 4577 http://trac.webkit.org/changeset/54261 4578 https://bugs.webkit.org/show_bug.cgi?id=34435 4579 4580 Causes crashes on release builds 4581 4582 * GNUmakefile.am: 4583 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: 4584 (WebCore::mediaPlayerPrivateSourceChangedCallback): 4585 * platform/gtk/GOwnPtrGtk.cpp: Removed. 4586 * platform/gtk/GOwnPtrGtk.h: Removed. 4587 4588 2010-02-02 David Levin <levin (a] chromium.org> 4589 4590 No review, rolling out r54245. 4591 http://trac.webkit.org/changeset/54245 4592 https://bugs.webkit.org/show_bug.cgi?id=34492 4593 4594 This patch seems to have broken thousands of chromium tests on 4595 Windows (and since it was for chromium, I'm rolling it out). 4596 4597 * dom/Element.cpp: 4598 (WebCore::Element::baseURI): 4599 4600 2010-02-02 Steve Falkenburg <sfalken (a] apple.com> 4601 4602 Reviewed by Darin Adler. 4603 4604 Copyright year updating for Windows version resources should be automatic 4605 https://bugs.webkit.org/show_bug.cgi?id=34503 4606 4607 * WebCore.vcproj/QTMovieWin.rc: 4608 4609 2010-02-02 Dimitri Glazkov <dglazkov (a] chromium.org> 4610 4611 No review, rolling out r54257. 4612 http://trac.webkit.org/changeset/54257 4613 https://bugs.webkit.org/show_bug.cgi?id=34491 4614 4615 [Chromium] broke thousands of Win tests and a few of Linux tests. 4616 4617 * platform/graphics/skia/GraphicsContextSkia.cpp: 4618 (WebCore::GraphicsContext::beginTransparencyLayer): 4619 * platform/graphics/skia/PlatformContextSkia.cpp: 4620 (PlatformContextSkia::applyAntiAliasedClipPaths): 4621 * platform/graphics/skia/PlatformContextSkia.h: 4622 4623 2010-02-02 Philippe Normand <pnormand (a] igalia.com> 4624 4625 Reviewed by Gustavo Noronha Silva. 4626 4627 [Gtk] libsoup critical warning in media player http cookies injection code 4628 https://bugs.webkit.org/show_bug.cgi?id=34435 4629 4630 Fixed the critical warning and refactored the 4631 User-Agent/Referer/cookies injection code, in that order. Previous 4632 order (cookies first) was wrong because if cookies injection could 4633 not be done neither the User-Agent not Referer were injected. Also 4634 started a non-JSC-specific, gtk-specific GOwnPtr module. 4635 4636 * GNUmakefile.am: 4637 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: 4638 (WebCore::mediaPlayerPrivateSourceChangedCallback): 4639 * platform/gtk/GOwnPtrGtk.cpp: Added. 4640 (WTF::SoupURI): 4641 (WTF::GstElement): 4642 * platform/gtk/GOwnPtrGtk.h: Added. 4643 4644 2010-02-02 Nate Chapin <japhet (a] chromium.org> 4645 4646 Reviewed by Dimitri Glazkov. 4647 4648 [V8] Use toV8() to wrap in the custom bindings, and remove 4649 the old wrapping code from V8DOMWrapper. 4650 4651 https://bugs.webkit.org/show_bug.cgi?id=32563 4652 4653 * bindings/v8/ScriptController.cpp: 4654 * bindings/v8/ScriptObject.cpp: 4655 * bindings/v8/V8AbstractEventListener.cpp: 4656 * bindings/v8/V8Collection.h: 4657 * bindings/v8/V8DOMWindowShell.cpp: 4658 * bindings/v8/V8DOMWrapper.cpp: 4659 * bindings/v8/V8DOMWrapper.h: 4660 * bindings/v8/V8NodeFilterCondition.cpp: 4661 * bindings/v8/V8Proxy.cpp: 4662 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: 4663 * bindings/v8/custom/V8CustomPositionCallback.cpp: 4664 * bindings/v8/custom/V8CustomPositionErrorCallback.cpp: 4665 * bindings/v8/custom/V8CustomSQLStatementCallback.cpp: 4666 * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp: 4667 * bindings/v8/custom/V8CustomSQLTransactionCallback.cpp: 4668 * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.cpp: 4669 * bindings/v8/custom/V8DOMWindowCustom.cpp: 4670 * bindings/v8/custom/V8DataGridColumnListCustom.cpp: 4671 * bindings/v8/custom/V8DocumentCustom.cpp: 4672 * bindings/v8/custom/V8DocumentLocationCustom.cpp: 4673 * bindings/v8/custom/V8ElementCustom.cpp: 4674 * bindings/v8/custom/V8EventCustom.cpp: 4675 * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp: 4676 * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp: 4677 * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp: 4678 * bindings/v8/custom/V8HTMLCollectionCustom.cpp: 4679 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: 4680 * bindings/v8/custom/V8HTMLFormElementCustom.cpp: 4681 * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp: 4682 * bindings/v8/custom/V8HTMLImageElementConstructor.cpp: 4683 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp: 4684 * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: 4685 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: 4686 * bindings/v8/custom/V8MessageChannelConstructor.cpp: 4687 * bindings/v8/custom/V8MessageEventCustom.cpp: 4688 * bindings/v8/custom/V8NamedNodeMapCustom.cpp: 4689 * bindings/v8/custom/V8NodeIteratorCustom.cpp: 4690 * bindings/v8/custom/V8NodeListCustom.cpp: 4691 * bindings/v8/custom/V8NotificationCenterCustom.cpp: 4692 * bindings/v8/custom/V8SVGMatrixCustom.cpp: 4693 * bindings/v8/custom/V8StyleSheetListCustom.cpp: 4694 * bindings/v8/custom/V8TreeWalkerCustom.cpp: 4695 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: 4696 * bindings/v8/custom/V8XSLTProcessorCustom.cpp: 4697 4698 2010-02-02 Garret Kelly <gdk (a] chromium.org> 4699 4700 Reviewed by David Levin. 4701 4702 When using the Skia graphics context, the beginTransparencyLayer call 4703 currently creates a new layer, but does not keep the current 4704 compositing mode for use when merging the created layer back onto the 4705 rest of the context. This patch fixes that. 4706 https://bugs.webkit.org/show_bug.cgi?id=34491 4707 4708 fast/backgrounds/svg-as-mask.html is affected by this change in Chromium, 4709 but not fixed. This is the first of a series of patches to fix it. 4710 4711 * platform/graphics/skia/GraphicsContextSkia.cpp: 4712 (WebCore::GraphicsContext::beginTransparencyLayer): 4713 * platform/graphics/skia/PlatformContextSkia.cpp: 4714 (PlatformContextSkia::beginTransparencyLayer): 4715 * platform/graphics/skia/PlatformContextSkia.h: 4716 4717 2010-02-02 Kwang Yul Seo <skyul (a] company100.net> 4718 4719 Reviewed by Eric Seidel. 4720 4721 Use WTF::getLocalTime instead of localtime_r in FTPDirectoryDocument 4722 https://bugs.webkit.org/show_bug.cgi?id=34409 4723 4724 Platform guards for localtime_r are not needed because we already have 4725 WTF::getLocalTime which does the same thing. 4726 4727 * loader/FTPDirectoryDocument.cpp: 4728 (WebCore::processFileDateString): 4729 * loader/FTPDirectoryParser.cpp: 4730 (WebCore::gmtimeQt): 4731 4732 2010-02-02 Adam Roben <aroben (a] apple.com> 4733 4734 Copy WebCore's bindings generation scripts to the PrivateHeaders 4735 directory on Mac 4736 4737 This will allow other projects to use these scripts. 4738 4739 Fixes <http://webkit.org/b/34498>. 4740 4741 Reviewed by Mark Rowe. 4742 4743 * WebCore.xcodeproj/project.pbxproj: Added the bindings generation 4744 scripst to the Copy Headers phase, and marked them as Private. 4745 4746 2010-02-02 Adam Roben <aroben (a] apple.com> 4747 4748 Copy WebCore's bindings generation scripts to a more sensible location 4749 4750 Part of Bug 34496: Clean up WebCore's IDL/script copying 4751 <https://bugs.webkit.org/show_bug.cgi?id=34496> 4752 4753 Reviewed by Steve Falkenburg. 4754 4755 * WebCore.vcproj/WebCore.make: 4756 * WebCore.vcproj/WebCoreGenerated.vcproj: 4757 Instead of copying to obj/WebKit/DOMInterfaces, copy to obj/WebCore/scripts. 4758 4759 2010-02-02 Adam Roben <aroben (a] apple.com> 4760 4761 Rename the scripts used to copy WebCore's bindings generation scripts 4762 4763 Part of Bug 34496: Clean up WebCore's IDL/script copying 4764 <https://bugs.webkit.org/show_bug.cgi?id=34496> 4765 4766 Reviewed by Steve Falkenburg. 4767 4768 * WebCore.vcproj/MigrateScripts: Renamed from WebCore/WebCore.vcproj/MigrateIDLAndScripts. 4769 * WebCore.vcproj/migrate-scripts.sh: Renamed from WebCore/WebCore.vcproj/migrate-idls.sh. 4770 4771 * WebCore.vcproj/WebCoreGenerated.vcproj: Updated for renames. 4772 4773 2010-02-02 Adam Roben <aroben (a] apple.com> 4774 4775 Stop copying IDL files into $(WebKitOutputDir) 4776 4777 No one uses these anymore (as of r52921). 4778 4779 Part of Bug 34496: Clean up WebCore's IDL/script copying 4780 <https://bugs.webkit.org/show_bug.cgi?id=34496> 4781 4782 Reviewed by Steve Falkenburg. 4783 4784 * WebCore.vcproj/MigrateIDLAndScripts: Don't copy the IDL files 4785 anymore. Keep copying the scripts, though, since other projects 4786 (outside of the WebKit repository) do use those. 4787 4788 2010-02-02 Bryan Yeung <bryeung (a] google.com> 4789 4790 Reviewed by Darin Adler. 4791 4792 Avoid using an invalidated KURL object in baseURI. 4793 4794 https://bugs.webkit.org/show_bug.cgi?id=34492 4795 4796 This change fixes baseURI for Chromium (where the KURL implementation 4797 does not allow invalid KURLs to carry relative paths). This is 4798 regression tested by 4799 LayoutTests/svg/W3C-SVG-1.1/struct-image-07-t.svg 4800 4801 * dom/Element.cpp: 4802 (WebCore::Element::baseURI): 4803 4804 2010-02-02 Alexey Proskuryakov <ap (a] apple.com> 4805 4806 Reviewed by Darin Adler. 4807 4808 https://bugs.webkit.org/show_bug.cgi?id=34076 4809 <rdar://problem/7594601> Crash in mangleme in WebCore::Element::getAttribute 4810 4811 Test: fast/forms/misplaced-img-form-registration.html 4812 4813 * html/HTMLFormElement.cpp: 4814 (WebCore::HTMLFormElement::registerImgElement): Assert that the same image isn't added 4815 to vector again. 4816 (WebCore::HTMLFormElement::removeImgElement): Similarly, assert that we're removing something 4817 that's actually registered. 4818 4819 * html/HTMLImageElement.cpp: (WebCore::HTMLImageElement::~HTMLImageElement): If parser fails 4820 to insert the image element, then there will be no removed from tree notification either, 4821 need to unregister right away. 4822 4823 2010-02-02 Alexander Pavlov <apavlov (a] chromium.org> 4824 4825 Reviewed by Pavel Feldman. 4826 4827 Web Inspector: Eliminate some of the platform flavor-specific stylesheet selectors 4828 4829 Extract OS version into WebInspector.platformFlavor 4830 https://bugs.webkit.org/show_bug.cgi?id=34469 4831 4832 * inspector/front-end/InspectorBackendStub.js: 4833 * inspector/front-end/InspectorFrontendHostStub.js: 4834 (.WebInspector.InspectorFrontendHostStub.prototype.platform): 4835 * inspector/front-end/inspector.css: 4836 * inspector/front-end/inspector.js: 4837 (WebInspector.pendingDispatches.0.URLRegExp.i.get platform): 4838 (WebInspector.get platformFlavor): 4839 (WebInspector._detectPlatformFlavor): 4840 (WebInspector.loaded): 4841 (WebInspector.toolbarDragStart): 4842 (WebInspector.isMac): 4843 4844 2010-02-02 Steve Block <steveblock (a] google.com> 4845 4846 Reviewed by Ariya Hidayat. 4847 4848 Adds utility functions for converting between JavaInstance and NPAPI types 4849 https://bugs.webkit.org/show_bug.cgi?id=34468 4850 4851 This is required by Android for injecting objects into V8 JavaScript. 4852 4853 No new tests, added utility functions only. 4854 4855 * Android.v8bindings.mk: Modified. Added JavaNPObjectV8.cpp 4856 * bridge/jni/v8/JavaNPObjectV8.cpp: Added. 4857 (JSC::Bindings::AllocJavaNPObject): 4858 (JSC::Bindings::FreeJavaNPObject): 4859 (JSC::Bindings::): 4860 (JSC::Bindings::JavaInstanceToNPObject): 4861 (JSC::Bindings::ExtractJavaInstance): 4862 (JSC::Bindings::JavaNPObjectHasMethod): 4863 (JSC::Bindings::JavaNPObjectInvoke): 4864 (JSC::Bindings::JavaNPObjectHasProperty): 4865 (JSC::Bindings::JavaNPObjectGetProperty): 4866 * bridge/jni/v8/JavaNPObjectV8.h: Added. 4867 4868 2010-02-02 Benjamin Poulain <benjamin.poulain (a] nokia.com> 4869 4870 Reviewed by Ariya Hidayat. 4871 4872 [Qt] Symbian plugins include a wrong header file for QPixmap 4873 https://bugs.webkit.org/show_bug.cgi?id=34475 4874 4875 * plugins/symbian/PluginViewSymbian.cpp: 4876 4877 2010-02-02 Pavel Feldman <pfeldman (a] chromium.org> 4878 4879 Reviewed by Timothy Hatcher. 4880 4881 Web Inspector: URLs are not syntax-higlighted as links in source view. 4882 4883 This change enables linkifier in the NativeTextViewer. It adds 4884 "linkify" and "a_node" parse states into the highlighter in order 4885 to detect links and distinguish between resource and external ones. 4886 Contains drive-by fix for the webkit-html-* styles and moves them to the 4887 common location. 4888 4889 https://bugs.webkit.org/show_bug.cgi?id=34364 4890 4891 * inspector/front-end/NativeTextViewer.js: 4892 (WebInspector.NativeTextViewer): 4893 (WebInspector.NativeTextViewer.prototype._createSpan): 4894 (WebInspector.NativeTextViewer.prototype._createLink): 4895 (WebInspector.NativeTextViewer.prototype._rewriteHref): 4896 * inspector/front-end/SourceFrame.js: 4897 (WebInspector.SourceFrame.prototype.setContent): 4898 (WebInspector.SourceFrame.prototype._createEditorIfNeeded): 4899 * inspector/front-end/SourceHTMLTokenizer.js: 4900 (WebInspector.SourceHTMLTokenizer): 4901 (WebInspector.SourceHTMLTokenizer.prototype._isExpectingAttribute): 4902 (WebInspector.SourceHTMLTokenizer.prototype._isExpectingAttributeValue): 4903 (WebInspector.SourceHTMLTokenizer.prototype._setExpectingAttribute): 4904 (WebInspector.SourceHTMLTokenizer.prototype._setExpectingAttributeValue): 4905 (WebInspector.SourceHTMLTokenizer.prototype._stringToken): 4906 (WebInspector.SourceHTMLTokenizer.prototype._attrValueTokenType): 4907 (WebInspector.SourceHTMLTokenizer.prototype.nextToken): 4908 * inspector/front-end/SourceHTMLTokenizer.re2js: 4909 * inspector/front-end/SourceView.js: 4910 (WebInspector.SourceView.prototype._contentLoaded): 4911 * inspector/front-end/TextEditorHighlighter.js: 4912 (WebInspector.TextEditorHighlighter): 4913 * inspector/front-end/inspector.css: 4914 * inspector/front-end/inspectorSyntaxHighlight.css: 4915 4916 2010-02-02 Simon Hausmann <simon.hausmann (a] nokia.com> 4917 4918 Reviewed by Ariya Hidayat. 4919 4920 [Qt] Install libraries and headers in package builds 4921 https://bugs.webkit.org/show_bug.cgi?id=34325 4922 4923 Add the QtWebKit libraries to the installable items, except on 4924 Symbian where the libraries are always linked in their final 4925 destination. 4926 4927 Also include the headers generated by syncqt in the installation. 4928 4929 * WebCore.pro: 4930 4931 2010-02-02 Kavita Kanetkar <kkanetkar (a] chromium.org> 4932 4933 Reviewed by Dmitry Titov. 4934 4935 [V8] Raising an exception while setting timeout/interval from a detached frame 4936 https://bugs.webkit.org/show_bug.cgi?id=34453 4937 This fixes the issue/failing test mentioned in Chromium bug: 4938 http://code.google.com/p/chromium/issues/detail?id=32671 4939 4940 4941 * bindings/v8/custom/V8DOMWindowCustom.cpp: 4942 (WebCore::WindowSetTimeoutImpl): 4943 4944 2010-02-02 Kwang Yul Seo <skyul (a] company100.net> 4945 4946 Reviewed by Eric Seidel. 4947 4948 [BREWMP] Port Screen 4949 https://bugs.webkit.org/show_bug.cgi?id=34299 4950 4951 Get the screen size and depth from the main display bitmap. 4952 4953 * platform/brew/ScreenBrew.cpp: Added. 4954 (WebCore::getDisplayInfo): 4955 (WebCore::screenRect): 4956 (WebCore::screenAvailableRect): 4957 (WebCore::screenDepth): 4958 (WebCore::screenDepthPerComponent): 4959 (WebCore::screenIsMonochrome): 4960 4961 2010-02-02 Kwang Yul Seo <skyul (a] company100.net> 4962 4963 Reviewed by Eric Seidel. 4964 4965 [BREWMP] Port LocalizedStrings 4966 https://bugs.webkit.org/show_bug.cgi?id=34257 4967 4968 Port LocalizedStrings to BREWMP. 4969 4970 * platform/brew/LocalizedStringsBrew.cpp: Added. 4971 (WebCore::submitButtonDefaultLabel): 4972 (WebCore::inputElementAltText): 4973 (WebCore::resetButtonDefaultLabel): 4974 (WebCore::defaultLanguage): 4975 (WebCore::searchableIndexIntroduction): 4976 (WebCore::fileButtonChooseFileLabel): 4977 (WebCore::fileButtonNoFileSelectedLabel): 4978 (WebCore::contextMenuItemTagOpenLinkInNewWindow): 4979 (WebCore::contextMenuItemTagDownloadLinkToDisk): 4980 (WebCore::contextMenuItemTagCopyLinkToClipboard): 4981 (WebCore::contextMenuItemTagOpenImageInNewWindow): 4982 (WebCore::contextMenuItemTagDownloadImageToDisk): 4983 (WebCore::contextMenuItemTagCopyImageToClipboard): 4984 (WebCore::contextMenuItemTagOpenFrameInNewWindow): 4985 (WebCore::contextMenuItemTagCopy): 4986 (WebCore::contextMenuItemTagGoBack): 4987 (WebCore::contextMenuItemTagGoForward): 4988 (WebCore::contextMenuItemTagStop): 4989 (WebCore::contextMenuItemTagReload): 4990 (WebCore::contextMenuItemTagCut): 4991 (WebCore::contextMenuItemTagPaste): 4992 (WebCore::contextMenuItemTagNoGuessesFound): 4993 (WebCore::contextMenuItemTagIgnoreSpelling): 4994 (WebCore::contextMenuItemTagLearnSpelling): 4995 (WebCore::contextMenuItemTagSearchWeb): 4996 (WebCore::contextMenuItemTagLookUpInDictionary): 4997 (WebCore::contextMenuItemTagOpenLink): 4998 (WebCore::contextMenuItemTagIgnoreGrammar): 4999 (WebCore::contextMenuItemTagSpellingMenu): 5000 (WebCore::contextMenuItemTagShowSpellingPanel): 5001 (WebCore::contextMenuItemTagCheckSpelling): 5002 (WebCore::contextMenuItemTagCheckSpellingWhileTyping): 5003 (WebCore::contextMenuItemTagCheckGrammarWithSpelling): 5004 (WebCore::contextMenuItemTagFontMenu): 5005 (WebCore::contextMenuItemTagBold): 5006 (WebCore::contextMenuItemTagItalic): 5007 (WebCore::contextMenuItemTagUnderline): 5008 (WebCore::contextMenuItemTagOutline): 5009 (WebCore::contextMenuItemTagWritingDirectionMenu): 5010 (WebCore::contextMenuItemTagDefaultDirection): 5011 (WebCore::contextMenuItemTagLeftToRight): 5012 (WebCore::contextMenuItemTagRightToLeft): 5013 (WebCore::contextMenuItemTagInspectElement): 5014 (WebCore::searchMenuNoRecentSearchesText): 5015 (WebCore::searchMenuRecentSearchesText): 5016 (WebCore::searchMenuClearRecentSearchesText): 5017 (WebCore::unknownFileSizeText): 5018 (WebCore::AXWebAreaText): 5019 (WebCore::AXLinkText): 5020 (WebCore::AXListMarkerText): 5021 (WebCore::AXImageMapText): 5022 (WebCore::AXHeadingText): 5023 (WebCore::imageTitle): 5024 (WebCore::contextMenuItemTagTextDirectionMenu): 5025 (WebCore::AXButtonActionVerb): 5026 (WebCore::AXTextFieldActionVerb): 5027 (WebCore::AXRadioButtonActionVerb): 5028 (WebCore::AXCheckedCheckBoxActionVerb): 5029 (WebCore::AXUncheckedCheckBoxActionVerb): 5030 (WebCore::AXLinkActionVerb): 5031 (WebCore::AXMenuListPopupActionVerb): 5032 (WebCore::AXMenuListActionVerb): 5033 (WebCore::AXDefinitionListTermText): 5034 (WebCore::AXDefinitionListDefinitionText): 5035 (WebCore::validationMessageValueMissingText): 5036 (WebCore::validationMessageTypeMismatchText): 5037 (WebCore::validationMessagePatternMismatchText): 5038 (WebCore::validationMessageTooLongText): 5039 (WebCore::validationMessageRangeUnderflowText): 5040 (WebCore::validationMessageRangeOverflowText): 5041 (WebCore::validationMessageStepMismatchText): 5042 5043 2010-02-02 Kwang Yul Seo <skyul (a] company100.net> 5044 5045 Reviewed by Eric Seidel. 5046 5047 [BREWMP] Port systemBeep 5048 https://bugs.webkit.org/show_bug.cgi?id=33601 5049 5050 Implement systemBeep with IShell_Beep. 5051 5052 * platform/brew/SoundBrew.cpp: Added. 5053 (WebCore::systemBeep): 5054 5055 2010-02-02 Shinichiro Hamaji <hamaji (a] chromium.org> 5056 5057 Reviewed by Eric Seidel. 5058 5059 [Win] Utilize PrintContext to share the printing code with other ports 5060 https://bugs.webkit.org/show_bug.cgi?id=34312 5061 5062 No new tests as this is just a small refactoring. 5063 5064 2010-02-02 Kwang Yul Seo <skyul (a] company100.net> 5065 5066 Reviewed by Eric Seidel. 5067 5068 [BREWMP] Add conversions between IntPoint and AEEPoint 5069 https://bugs.webkit.org/show_bug.cgi?id=34194 5070 5071 Make it easy to convert between IntPoint and AEEPoint. 5072 5073 * platform/graphics/IntPoint.h: 5074 * platform/graphics/brew/IntPointBrew.cpp: Added. 5075 (WebCore::IntPoint::IntPoint): 5076 (WebCore::IntPoint::operator AEEPoint): 5077 5078 2010-02-02 Steve Block <steveblock (a] google.com> 5079 5080 Reviewed by Adam Barth. 5081 5082 Adds virtual destructors for AbstractWeakReferenceMap and AbstractWeakReferenceMap::Visitor 5083 https://bugs.webkit.org/show_bug.cgi?id=34434 5084 5085 No new tests, build fix only. 5086 5087 * bindings/v8/V8DOMMap.h: Modified. 5088 (WebCore::AbstractWeakReferenceMap::~AbstractWeakReferenceMap): Added. 5089 (WebCore::AbstractWeakReferenceMap::Visitor::~Visitor): Added. 5090 5091 2010-02-02 Avi Drissman <avi (a] chromium.org> 5092 5093 Reviewed by Eric Seidel. 5094 5095 Sync up Chromium Mac render theme to Mac render theme 5096 https://bugs.webkit.org/show_bug.cgi?id=34340 5097 5098 Covered by existing layout tests. 5099 5100 * platform/chromium/ThemeChromiumMac.mm: 5101 (WebCore::updateStates): 5102 (WebCore::checkbox): 5103 (WebCore::paintCheckbox): 5104 (WebCore::radio): 5105 (WebCore::paintRadio): 5106 (WebCore::listButtonSizes): 5107 (WebCore::setupButtonCell): 5108 (WebCore::button): 5109 (WebCore::paintButton): 5110 (WebCore::ThemeChromiumMac::controlSize): 5111 (WebCore::ThemeChromiumMac::minimumControlSize): 5112 (WebCore::ThemeChromiumMac::controlBorder): 5113 (WebCore::ThemeChromiumMac::paint): 5114 * rendering/RenderThemeChromiumMac.h: 5115 * rendering/RenderThemeChromiumMac.mm: 5116 (-[WebCoreRenderThemeNotificationObserver initWithTheme:WebCore::]): 5117 (WebCore::convertNSColorToColor): 5118 (WebCore::RenderThemeChromiumMac::systemColor): 5119 (WebCore::RenderThemeChromiumMac::isControlStyled): 5120 (WebCore::RenderThemeChromiumMac::adjustRepaintRect): 5121 (WebCore::RenderThemeChromiumMac::convertToPaintingRect): 5122 (WebCore::RenderThemeChromiumMac::paintCapsLockIndicator): 5123 (WebCore::RenderThemeChromiumMac::paintMenuList): 5124 (WebCore::RenderThemeChromiumMac::paintMenuListButton): 5125 (WebCore::RenderThemeChromiumMac::adjustMenuListStyle): 5126 (WebCore::RenderThemeChromiumMac::adjustMenuListButtonStyle): 5127 (WebCore::RenderThemeChromiumMac::paintSliderTrack): 5128 (WebCore::RenderThemeChromiumMac::paintSliderThumb): 5129 (WebCore::RenderThemeChromiumMac::paintSearchField): 5130 (WebCore::RenderThemeChromiumMac::setSearchFieldSize): 5131 (WebCore::RenderThemeChromiumMac::adjustSearchFieldStyle): 5132 (WebCore::RenderThemeChromiumMac::paintSearchFieldResultsButton): 5133 (WebCore::RenderThemeChromiumMac::adjustSliderThumbSize): 5134 (WebCore::RenderThemeChromiumMac::popupButton): 5135 (WebCore::RenderThemeChromiumMac::sliderThumbHorizontal): 5136 (WebCore::RenderThemeChromiumMac::sliderThumbVertical): 5137 5138 2010-02-02 Kwang Yul Seo <skyul (a] company100.net> 5139 5140 Reviewed by Eric Seidel. 5141 5142 [BREWMP] Port Logging 5143 https://bugs.webkit.org/show_bug.cgi?id=34300 5144 5145 Log calls to notImplemented() by default. 5146 5147 * platform/brew/LoggingBrew.cpp: Added. 5148 (WebCore::InitializeLoggingChannelsIfNecessary): 5149 5150 2010-02-02 Kwang Yul Seo <skyul (a] company100.net> 5151 5152 Reviewed by Eric Seidel. 5153 5154 [BREWMP] Port FileChooser 5155 https://bugs.webkit.org/show_bug.cgi?id=34261 5156 5157 Port FileChooser to BREWMP. 5158 5159 * platform/brew/FileChooserBrew.cpp: Added. 5160 (WebCore::FileChooser::basenameForWidth): 5161 5162 2010-02-01 Zoltan Horvath <zoltan (a] webkit.org> 5163 5164 Reviewed by Darin Adler. 5165 5166 Allow custom memory allocation control for IconDatabaseClient class 5167 https://bugs.webkit.org/show_bug.cgi?id=33252 5168 5169 Inherits the following struct from Noncopyable because it is 5170 instantiated by 'new' and no need to be copyable: 5171 5172 class name - instantiated at: WebCore/'location' 5173 class IconDatabaseClient - loader/icon/IconDatabase.cpp:89 5174 5175 * loader/icon/IconDatabaseClient.h: 5176 5177 2010-02-01 Kwang Yul Seo <skyul (a] company100.net> 5178 5179 Reviewed by Eric Seidel. 5180 5181 [BREWMP] Port MIMETypeRegistry 5182 https://bugs.webkit.org/show_bug.cgi?id=34220 5183 5184 Port MIMETypeRegistry with an extension map as other ports do. 5185 5186 * platform/brew: Added. 5187 * platform/brew/MIMETypeRegistryBrew.cpp: Added. 5188 (WebCore::): 5189 (WebCore::MIMETypeRegistry::getMIMETypeForExtension): 5190 5191 2010-02-01 Dmitry Titov <dimich (a] chromium.org> 5192 5193 Not reviewed, revert r54194 that fails new test on Qt and Chromium. 5194 https://bugs.webkit.org/show_bug.cgi?id=34382 5195 5196 * html/HTMLFrameElementBase.cpp: 5197 (WebCore::HTMLFrameElementBase::setNameAndOpenURL): 5198 (WebCore::HTMLFrameElementBase::insertedIntoDocument): 5199 * html/HTMLFrameElementBase.h: 5200 * page/Frame.cpp: 5201 * page/Frame.h: 5202 5203 2010-02-01 Shinichiro Hamaji <hamaji (a] chromium.org> 5204 5205 Reviewed by Eric Seidel. 5206 5207 Provide a way to get page number with layoutTestController 5208 https://bugs.webkit.org/show_bug.cgi?id=33840 5209 5210 Test: printing/page-break-always.html 5211 5212 * WebCore.base.exp: 5213 * WebCore.xcodeproj/project.pbxproj: 5214 * page/PrintContext.cpp: 5215 (WebCore::PrintContext::pageRect): Added a getter function. 5216 (WebCore::PrintContext::computePageRects): Move its logic into computePageRectsWithPageSize. 5217 (WebCore::PrintContext::computePageRectsWithPageSize): Factored out from computePageRects for pageNumberForElement. 5218 (WebCore::enclosingBoxModelObject): Added for pageNumberForElement. 5219 (WebCore::PrintContext::pageNumberForElement): Added for testing. 5220 * page/PrintContext.h: 5221 5222 2010-02-01 Kwang Yul Seo <skyul (a] company100.net> 5223 5224 Reviewed by Eric Seidel. 5225 5226 [BREWMP] Add conversions between IntSize and AEESize 5227 https://bugs.webkit.org/show_bug.cgi?id=34197 5228 5229 Make it easy to convert between IntSize and AEESize. 5230 5231 * platform/graphics/IntSize.h: 5232 * platform/graphics/brew/IntSizeBrew.cpp: Added. 5233 (WebCore::IntSize::IntSize): 5234 (WebCore::IntSize::operator AEESize): 5235 5236 2010-02-01 Stephen White <senorblanco (a] chromium.org> 5237 5238 Reviewed by Eric Seidel. 5239 5240 Fix for Pattern transformations in Chromium/Skia. This required 5241 reworking Pattern a bit to be more like the Gradient implementation. 5242 In particular, it now holds an m_pattern reference to the 5243 platform-specific implementation, and passes along changes to the 5244 m_patternSpaceTransformation, in the same way that Gradient does for 5245 m_gradientSpaceTransformation. This is necessary since Skia creates the 5246 platform-specific pattern (SkShader) once, rather than recreating it 5247 on each draw. 5248 For platforms other than Skia, m_pattern is unused, they will 5249 continue to use the static createPlatformPattern(), and the new 5250 notification functions are stubbed out. Other platforms can switch to 5251 the new implementation if they so choose. 5252 5253 https://bugs.webkit.org/show_bug.cgi?id=24534 5254 5255 Covered by svg/custom/pattern-y-offset.svg, 5256 svg/custom/pattern-cycle-detection.svg, and many more. 5257 5258 * platform/graphics/Pattern.cpp: 5259 (WebCore::Pattern::Pattern): 5260 Initializer for m_pattern. 5261 (WebCore::Pattern::~Pattern): 5262 call platformDestroy(). 5263 (WebCore::Pattern::setPatternSpaceTransform): 5264 Pass along the transform via setPlatformPatternSpaceTransform(). 5265 (WebCore::Pattern::platformDestroy): 5266 (WebCore::Pattern::setPlatformPatternSpaceTransform): 5267 Stub implementations for non-skia platforms. 5268 * platform/graphics/Pattern.h: 5269 * platform/graphics/skia/GraphicsContextSkia.cpp: 5270 (WebCore::GraphicsContext::setPlatformFillPattern): 5271 (WebCore::GraphicsContext::setPlatformStrokePattern): 5272 Call platformPattern() instead of static version. 5273 Since Pattern now owns its SkShader, no need to unref here. 5274 * platform/graphics/skia/PatternSkia.cpp: 5275 (WebCore::Pattern::platformDestroy): 5276 Unref the SkShader on destroy. 5277 (WebCore::Pattern::platformPattern): 5278 Create the platform pattern (SkShader) once, and cache it. 5279 (WebCore::Pattern::setPlatformPatternSpaceTransform): 5280 Set the shader's local matrix from the m_patternSpaceTransformation. 5281 5282 2010-02-01 Daniel Bates <dbates (a] webkit.org> 5283 5284 Reviewed by Adam Barth. 5285 5286 https://bugs.webkit.org/show_bug.cgi?id=27312 5287 5288 Implements support for full page blocking via the X-XSS-Protection header. 5289 5290 Tests: http/tests/security/xssAuditor/full-block-base-href.html 5291 http/tests/security/xssAuditor/full-block-get-from-iframe.html 5292 http/tests/security/xssAuditor/full-block-iframe-javascript-url.html 5293 http/tests/security/xssAuditor/full-block-iframe-no-inherit.php 5294 http/tests/security/xssAuditor/full-block-javascript-link.html 5295 http/tests/security/xssAuditor/full-block-link-onclick.html 5296 http/tests/security/xssAuditor/full-block-object-tag.html 5297 http/tests/security/xssAuditor/full-block-post-from-iframe.html 5298 http/tests/security/xssAuditor/full-block-script-tag-with-source.html 5299 http/tests/security/xssAuditor/full-block-script-tag.html 5300 http/tests/security/xssAuditor/malformed-xss-protection-header.html 5301 5302 * page/XSSAuditor.cpp: 5303 (WebCore::XSSAuditor::shouldFullPageBlockForXSSProtectionHeader): Added. 5304 (WebCore::XSSAuditor::findInRequest): Modified to call method 5305 XSSAuditor::shouldFullPageBlockForXSSProtectionHeader. 5306 * page/XSSAuditor.h: Defined method shouldFullPageBlockForXSSProtectionHeader 5307 and fixed misspelled words in large comment block. 5308 5309 2010-02-01 Kwang Yul Seo <skyul (a] company100.net> 5310 5311 Reviewed by Eric Seidel. 5312 5313 [BREWMP] Port SharedTimer with IShell_SetTimerEx. 5314 https://bugs.webkit.org/show_bug.cgi?id=33599 5315 5316 As fireTime passed in setSharedTimerFireTime is the absolute time, 5317 we must calcalute the interval by subtracting currentTime() from 5318 fireTime and pass the result to ISHELL_SetTimerEx. 5319 5320 * platform/brew/SharedTimerBrew.cpp: Added. 5321 (WebCore::invokeCallback): 5322 (WebCore::setSharedTimerFiredFunction): 5323 (WebCore::setSharedTimerFireTime): 5324 (WebCore::stopSharedTimer): 5325 5326 2010-02-01 Shinichiro Hamaji <hamaji (a] chromium.org> 5327 5328 [Chromium] Unreviewed attempt to fix the chromium build. 5329 5330 Corresponding change: http://trac.webkit.org/changeset/54182 5331 5332 * bindings/scripts/CodeGeneratorV8.pm: 5333 * bindings/v8/ScriptController.cpp: 5334 (WebCore::ScriptController::processingUserGesture): 5335 * bindings/v8/ScriptController.h: 5336 5337 2010-02-01 Dmitry Titov <dimich (a] chromium.org> 5338 5339 Reviewed by David Levin. 5340 5341 When a live iframe element is moved between pages, it still depends on the old page. 5342 https://bugs.webkit.org/show_bug.cgi?id=34382 5343 5344 Test: fast/frames/iframe-reparenting-new-page.html 5345 5346 * html/HTMLFrameElementBase.cpp: 5347 (WebCore::HTMLFrameElementBase::setName): 5348 Move the code setting the frame name into a separate function. 5349 5350 (WebCore::HTMLFrameElementBase::setNameAndOpenURL): 5351 (WebCore::HTMLFrameElementBase::updateLiveFrame): 5352 Update frame tree, reset page in the contentFrame and re-set the name. 5353 5354 (WebCore::HTMLFrameElementBase::insertedIntoDocument): 5355 * html/HTMLFrameElementBase.h: 5356 5357 * page/Frame.cpp: 5358 (WebCore::Frame::setPage): 5359 * page/Frame.h: Add setPage method. It is only currently used when iframe is 5360 moved between pages (so the ASSERT(m_ownerElement). 5361 5362 2010-02-01 Brady Eidson <beidson (a] apple.com> 5363 5364 Reviewed by Tim Hatcher. 5365 5366 Add common IRC ports to port blocking. 5367 <rdar://problem/7593895> and https://bugs.webkit.org/show_bug.cgi?id=34451 5368 5369 * platform/KURL.cpp: 5370 (WebCore::portAllowed): 5371 5372 2010-01-29 Jeremy Orlow <jorlow (a] chromium.org> 5373 5374 Reviewed by Nate Chapin. 5375 5376 [V8] Add compile time guards for IndexedDB custom functions 5377 https://bugs.webkit.org/show_bug.cgi?id=34368 5378 5379 * bindings/v8/custom/V8IDBRequestCustom.cpp: 5380 * bindings/v8/custom/V8IndexedDatabaseRequestCustom.cpp: 5381 5382 2010-01-29 Gavin Barraclough <barraclough (a] apple.com> 5383 5384 Reviewed by Sam Weinig + Oliver Hunt. 5385 5386 Bug 34346 - With JSC bindings, make processingUserGesture work with events in Isolated Worlds 5387 5388 Change HTMLMediaElement methods that require checking whether the event is a user gesture to 5389 be passed a boolean. This may be passed from the JSC bindings (where we have an exec state), 5390 or read from the event. Add a Flag to the IDL to mark this information is required. 5391 5392 * WebCore.Video.exp: 5393 * bindings/js/JSDOMBinding.cpp: 5394 (WebCore::processingUserGesture): 5395 * bindings/js/JSDOMWindowCustom.cpp: 5396 (WebCore::domWindowAllowPopUp): 5397 (WebCore::JSDOMWindow::open): 5398 (WebCore::JSDOMWindow::showModalDialog): 5399 * bindings/js/JSDocumentCustom.cpp: 5400 (WebCore::JSDocument::setLocation): 5401 * bindings/js/ScriptController.cpp: 5402 (WebCore::ScriptController::processingUserGesture): 5403 (WebCore::ScriptController::processingUserGestureEvent): 5404 (WebCore::ScriptController::anyPageIsProcessingUserGesture): 5405 * bindings/js/ScriptController.h: 5406 * bindings/scripts/CodeGeneratorJS.pm: 5407 * dom/Event.cpp: 5408 (WebCore::Event::isUserEvent): 5409 * dom/Event.h: 5410 * html/HTMLMediaElement.cpp: 5411 (WebCore::HTMLMediaElement::removedFromDocument): 5412 (WebCore::HTMLMediaElement::load): 5413 (WebCore::HTMLMediaElement::play): 5414 (WebCore::HTMLMediaElement::pause): 5415 (WebCore::HTMLMediaElement::beginScrubbing): 5416 (WebCore::HTMLMediaElement::documentDidBecomeActive): 5417 (WebCore::HTMLMediaElement::webkitEnterFullScreen): 5418 * html/HTMLMediaElement.h: 5419 * html/HTMLMediaElement.idl: 5420 * loader/FrameLoader.cpp: 5421 (WebCore::FrameLoader::isProcessingUserGesture): 5422 * loader/MediaDocument.cpp: 5423 (WebCore::MediaDocument::defaultEventHandler): 5424 * page/DOMWindow.cpp: 5425 (WebCore::DOMWindow::allowPopUp): 5426 * rendering/MediaControlElements.cpp: 5427 (WebCore::MediaControlSeekButtonElement::defaultEventHandler): 5428 5429 2010-02-01 Andreas Kling <andreas.kling (a] nokia.com> 5430 5431 Reviewed by Kenneth Rohde Christiansen. 5432 5433 [Qt] Use the fallback style on Maemo 5 5434 5435 https://bugs.webkit.org/show_bug.cgi?id=34376 5436 5437 * platform/qt/RenderThemeQt.cpp: 5438 (WebCore::RenderThemeQt::RenderThemeQt): 5439 (WebCore::RenderThemeQt::fallbackStyle): 5440 (WebCore::RenderThemeQt::qStyle): 5441 (WebCore::RenderThemeQt::setPaletteFromPageClientIfExists): 5442 * platform/qt/RenderThemeQt.h: 5443 5444 2010-02-01 Kavita Kanetkar <kkanetkar (a] chromium.org> 5445 5446 Reviewed by Nate Chapin. 5447 5448 [V8] Making V8 generated classes' GetTemplate() function public 5449 https://bugs.webkit.org/show_bug.cgi?id=34026 5450 5451 * bindings/scripts/CodeGeneratorV8.pm: Generated code need not depend on V8CustomBinding.h, made GetTemplate() signature public. 5452 5453 2010-02-01 Steve Block <steveblock (a] google.com> 5454 5455 Reviewed by Ariya Hidayat. 5456 5457 Adds V8-specific JNI bridge classes 5458 https://bugs.webkit.org/show_bug.cgi?id=34166 5459 5460 This is the V8 equivalent of bridge/jni/jsc/JNIBridgeJSC. 5461 5462 No new tests, build fix only. 5463 5464 * Android.v8bindings.mk: Modified. Added JNIBridge.cpp and JNIBridgeV8.cpp 5465 * bridge/Bridge.h: Modified. Added missing include for Noncopyable.h 5466 * bridge/jni/v8/JNIBridgeV8.cpp: Added. 5467 (JavaField::JavaField): 5468 * bridge/jni/v8/JNIBridgeV8.h: Added. 5469 (JSC::Bindings::JavaField::name): 5470 (JSC::Bindings::JavaField::type): 5471 (JSC::Bindings::JavaField::getJNIType): 5472 5473 2010-02-01 Steve Block <steveblock (a] google.com> 5474 5475 Reviewed by Ariya Hidayat. 5476 5477 Adds V8-specific JNI utility functions. 5478 https://bugs.webkit.org/show_bug.cgi?id=33901 5479 5480 This is the V8 equivalent of bridge/jni/jsc/JNIUtilityPrivate. 5481 5482 No new tests, build fix only. 5483 5484 * Android.v8bindings.mk: Modified. Add JNIUtilityPrivate.cpp 5485 * bridge/jni/v8/JNIUtilityPrivate.cpp: Added. 5486 (JSC::Bindings::convertNPVariantToJValue): 5487 (JSC::Bindings::convertJValueToNPVariant): 5488 * bridge/jni/v8/JNIUtilityPrivate.h: Added. 5489 5490 2010-02-01 Steve Block <steveblock (a] google.com> 5491 5492 Reviewed by Ariya Hidayat. 5493 5494 Adds V8 version of JavaClass 5495 https://bugs.webkit.org/show_bug.cgi?id=33898 5496 5497 This is the V8 equivalent of bridge/jni/jsc/JavaClassJSC 5498 5499 No new tests, build fix only. 5500 5501 * Android.v8bindings.mk: Modified. Added JavaClassV8.cpp 5502 * bridge/jni/v8/JavaClassV8.cpp: Added. 5503 (JavaClass::JavaClass): 5504 (JavaClass::~JavaClass): 5505 (JavaClass::methodsNamed): 5506 (JavaClass::fieldNamed): 5507 * bridge/jni/v8/JavaClassV8.h: Added. 5508 5509 2010-02-01 Steve Block <steveblock (a] google.com> 5510 5511 Reviewed by Ariya Hidayat. 5512 5513 Adds V8 version of JavaInstance 5514 https://bugs.webkit.org/show_bug.cgi?id=33951 5515 5516 This is the V8 equivalent of bridge/jni/jsc/JavaInstanceJSC. 5517 Also fixes a typo in a comment in JavaInstanceJSC.cpp. 5518 5519 No new tests, build fix only. 5520 5521 * Android.v8bindings.mk: Modified. Added JavaInstanceV8.cpp 5522 * bridge/jni/jsc/JavaInstanceJSC.cpp: Modified. 5523 (JavaInstance::invokeMethod): Modified. Fixed comment 5524 * bridge/jni/v8/JavaInstanceV8.cpp: Added. 5525 (JavaInstance::JavaInstance): 5526 (JavaInstance::~JavaInstance): 5527 (JavaInstance::getClass): 5528 (JavaInstance::invokeMethod): 5529 (JObjectWrapper::JObjectWrapper): 5530 (JObjectWrapper::~JObjectWrapper): 5531 * bridge/jni/v8/JavaInstanceV8.h: Added. 5532 (JSC::Bindings::JObjectWrapper::instance): 5533 (JSC::Bindings::JObjectWrapper::setInstance): 5534 (JSC::Bindings::JObjectWrapper::ref): 5535 (JSC::Bindings::JObjectWrapper::deref): 5536 (JSC::Bindings::JavaInstance::javaInstance): 5537 (JSC::Bindings::JavaInstance::begin): 5538 (JSC::Bindings::JavaInstance::end): 5539 (JSC::Bindings::JavaInstance::virtualBegin): 5540 (JSC::Bindings::JavaInstance::virtualEnd): 5541 5542 2010-02-01 Dumitru Daniliuc <dumi (a] chromium.org> 5543 5544 Reviewed by Eric Seidel. 5545 5546 Making sure that all in-progress transactions are rolled back on 5547 the database thread before they're destroyed. Otherwise, 5548 SQLiteTransaction's destructor will try to do a rollback and that 5549 would cause an assertion failure, if the object is not destroyed 5550 on the DB thread. 5551 5552 https://bugs.webkit.org/show_bug.cgi?id=34152 5553 5554 * platform/sql/SQLiteTransaction.cpp: 5555 (WebCore::SQLiteTransaction::stop): 5556 * storage/SQLTransaction.cpp: 5557 (WebCore::SQLTransaction::notifyDatabaseThreadIsShuttingDown): 5558 * storage/SQLTransaction.h: 5559 * storage/SQLTransactionCoordinator.cpp: 5560 (WebCore::SQLTransactionCoordinator::shutdown): 5561 5562 2010-02-01 Sam Weinig <sam (a] webkit.org> 5563 5564 Reviewed by Beth Dakin. 5565 5566 Fix EXPERIMENTAL_SINGLE_VIEW_MODE build. 5567 5568 * page/EventHandler.h: 5569 * page/mac/EventHandlerMac.mm: 5570 (WebCore::EventHandler::currentNSEvent): 5571 (WebCore::EventHandler::currentKeyboardEvent): 5572 (WebCore::EventHandler::mouseDown): 5573 (WebCore::EventHandler::mouseDragged): 5574 (WebCore::EventHandler::mouseUp): 5575 (WebCore::EventHandler::mouseMoved): 5576 (WebCore::EventHandler::keyEvent): 5577 (WebCore::EventHandler::wheelEvent): 5578 (WebCore::EventHandler::sendContextMenuEvent): 5579 (WebCore::EventHandler::eventMayStartDrag): 5580 (WebCore::EventHandler::sendFakeEventsAfterWidgetTracking): 5581 5582 2010-02-01 Nate Chapin <japhet (a] chromium.org> 5583 5584 Unreviewed, Chromium build fix. 5585 5586 Failed to properly add new files for http://trac.webkit.org/changeset/54150. 5587 5588 * bindings/v8/custom/V8BarInfoCustom.cpp: Added. 5589 * bindings/v8/custom/V8CSSRuleCustom.cpp: Added. 5590 * bindings/v8/custom/V8CSSStyleSheetCustom.cpp: Added. 5591 * bindings/v8/custom/V8CSSValueCustom.cpp: Added. 5592 * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp: Added. 5593 * bindings/v8/custom/V8DOMSelectionCustom.cpp: Added. 5594 * bindings/v8/custom/V8HTMLElementCustom.cpp: Added. 5595 * bindings/v8/custom/V8SVGDocumentCustom.cpp: Added. 5596 * bindings/v8/custom/V8SVGElementCustom.cpp: Added. 5597 * bindings/v8/custom/V8SVGPathSegCustom.cpp: Added. 5598 * bindings/v8/custom/V8ScreenCustom.cpp: Added. 5599 * bindings/v8/custom/V8StyleSheetCustom.cpp: Added. 5600 * bindings/v8/custom/V8WebGLArrayCustom.cpp: Added. 5601 5602 2010-01-27 Matt Perry <mpcomplete (a] chromium.org> 5603 5604 Reviewed by Eric Seidel. 5605 5606 Add support for addUserScript to chromium port. 5607 5608 * bindings/v8/ScriptController.cpp: 5609 (WebCore::ScriptController::evaluateInWorld): 5610 * bindings/v8/ScriptController.h: 5611 5612 2010-02-01 Eric Carlson <eric.carlson (a] apple.com> 5613 5614 Reviewed by Dan Bernstein. 5615 5616 https://bugs.webkit.org/show_bug.cgi?id=34448 5617 <rdar://problem/7598130> 5618 5619 RenderVideo::intrinsicSizeChanged infinite recursion 5620 5621 * rendering/RenderImage.h: 5622 (WebCore::RenderImage::intrinsicSizeChanged): Make protected instead of private so it can 5623 be called by RenderVideo. 5624 * rendering/RenderVideo.cpp: 5625 (WebCore::RenderVideo::intrinsicSizeChanged): Call RenderMedia::intrinsicSizeChanged, not 5626 RenderVideo::intrinsicSizeChanged. 5627 (WebCore::RenderVideo::imageChanged): Call RenderMedia::imageChanged instead of 5628 RenderImage::imageChanged. 5629 5630 2010-02-01 Nate Chapin <japhet (a] chromium.org> 5631 5632 Reviewed by Dimitri Glazkov. 5633 5634 [V8] Generate toV8() converter for most WebCore->V8 conversions, 5635 and defined custom converters in their respective V8<class>Custom.cpp. 5636 5637 Old converters in V8DOMWrapper will be deleted in a later patch. 5638 5639 https://bugs.webkit.org/show_bug.cgi?id=32563 5640 5641 * Android.v8bindings.mk: 5642 * WebCore.gyp/WebCore.gyp: 5643 * WebCore.gypi: 5644 * bindings/scripts/CodeGeneratorV8.pm: 5645 * bindings/v8/V8Collection.h: 5646 * bindings/v8/V8DOMWrapper.cpp: 5647 * bindings/v8/V8DOMWrapper.h: 5648 * bindings/v8/V8Proxy.h: 5649 * bindings/v8/custom/V8BarInfoCustom.cpp: Added. 5650 * bindings/v8/custom/V8CSSRuleCustom.cpp: Added. 5651 * bindings/v8/custom/V8CSSStyleSheetCustom.cpp: Added. 5652 * bindings/v8/custom/V8CSSValueCustom.cpp: Added. 5653 * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp: Added. 5654 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: 5655 * bindings/v8/custom/V8ConsoleCustom.cpp: 5656 * bindings/v8/custom/V8DOMSelectionCustom.cpp: Added. 5657 * bindings/v8/custom/V8DOMWindowCustom.cpp: 5658 * bindings/v8/custom/V8DocumentCustom.cpp: 5659 * bindings/v8/custom/V8ElementCustom.cpp: 5660 * bindings/v8/custom/V8EventCustom.cpp: 5661 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: 5662 * bindings/v8/custom/V8HTMLElementCustom.cpp: Added. 5663 * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: 5664 * bindings/v8/custom/V8HistoryCustom.cpp: 5665 * bindings/v8/custom/V8LocationCustom.cpp: 5666 * bindings/v8/custom/V8NamedNodeMapCustom.cpp: 5667 * bindings/v8/custom/V8NavigatorCustom.cpp: 5668 * bindings/v8/custom/V8NodeCustom.cpp: 5669 * bindings/v8/custom/V8SVGDocumentCustom.cpp: Added. 5670 * bindings/v8/custom/V8SVGElementCustom.cpp: Added. 5671 * bindings/v8/custom/V8SVGPathSegCustom.cpp: Added. 5672 * bindings/v8/custom/V8ScreenCustom.cpp: Added. 5673 * bindings/v8/custom/V8StyleSheetCustom.cpp: Added. 5674 * bindings/v8/custom/V8TreeWalkerCustom.cpp: 5675 * bindings/v8/custom/V8WebGLArrayCustom.cpp: Added. 5676 * bindings/v8/custom/V8WebGLByteArrayCustom.cpp: 5677 * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp: 5678 * bindings/v8/custom/V8WebGLIntArrayCustom.cpp: 5679 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: 5680 * bindings/v8/custom/V8WebGLShortArrayCustom.cpp: 5681 * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp: 5682 * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp: 5683 * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp: 5684 * dom/make_names.pl: Add options to generate wrapper factory for V8 bindings. 5685 5686 2010-02-01 Alexander Pavlov <apavlov (a] chromium.org> 5687 5688 Reviewed by Pavel Feldman. 5689 5690 Web Inspector: lazy-load textual resources to avoid UI hangup 5691 https://bugs.webkit.org/show_bug.cgi?id=34332 5692 5693 * inspector/front-end/ResourceView.js: 5694 (WebInspector.ResourceView.prototype._innerSelectContentTab): 5695 * inspector/front-end/SourceView.js: 5696 (WebInspector.SourceView.prototype.show): 5697 (WebInspector.SourceView.prototype.contentTabSelected): 5698 5699 2010-02-01 Brady Eidson <beidson (a] apple.com> 5700 5701 Reviewed by Adele Peterson. 5702 5703 Crash in Safari opening new tabs to "same page" 5704 <rdar://problem/7593857> and https://bugs.webkit.org/show_bug.cgi?id=34444 5705 5706 Test: fast/loader/crash-copying-backforwardlist.html 5707 5708 * loader/FrameLoader.cpp: 5709 (WebCore::FrameLoader::loadItem): Null check currentItem(). 5710 5711 * page/Page.cpp: 5712 (WebCore::Page::goToItem): Ditto. 5713 5714 2010-02-01 Kevin Watters <kevinwatters (a] gmail.com> 5715 5716 Reviewed by Kevin Ollivier. 5717 5718 [wx] Remove unused file that doesn't seem to belong to the port. 5719 5720 https://bugs.webkit.org/show_bug.cgi?id=34445 5721 5722 * platform/wx/KeyEventWin.cpp: Removed. 5723 5724 2010-02-01 Eric Carlson <eric.carlson (a] apple.com> 5725 5726 Reviewed by Adele Peterson. 5727 5728 Fullscreen API should be on HTMLVideoElement 5729 https://bugs.webkit.org/show_bug.cgi?id=34438 5730 5731 Move fullscreen DOM APIs from HTMLMediaElement to HTMLVideoElement. 5732 5733 * html/HTMLMediaElement.cpp: 5734 * html/HTMLMediaElement.h: 5735 * html/HTMLMediaElement.idl: 5736 * html/HTMLVideoElement.cpp: 5737 (WebCore::HTMLVideoElement::paint): Removed outdated FIXME. 5738 (WebCore::HTMLVideoElement::paintCurrentFrameInContext): Ditto. 5739 (WebCore::HTMLVideoElement::webkitEnterFullScreen): Moved from HTMLMediaElement. 5740 (WebCore::HTMLVideoElement::webkitExitFullScreen): Ditto. 5741 (WebCore::HTMLVideoElement::webkitSupportsFullscreen): Ditto. 5742 (WebCore::HTMLVideoElement::webkitDisplayingFullscreen): Ditto. 5743 * html/HTMLVideoElement.h: 5744 * html/HTMLVideoElement.idl: 5745 5746 2010-02-01 Pavel Feldman <pfeldman (a] chromium.org> 5747 5748 Reviewed by Timothy Hatcher. 5749 5750 Web Inspector: Syntax highlighting in source view of 5751 Resources pane stops half-way. 5752 5753 There were two problems here: (1) styles for html highlighter were not 5754 added into the css file (they used to be injected manually in the 5755 SourceFrame before). (2) 'Tag' needed to be lexer's state, not parser's. 5756 Otherwise unbalanced quotes in the text nodes were matching too match 5757 into the string tokens. 5758 5759 https://bugs.webkit.org/show_bug.cgi?id=34359 5760 5761 * inspector/front-end/NativeTextViewer.js: 5762 (WebInspector.NativeTextViewer.prototype._createLineDivs): 5763 (WebInspector.NativeTextViewer.prototype._lineHeight): 5764 (WebInspector.NativeTextViewer.prototype.initFontMetrics): 5765 * inspector/front-end/SourceFrame.js: 5766 (WebInspector.SourceFrame.prototype._createEditorIfNeeded): 5767 * inspector/front-end/SourceHTMLTokenizer.js: 5768 (WebInspector.SourceHTMLTokenizer): 5769 (WebInspector.SourceHTMLTokenizer.prototype.nextToken): 5770 * inspector/front-end/SourceHTMLTokenizer.re2js: 5771 * inspector/front-end/TextEditor.js: 5772 (WebInspector.TextEditor.prototype.initFontMetrics): 5773 (WebInspector.TextEditor.prototype._registerShortcuts): 5774 * inspector/front-end/inspectorSyntaxHighlight.css: 5775 5776 2010-02-01 Ben Murdoch <benm (a] google.com> 5777 5778 Reviewed by Darin Adler. 5779 5780 ScriptCallFrame's do not get line numbers/source id's if the caller is unkown. 5781 https://bugs.webkit.org/show_bug.cgi?id=34335 5782 5783 * bindings/js/ScriptCallStack.cpp: 5784 (WebCore::ScriptCallStack::ScriptCallStack): If the caller is unknown, the line number and source information is still availble so pass it to the ScriptCallFrame being constructed. 5785 5786 2010-02-01 Dirk Schulze <krit (a] webkit.org> 5787 5788 Reviewed by Simon Fraser. 5789 5790 Add back an AffineTransform class for use by SVG 5791 https://bugs.webkit.org/show_bug.cgi?id=33750 5792 5793 These are the first steps on reimplementing AffineTransform. Unlike 5794 the old affine code, this one is platform independent like TransformationMatrix. 5795 AffineTransform has the benefit, that it stores just 6 doubles instead of 5796 16 in TransformationMatrix. The calculations of transformations are not that 5797 complex and can improve the memory usage and speed of SVG. 5798 AffineTransform can be used by HTML Canvas3D or SVG, since they are 2D related (at 5799 least for the moment). 5800 HTML Canvas is the first that makes use of the new AffineTransform. Next patches 5801 will introduce the affine code to SVG. 5802 5803 No new tests. The new AffineTransformation code is tested by fast/canvas. 5804 5805 * Android.mk: 5806 * GNUmakefile.am: 5807 * WebCore.gypi: 5808 * WebCore.pro: 5809 * WebCore.vcproj/WebCore.vcproj: 5810 * WebCore.xcodeproj/project.pbxproj: 5811 * html/canvas/CanvasRenderingContext2D.cpp: 5812 (WebCore::CanvasRenderingContext2D::scale): 5813 (WebCore::CanvasRenderingContext2D::rotate): 5814 (WebCore::CanvasRenderingContext2D::translate): 5815 (WebCore::CanvasRenderingContext2D::transform): 5816 (WebCore::CanvasRenderingContext2D::setTransform): 5817 (WebCore::CanvasRenderingContext2D::isPointInPath): 5818 (WebCore::CanvasRenderingContext2D::willDraw): 5819 * html/canvas/CanvasRenderingContext2D.h: 5820 * platform/graphics/GraphicsContext.h: 5821 * platform/graphics/Path.h: 5822 * platform/graphics/cairo/GraphicsContextCairo.cpp: 5823 (WebCore::GraphicsContext::getAffineCTM): 5824 (WebCore::GraphicsContext::concatCTM): 5825 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: 5826 (WebCore::GraphicsContextPlatformPrivate::concatCTM): 5827 * platform/graphics/cairo/PathCairo.cpp: 5828 (WebCore::Path::transform): 5829 * platform/graphics/cairo/TransformationMatrixCairo.cpp: 5830 (WebCore::AffineTransform::operator cairo_matrix_t): 5831 * platform/graphics/cg/GraphicsContextCG.cpp: 5832 (WebCore::GraphicsContext::concatCTM): 5833 (WebCore::GraphicsContext::getAffineCTM): 5834 * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h: 5835 (WebCore::GraphicsContextPlatformPrivate::concatCTM): 5836 * platform/graphics/cg/PathCG.cpp: 5837 (WebCore::Path::transform): 5838 * platform/graphics/cg/TransformationMatrixCG.cpp: 5839 (WebCore::AffineTransform::operator CGAffineTransform): 5840 * platform/graphics/haiku/GraphicsContextHaiku.cpp: 5841 (WebCore::GraphicsContext::getAffineCTM): 5842 (WebCore::GraphicsContext::concatCTM): 5843 * platform/graphics/haiku/PathHaiku.cpp: 5844 (WebCore::Path::transform): 5845 * platform/graphics/qt/GraphicsContextQt.cpp: 5846 (WebCore::GraphicsContext::getAffineCTM): 5847 (WebCore::GraphicsContext::concatCTM): 5848 * platform/graphics/qt/PathQt.cpp: 5849 (WebCore::Path::transform): 5850 * platform/graphics/qt/TransformationMatrixQt.cpp: 5851 (WebCore::AffineTransform::operator QTransform): 5852 * platform/graphics/skia/GraphicsContextSkia.cpp: 5853 (WebCore::GraphicsContext::concatCTM): 5854 (WebCore::GraphicsContext::getAffineCTM): 5855 * platform/graphics/skia/PathSkia.cpp: 5856 (WebCore::Path::transform): 5857 * platform/graphics/skia/TransformationMatrixSkia.cpp: 5858 (WebCore::AffineTransform::operator SkMatrix): 5859 * platform/graphics/transforms/AffineTransform.cpp: Added. 5860 (WebCore::affineTransformDecompose): 5861 (WebCore::affineTransformCompose): 5862 (WebCore::AffineTransform::AffineTransform): 5863 (WebCore::AffineTransform::reset): 5864 (WebCore::AffineTransform::setMatrix): 5865 (WebCore::AffineTransform::isIdentity): 5866 (WebCore::AffineTransform::det): 5867 (WebCore::AffineTransform::isInvertible): 5868 (WebCore::AffineTransform::inverse): 5869 (WebCore::AffineTransform::multiply): 5870 (WebCore::AffineTransform::multLeft): 5871 (WebCore::AffineTransform::rotate): 5872 (WebCore::AffineTransform::scale): 5873 (WebCore::AffineTransform::translate): 5874 (WebCore::AffineTransform::scaleNonUniform): 5875 (WebCore::AffineTransform::rotateFromVector): 5876 (WebCore::AffineTransform::flipX): 5877 (WebCore::AffineTransform::flipY): 5878 (WebCore::AffineTransform::shear): 5879 (WebCore::AffineTransform::skew): 5880 (WebCore::AffineTransform::skewX): 5881 (WebCore::AffineTransform::skewY): 5882 (WebCore::makeMapBetweenRects): 5883 (WebCore::AffineTransform::map): 5884 (WebCore::AffineTransform::mapPoint): 5885 (WebCore::AffineTransform::mapRect): 5886 (WebCore::AffineTransform::blend): 5887 (WebCore::AffineTransform::toTransformationMatrix): 5888 * platform/graphics/transforms/AffineTransform.h: Added. 5889 (WebCore::AffineTransform::a): 5890 (WebCore::AffineTransform::setA): 5891 (WebCore::AffineTransform::b): 5892 (WebCore::AffineTransform::setB): 5893 (WebCore::AffineTransform::c): 5894 (WebCore::AffineTransform::setC): 5895 (WebCore::AffineTransform::d): 5896 (WebCore::AffineTransform::setD): 5897 (WebCore::AffineTransform::e): 5898 (WebCore::AffineTransform::setE): 5899 (WebCore::AffineTransform::f): 5900 (WebCore::AffineTransform::setF): 5901 (WebCore::AffineTransform::operator== ): 5902 (WebCore::AffineTransform::operator!=): 5903 (WebCore::AffineTransform::operator*=): 5904 (WebCore::AffineTransform::operator*): 5905 (WebCore::AffineTransform::setMatrix): 5906 * platform/graphics/win/GraphicsContextWin.cpp: 5907 (WebCore::GraphicsContextPlatformPrivate::concatCTM): 5908 * platform/graphics/wince/GraphicsContextWince.cpp: 5909 (WebCore::GraphicsContext::concatCTM): 5910 (WebCore::GraphicsContext::getAffineCTM): 5911 * platform/graphics/wx/GraphicsContextWx.cpp: 5912 (WebCore::GraphicsContext::getAffineCTM): 5913 (WebCore::GraphicsContext::concatCTM): 5914 * platform/graphics/wx/PathWx.cpp: 5915 (WebCore::Path::transform): 5916 * platform/graphics/wx/TransformationMatrixWx.cpp: 5917 (WebCore::AffineTransform::operator wxGraphicsMatrix): 5918 5919 2010-01-29 Philippe Normand <pnormand (a] igalia.com> 5920 5921 Reviewed by Eric Carlson. 5922 5923 [GTK] set playbin mute property depending on volume value 5924 https://bugs.webkit.org/show_bug.cgi?id=31586 5925 5926 New API in MediaPlayer for mute control. 3 new methods are 5927 introduced: 5928 5929 - bool supportsMuting() const; 5930 - bool muted() const; 5931 - void setMuted(bool); 5932 5933 Platform MediaPlayer implementations can support it easily if the 5934 underlying sound daemon/API supports muting (eg. not only setting 5935 volume to 0) like PulseAudio for instance on Linux. At the moment 5936 the only player supporting this new API is the 5937 MediaPlayerPrivateGStreamer. 5938 5939 * html/HTMLMediaElement.cpp: 5940 (WebCore::HTMLMediaElement::setMuted): 5941 (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged): 5942 (WebCore::HTMLMediaElement::mediaPlayerMuteChanged): 5943 * html/HTMLMediaElement.h: 5944 * platform/graphics/MediaPlayer.cpp: 5945 (WebCore::NullMediaPlayerPrivate::supportsMuting): 5946 (WebCore::NullMediaPlayerPrivate::setMuted): 5947 (WebCore::MediaPlayer::MediaPlayer): 5948 (WebCore::MediaPlayer::muted): 5949 (WebCore::MediaPlayer::supportsMuting): 5950 (WebCore::MediaPlayer::setMuted): 5951 (WebCore::MediaPlayer::volumeChanged): 5952 (WebCore::MediaPlayer::muteChanged): 5953 * platform/graphics/MediaPlayer.h: 5954 (WebCore::MediaPlayerClient::mediaPlayerMuteChanged): 5955 * platform/graphics/MediaPlayerPrivate.h: 5956 (WebCore::MediaPlayerPrivateInterface::supportsMuting): 5957 (WebCore::MediaPlayerPrivateInterface::setMuted): 5958 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: 5959 (WebCore::mediaPlayerPrivateVolumeChangedCallback): 5960 (WebCore::notifyVolumeIdleCallback): 5961 (WebCore::mediaPlayerPrivateMuteChangedCallback): 5962 (WebCore::notifyMuteIdleCallback): 5963 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): 5964 (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate): 5965 (WebCore::MediaPlayerPrivate::volumeChangedCallback): 5966 (WebCore::MediaPlayerPrivate::volumeChanged): 5967 (WebCore::MediaPlayerPrivate::supportsMuting): 5968 (WebCore::MediaPlayerPrivate::setMuted): 5969 (WebCore::MediaPlayerPrivate::muteChangedCallback): 5970 (WebCore::MediaPlayerPrivate::muteChanged): 5971 (WebCore::MediaPlayerPrivate::createGSTPlayBin): 5972 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h: 5973 5974 2010-02-01 Henry Haverinen <henry.haverinen (a] nokia.com> 5975 5976 Reviewed by Simon Hausmann. 5977 5978 [Qt] Build without SSL support is broken 5979 5980 Added missing #ifdefs for OpenSSL support and one null-pointer 5981 check for the socket. 5982 5983 https://bugs.webkit.org/show_bug.cgi?id=34416 5984 5985 * platform/network/qt/SocketStreamHandlePrivate.h: 5986 * platform/network/qt/SocketStreamHandleQt.cpp: 5987 (WebCore::SocketStreamHandlePrivate::SocketStreamHandlePrivate): 5988 (WebCore::SocketStreamHandlePrivate::send): 5989 5990 2010-02-01 Pavel Feldman <pfeldman (a] chromium.org> 5991 5992 Reviewed by Timothy Hatcher. 5993 5994 Web Inspector: Fix rest of the NativeTextViewer (line numbers, 5995 conditional breakpoints, selection). 5996 5997 * inspector/front-end/NativeTextViewer.js: 5998 (WebInspector.NativeTextViewer): 5999 (WebInspector.NativeTextViewer.prototype._updatePreferredSize): 6000 (WebInspector.NativeTextViewer.prototype._registerMouseListeners): 6001 (WebInspector.NativeTextViewer.prototype._mouseDown): 6002 (WebInspector.NativeTextViewer.prototype._contextMenu): 6003 (WebInspector.NativeTextViewer.prototype._lineForMouseEvent): 6004 (WebInspector.NativeTextViewer.prototype._lineHeight): 6005 * inspector/front-end/TextEditor.js: 6006 (WebInspector.TextEditor): 6007 (WebInspector.TextEditor.prototype._registerMouseListeners): 6008 (WebInspector.TextEditor.prototype._offsetToLine): 6009 (WebInspector.TextEditor.prototype._lineHeight): 6010 (WebInspector.TextEditor.prototype.reveal): 6011 (WebInspector.TextEditor.prototype._paint): 6012 (WebInspector.TextEditor.prototype._updateDivDecorations): 6013 (WebInspector.TextEditor.prototype._paintSelection): 6014 6015 2010-02-01 Steve Block <steveblock (a] google.com> 6016 6017 Reviewed by Ariya Hidayat. 6018 6019 Adds implementation of JavaString for V8. 6020 https://bugs.webkit.org/show_bug.cgi?id=33953 6021 6022 No new tests, build fix only. 6023 6024 * bridge/jni/JNIBridge.h: Modified. Include JavaStringV8.h for V8 6025 * bridge/jni/v8: Added. 6026 * bridge/jni/v8/JavaStringV8.h: Added. 6027 (JSC::Bindings::JavaStringImpl::init): 6028 (JSC::Bindings::JavaStringImpl::UTF8String): 6029 (JSC::Bindings::JavaStringImpl::uchars): 6030 (JSC::Bindings::JavaStringImpl::length): 6031 6032 2010-02-01 Alex Milowski <alex (a] milowski.com> 6033 6034 Reviewed by Darin Adler. 6035 6036 Added compile time debug support for mathml layout (block boundary & baseline) 6037 6038 * mathml/RenderMathMLBlock.cpp: 6039 (WebCore::RenderMathMLBlock::stretchToHeight): 6040 (WebCore::RenderMathMLBlock::paint): 6041 * mathml/RenderMathMLBlock.h: 6042 6043 2010-02-01 Philippe Normand <pnormand (a] igalia.com> 6044 6045 Rubber stamped by Xan Lopez. 6046 6047 Fixed compilation warning about unsigned vs signed comparison. 6048 6049 * plugins/gtk/PluginViewGtk.cpp: 6050 (WebCore::PluginView::paint): 6051 6052 2010-01-31 Kent Tamura <tkent (a] chromium.org> 6053 6054 Unreviewed. Revert r54112 and r54124 because of Windows build error. 6055 6056 * Android.mk: 6057 * GNUmakefile.am: 6058 * WebCore.gypi: 6059 * WebCore.pro: 6060 * WebCore.vcproj/WebCore.vcproj: 6061 * WebCore.xcodeproj/project.pbxproj: 6062 * html/canvas/CanvasRenderingContext2D.cpp: 6063 (WebCore::CanvasRenderingContext2D::scale): 6064 (WebCore::CanvasRenderingContext2D::rotate): 6065 (WebCore::CanvasRenderingContext2D::translate): 6066 (WebCore::CanvasRenderingContext2D::transform): 6067 (WebCore::CanvasRenderingContext2D::setTransform): 6068 (WebCore::CanvasRenderingContext2D::isPointInPath): 6069 (WebCore::CanvasRenderingContext2D::willDraw): 6070 * html/canvas/CanvasRenderingContext2D.h: 6071 * platform/graphics/GraphicsContext.h: 6072 * platform/graphics/Path.h: 6073 * platform/graphics/cairo/GraphicsContextCairo.cpp: 6074 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: 6075 * platform/graphics/cairo/PathCairo.cpp: 6076 * platform/graphics/cairo/TransformationMatrixCairo.cpp: 6077 * platform/graphics/cg/GraphicsContextCG.cpp: 6078 * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h: 6079 * platform/graphics/cg/PathCG.cpp: 6080 * platform/graphics/cg/TransformationMatrixCG.cpp: 6081 * platform/graphics/haiku/GraphicsContextHaiku.cpp: 6082 * platform/graphics/haiku/PathHaiku.cpp: 6083 * platform/graphics/qt/GraphicsContextQt.cpp: 6084 * platform/graphics/qt/PathQt.cpp: 6085 * platform/graphics/qt/TransformationMatrixQt.cpp: 6086 * platform/graphics/skia/GraphicsContextSkia.cpp: 6087 * platform/graphics/skia/PathSkia.cpp: 6088 * platform/graphics/skia/TransformationMatrixSkia.cpp: 6089 * platform/graphics/transforms/AffineTransform.cpp: Removed. 6090 * platform/graphics/transforms/AffineTransform.h: Removed. 6091 * platform/graphics/wince/GraphicsContextWince.cpp: 6092 * platform/graphics/wx/GraphicsContextWx.cpp: 6093 * platform/graphics/wx/PathWx.cpp: 6094 * platform/graphics/wx/TransformationMatrixWx.cpp: 6095 (WebCore::TransformationMatrix::operator wxGraphicsMatrix): 6096 6097 2010-01-31 Kwang Yul Seo <skyul (a] company100.net> 6098 6099 Reviewed by Darin Adler. 6100 6101 Limit the scope of packing alignment to avoid MSVC C4103 warning. 6102 https://bugs.webkit.org/show_bug.cgi?id=34390 6103 6104 Use pack(push, 16) and pack(pop) to limit the scope of packing 6105 alignment change. 6106 6107 * bindings/js/JSSVGPODTypeWrapper.h: 6108 6109 2010-01-31 Kent Tamura <tkent (a] chromium.org> 6110 6111 Reviewed by Darin Adler. 6112 6113 Fix valueAsNumber calculation for type=month. 6114 https://bugs.webkit.org/show_bug.cgi?id=34304 6115 6116 valueAsNumber calculation for type=month which was checked in as 6117 r53893 was the number of milliseconds since UNIX epoch, and it was 6118 wrong. The correct way is the number months since UNIX epoch. 6119 6120 * html/DateComponents.cpp: 6121 (WebCore::DateComponents::setMonthsSinceEpoch): 6122 (WebCore::DateComponents::monthsSinceEpoch): 6123 * html/DateComponents.h: Declare setMonthsSinceEpoch() and monthsSinceEpoch(). 6124 * html/HTMLInputElement.cpp: 6125 (WebCore::HTMLInputElement::parseToDouble): 6126 Switch to monthsSinceEpoch() for type=MONTH. 6127 (WebCore::HTMLInputElement::valueAsDate): 6128 Add code with millisecondsSinceEpoch() for MONTH because 6129 parseToDouble() changed its behavior. 6130 (WebCore::HTMLInputElement::setValueAsNumber): 6131 Use setMonthsSinceEpoch() for MONTH. 6132 6133 2010-01-31 Dan Bernstein <mitz (a] apple.com> 6134 6135 Reviewed by Timothy Hatcher. 6136 6137 Web Inspector: REGRESSION: Numbers in bubbles are vertically off-center 6138 https://bugs.webkit.org/show_bug.cgi?id=34398 6139 6140 * inspector/front-end/inspector.css: Specify line-height: normal for 6141 ".console-message .bubble" and ".sidebar-tree-item .status .bubble". 6142 6143 2010-01-28 Ojan Vafai <ojan (a] chromium.org> 6144 6145 Reviewed by Darin Adler. 6146 6147 Implement CSSOM Range.getClientRects for collapsed selections 6148 https://bugs.webkit.org/show_bug.cgi?id=34239 6149 6150 When getting the quads for a range on a text node, allow returning 6151 zero width quads. This leaves the case of collapsed selections inside 6152 elements still not fixed, but no worse. 6153 6154 * rendering/InlineTextBox.cpp: 6155 (WebCore::InlineTextBox::selectionRect): 6156 * rendering/RenderText.cpp: 6157 (WebCore::RenderText::absoluteQuadsForRange): 6158 6159 2010-01-31 Oliver Hunt <oliver (a] apple.com> 6160 6161 Reviewed by Simon Fraser. 6162 6163 Animated scaling of background-image is too slow 6164 https://bugs.webkit.org/show_bug.cgi?id=33808 6165 6166 Implement a version of the RenderImage animated scaling optimisation 6167 for background images. Due to the possibility of arbitrary transforms 6168 being applied to containing elements we explicitly check the current 6169 CTM of the context for scaling or rotation. 6170 6171 * platform/graphics/GraphicsContext.cpp: 6172 (WebCore::GraphicsContext::drawTiledImage): 6173 * platform/graphics/GraphicsContext.h: 6174 * platform/graphics/transforms/TransformationMatrix.h: 6175 (WebCore::TransformationMatrix::isIdentityOrTranslation): 6176 * rendering/RenderBoxModelObject.cpp: 6177 (WebCore::RenderBoxModelScaleData::RenderBoxModelScaleData): 6178 (WebCore::RenderBoxModelScaleData::~RenderBoxModelScaleData): 6179 (WebCore::RenderBoxModelScaleData::hiqhQualityRepaintTimer): 6180 (WebCore::RenderBoxModelScaleData::size): 6181 (WebCore::RenderBoxModelScaleData::setSize): 6182 (WebCore::RenderBoxModelScaleData::lastPaintTime): 6183 (WebCore::RenderBoxModelScaleData::setLastPaintTime): 6184 (WebCore::RenderBoxModelScaleData::useLowQualityScale): 6185 (WebCore::RenderBoxModelScaleData::transform): 6186 (WebCore::RenderBoxModelScaleData::setTransform): 6187 (WebCore::RenderBoxModelScaleData::setUseLowQualityScale): 6188 (WebCore::RenderBoxModelScaleObserver::boxModelObjectDestroyed): 6189 (WebCore::RenderBoxModelScaleObserver::highQualityRepaintTimerFired): 6190 (WebCore::RenderBoxModelScaleObserver::shouldPaintBackgroundAtLowQuality): 6191 (WebCore::RenderBoxModelObject::highQualityRepaintTimerFired): 6192 (WebCore::RenderBoxModelObject::~RenderBoxModelObject): 6193 (WebCore::RenderBoxModelObject::paintFillLayerExtended): 6194 * rendering/RenderBoxModelObject.h: 6195 6196 2010-01-31 Dirk Schulze <krit (a] webkit.org> 6197 6198 Reviewed by Simon Fraser. 6199 6200 Add back an AffineTransform class for use by SVG 6201 https://bugs.webkit.org/show_bug.cgi?id=33750 6202 6203 These are the first steps on reimplementing AffineTransform. Unlike 6204 the old affine code, this one is platform independent like TransformationMatrix. 6205 AffineTransform has the benefit, that it stores just 6 doubles instead of 6206 16 in TransformationMatrix. The calculations of transformations are not that 6207 complex and can improve the memory usage and speed of SVG. 6208 AffineTransform can be used by HTML Canvas3D or SVG, since they are 2D related (at 6209 least for the moment). 6210 HTML Canvas is the first that makes use of the new AffineTransform. Next patches 6211 will introduce the affine code to SVG. 6212 6213 No new tests. The new AffineTransformation code is tested by fast/canvas. 6214 6215 * Android.mk: 6216 * GNUmakefile.am: 6217 * WebCore.gypi: 6218 * WebCore.pro: 6219 * WebCore.vcproj/WebCore.vcproj: 6220 * WebCore.xcodeproj/project.pbxproj: 6221 * html/canvas/CanvasRenderingContext2D.cpp: 6222 (WebCore::CanvasRenderingContext2D::scale): 6223 (WebCore::CanvasRenderingContext2D::rotate): 6224 (WebCore::CanvasRenderingContext2D::translate): 6225 (WebCore::CanvasRenderingContext2D::transform): 6226 (WebCore::CanvasRenderingContext2D::setTransform): 6227 (WebCore::CanvasRenderingContext2D::isPointInPath): 6228 (WebCore::CanvasRenderingContext2D::willDraw): 6229 * html/canvas/CanvasRenderingContext2D.h: 6230 * platform/graphics/GraphicsContext.h: 6231 * platform/graphics/Path.h: 6232 * platform/graphics/cairo/GraphicsContextCairo.cpp: 6233 (WebCore::GraphicsContext::getAffineCTM): 6234 (WebCore::GraphicsContext::concatCTM): 6235 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: 6236 (WebCore::GraphicsContextPlatformPrivate::concatCTM): 6237 * platform/graphics/cairo/PathCairo.cpp: 6238 (WebCore::Path::transform): 6239 * platform/graphics/cairo/TransformationMatrixCairo.cpp: 6240 (WebCore::AffineTransform::operator cairo_matrix_t): 6241 * platform/graphics/cg/GraphicsContextCG.cpp: 6242 (WebCore::GraphicsContext::concatCTM): 6243 (WebCore::GraphicsContext::getAffineCTM): 6244 * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h: 6245 (WebCore::GraphicsContextPlatformPrivate::concatCTM): 6246 * platform/graphics/cg/PathCG.cpp: 6247 (WebCore::Path::transform): 6248 * platform/graphics/cg/TransformationMatrixCG.cpp: 6249 (WebCore::AffineTransform::operator CGAffineTransform): 6250 * platform/graphics/haiku/GraphicsContextHaiku.cpp: 6251 (WebCore::GraphicsContext::getAffineCTM): 6252 (WebCore::GraphicsContext::concatCTM): 6253 * platform/graphics/haiku/PathHaiku.cpp: 6254 (WebCore::Path::transform): 6255 * platform/graphics/qt/GraphicsContextQt.cpp: 6256 (WebCore::GraphicsContext::getAffineCTM): 6257 (WebCore::GraphicsContext::concatCTM): 6258 * platform/graphics/qt/PathQt.cpp: 6259 (WebCore::Path::transform): 6260 * platform/graphics/qt/TransformationMatrixQt.cpp: 6261 (WebCore::AffineTransform::operator QTransform): 6262 * platform/graphics/skia/GraphicsContextSkia.cpp: 6263 (WebCore::GraphicsContext::getAffineCTM): 6264 * platform/graphics/skia/PathSkia.cpp: 6265 (WebCore::Path::transform): 6266 * platform/graphics/skia/TransformationMatrixSkia.cpp: 6267 (WebCore::AffineTransform::operator SkMatrix): 6268 * platform/graphics/transforms/AffineTransform.cpp: Added. 6269 (WebCore::affineTransformDecompose): 6270 (WebCore::affineTransformCompose): 6271 (WebCore::AffineTransform::AffineTransform): 6272 (WebCore::AffineTransform::reset): 6273 (WebCore::AffineTransform::setMatrix): 6274 (WebCore::AffineTransform::isIdentity): 6275 (WebCore::AffineTransform::det): 6276 (WebCore::AffineTransform::isInvertible): 6277 (WebCore::AffineTransform::inverse): 6278 (WebCore::AffineTransform::multiply): 6279 (WebCore::AffineTransform::multLeft): 6280 (WebCore::AffineTransform::rotate): 6281 (WebCore::AffineTransform::scale): 6282 (WebCore::AffineTransform::translate): 6283 (WebCore::AffineTransform::scaleNonUniform): 6284 (WebCore::AffineTransform::rotateFromVector): 6285 (WebCore::AffineTransform::flipX): 6286 (WebCore::AffineTransform::flipY): 6287 (WebCore::AffineTransform::shear): 6288 (WebCore::AffineTransform::skew): 6289 (WebCore::AffineTransform::skewX): 6290 (WebCore::AffineTransform::skewY): 6291 (WebCore::makeMapBetweenRects): 6292 (WebCore::AffineTransform::map): 6293 (WebCore::AffineTransform::mapPoint): 6294 (WebCore::AffineTransform::mapRect): 6295 (WebCore::AffineTransform::blend): 6296 * platform/graphics/transforms/AffineTransform.h: Added. 6297 (WebCore::AffineTransform::a): 6298 (WebCore::AffineTransform::setA): 6299 (WebCore::AffineTransform::b): 6300 (WebCore::AffineTransform::setB): 6301 (WebCore::AffineTransform::c): 6302 (WebCore::AffineTransform::setC): 6303 (WebCore::AffineTransform::d): 6304 (WebCore::AffineTransform::setD): 6305 (WebCore::AffineTransform::e): 6306 (WebCore::AffineTransform::setE): 6307 (WebCore::AffineTransform::f): 6308 (WebCore::AffineTransform::setF): 6309 (WebCore::AffineTransform::operator== ): 6310 (WebCore::AffineTransform::operator!=): 6311 (WebCore::AffineTransform::operator*=): 6312 (WebCore::AffineTransform::operator*): 6313 (WebCore::AffineTransform::setMatrix): 6314 * platform/graphics/wince/GraphicsContextWince.cpp: 6315 (WebCore::GraphicsContext::concatCTM): 6316 (WebCore::GraphicsContext::getAffineCTM): 6317 * platform/graphics/wx/GraphicsContextWx.cpp: 6318 (WebCore::GraphicsContext::getAffineCTM): 6319 (WebCore::GraphicsContext::concatCTM): 6320 * platform/graphics/wx/PathWx.cpp: 6321 (WebCore::Path::transform): 6322 * platform/graphics/wx/TransformationMatrixWx.cpp: 6323 (WebCore::AffineTransform::operator wxGraphicsMatrix): 6324 6325 2010-01-31 Pavel Feldman <pfeldman (a] chromium.org> 6326 6327 Reviewed by Timothy Hatcher. 6328 6329 Web Inspector: [REGRESSION] Breakpoint source line is not displayed 6330 in the breakpoint manager. 6331 6332 * inspector/front-end/SourceFrame.js: 6333 (WebInspector.SourceFrame.prototype._addBreakpointToSource): 6334 6335 2010-01-31 Pavel Feldman <pfeldman (a] chromium.org> 6336 6337 Reviewed by Timothy Hatcher. 6338 6339 Web Inspector: Introduce NativeTextViewer. 6340 6341 This change handles rendering highlighted text, using browser's 6342 selection/drag/drop/click logic. Breakpoint decorations and 6343 program counter is working. 6344 6345 Todo: line numbers are painted 'under' the text when scrolling 6346 horizontally, search is not yet implemented. 6347 6348 https://bugs.webkit.org/show_bug.cgi?id=34391 6349 6350 * WebCore.gypi: 6351 * WebCore.vcproj/WebCore.vcproj: 6352 * inspector/front-end/DivBasedTextViewer.js: Added. 6353 (WebInspector.DivBasedTextViewer): 6354 (WebInspector.DivBasedTextViewer.prototype._textChanged): 6355 (WebInspector.DivBasedTextViewer.prototype._createLineDivs): 6356 (WebInspector.DivBasedTextViewer.prototype._updatePreferredSize): 6357 (WebInspector.DivBasedTextViewer.prototype._scroll): 6358 (WebInspector.DivBasedTextViewer.prototype._registerMouseListeners): 6359 (WebInspector.DivBasedTextViewer.prototype._registerKeyboardListeners): 6360 (WebInspector.DivBasedTextViewer.prototype._registerClipboardListeners): 6361 (WebInspector.DivBasedTextViewer.prototype._paintSelection): 6362 (WebInspector.DivBasedTextViewer.prototype._positionDivDecoration): 6363 (WebInspector.DivBasedTextViewer.prototype._mouseDown): 6364 (WebInspector.DivBasedTextViewer.prototype._contextMenu): 6365 (WebInspector.DivBasedTextViewer.prototype._caretForMouseEvent): 6366 (WebInspector.DivBasedTextViewer.prototype._paintLine): 6367 (WebInspector.DivBasedTextViewer.prototype._createSpan): 6368 * inspector/front-end/Settings.js: 6369 * inspector/front-end/SourceFrame.js: 6370 (WebInspector.SourceFrame.prototype.clearMessages): 6371 (WebInspector.SourceFrame.prototype.sizeToFitContentHeight): 6372 (WebInspector.SourceFrame.prototype._createEditorIfNeeded): 6373 (WebInspector.SourceFrame.prototype._addMessageToSource): 6374 (WebInspector.SourceFrame.prototype.resize): 6375 * inspector/front-end/TextEditor.js: 6376 (WebInspector.TextEditor): 6377 (WebInspector.TextEditor.prototype.setDivDecoration): 6378 (WebInspector.TextEditor.prototype._registerMouseListeners): 6379 (WebInspector.TextEditor.prototype._registerKeyboardListeners): 6380 (WebInspector.TextEditor.prototype._registerClipboardListeners): 6381 (WebInspector.TextEditor.prototype.reveal): 6382 (WebInspector.TextEditor.prototype._textChanged): 6383 (WebInspector.TextEditor.prototype.revalidateDecorationsAndPaint): 6384 (WebInspector.TextEditor.prototype._updatePreferredSize): 6385 (WebInspector.TextEditor.prototype.resize): 6386 (WebInspector.TextEditor.prototype._paintLinesContinuation): 6387 (WebInspector.TextEditor.prototype._paintLine): 6388 (WebInspector.TextEditor.prototype._contextMenu): 6389 (WebInspector.TextEditor.prototype._caretForMouseEvent): 6390 (WebInspector.TextEditor.prototype._changeFont): 6391 * inspector/front-end/TextEditorHighlighter.js: 6392 (WebInspector.TextEditorHighlighter.prototype._lex): 6393 * inspector/front-end/WebKit.qrc: 6394 * inspector/front-end/inspector.html: 6395 * inspector/front-end/textEditor.css: 6396 6397 2010-01-31 Benjamin Poulain <benjamin.poulain (a] nokia.com> 6398 6399 Reviewed by Eric Seidel. 6400 6401 [Qt] Enable FAST_MOBILE_SCROLLING on Qt embedded platforms 6402 https://bugs.webkit.org/show_bug.cgi?id=34168 6403 6404 Enable FAST_MOBILE_SCROLLING for Qt on Maemo 5, Linux embedded 6405 and Symbian 6406 6407 * WebCore.pro: 6408 6409 2010-01-31 Yury Semikhatsky <yurys (a] chromium.org> 6410 6411 Reviewed by Pavel Feldman. 6412 6413 Make ScriptState destructor protected since all non-empty 6414 ScriptStates are managed by GC. Remove obsolete constructor. 6415 6416 https://bugs.webkit.org/show_bug.cgi?id=34266 6417 6418 * bindings/v8/ScriptState.cpp: 6419 * bindings/v8/ScriptState.h: 6420 6421 2010-01-30 Simon Fraser <simon.fraser (a] apple.com> 6422 6423 Reviewed by Dan Bernstein. 6424 6425 Use CGGradient on Leopard and later, since it's faster than CGShading 6426 https://bugs.webkit.org/show_bug.cgi?id=34384 6427 6428 Use CGGradient on Leopard and later, rather than CGShading, for 6429 performance. 6430 6431 * platform/graphics/Gradient.h: 6432 * platform/graphics/Gradient.cpp: 6433 (WebCore::Gradient::sortStopsIfNecessary): Utility method to sort stops. 6434 Did not call this from getColor() to avoid overhead of a function call. 6435 6436 * platform/graphics/cg/GradientCG.cpp: 6437 (WebCore::Gradient::platformDestroy): Use CGGradientRelease() post-Tiger. 6438 (WebCore::Gradient::platformGradient): Create and return a CGGradientRef post-Tiger. 6439 (WebCore::Gradient::fill): Call new paint() method. 6440 (WebCore::Gradient::paint): New convenence method that avoids testing 6441 isRadial() in a bunch of other places. 6442 6443 * platform/graphics/cg/GraphicsContextCG.cpp: 6444 (WebCore::GraphicsContext::fillPath): Call the gradient's paint() method. 6445 (WebCore::GraphicsContext::strokePath): Ditto 6446 (WebCore::GraphicsContext::fillRect): Ditto 6447 (WebCore::GraphicsContext::strokeRect): Ditto 6448 6449 2010-01-30 Simon Fraser <simon.fraser (a] apple.com> 6450 6451 Reviewed by Adele Peterson. 6452 6453 Do color animations on premultiplied colors 6454 https://bugs.webkit.org/show_bug.cgi?id=34383 6455 6456 Convert colors to premultiplied alpha before interpolating them, 6457 then convert the result back to non-premultiplied. This gives better 6458 results when animating from transparent colors. 6459 6460 Test: transitions/color-transition-premultiplied.html 6461 6462 * page/animation/AnimationBase.cpp: 6463 (WebCore::blendFunc): 6464 6465 2010-01-30 Gustavo Noronha Silva <gns (a] gnome.org> 6466 6467 Build fixes needed for make distcheck. 6468 6469 * GNUmakefile.am: 6470 6471 2010-01-29 Mark Rowe <mrowe (a] apple.com> 6472 6473 Stop copying an IDL file in to the framework wrapper. 6474 6475 * WebCore.xcodeproj/project.pbxproj: 6476 6477 2010-01-29 Mark Rowe <mrowe (a] apple.com> 6478 6479 Sort Xcode projects. 6480 6481 * WebCore.xcodeproj/project.pbxproj: 6482 6483 == Rolled over to ChangeLog-2010-01-29 == 6484